aboutsummaryrefslogtreecommitdiff
path: root/backend/include/rcc/CodeGen
diff options
context:
space:
mode:
authorRichard-Qin-X <richard.qin.001@gmail.com>2026-08-15 03:11:22 +0800
committerRichard-Qin-X <richard.qin.001@gmail.com>2026-08-15 03:11:22 +0800
commit7d763c8b0ae6eee5f015fa82c744bff4c7ec8c8b (patch)
tree5394846395d59f68a33a2f590ddd144940c61051 /backend/include/rcc/CodeGen
parent2c39d48321658c43d49ada4d2b06be5e0de5d158 (diff)
downloadrcc-project-7d763c8b0ae6eee5f015fa82c744bff4c7ec8c8b.tar.gz
rcc-project-7d763c8b0ae6eee5f015fa82c744bff4c7ec8c8b.tar.xz
[GlobalISel] Preserve worklists when moving CSE instructions
Diffstat (limited to 'backend/include/rcc/CodeGen')
-rw-r--r--backend/include/rcc/CodeGen/MachineBasicBlock.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/backend/include/rcc/CodeGen/MachineBasicBlock.h b/backend/include/rcc/CodeGen/MachineBasicBlock.h
index da538db..10cc438 100644
--- a/backend/include/rcc/CodeGen/MachineBasicBlock.h
+++ b/backend/include/rcc/CodeGen/MachineBasicBlock.h
@@ -99,6 +99,9 @@ public:
MachineInstr &Instruction);
[[nodiscard]] Expected<void> insertInstructionAfter(MachineInstr &Position,
MachineInstr &Instruction);
+ // Reorder linked instructions without reporting removal or insertion to the delegate.
+ [[nodiscard]] Expected<void> spliceInstructionBefore(MachineInstr &Position,
+ MachineInstr &Instruction);
[[nodiscard]] Expected<void> removeInstruction(MachineInstr &Instruction);
void clearInstructions() noexcept;