[PATCH] D114548: [AArch64] Async unwind - Fix MTE codegen emitting frame adjustments in a loop

Momchil Velikov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 12 05:59:00 PST 2022


chill marked an inline comment as done.
chill added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp:609
+    MI.setDesc(TII->get(Op));
+    MI.tieOperands(1, 3);
   } else {
----------------
eugenis wrote:
> Is this an unrelated fix? Are we generating broken code because of this?
We are changing an "ordinary" instruction to a one with a writeback. Without this part we get
```
*** Bad machine code: Operand should be tied ***
- function:    stg_alloca18
- basic block: %bb.0 entry (0x70c9038)
- instruction: dead early-clobber renamable $x8, dead early-clobber renamable $x9 = STGloop_wback 272, killed $x9 :: (store (s2176) into %ir.a, align 16)
- operand 3:   killed $x9
```

when running MachineVerifier.



CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114548/new/

https://reviews.llvm.org/D114548



More information about the llvm-commits mailing list