@@ -2557,15 +2557,15 @@ def UMADDLrrr : WideMulAccum<0, 0b101, "umaddl", add, zext>;
25572557def UMSUBLrrr : WideMulAccum<1, 0b101, "umsubl", sub, zext>;
25582558
25592559def : Pat<(i64 (mul (sext_inreg GPR64:$Rn, i32), (sext_inreg GPR64:$Rm, i32))),
2560- (SMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), XZR)>;
2560+ (SMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), XZR)>;
25612561def : Pat<(i64 (mul (sext_inreg GPR64:$Rn, i32), (sext GPR32:$Rm))),
2562- (SMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, XZR)>;
2562+ (SMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, XZR)>;
25632563def : Pat<(i64 (mul (sext GPR32:$Rn), (sext GPR32:$Rm))),
25642564 (SMADDLrrr GPR32:$Rn, GPR32:$Rm, XZR)>;
25652565def : Pat<(i64 (mul (and GPR64:$Rn, 0xFFFFFFFF), (and GPR64:$Rm, 0xFFFFFFFF))),
2566- (UMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), XZR)>;
2566+ (UMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), XZR)>;
25672567def : Pat<(i64 (mul (and GPR64:$Rn, 0xFFFFFFFF), (zext GPR32:$Rm))),
2568- (UMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, XZR)>;
2568+ (UMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, XZR)>;
25692569def : Pat<(i64 (mul (zext GPR32:$Rn), (zext GPR32:$Rm))),
25702570 (UMADDLrrr GPR32:$Rn, GPR32:$Rm, XZR)>;
25712571
@@ -2609,44 +2609,44 @@ def : Pat<(i64 (sub GPR64:$Ra, (mul (sext_inreg GPR64:$Rn, i32),
26092609 (MOVi32imm (trunc_imm imm:$C)), GPR64:$Ra)>;
26102610
26112611def : Pat<(i64 (smullwithsignbits GPR64:$Rn, GPR64:$Rm)),
2612- (SMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), XZR)>;
2612+ (SMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), XZR)>;
26132613def : Pat<(i64 (smullwithsignbits GPR64:$Rn, (sext GPR32:$Rm))),
2614- (SMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, XZR)>;
2614+ (SMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, XZR)>;
26152615
26162616def : Pat<(i64 (add (smullwithsignbits GPR64:$Rn, GPR64:$Rm), GPR64:$Ra)),
2617- (SMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), GPR64:$Ra)>;
2617+ (SMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), GPR64:$Ra)>;
26182618def : Pat<(i64 (add (smullwithsignbits GPR64:$Rn, (sext GPR32:$Rm)), GPR64:$Ra)),
2619- (SMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, GPR64:$Ra)>;
2619+ (SMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, GPR64:$Ra)>;
26202620
26212621def : Pat<(i64 (ineg (smullwithsignbits GPR64:$Rn, GPR64:$Rm))),
2622- (SMSUBLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), XZR)>;
2622+ (SMSUBLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), XZR)>;
26232623def : Pat<(i64 (ineg (smullwithsignbits GPR64:$Rn, (sext GPR32:$Rm)))),
2624- (SMSUBLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, XZR)>;
2624+ (SMSUBLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, XZR)>;
26252625
26262626def : Pat<(i64 (sub GPR64:$Ra, (smullwithsignbits GPR64:$Rn, GPR64:$Rm))),
2627- (SMSUBLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), GPR64:$Ra)>;
2627+ (SMSUBLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), GPR64:$Ra)>;
26282628def : Pat<(i64 (sub GPR64:$Ra, (smullwithsignbits GPR64:$Rn, (sext GPR32:$Rm)))),
2629- (SMSUBLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, GPR64:$Ra)>;
2629+ (SMSUBLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, GPR64:$Ra)>;
26302630
26312631def : Pat<(i64 (mul top32Zero:$Rn, top32Zero:$Rm)),
2632- (UMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), XZR)>;
2632+ (UMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), XZR)>;
26332633def : Pat<(i64 (mul top32Zero:$Rn, (zext GPR32:$Rm))),
2634- (UMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, XZR)>;
2634+ (UMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, XZR)>;
26352635
26362636def : Pat<(i64 (add (mul top32Zero:$Rn, top32Zero:$Rm), GPR64:$Ra)),
2637- (UMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), GPR64:$Ra)>;
2637+ (UMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), GPR64:$Ra)>;
26382638def : Pat<(i64 (add (mul top32Zero:$Rn, (zext GPR32:$Rm)), GPR64:$Ra)),
2639- (UMADDLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, GPR64:$Ra)>;
2639+ (UMADDLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, GPR64:$Ra)>;
26402640
26412641def : Pat<(i64 (ineg (mul top32Zero:$Rn, top32Zero:$Rm))),
2642- (UMSUBLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), XZR)>;
2642+ (UMSUBLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), XZR)>;
26432643def : Pat<(i64 (ineg (mul top32Zero:$Rn, (zext GPR32:$Rm)))),
2644- (UMSUBLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, XZR)>;
2644+ (UMSUBLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, XZR)>;
26452645
26462646def : Pat<(i64 (sub GPR64:$Ra, (mul top32Zero:$Rn, top32Zero:$Rm))),
2647- (UMSUBLrrr (EXTRACT_SUBREG $Rn, sub_32), (EXTRACT_SUBREG $Rm, sub_32), GPR64:$Ra)>;
2647+ (UMSUBLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), (EXTRACT_SUBREG GPR64: $Rm, sub_32), GPR64:$Ra)>;
26482648def : Pat<(i64 (sub GPR64:$Ra, (mul top32Zero:$Rn, (zext GPR32:$Rm)))),
2649- (UMSUBLrrr (EXTRACT_SUBREG $Rn, sub_32), $Rm, GPR64:$Ra)>;
2649+ (UMSUBLrrr (EXTRACT_SUBREG GPR64: $Rn, sub_32), $Rm, GPR64:$Ra)>;
26502650} // AddedComplexity = 5
26512651
26522652def : MulAccumWAlias<"mul", MADDWrrr>;
@@ -7283,14 +7283,14 @@ multiclass Neon_INS_elt_pattern<ValueType VT128, ValueType VT64, ValueType VTSVE
72837283 def : Pat<(VT128 (vector_insert VT128:$Rn,
72847284 (VTScal (vector_extract VTSVE:$Rm, (i64 SVEIdxTy:$Immn))),
72857285 (i64 imm:$Immd))),
7286- (INS VT128:$Rn, imm:$Immd, (VT128 (EXTRACT_SUBREG VTSVE :$Rm, zsub)), SVEIdxTy:$Immn)>;
7286+ (INS VT128:$Rn, imm:$Immd, (VT128 (EXTRACT_SUBREG ZPR :$Rm, zsub)), SVEIdxTy:$Immn)>;
72877287
72887288 def : Pat<(VT64 (vector_insert VT64:$Rn,
72897289 (VTScal (vector_extract VTSVE:$Rm, (i64 SVEIdxTy:$Immn))),
72907290 (i64 imm:$Immd))),
72917291 (EXTRACT_SUBREG
72927292 (INS (SUBREG_TO_REG (i64 0), VT64:$Rn, dsub), imm:$Immd,
7293- (VT128 (EXTRACT_SUBREG VTSVE :$Rm, zsub)), SVEIdxTy:$Immn),
7293+ (VT128 (EXTRACT_SUBREG ZPR :$Rm, zsub)), SVEIdxTy:$Immn),
72947294 dsub)>;
72957295 // Extracting from another NEON vector
72967296 def : Pat<(VT128 (vector_insert V128:$src,
0 commit comments