@@ -947,19 +947,19 @@ SDValue XtensaTargetLowering::LowerVASTART(SDValue Op,
947947 // Store pointer to arguments given on stack (va_stk)
948948 SDValue StackPtr = DAG.getNode (ISD::SUB, DL, PtrVT, StackOffsetFI,
949949 DAG.getConstant (32 , DL, PtrVT));
950+
950951 SDValue StoreStackPtr =
951952 DAG.getStore (Chain, DL, StackPtr, Addr, MachinePointerInfo (SV));
952953
953954 uint64_t NextOffset = FrameOffset;
954- SDValue NextPtr = DAG. getNode (ISD::ADD, DL, PtrVT, Addr,
955- DAG.getConstant (NextOffset, DL, PtrVT ));
955+ SDValue NextPtr =
956+ DAG.getObjectPtrOffset (DL, Addr, TypeSize::getFixed (NextOffset ));
956957
957958 // Store pointer to arguments given on registers (va_reg)
958959 SDValue StoreRegPtr = DAG.getStore (StoreStackPtr, DL, FrameIndex, NextPtr,
959960 MachinePointerInfo (SV, NextOffset));
960961 NextOffset += FrameOffset;
961- NextPtr = DAG.getNode (ISD::ADD, DL, PtrVT, Addr,
962- DAG.getConstant (NextOffset, DL, PtrVT));
962+ NextPtr = DAG.getObjectPtrOffset (DL, Addr, TypeSize::getFixed (NextOffset));
963963
964964 // Store third word : position in bytes of the first VA argument (va_ndx)
965965 return DAG.getStore (StoreRegPtr, DL, VAIndex, NextPtr,
@@ -997,15 +997,15 @@ SDValue XtensaTargetLowering::LowerVAARG(SDValue Op, SelectionDAG &DAG) const {
997997 InChain = VAStack.getValue (1 );
998998
999999 // va_reg
1000- SDValue VARegPtr = DAG. getNode (ISD::ADD, DL, PtrVT, VAListPtr,
1001- DAG.getConstant ( 4 , DL, MVT:: i32 ));
1000+ SDValue VARegPtr =
1001+ DAG.getObjectPtrOffset (DL, VAListPtr, TypeSize::getFixed ( 4 ));
10021002 SDValue VAReg =
10031003 DAG.getLoad (MVT::i32 , DL, InChain, VARegPtr, MachinePointerInfo ());
10041004 InChain = VAReg.getValue (1 );
10051005
10061006 // va_ndx
1007- SDValue VarArgIndexPtr = DAG. getNode (ISD::ADD, DL, PtrVT, VARegPtr,
1008- DAG.getConstant ( 4 , DL, MVT:: i32 ));
1007+ SDValue VarArgIndexPtr =
1008+ DAG.getObjectPtrOffset (DL, VARegPtr, TypeSize::getFixed ( 4 ));
10091009 SDValue VAIndex =
10101010 DAG.getLoad (MVT::i32 , DL, InChain, VarArgIndexPtr, MachinePointerInfo ());
10111011 InChain = VAIndex.getValue (1 );
0 commit comments