[llvm] [AArch64] Expand FORM_TRANSPOSED_REG_TUPLE to copies before regalloc (PR #207205)

Gaƫtan Bossu via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 3 03:11:49 PDT 2026


================
@@ -58,6 +58,15 @@ def FORM_TRANSPOSED_REG_TUPLE_X4_PSEUDO :
   let hasSideEffects = 0;
 }
 
+// Expanded form of FORM_TRANSPOSED_REG_TUPLE. Each FORM_TRANSPOSED_REG_TUPLE is
+// expanded to one or more copies immediately before register allocation. This
+// ensures the live ranges of each member of the tuple are correctly modelled
+// during register allocation.
----------------
gbossu wrote:

I guess identifying `COPY` instructions whose destination is a `zpr4` subreg isn't that much extra work if hidden behind a helper function, but maybe you're concerned about matching too many copies?

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


More information about the llvm-commits mailing list