diff options
| author | Richard-Qin-X <richard.qin.001@gmail.com> | 2026-08-09 22:05:14 +0800 |
|---|---|---|
| committer | Richard-Qin-X <richard.qin.001@gmail.com> | 2026-08-09 22:05:14 +0800 |
| commit | 3a57627e59ba18b6f9f9aae7bb60c390c0d3575a (patch) | |
| tree | 736ca062bfffbd68177a512dfe145b06c16d11b1 /backend/tools/AssemblyEmitter/CMakeLists.txt | |
| parent | 379ff50dcc7ccf977379aee68fa9d10f69065d23 (diff) | |
| download | rcc-project-3a57627e59ba18b6f9f9aae7bb60c390c0d3575a.tar.gz rcc-project-3a57627e59ba18b6f9f9aae7bb60c390c0d3575a.tar.xz | |
[MC] Implement RV64GC object emission
Diffstat (limited to 'backend/tools/AssemblyEmitter/CMakeLists.txt')
| -rw-r--r-- | backend/tools/AssemblyEmitter/CMakeLists.txt | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/backend/tools/AssemblyEmitter/CMakeLists.txt b/backend/tools/AssemblyEmitter/CMakeLists.txt index a262983..01c99aa 100644 --- a/backend/tools/AssemblyEmitter/CMakeLists.txt +++ b/backend/tools/AssemblyEmitter/CMakeLists.txt @@ -22,7 +22,16 @@ install( ) find_program(RCCBackendLLVMMC NAMES llvm-mc-20 llvm-mc) -foreach(InputName IN ITEMS RISCVGenericPipeline RISCVWideConstantPipeline RISCVDataPipeline) +find_program(RCCBackendLLVMReadELF NAMES llvm-readelf-20 llvm-readelf) +find_program(RCCBackendLLVMObjdump NAMES llvm-objdump-20 llvm-objdump) +foreach( + InputName + IN ITEMS + RISCVGenericPipeline + RISCVWideConstantPipeline + RISCVDataPipeline + RISCVStackFramePipeline +) add_test( NAME RCCBackend.AssemblyEmitter.${InputName} COMMAND @@ -33,6 +42,17 @@ foreach(InputName IN ITEMS RISCVGenericPipeline RISCVWideConstantPipeline RISCVD "-DLLVM_MC=${RCCBackendLLVMMC}" -P "${CMAKE_CURRENT_SOURCE_DIR}/AssemblyPipelineTest.cmake" ) + add_test( + NAME RCCBackend.ObjectEmitter.${InputName} + COMMAND + "${CMAKE_COMMAND}" + "-DEMITTER=$<TARGET_FILE:RCCBackendAssemblyEmitter>" + "-DINPUT=${RCC_BACKEND_SOURCE_DIR}/unittests/Target/Inputs/${InputName}.mir" + "-DOUTPUT=${CMAKE_CURRENT_BINARY_DIR}/${InputName}.o" + "-DLLVM_READELF=${RCCBackendLLVMReadELF}" + "-DLLVM_OBJDUMP=${RCCBackendLLVMObjdump}" + -P "${CMAKE_CURRENT_SOURCE_DIR}/ObjectPipelineTest.cmake" + ) endforeach() rcc_backend_register_format_files("${CMAKE_CURRENT_SOURCE_DIR}/AssemblyEmitterMain.cpp") |
