@@ -1811,11 +1811,11 @@ bool RISCVDAGToDAGISel::SelectFrameAddrRegImm(SDValue Addr, SDValue &Base,
1811
1811
return false ;
1812
1812
1813
1813
if (auto *FIN = dyn_cast<FrameIndexSDNode>(Addr.getOperand (0 ))) {
1814
- auto *CN = cast<ConstantSDNode>(Addr.getOperand (1 ));
1815
- if (isInt<12 >(CN-> getSExtValue () )) {
1814
+ int64_t CVal = cast<ConstantSDNode>(Addr.getOperand (1 ))-> getSExtValue ( );
1815
+ if (isInt<12 >(CVal )) {
1816
1816
Base = CurDAG->getTargetFrameIndex (FIN->getIndex (),
1817
1817
Subtarget->getXLenVT ());
1818
- Offset = CurDAG->getTargetConstant (CN-> getSExtValue () , SDLoc (Addr),
1818
+ Offset = CurDAG->getTargetConstant (CVal , SDLoc (Addr),
1819
1819
Subtarget->getXLenVT ());
1820
1820
return true ;
1821
1821
}
@@ -1840,13 +1840,13 @@ bool RISCVDAGToDAGISel::SelectAddrRegImm(SDValue Addr, SDValue &Base,
1840
1840
return true ;
1841
1841
1842
1842
if (CurDAG->isBaseWithConstantOffset (Addr)) {
1843
- auto *CN = cast<ConstantSDNode>(Addr.getOperand (1 ));
1844
- if (isInt<12 >(CN-> getSExtValue () )) {
1843
+ int64_t CVal = cast<ConstantSDNode>(Addr.getOperand (1 ))-> getSExtValue ( );
1844
+ if (isInt<12 >(CVal )) {
1845
1845
Base = Addr.getOperand (0 );
1846
1846
if (auto *FIN = dyn_cast<FrameIndexSDNode>(Base))
1847
1847
Base = CurDAG->getTargetFrameIndex (FIN->getIndex (),
1848
1848
Subtarget->getXLenVT ());
1849
- Offset = CurDAG->getTargetConstant (CN-> getSExtValue () , SDLoc (Addr),
1849
+ Offset = CurDAG->getTargetConstant (CVal , SDLoc (Addr),
1850
1850
Subtarget->getXLenVT ());
1851
1851
return true ;
1852
1852
}
0 commit comments