summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorSanjoy Das <sanjoy@playingwithpointers.com>2016-03-24 22:37:52 +0000
committerSanjoy Das <sanjoy@playingwithpointers.com>2016-03-24 22:37:52 +0000
commit731c67fed25e8b10bb010572d4cf356bbb0e11d2 (patch)
tree2805a5d893648e6cc4d41ad561349c80c55147c1 /llvm/lib/CodeGen
parent5109bfd1659ea3ea76ba915e62865a69fa76751f (diff)
downloadbcm5719-llvm-731c67fed25e8b10bb010572d4cf356bbb0e11d2.tar.gz
bcm5719-llvm-731c67fed25e8b10bb010572d4cf356bbb0e11d2.zip
Lower varargs correctly in deopt bundle lowering
Earlier we were ignoring varargs in LowerCallSiteWithDeoptBundle because populateCallLoweringInfo does not set CallLoweringInfo::IsVarArg. llvm-svn: 264354
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r--llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp b/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
index bf9f1fa26fb..39fea622f93 100644
--- a/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
@@ -827,6 +827,7 @@ void SelectionDAGBuilder::LowerCallSiteWithDeoptBundle(
unsigned ArgBeginIndex = CS.arg_begin() - CS.getInstruction()->op_begin();
populateCallLoweringInfo(SI.CLI, CS, ArgBeginIndex, CS.getNumArgOperands(),
Callee, CS.getType(), false);
+ SI.CLI.IsVarArg = CS.getFunctionType()->isVarArg();
auto DeoptBundle = *CS.getOperandBundle(LLVMContext::OB_deopt);
OpenPOWER on IntegriCloud