diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-07-03 21:47:00 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-07-03 21:47:00 +0000 |
commit | a4b2733c861ee771e6c1eb9596cb4b32c3966bfb (patch) | |
tree | bb00c3ee8b40f76e52f8e3654494d716ba137a88 /llvm/lib/ExecutionEngine/OProfileJIT | |
parent | c0ad64543bb64d2a2863c56f34227654ffae57a7 (diff) | |
download | bcm5719-llvm-a4b2733c861ee771e6c1eb9596cb4b32c3966bfb.tar.gz bcm5719-llvm-a4b2733c861ee771e6c1eb9596cb4b32c3966bfb.zip |
Fix build with -DLLVM_USE_INTEL_JITEVENTS=ON -DLLVM_USE_OPROFILE=ON.
Is anyone using those?
llvm-svn: 241372
Diffstat (limited to 'llvm/lib/ExecutionEngine/OProfileJIT')
-rw-r--r-- | llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp b/llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp index b7203380526..d2fc4c784ec 100644 --- a/llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp +++ b/llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp @@ -89,12 +89,14 @@ void OProfileJITEventListener::NotifyObjectEmitted( for (const std::pair<SymbolRef, uint64_t> &P : computeSymbolSizes(DebugObj)) { SymbolRef Sym = P.first; if (Sym.getType() == SymbolRef::ST_Function) { - StringRef Name; - uint64_t Addr; - if (Sym.getName(Name)) + ErrorOr<StringRef> NameOrErr = Sym.getName(); + if (NameOrErr.getError()) continue; - if (Sym.getAddress(Addr)) + StringRef Name = *NameOrErr; + ErrorOr<uint64_t> AddrOrErr = Sym.getAddress(); + if (AddrOrErr.getError()) continue; + uint64_t Addr = *AddrOrErr; uint64_t Size = P.second; if (Wrapper->op_write_native_code(Name.data(), Addr, (void*)Addr, Size) @@ -126,8 +128,10 @@ void OProfileJITEventListener::NotifyFreeingObject(const ObjectFile &Obj) { E = DebugObj.symbol_end(); I != E; ++I) { if (I->getType() == SymbolRef::ST_Function) { - uint64_t Addr; - if (I->getAddress(Addr)) continue; + ErrorOr<uint64_t> AddrOrErr = I->getAddress(); + if (AddrOrErr.getError()) + continue; + uint64_t Addr = *AddrOrErr; if (Wrapper->op_unload_native_code(Addr) == -1) { DEBUG(dbgs() |