aboutsummaryrefslogtreecommitdiff
path: root/backend/lib
diff options
context:
space:
mode:
authorRichard-Qin-X <richard.qin.001@gmail.com>2026-08-11 18:18:38 +0800
committerRichard-Qin-X <richard.qin.001@gmail.com>2026-08-11 18:18:38 +0800
commitf7b25b15eaed953baa50dd2cb3e711a88a8927df (patch)
tree6394671382c6d9eb2dfc3d5b8d3a68352cfa4240 /backend/lib
parentf1da7d891f8c085866c4701a877b9f92f13d49c0 (diff)
downloadrcc-project-f7b25b15eaed953baa50dd2cb3e711a88a8927df.tar.gz
rcc-project-f7b25b15eaed953baa50dd2cb3e711a88a8927df.tar.xz
[MIR] Omit absent zero-offset MMO bases
Diffstat (limited to 'backend/lib')
-rw-r--r--backend/lib/MIR/MIPrinter.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/backend/lib/MIR/MIPrinter.cpp b/backend/lib/MIR/MIPrinter.cpp
index 9e86b72..25a7a0c 100644
--- a/backend/lib/MIR/MIPrinter.cpp
+++ b/backend/lib/MIR/MIPrinter.cpp
@@ -1278,9 +1278,11 @@ Expected<void> BodyPrinter::printMemoryOperand(const MachineMemOperand &Operand)
const std::string_view Preposition =
Operand.isLoad() && Operand.isStore() ? " on " : (Operand.isLoad() ? " from " : " into ");
- Output.append(Preposition);
- if (auto Printed = printMemoryBase(Description.Base, Description.Offset); !Printed) {
- return Printed;
+ if (Description.Base.kind() != MemoryBase::Kind::Unknown || Description.Offset != 0) {
+ Output.append(Preposition);
+ if (auto Printed = printMemoryBase(Description.Base, Description.Offset); !Printed) {
+ return Printed;
+ }
}
if (!Description.Size.isKnown() ||