2
我正在尝试为LLVM编写自定义后端。我将llvm/lib/Target/AVR
文件夹复制到llvm/lib/Target/Abc
(它是我的后端)。然后我用Abc
和avr
与abc
替换所有AVR
文件名和文件内容。这里是CMakeLists.txt
:为什么llvm-build没有看到自定义的后端?
set(LLVM_TARGET_DEFINITIONS Abc.td)
tablegen(LLVM AbcGenRegisterInfo.inc -gen-register-info)
tablegen(LLVM AbcGenInstrInfo.inc -gen-instr-info)
tablegen(LLVM AbcGenCallingConv.inc -gen-callingconv)
tablegen(LLVM AbcGenSubtargetInfo.inc -gen-subtarget)
add_public_tablegen_target(AbcCommonTableGen)
add_llvm_target(AbcCodeGen
AbcInstrInfo.cpp
AbcRegisterInfo.cpp
AbcTargetMachine.cpp
AbcTargetObjectFile.cpp
)
add_dependencies(LLVMAbcCodeGen intrinsincs_gen)
add_subdirectory(MCTargetDesc)
add_subdirectory(TargetInfo)
我tryed添加Abd
到LLVM_ALL_TARGETS
变量llvm/CMakeLists.txt
,但是当我尝试运行cmake
,显示以下错误:
llvm-build: error: invalid target to enable: 'Abc' not in project
我也tryed从删除Abc
llvm/CMakeLists.txt
并运行cmake
与-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=Abc
,但结果是一样的。