X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FTarget%2FX86%2FCMakeLists.txt;h=e9399f5c83224b423d5e0b789773a6a5caa2663d;hb=a84ad90c065395f26ce6093b95433ceac20ab174;hp=5b7900334dbd7df09aa6fbc6fb7fb8edd0ecb357;hpb=1d8e4cfdb71d7055561a130a5844c5d093aa5ee8;p=oota-llvm.git diff --git a/lib/Target/X86/CMakeLists.txt b/lib/Target/X86/CMakeLists.txt index 5b7900334db..e9399f5c832 100644 --- a/lib/Target/X86/CMakeLists.txt +++ b/lib/Target/X86/CMakeLists.txt @@ -1,57 +1,52 @@ -macro(x86tgen ofn) - add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${ofn} - COMMAND tblgen ${ARGN} -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${CMAKE_SOURCE_DIR}/lib/Target -I ${llvm_include_path} ${CMAKE_CURRENT_SOURCE_DIR}/X86.td -o ${ofn} - DEPENDS tblgen ${CMAKE_CURRENT_SOURCE_DIR}/X86.td - COMMENT "Building ${ofn}..." - ) -endmacro(x86tgen) +set(LLVM_TARGET_DEFINITIONS X86.td) -x86tgen(X86GenRegisterInfo.h.inc -gen-register-desc-header) -x86tgen(X86GenRegisterNames.inc -gen-register-enums) -x86tgen(X86GenRegisterInfo.inc -gen-register-desc) -x86tgen(X86GenInstrNames.inc -gen-instr-enums) -x86tgen(X86GenInstrInfo.inc -gen-instr-desc) -x86tgen(X86GenAsmWriter.inc -gen-asm-writer) -x86tgen(X86GenAsmWriter1.inc -gen-asm-writer -asmwriternum=1) -x86tgen(X86GenDAGISel.inc -gen-dag-isel) -x86tgen(X86GenFastISel.inc -gen-fast-isel) -x86tgen(X86GenCallingConv.inc -gen-callingconv) -x86tgen(X86GenSubtarget.inc -gen-subtarget) +tablegen(X86GenRegisterInfo.h.inc -gen-register-desc-header) +tablegen(X86GenRegisterNames.inc -gen-register-enums) +tablegen(X86GenRegisterInfo.inc -gen-register-desc) +tablegen(X86GenDisassemblerTables.inc -gen-disassembler) +tablegen(X86GenInstrNames.inc -gen-instr-enums) +tablegen(X86GenInstrInfo.inc -gen-instr-desc) +tablegen(X86GenAsmWriter.inc -gen-asm-writer) +tablegen(X86GenAsmWriter1.inc -gen-asm-writer -asmwriternum=1) +tablegen(X86GenAsmMatcher.inc -gen-asm-matcher) +tablegen(X86GenDAGISel.inc -gen-dag-isel) +tablegen(X86GenFastISel.inc -gen-fast-isel) +tablegen(X86GenCallingConv.inc -gen-callingconv) +tablegen(X86GenSubtarget.inc -gen-subtarget) +tablegen(X86GenEDInfo.inc -gen-enhanced-disassembly-info) -add_custom_target(X86Table_gen echo Tablegenning - DEPENDS - ${CMAKE_CURRENT_BINARY_DIR}/X86GenRegisterInfo.h.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenRegisterNames.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenRegisterInfo.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenInstrNames.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenInstrInfo.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenAsmWriter.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenAsmWriter1.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenDAGISel.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenFastISel.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenCallingConv.inc - ${CMAKE_CURRENT_BINARY_DIR}/X86GenSubtarget.inc - ) - -add_dependencies(X86Table_gen ${LLVM_COMMON_DEPENDS}) - -include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR}) - -add_partially_linked_object(LLVMX86CodeGen +set(sources + SSEDomainFix.cpp + X86AsmBackend.cpp + X86AsmPrinter.cpp + X86COFFMachineModuleInfo.cpp X86CodeEmitter.cpp X86ELFWriterInfo.cpp + X86FastISel.cpp X86FloatingPoint.cpp X86ISelDAGToDAG.cpp X86ISelLowering.cpp X86InstrInfo.cpp X86JITInfo.cpp + X86MCAsmInfo.cpp + X86MCCodeEmitter.cpp + X86MCInstLower.cpp X86RegisterInfo.cpp + X86SelectionDAGInfo.cpp X86Subtarget.cpp - X86TargetAsmInfo.cpp X86TargetMachine.cpp - X86FastISel.cpp + X86TargetObjectFile.cpp ) -add_dependencies(LLVMX86CodeGen - X86Table_gen -) +if( CMAKE_CL_64 ) + enable_language(ASM_MASM) + ADD_CUSTOM_COMMAND( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/X86CompilationCallback_Win64.obj + COMMAND ${CMAKE_ASM_MASM_COMPILER} /Fo ${CMAKE_CURRENT_BINARY_DIR}/X86CompilationCallback_Win64.obj /c ${CMAKE_CURRENT_SOURCE_DIR}/X86CompilationCallback_Win64.asm + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/X86CompilationCallback_Win64.asm + ) + set(sources ${sources} ${CMAKE_CURRENT_BINARY_DIR}/X86CompilationCallback_Win64.obj) +endif() + +add_llvm_target(X86CodeGen ${sources}) +