Try to fix the build of IntelJITEventListener.
authorRafael Espindola <rafael.espindola@gmail.com>
Thu, 2 Jul 2015 21:24:12 +0000 (21:24 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Thu, 2 Jul 2015 21:24:12 +0000 (21:24 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241301 91177308-0d34-0410-b5e6-96231b3b80d8

lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp

index cfb71e07bd9f81929066ecd48a6e892067cc6d57..907144007fdd52035c9d068d9a8fc663903146fd 100644 (file)
@@ -114,10 +114,11 @@ void IntelJITEventListener::NotifyObjectEmitted(
     std::string SourceFileName;
 
     if (Sym.getType() == SymbolRef::ST_Function) {
-      StringRef  Name;
-      uint64_t   Addr;
-      if (Sym.getName(Name))
+      ErrorOr<StringRef> Name = Sym.getName();
+      if (!Name)
         continue;
+
+      uint64_t Addr;
       if (Sym.getAddress(Addr))
         continue;
       uint64_t Size = P.second;
@@ -126,10 +127,8 @@ void IntelJITEventListener::NotifyObjectEmitted(
       Functions.push_back((void*)Addr);
 
       // Build the function loaded notification message
-      iJIT_Method_Load FunctionMessage = FunctionDescToIntelJITFormat(*Wrapper,
-                                           Name.data(),
-                                           Addr,
-                                           Size);
+      iJIT_Method_Load FunctionMessage =
+          FunctionDescToIntelJITFormat(*Wrapper, Name->data(), Addr, Size);
       if (Context) {
         DILineInfoTable  Lines = Context->getLineInfoForAddressRange(Addr, Size);
         DILineInfoTable::iterator  Begin = Lines.begin();