From 97b6c145c11c3060351cad815e4b711df79c5045 Mon Sep 17 00:00:00 2001 From: David Green Date: Thu, 18 Sep 2025 09:55:50 +0100 Subject: [PATCH] [AArch64] Remove unnecessary extloadi32 -> i32 pattern. NFCI As far as I can tell this load pattern will not perform anything as it could only trigger from a i32 MemVT extended to a i32. --- llvm/lib/Target/AArch64/AArch64InstrInfo.td | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/llvm/lib/Target/AArch64/AArch64InstrInfo.td b/llvm/lib/Target/AArch64/AArch64InstrInfo.td index 3fcafc6d35090..8fc3b25dbe94a 100644 --- a/llvm/lib/Target/AArch64/AArch64InstrInfo.td +++ b/llvm/lib/Target/AArch64/AArch64InstrInfo.td @@ -3844,7 +3844,7 @@ let AddedComplexity = 10 in { } -// zextload -> i64 +// zextload -> i32 multiclass ExtLoadTo32ROPat { def : Pat<(i32 (loadop (ro.Wpat GPR64sp:$Rn, GPR32:$Rm, ro.Wext:$extend))), @@ -3852,14 +3852,12 @@ multiclass ExtLoadTo32ROPat; - } let AddedComplexity = 10 in { // extload -> zextload defm : ExtLoadTo32ROPat; defm : ExtLoadTo32ROPat; - defm : ExtLoadTo32ROPat; // zextloadi1 -> zextloadi8 defm : ExtLoadTo32ROPat;