Mercurial > projects > ldc
changeset 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 | 81fd116b5dc9 |
children | feca4947d1f2 |
files | CMakeLists.txt gen/asm-x86-32.h |
diffstat | 2 files changed, 6 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/CMakeLists.txt Thu Mar 12 21:04:27 2009 +0100 +++ b/CMakeLists.txt Thu Mar 12 22:30:30 2009 +0100 @@ -51,8 +51,10 @@ OUTPUT_VARIABLE LLVM_LDFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ) + +set(EXTRA_LLVM_MODULES "" CACHE STRING "extra llvm components to link in (see llvm-config --components)") execute_process( - COMMAND ${PERL_EXECUTABLE} ${LLVM_CONFIG} --libfiles bitwriter linker ipo instrumentation backend arm + COMMAND ${PERL_EXECUTABLE} ${LLVM_CONFIG} --libfiles bitwriter linker ipo instrumentation backend ${EXTRA_LLVM_MODULES} OUTPUT_VARIABLE LLVM_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE )
--- a/gen/asm-x86-32.h Thu Mar 12 21:04:27 2009 +0100 +++ b/gen/asm-x86-32.h Thu Mar 12 22:30:30 2009 +0100 @@ -453,8 +453,8 @@ /* Op_Fis_ST */ { mem, 0, 0, FPInt_Types, Clb_ST }, // " /* Op_Fis_P */ { mem, 0, 0, FPInt_Types, Clb_ST }, // push and pop, fild so also 64 bit /* Op_Fid */ { D|mem, 0, 0, FPInt_Types }, // only 16bit and 32bit, DMD defaults to 16bit - /* Op_Fid_P */ { D|mem, 0, 0, FPInt_Types, Clb_ST, Next_Form, Op_FidR_P }, // push and pop, fild so also 64 bit - /* Op_FidR_P */ { D|mem,rfp, 0, FPInt_Types, Clb_ST }, // push and pop, fild so also 64 bit + /* Op_Fid_P */ { D|mem, 0, 0, 0, Clb_ST, Next_Form, Op_FidR_P }, // push and pop, fild so also 64 bit + /* Op_FidR_P */ { D|mem,rfp, 0, 0, Clb_ST }, // push and pop, fild so also 64 bit /* 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 /* Op_FfdR */ { D|rfp, 0, 0 }, /* Op_Ffd_P */ { D|mfp, 0, 0, FP_Types, Clb_ST, Next_Form, Op_FfdR_P }, // pop, fld so also 80 bit, " @@ -1513,7 +1513,7 @@ if ( e->type->isunsigned() ) insnTemplate << "$" << e->toUInteger(); else - insnTemplate << "$" << e->toInteger(); + insnTemplate << "$" << (sinteger_t)e->toInteger(); break; case Arg_Pointer: