[llvm] [SystemZ] Implement A, O and R inline assembly format flags (PR #80685)

Ilya Leoshkevich via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 7 03:45:57 PST 2024


================
@@ -946,6 +950,21 @@ bool SystemZAsmPrinter::PrintAsmMemoryOperand(const MachineInstr *MI,
                                               unsigned OpNo,
                                               const char *ExtraCode,
                                               raw_ostream &OS) {
+  if (ExtraCode && ExtraCode[0] && !ExtraCode[1]) {
+    switch (ExtraCode[0]) {
+    case 'A':
+      // Unlike EmitMachineNode(), EmitSpecialNode(INLINEASM) does not call
+      // setMemRefs(), so MI->memoperands() is empty and the alignment
+      // information is not available.
----------------
iii-i wrote:

Ok, I'll look into this. Ideally this will be as simple as adding an extra call, but, of course, there may be some fallout that will have to be investigated.

https://github.com/llvm/llvm-project/pull/80685


More information about the llvm-commits mailing list