Author: Martin Storsjö
Date: 2020-05-18T18:24:44-07:00
New Revision: aba4e3fa3bd0aad13168f2f6e8f1874f9a0fdb57

URL: 
https://github.com/llvm/llvm-project/commit/aba4e3fa3bd0aad13168f2f6e8f1874f9a0fdb57
DIFF: 
https://github.com/llvm/llvm-project/commit/aba4e3fa3bd0aad13168f2f6e8f1874f9a0fdb57.diff

LOG: [lldb] [PECOFF] Only use PECallFrameInfo on the one supported architecture

The RuntimeFunction struct, which PECallFrameInfo interprets, has a
different layout and differnet semantics on all architectures.

Differential Revision: https://reviews.llvm.org/D77000

(cherry picked from commit aa786b881fc89a2a9883bff77912f2053126f95b)

Added: 
    

Modified: 
    lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp

Removed: 
    


################################################################################
diff  --git a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp 
b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
index 2e62e3292b9a..750bc77bdf74 100644
--- a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
+++ b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
@@ -780,6 +780,9 @@ std::unique_ptr<CallFrameInfo> 
ObjectFilePECOFF::CreateCallFrameInfo() {
   if (!data_dir_exception.vmaddr)
     return {};
 
+  if (m_coff_header.machine != llvm::COFF::IMAGE_FILE_MACHINE_AMD64)
+    return {};
+
   return std::make_unique<PECallFrameInfo>(*this, data_dir_exception.vmaddr,
                                            data_dir_exception.vmsize);
 }


        
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to