diff options
| author | Richard-Qin-X <richard.qin.001@gmail.com> | 2026-08-01 13:24:09 +0800 |
|---|---|---|
| committer | Richard-Qin-X <richard.qin.001@gmail.com> | 2026-08-01 13:24:09 +0800 |
| commit | 19d8e4f562a8583b002dbaa837ec0083e7768a4f (patch) | |
| tree | d8525d05d65c69c81076b8cdafdf0bfd400d4053 /backend/unittests/CodeGen/CMakeLists.txt | |
| parent | 8553df97bbc6154dae9d0ad861857e71a0efa420 (diff) | |
| download | rcc-project-19d8e4f562a8583b002dbaa837ec0083e7768a4f.tar.gz rcc-project-19d8e4f562a8583b002dbaa837ec0083e7768a4f.tar.xz | |
[CodeGen] Add strict MachineIR verification
Verify arena catalogs, intrusive layouts, reciprocal CFG edges, operand ownership, exact def-use coverage, instruction descriptors, pseudo deadlines, and MachineFunctionProperties. Preserve monotonic-arena history while rejecting detached objects that retain live state.
Diffstat (limited to 'backend/unittests/CodeGen/CMakeLists.txt')
| -rw-r--r-- | backend/unittests/CodeGen/CMakeLists.txt | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/backend/unittests/CodeGen/CMakeLists.txt b/backend/unittests/CodeGen/CMakeLists.txt index ddba86a..6f17fc0 100644 --- a/backend/unittests/CodeGen/CMakeLists.txt +++ b/backend/unittests/CodeGen/CMakeLists.txt @@ -6,6 +6,7 @@ set( InstructionDescriptorTest.cpp MachineIRBuilderTest.cpp MachineIRCoreTest.cpp + MachineVerifierTest.cpp MachineValueTypesTest.cpp ) @@ -42,6 +43,18 @@ add_test( COMMAND RCCBackendCodeGenMachineIRBuilderTests ) +add_executable(RCCBackendCodeGenMachineVerifierTests MachineVerifierTest.cpp) +rcc_backend_configure_target(RCCBackendCodeGenMachineVerifierTests) +target_link_libraries( + RCCBackendCodeGenMachineVerifierTests + PRIVATE RCCBackend::CodeGen +) + +add_test( + NAME RCCBackend.CodeGen.MachineVerifier + COMMAND RCCBackendCodeGenMachineVerifierTests +) + add_executable(RCCBackendCodeGenMachineValueTypesTests MachineValueTypesTest.cpp) rcc_backend_configure_target(RCCBackendCodeGenMachineValueTypesTests) target_link_libraries(RCCBackendCodeGenMachineValueTypesTests PRIVATE RCCBackend::CodeGen) @@ -65,6 +78,7 @@ rcc_backend_register_format_files( "${CMAKE_CURRENT_SOURCE_DIR}/InstructionDescriptorTest.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/MachineIRBuilderTest.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/MachineIRCoreTest.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/MachineVerifierTest.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/MachineValueTypesTest.cpp" ) rcc_backend_register_tidy_files( @@ -72,5 +86,6 @@ rcc_backend_register_tidy_files( "${CMAKE_CURRENT_SOURCE_DIR}/InstructionDescriptorTest.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/MachineIRBuilderTest.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/MachineIRCoreTest.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/MachineVerifierTest.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/MachineValueTypesTest.cpp" ) |
