diff options
Diffstat (limited to 'contrib/llvm/lib/ExecutionEngine/IntelJITEvents')
-rw-r--r-- | contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp | 9 | ||||
-rw-r--r-- | contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c | 5 |
2 files changed, 6 insertions, 8 deletions
diff --git a/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp b/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp index ee9096b..08d9d6b 100644 --- a/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp +++ b/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp @@ -13,11 +13,11 @@ //===----------------------------------------------------------------------===// #include "llvm/Config/config.h" -#include "EventListenerCommon.h" #include "IntelJITEventsWrapper.h" #include "llvm/ADT/DenseMap.h" #include "llvm/CodeGen/MachineFunction.h" #include "llvm/DebugInfo/DIContext.h" +#include "llvm/DebugInfo/DWARF/DWARFContext.h" #include "llvm/ExecutionEngine/JITEventListener.h" #include "llvm/IR/DebugInfo.h" #include "llvm/IR/Function.h" @@ -29,7 +29,6 @@ #include "llvm/Support/raw_ostream.h" using namespace llvm; -using namespace llvm::jitprofiling; using namespace llvm::object; #define DEBUG_TYPE "amplifier-jit-event-listener" @@ -41,7 +40,6 @@ class IntelJITEventListener : public JITEventListener { std::unique_ptr<IntelJITEventsWrapper> Wrapper; MethodIDMap MethodIDs; - FilenameCache Filenames; typedef SmallVector<const void *, 64> MethodAddressVector; typedef DenseMap<const void *, MethodAddressVector> ObjectMap; @@ -105,7 +103,7 @@ void IntelJITEventListener::NotifyObjectEmitted( // Get the address of the object image for use as a unique identifier const void* ObjData = DebugObj.getData().data(); - DIContext* Context = DIContext::getDWARFContext(DebugObj); + DIContext* Context = new DWARFContextInMemory(DebugObj); MethodAddressVector Functions; // Use symbol info to iterate functions in the object. @@ -121,10 +119,9 @@ void IntelJITEventListener::NotifyObjectEmitted( if (SymType == SymbolRef::ST_Function) { StringRef Name; uint64_t Addr; - uint64_t Size; if (I->getName(Name)) continue; if (I->getAddress(Addr)) continue; - if (I->getSize(Size)) continue; + uint64_t Size = I->getSize(); // Record this address in a local vector Functions.push_back((void*)Addr); diff --git a/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c b/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c index 7b507de..e966889 100644 --- a/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c +++ b/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c @@ -24,6 +24,7 @@ #else /* ITT_PLATFORM==ITT_PLATFORM_WIN */ #include <pthread.h> #include <dlfcn.h> +#include <stdint.h> #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */ #include <malloc.h> #include <stdlib.h> @@ -371,7 +372,7 @@ static int loadiJIT_Funcs() #if ITT_PLATFORM==ITT_PLATFORM_WIN FUNC_NotifyEvent = (TPNotify)GetProcAddress(m_libHandle, "NotifyEvent"); #else /* ITT_PLATFORM==ITT_PLATFORM_WIN */ - FUNC_NotifyEvent = (TPNotify)dlsym(m_libHandle, "NotifyEvent"); + FUNC_NotifyEvent = (TPNotify)(intptr_t)dlsym(m_libHandle, "NotifyEvent"); #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */ if (!FUNC_NotifyEvent) { @@ -382,7 +383,7 @@ static int loadiJIT_Funcs() #if ITT_PLATFORM==ITT_PLATFORM_WIN FUNC_Initialize = (TPInitialize)GetProcAddress(m_libHandle, "Initialize"); #else /* ITT_PLATFORM==ITT_PLATFORM_WIN */ - FUNC_Initialize = (TPInitialize)dlsym(m_libHandle, "Initialize"); + FUNC_Initialize = (TPInitialize)(intptr_t)dlsym(m_libHandle, "Initialize"); #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */ if (!FUNC_Initialize) { |