Refactor function that checks that __builtin_returnaddress's argument is constant.
[oota-llvm.git] / lib / Target / Hexagon / HexagonISelLowering.cpp
index e1e954afc5127fbe0fe4f3ef1fa99b0f07439be8..1d82285317eebf8fab700658dab51a1b9f6fb661 100644 (file)
@@ -982,11 +982,8 @@ HexagonTargetLowering::LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const {
   MachineFrameInfo *MFI = MF.getFrameInfo();
   MFI->setReturnAddressIsTaken(true);
 
-  if (!isa<ConstantSDNode>(Op.getOperand(0))) {
-    DAG.getContext()->emitError("argument to '__builtin_return_address' must "
-                                "be a constant integer");
+  if (verifyReturnAddressArgumentIsConstant(Op, DAG))
     return SDValue();
-  }
 
   EVT VT = Op.getValueType();
   SDLoc dl(Op);