diff options
author | Arnaud A. de Grandmaison <arnaud.degrandmaison@arm.com> | 2014-07-18 14:23:58 +0000 |
---|---|---|
committer | Arnaud A. de Grandmaison <arnaud.degrandmaison@arm.com> | 2014-07-18 14:23:58 +0000 |
commit | 18bc4fff48f4caa7a3fa0750aa0fbecd3ff1ba93 (patch) | |
tree | 19a1d2de140a56753d70fb502f2c76bc74a59285 /clang/lib/CodeGen/CGExpr.cpp | |
parent | 1be89f4977724896289e6d706690ada275e9f451 (diff) | |
download | bcm5719-llvm-18bc4fff48f4caa7a3fa0750aa0fbecd3ff1ba93.tar.gz bcm5719-llvm-18bc4fff48f4caa7a3fa0750aa0fbecd3ff1ba93.zip |
Revert "Emit lifetime.start / lifetime.end markers for unnamed temporary objects."
This reverts commit dbf785a6432f78a8ec229665876647c4cc610d3d, while I qm
investigating a buildbot failure.
llvm-svn: 213380
Diffstat (limited to 'clang/lib/CodeGen/CGExpr.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGExpr.cpp | 15 |
1 files changed, 0 insertions, 15 deletions
diff --git a/clang/lib/CodeGen/CGExpr.cpp b/clang/lib/CodeGen/CGExpr.cpp index 1cb43ef6595..63731b7b7d0 100644 --- a/clang/lib/CodeGen/CGExpr.cpp +++ b/clang/lib/CodeGen/CGExpr.cpp @@ -353,17 +353,6 @@ LValue CodeGenFunction::EmitMaterializeTemporaryExpr( // Create and initialize the reference temporary. llvm::Value *Object = createReferenceTemporary(*this, M, E); - - uint64_t size = - CGM.getDataLayout().getTypeStoreSize(ConvertTypeForMem(E->getType())); - llvm::Value *sizeV = nullptr; - llvm::AllocaInst *Alloca = dyn_cast<llvm::AllocaInst>(Object); - bool useLifetimeMarkers = Alloca && shouldUseLifetimeMarkers(size); - if (useLifetimeMarkers) { - sizeV = llvm::ConstantInt::get(Int64Ty, size); - EmitLifetimeStart(sizeV, Object); - } - if (auto *Var = dyn_cast<llvm::GlobalVariable>(Object)) { // If the temporary is a global and has a constant initializer, we may // have already initialized it. @@ -374,10 +363,6 @@ LValue CodeGenFunction::EmitMaterializeTemporaryExpr( } else { EmitAnyExprToMem(E, Object, Qualifiers(), /*IsInit*/true); } - - if (useLifetimeMarkers) - EHStack.pushCleanup<CallLifetimeEnd>(NormalAndEHCleanup, Object, sizeV); - pushTemporaryCleanup(*this, M, E, Object); // Perform derived-to-base casts and/or field accesses, to get from the |