diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index 4dc106eda73..43e6b1bc8a4 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -3814,14 +3814,8 @@ SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, unsigned Intrinsic) { MDNode *Variable = DI.getVariable(); // Parameters are handled specially. - bool isParameter = false; - ConstantInt *CI = dyn_cast_or_null(Variable->getOperand(0)); - if (CI) { - unsigned Val = CI->getZExtValue(); - unsigned Tag = Val & ~LLVMDebugVersionMask; - if (Tag == dwarf::DW_TAG_arg_variable) - isParameter = true; - } + bool isParameter = + DIVariable(Variable).getTag() == dwarf::DW_TAG_arg_variable; const Value *Address = DI.getAddress(); if (!Address) return 0;