comparison gen/asm-x86-32.h @ 1105:cdb7e1167803

- Fixed building tango-user-ldc on x86-32. - Added CMake option for extra LLVM components to be linked in.
author Tomas Lindquist Olsen <tomas.l.olsen gmail.com>
date Thu, 12 Mar 2009 22:30:30 +0100
parents ae950bd712d3
children feca4947d1f2
comparison
equal deleted inserted replaced
1104:81fd116b5dc9 1105:cdb7e1167803
451 /* Op_Fs_P */ { mem, 0, 0, 0, Clb_ST }, // " 451 /* Op_Fs_P */ { mem, 0, 0, 0, Clb_ST }, // "
452 /* Op_Fis */ { mem, 0, 0, FPInt_Types }, // only 16bit and 32bit, DMD defaults to 16bit 452 /* Op_Fis */ { mem, 0, 0, FPInt_Types }, // only 16bit and 32bit, DMD defaults to 16bit
453 /* Op_Fis_ST */ { mem, 0, 0, FPInt_Types, Clb_ST }, // " 453 /* Op_Fis_ST */ { mem, 0, 0, FPInt_Types, Clb_ST }, // "
454 /* Op_Fis_P */ { mem, 0, 0, FPInt_Types, Clb_ST }, // push and pop, fild so also 64 bit 454 /* Op_Fis_P */ { mem, 0, 0, FPInt_Types, Clb_ST }, // push and pop, fild so also 64 bit
455 /* Op_Fid */ { D|mem, 0, 0, FPInt_Types }, // only 16bit and 32bit, DMD defaults to 16bit 455 /* Op_Fid */ { D|mem, 0, 0, FPInt_Types }, // only 16bit and 32bit, DMD defaults to 16bit
456 /* Op_Fid_P */ { D|mem, 0, 0, FPInt_Types, Clb_ST, Next_Form, Op_FidR_P }, // push and pop, fild so also 64 bit 456 /* Op_Fid_P */ { D|mem, 0, 0, 0, Clb_ST, Next_Form, Op_FidR_P }, // push and pop, fild so also 64 bit
457 /* Op_FidR_P */ { D|mem,rfp, 0, FPInt_Types, Clb_ST }, // push and pop, fild so also 64 bit 457 /* Op_FidR_P */ { D|mem,rfp, 0, 0, Clb_ST }, // push and pop, fild so also 64 bit
458 /* Op_Ffd */ { D|mfp, 0, 0, FP_Types, 0, Next_Form, Op_FfdR }, // only 16bit and 32bit, DMD defaults to 16bit, reg form doesn't need type 458 /* Op_Ffd */ { D|mfp, 0, 0, FP_Types, 0, Next_Form, Op_FfdR }, // only 16bit and 32bit, DMD defaults to 16bit, reg form doesn't need type
459 /* Op_FfdR */ { D|rfp, 0, 0 }, 459 /* Op_FfdR */ { D|rfp, 0, 0 },
460 /* Op_Ffd_P */ { D|mfp, 0, 0, FP_Types, Clb_ST, Next_Form, Op_FfdR_P }, // pop, fld so also 80 bit, " 460 /* Op_Ffd_P */ { D|mfp, 0, 0, FP_Types, Clb_ST, Next_Form, Op_FfdR_P }, // pop, fld so also 80 bit, "
461 /* Op_FfdR_P */ { D|rfp, 0, 0, 0, Clb_ST, Next_Form, Op_FfdRR_P }, 461 /* Op_FfdR_P */ { D|rfp, 0, 0, 0, Clb_ST, Next_Form, Op_FfdRR_P },
462 /* Op_FfdRR_P */ { D|mfp|rfp,rfp,0, 0, Clb_ST }, 462 /* Op_FfdRR_P */ { D|mfp|rfp,rfp,0, 0, Clb_ST },
1511 { 1511 {
1512 case Arg_Integer: 1512 case Arg_Integer:
1513 if ( e->type->isunsigned() ) 1513 if ( e->type->isunsigned() )
1514 insnTemplate << "$" << e->toUInteger(); 1514 insnTemplate << "$" << e->toUInteger();
1515 else 1515 else
1516 insnTemplate << "$" << e->toInteger(); 1516 insnTemplate << "$" << (sinteger_t)e->toInteger();
1517 break; 1517 break;
1518 1518
1519 case Arg_Pointer: 1519 case Arg_Pointer:
1520 stmt->error ( "unsupported pointer reference to '%s' in naked asm", e->toChars() ); 1520 stmt->error ( "unsupported pointer reference to '%s' in naked asm", e->toChars() );
1521 break; 1521 break;