@@ -1622,17 +1622,16 @@ bool AArch64LegalizerInfo::legalizeSmallCMGlobalValue(
1622
1622
1623
1623
bool AArch64LegalizerInfo::legalizeIntrinsic (LegalizerHelper &Helper,
1624
1624
MachineInstr &MI) const {
1625
- auto LowerBinOp = [&MI](unsigned Opcode) {
1626
- MachineIRBuilder MIB (MI);
1625
+ MachineIRBuilder MIB (MI);
1626
+ MachineRegisterInfo &MRI = *MIB.getMRI ();
1627
+
1628
+ auto LowerBinOp = [&MI, &MIB](unsigned Opcode) {
1627
1629
MIB.buildInstr (Opcode, {MI.getOperand (0 )},
1628
1630
{MI.getOperand (2 ), MI.getOperand (3 )});
1629
1631
MI.eraseFromParent ();
1630
1632
return true ;
1631
1633
};
1632
1634
1633
- MachineIRBuilder MIB (MI);
1634
- MachineRegisterInfo &MRI = *MIB.getMRI ();
1635
-
1636
1635
Intrinsic::ID IntrinsicID = cast<GIntrinsic>(MI).getIntrinsicID ();
1637
1636
switch (IntrinsicID) {
1638
1637
case Intrinsic::vacopy: {
@@ -1788,22 +1787,22 @@ bool AArch64LegalizerInfo::legalizeIntrinsic(LegalizerHelper &Helper,
1788
1787
return true ;
1789
1788
}
1790
1789
case Intrinsic::aarch64_neon_sqadd: {
1791
- if (MIB. getMRI ()-> getType (MI.getOperand (0 ).getReg ()).isVector ())
1790
+ if (MRI. getType (MI.getOperand (0 ).getReg ()).isVector ())
1792
1791
return LowerBinOp (TargetOpcode::G_SADDSAT);
1793
1792
break ;
1794
1793
}
1795
1794
case Intrinsic::aarch64_neon_sqsub: {
1796
- if (MIB. getMRI ()-> getType (MI.getOperand (0 ).getReg ()).isVector ())
1795
+ if (MRI. getType (MI.getOperand (0 ).getReg ()).isVector ())
1797
1796
return LowerBinOp (TargetOpcode::G_SSUBSAT);
1798
1797
break ;
1799
1798
}
1800
1799
case Intrinsic::aarch64_neon_uqadd: {
1801
- if (MIB. getMRI ()-> getType (MI.getOperand (0 ).getReg ()).isVector ())
1800
+ if (MRI. getType (MI.getOperand (0 ).getReg ()).isVector ())
1802
1801
return LowerBinOp (TargetOpcode::G_UADDSAT);
1803
1802
break ;
1804
1803
}
1805
1804
case Intrinsic::aarch64_neon_uqsub: {
1806
- if (MIB. getMRI ()-> getType (MI.getOperand (0 ).getReg ()).isVector ())
1805
+ if (MRI. getType (MI.getOperand (0 ).getReg ()).isVector ())
1807
1806
return LowerBinOp (TargetOpcode::G_USUBSAT);
1808
1807
break ;
1809
1808
}
0 commit comments