diff options
| author | Richard-Qin-X <richard.qin.001@gmail.com> | 2026-08-01 16:07:24 +0800 |
|---|---|---|
| committer | Richard-Qin-X <richard.qin.001@gmail.com> | 2026-08-01 16:07:24 +0800 |
| commit | 924dcd36ebed84f04729de05ec08b311a36a04c1 (patch) | |
| tree | 300af742968d4d48915ef178855741f7087fc979 /backend/include/rcc/CodeGen/MachineFunctionCloner.h | |
| parent | cfdbcc469f9691bd9dce3b0b86982a63d86ca6b7 (diff) | |
| download | rcc-project-924dcd36ebed84f04729de05ec08b311a36a04c1.tar.gz rcc-project-924dcd36ebed84f04729de05ec08b311a36a04c1.tar.xz | |
[CodeGen] Add target register descriptions
Introduce an immutable register topology for units, subregisters, classes, banks, and preserved masks. Bind instruction descriptors to this topology through TargetDescription so builders, cloning, and verification share one target-aware contract. Add the test-only TestTarget model and positive and negative target fact coverage.
Diffstat (limited to 'backend/include/rcc/CodeGen/MachineFunctionCloner.h')
| -rw-r--r-- | backend/include/rcc/CodeGen/MachineFunctionCloner.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/backend/include/rcc/CodeGen/MachineFunctionCloner.h b/backend/include/rcc/CodeGen/MachineFunctionCloner.h index 658614f..09877d2 100644 --- a/backend/include/rcc/CodeGen/MachineFunctionCloner.h +++ b/backend/include/rcc/CodeGen/MachineFunctionCloner.h @@ -15,10 +15,10 @@ namespace rcc { -class InstructionSet; class MachineBasicBlock; class MachineFunction; class MachineInstr; +class TargetDescription; struct MachineFunctionCloneOptions final { MachineFunctionStableID NewStableID; @@ -81,12 +81,12 @@ private: const std::unordered_map<const MachineInstr *, MachineInstr *> &Instructions; friend Expected<MachineFunctionCloneResult> - cloneMachineFunction(const MachineFunction &Source, const InstructionSet &Instructions, + cloneMachineFunction(const MachineFunction &Source, const TargetDescription &Target, MachineFunctionCloneOptions Options); }; [[nodiscard]] Expected<MachineFunctionCloneResult> -cloneMachineFunction(const MachineFunction &Source, const InstructionSet &Instructions, +cloneMachineFunction(const MachineFunction &Source, const TargetDescription &Target, MachineFunctionCloneOptions Options); } // namespace rcc |
