aboutsummaryrefslogtreecommitdiff
path: root/backend/unittests/CodeGen/CMakeLists.txt
diff options
context:
space:
mode:
authorRichard-Qin-X <richard.qin.001@gmail.com>2026-08-01 12:05:36 +0800
committerRichard-Qin-X <richard.qin.001@gmail.com>2026-08-01 12:05:36 +0800
commitfd8770b01a7a3ae85ba85fb43b21803c88593ad7 (patch)
tree89b0e50e83e174a7ecd2a30fc517f431ca270612 /backend/unittests/CodeGen/CMakeLists.txt
parentc759cebef15bdac2ef160065efd116fe6ed540a7 (diff)
downloadrcc-project-fd8770b01a7a3ae85ba85fb43b21803c88593ad7.tar.gz
rcc-project-fd8770b01a7a3ae85ba85fb43b21803c88593ad7.tar.xz
[CodeGen] Add machine instruction descriptors
Introduce an immutable instruction registry with exact operand, implicit register, tie, pseudo lifecycle, and memory constraints. Validate descriptor tables before publication and use the same rules to verify MachineInstr instances.
Diffstat (limited to 'backend/unittests/CodeGen/CMakeLists.txt')
-rw-r--r--backend/unittests/CodeGen/CMakeLists.txt18
1 files changed, 18 insertions, 0 deletions
diff --git a/backend/unittests/CodeGen/CMakeLists.txt b/backend/unittests/CodeGen/CMakeLists.txt
index cad2a44..a3aefde 100644
--- a/backend/unittests/CodeGen/CMakeLists.txt
+++ b/backend/unittests/CodeGen/CMakeLists.txt
@@ -3,6 +3,7 @@
set(
RCCBackendCodeGenTestSources
CoreTypesTest.cpp
+ InstructionDescriptorTest.cpp
MachineIRCoreTest.cpp
MachineValueTypesTest.cpp
)
@@ -13,6 +14,21 @@ target_link_libraries(RCCBackendCodeGenCoreTypesTests PRIVATE RCCBackend::CodeGe
add_test(NAME RCCBackend.CodeGen.CoreTypes COMMAND RCCBackendCodeGenCoreTypesTests)
+add_executable(
+ RCCBackendCodeGenInstructionDescriptorTests
+ InstructionDescriptorTest.cpp
+)
+rcc_backend_configure_target(RCCBackendCodeGenInstructionDescriptorTests)
+target_link_libraries(
+ RCCBackendCodeGenInstructionDescriptorTests
+ PRIVATE RCCBackend::CodeGen
+)
+
+add_test(
+ NAME RCCBackend.CodeGen.InstructionDescriptor
+ COMMAND RCCBackendCodeGenInstructionDescriptorTests
+)
+
add_executable(RCCBackendCodeGenMachineValueTypesTests MachineValueTypesTest.cpp)
rcc_backend_configure_target(RCCBackendCodeGenMachineValueTypesTests)
target_link_libraries(RCCBackendCodeGenMachineValueTypesTests PRIVATE RCCBackend::CodeGen)
@@ -33,11 +49,13 @@ add_test(
rcc_backend_register_format_files(
"${CMAKE_CURRENT_SOURCE_DIR}/CoreTypesTest.cpp"
+ "${CMAKE_CURRENT_SOURCE_DIR}/InstructionDescriptorTest.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/MachineIRCoreTest.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/MachineValueTypesTest.cpp"
)
rcc_backend_register_tidy_files(
"${CMAKE_CURRENT_SOURCE_DIR}/CoreTypesTest.cpp"
+ "${CMAKE_CURRENT_SOURCE_DIR}/InstructionDescriptorTest.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/MachineIRCoreTest.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/MachineValueTypesTest.cpp"
)