[PATCH] D41089: [COFF] Don't error out on undefined references to __enclave_config
    Martin Storsjö via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Dec 11 12:54:08 PST 2017
    
    
  
mstorsjo created this revision.
This is required for linking the CRT from MSVC 2017 15.5.
While this is unrelated to guardcf.test in general, it's the same kind of issue (avoiding errors due to undefined symbols), so I added the symbol to that test instead of creating a completely new one.
https://reviews.llvm.org/D41089
Files:
  COFF/Driver.cpp
  test/COFF/guardcf.test
Index: test/COFF/guardcf.test
===================================================================
--- test/COFF/guardcf.test
+++ test/COFF/guardcf.test
@@ -71,4 +71,10 @@
     SimpleType:      IMAGE_SYM_TYPE_NULL
     ComplexType:     IMAGE_SYM_DTYPE_NULL
     StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
+  - Name:            __enclave_config
+    Value:           0
+    SectionNumber:   0
+    SimpleType:      IMAGE_SYM_TYPE_NULL
+    ComplexType:     IMAGE_SYM_DTYPE_NULL
+    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
 ...
Index: COFF/Driver.cpp
===================================================================
--- COFF/Driver.cpp
+++ COFF/Driver.cpp
@@ -1170,6 +1170,8 @@
   Symtab->addAbsolute(mangle("__guard_iat_table"), 0);
   Symtab->addAbsolute(mangle("__guard_longjmp_count"), 0);
   Symtab->addAbsolute(mangle("__guard_longjmp_table"), 0);
+  // Needed for MSVC 2017 15.5 CRT.
+  Symtab->addAbsolute(mangle("__enclave_config"), 0);
 
   // This code may add new undefined symbols to the link, which may enqueue more
   // symbol resolution tasks, so we need to continue executing tasks until we
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D41089.126427.patch
Type: text/x-patch
Size: 1111 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171211/38561234/attachment.bin>
    
    
More information about the llvm-commits
mailing list