我正在尝试为LLVM编写自定义后端。我将$temp = User::count();
$count = $temp - 10;
$data = User::take($count)->skip(10)->get();
文件夹复制到llvm/lib/Target/AVR
(这是我的后端)。然后,我在文件名和文件内容中将所有llvm/lib/Target/Abc
替换为AVR
和Abc
avr
。这是abc
:
CMakeLists.txt
我尝试在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)
中将Abd
添加到LLVM_ALL_TARGETS
变量,但是当我尝试运行llvm/CMakeLists.txt
时,会显示以下错误:
cmake
我还尝试从llvm-build: error: invalid target to enable: 'Abc' not in project
移除Abc
并使用llvm/CMakeLists.txt
运行cmake
,但结果是相同的。
答案 0 :(得分:5)
问题是我没有在Abc
中将subdirectories
添加到llvm/lib/Target/LLVMBuild.txt
。