DOUBLE
%token <stt_val> FLOAT DOUBLE SIGNED UNSIGNED
| DOUBLE
{ "double", DOUBLE, TS_DOUBLE },
curtype = DOUBLE;
case DOUBLE:
} else if ((int)inst->op & DOUBLE) {
} else if ((((int)inst->op & DOUBLE) && inst->op != cvtsd2ss) ||
t2 = ((int)inst->op & DOUBLE)? my_fp_class(&inst->op2->d[0]) :
t1 = ((int)inst->op & DOUBLE)? my_fp_class(&inst->op1->d[0]) :
if ((int)inst->op & DOUBLE) {
dbl = DOUBLE;
dbl = DOUBLE;
cmpsd = DOUBLE + 0,
minsd = DOUBLE + 1,
maxsd = DOUBLE + 2,
addsd = DOUBLE + 3,
subsd = DOUBLE + 4,
mulsd = DOUBLE + 5,
divsd = DOUBLE + 6,
sqrtsd = DOUBLE + 7,
ucomisd = DOUBLE + 16,
comisd = DOUBLE + 17,
cvtsd2ss = DOUBLE + 32,
cvtsi2sd = DOUBLE + INTREG + 0,
cvttsd2si = DOUBLE + INTREG + 1,
cvtsd2si = DOUBLE + INTREG + 2,
cvtsi2sdq = DOUBLE + INTREG + 8,
cvttsd2siq = DOUBLE + INTREG + 9,
cvtsd2siq = DOUBLE + INTREG + 10,
cmppd = DOUBLE + SIMD + 0,
minpd = DOUBLE + SIMD + 1,
maxpd = DOUBLE + SIMD + 2,
addpd = DOUBLE + SIMD + 3,
subpd = DOUBLE + SIMD + 4,
mulpd = DOUBLE + SIMD + 5,
divpd = DOUBLE + SIMD + 6,
sqrtpd = DOUBLE + SIMD + 7,
cvtpd2ps = DOUBLE + SIMD + 32,
cvtdq2pd = DOUBLE + SIMD + 34,
cvttpd2dq = DOUBLE + SIMD + 35,
cvtpd2dq = DOUBLE + SIMD + 36,
cvtpi2pd = DOUBLE + SIMD + INTREG + 0,
cvttpd2pi = DOUBLE + SIMD + INTREG + 1,
cvtpd2pi = DOUBLE + SIMD + INTREG + 2,
TEST_SIZEOF(DOUBLE, double);
curtype = DOUBLE;
case DOUBLE:
lastiblock[DOUBLE] = lastiblock[SINGLE] - NINDIR(fs);
lastiblock[TRIPLE] = lastiblock[DOUBLE] - NINDIR(fs) * NINDIR(fs);
pfpsd->fp_current_write_dreg(&x, DOUBLE(n), pfpsd);
pfpsd->fp_current_write_dreg(&db.ll, DOUBLE(n),
pfpsd->fp_current_write_dreg(pu, DOUBLE(n), pfpsd);
pfpsd->fp_current_read_dreg(&fp.ll[0], DOUBLE(n), pfpsd);
pfpsd->fp_current_read_dreg(&fp.ll[0], DOUBLE(n), pfpsd);
pfpsd->fp_current_read_dreg(pu, DOUBLE(n), pfpsd);