[llvm] r228567 - [Orc] Tweak lambda capture lists to try to avoid an ICE on gcc-4.7.2. NFC.
Lang Hames
lhames at gmail.com
Sun Feb 8 23:22:56 PST 2015
Author: lhames
Date: Mon Feb 9 01:22:56 2015
New Revision: 228567
URL: http://llvm.org/viewvc/llvm-project?rev=228567&view=rev
Log:
[Orc] Tweak lambda capture lists to try to avoid an ICE on gcc-4.7.2. NFC.
Apparently gcc-4.7.2 is touchy about 'this' appearing in a lambda capture list
along with other captures. I've rewritten my captures to try to avoid the issue.
Modified:
llvm/trunk/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h
llvm/trunk/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h
Modified: llvm/trunk/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h?rev=228567&r1=228566&r2=228567&view=diff
==============================================================================
--- llvm/trunk/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h (original)
+++ llvm/trunk/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h Mon Feb 9 01:22:56 2015
@@ -44,7 +44,7 @@ private:
case NotEmitted:
if (provides(Name, ExportedSymbolsOnly))
return JITSymbol(
- [this,ExportedSymbolsOnly,Name,&B]() -> TargetAddress {
+ [=,&B]() -> TargetAddress {
if (EmitState == Emitting)
return 0;
else if (EmitState != Emitted) {
Modified: llvm/trunk/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h?rev=228567&r1=228566&r2=228567&view=diff
==============================================================================
--- llvm/trunk/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h (original)
+++ llvm/trunk/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h Mon Feb 9 01:22:56 2015
@@ -221,7 +221,7 @@ public:
bool ExportedSymbolsOnly) {
if (auto Addr = H->getSymbolAddress(Name, ExportedSymbolsOnly))
return JITSymbol(
- [this, Addr, H](){
+ [=](){
if (H->NeedsFinalization()) {
H->Finalize();
if (NotifyFinalized)
More information about the llvm-commits
mailing list