[PATCH] D112925: [ELF] Better resemble GNU ld when placing orphan sections into memory regions
    Fangrui Song via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed Nov 10 13:53:31 PST 2021
    
    
  
MaskRay accepted this revision.
MaskRay added a comment.
Worth mentioning that previous `error: no memory region specified for section ` may be accepted like GNU ld now.
================
Comment at: lld/ELF/LinkerScript.cpp:894
     if (MemoryRegion *m = memoryRegions.lookup(sec->memoryRegionName))
-      return m;
+      return std::make_pair(m, m);
     error("memory region '" + sec->memoryRegionName + "' not declared");
----------------
ditto below
================
Comment at: lld/ELF/LinkerScript.cpp:906
+  // An allocatable orphan section should continue the previous memory region.
+  if (sec->sectionIndex == UINT32_MAX && sec->flags & SHF_ALLOC && hint)
+    return std::make_pair(hint, hint);
----------------
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D112925/new/
https://reviews.llvm.org/D112925
    
    
More information about the llvm-commits
mailing list