summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/ItaniumCXXABI.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2018-03-10 01:47:22 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2018-03-10 01:47:22 +0000
commit007cb6df582f30ca9299d8b61357e9e45557c262 (patch)
treef64348e10d5d3ee78c3833e0b54f73c8e433d550 /clang/lib/CodeGen/ItaniumCXXABI.cpp
parentaaabea0636eb5177b4b26f9d932268dc7f677b08 (diff)
downloadbcm5719-llvm-007cb6df582f30ca9299d8b61357e9e45557c262.tar.gz
bcm5719-llvm-007cb6df582f30ca9299d8b61357e9e45557c262.zip
Revert r326946. It caused stack overflows by significantly increasing the size of a CallArgList.
llvm-svn: 327195
Diffstat (limited to 'clang/lib/CodeGen/ItaniumCXXABI.cpp')
-rw-r--r--clang/lib/CodeGen/ItaniumCXXABI.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/ItaniumCXXABI.cpp b/clang/lib/CodeGen/ItaniumCXXABI.cpp
index 0f0956deb9b..21223ea23dd 100644
--- a/clang/lib/CodeGen/ItaniumCXXABI.cpp
+++ b/clang/lib/CodeGen/ItaniumCXXABI.cpp
@@ -1474,7 +1474,8 @@ CGCXXABI::AddedStructorArgs ItaniumCXXABI::addImplicitConstructorArgs(
llvm::Value *VTT =
CGF.GetVTTParameter(GlobalDecl(D, Type), ForVirtualBase, Delegating);
QualType VTTTy = getContext().getPointerType(getContext().VoidPtrTy);
- Args.insert(Args.begin() + 1, CallArg(RValue::get(VTT), VTTTy));
+ Args.insert(Args.begin() + 1,
+ CallArg(RValue::get(VTT), VTTTy, /*needscopy=*/false));
return AddedStructorArgs::prefix(1); // Added one arg.
}
OpenPOWER on IntegriCloud