[llvm] [AArch64][MacroFusion] Fuse only tied AES pairs (PR #196484)

Tomer Shafir via llvm-commits llvm-commits at lists.llvm.org
Wed May 13 04:46:36 PDT 2026


tomershafir wrote:

The idea is to be more defensive towards the gap here, between

1. what we lower on ISel, pre-RA - always tied pseudos with a hard regalloc constraint, post RA - always a pair that writes to the same register
2. what we check on MacroFusion

AESMCrr that get used with FuseAES should not be reachable pre-RA if we run ISel, only post-RA as tied. In this case, the pathc is effectively a NFC. It aims to be mostly a defensive NFC.

On the other hand, the test demonstrates that without the extra check we could fail and possibly wrongly schedule untied pairs back to back. Bypassing ISel is the mean by which the test exercise this path

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


More information about the llvm-commits mailing list