Skip to content
  1. May 11, 2017
  2. May 10, 2017
  3. May 09, 2017
  4. May 08, 2017
    • Rafael Espindola's avatar
      Simplify orphan section positioning. · b5de5b93
      Rafael Espindola authored
      The code following this one already considers every possible insertion
      point for orphan sections, there is no point in sorting them before.
      
      llvm-svn: 302441
      b5de5b93
    • George Rimar's avatar
      [ELF] - Set DF_STATIC_TLS flag for i386 target. · 1564122b
      George Rimar authored
      This is PR32437.
      
      DF_STATIC_TLS
      If set in a shared object or executable, this flag instructs the 
      dynamic linker to reject attempts to load this file dynamically. 
      It indicates that the shared object or executable contains code 
      using a static thread-local storage scheme. Implementations need 
      not support any form of thread-local storage.
      
      Patch checks if IE/LE relocations were used to check if code uses
      static model. If so it sets the DF_STATIC_TLS flag.
      
      Differential revision: https://reviews.llvm.org/D32354
      
      llvm-svn: 302414
      1564122b
    • George Rimar's avatar
      [ELF] - Linkerscript: support combination of linkerscript and --compress-debug-sections. · d86a4e50
      George Rimar authored
      Previously it was impossible to use linkerscript with --compress-debug-sections 
      because of assert failture:
      Assertion failed: isFinalized(), file C:\llvm\lib\MC\StringTableBuilder.cpp, line 64
      
      Patch fixes the issue
      
      llvm-svn: 302413
      d86a4e50
  5. May 05, 2017
  6. May 04, 2017
    • Rafael Espindola's avatar
      Simplify the header allocation. · 02ed7575
      Rafael Espindola authored
      In the non linker script case we would try very early to find out if
      we could allocate the headers. Failing to do that would add extra
      alignment to the first ro section, since we would set PageAlign
      thinking it was the first section in the PT_LOAD.
      
      In the linker script case the header allocation must be done in the
      end, causing some duplication.
      
      We now tentatively add the headers to the first PT_LOAD and if it
      turns out they don't fit, remove them. With this we only need to
      allocate the headers in one place in the code.
      
      llvm-svn: 302186
      02ed7575
    • Rafael Espindola's avatar
      Reduce code duplication. NFC. · 808f2d3c
      Rafael Espindola authored
      llvm-svn: 302155
      808f2d3c
    • Rafael Espindola's avatar
      Fix accounting of tbss. · 7c4eafa3
      Rafael Espindola authored
      We were correctly computing the size contribution of a .tbss input
      section (it is none), but we were incorrectly considering the
      alignment of the output section: it was advancing Dot instead of
      ThreadBssOffset.
      
      As far as I can tell this was always wrong in our linkerscript
      implementation, but that became more visible now that the code is
      shared with the non linker script case.
      
      llvm-svn: 302107
      7c4eafa3
    • Rui Ueyama's avatar
      Remove a comment that is no longer true. · b201a20e
      Rui Ueyama authored
      llvm-svn: 302090
      b201a20e
  7. May 03, 2017
    • Rui Ueyama's avatar
      Accept archive files with no symbol table instad of warning on them. · fd7deda5
      Rui Ueyama authored
      It seems virtually everyone who tries to do LTO build with Clang and
      LLD was hit by a mistake to forget using llvm-ar command to create
      archive files. I wasn't an exception. Since this is an annoying common
      issue, it is probably better to handle that gracefully rather than
      reporting an error and tell the user to redo build with different
      configuration.
      
      Differential Revision: https://reviews.llvm.org/D32721
      
      llvm-svn: 302083
      fd7deda5
    • Peter Collingbourne's avatar
      Revert r301897, "ELF: Set symbol binding to STB_GLOBAL when undefining symbols during LTO." · 1c697e99
      Peter Collingbourne authored
      It doesn't matter what binding we store in a non-UsedInRegularObj undefined
      symbol because we should reset it when we see a real undefined symbol in
      a combined LTO object. The fact that we weren't doing so before is a bug
      (PR32899) which is now fixed.
      
      llvm-svn: 302067
      1c697e99
    • Rafael Espindola's avatar
      Handle mixed strong and weak undefined symbols. · 5e20c75e
      Rafael Espindola authored
      We were ignoring strong undefined symbols if they followed weak ones.
      
      Fixes pr32899.
      
      llvm-svn: 302065
      5e20c75e
    • Peter Smith's avatar
      [ELF] Fix problems with fabricateDefaultCommands() and --section-start · c60b4510
      Peter Smith authored
      The --section-start <name>=<address> needs to be translated into equivalent
      linker script commands. There are a couple of problems with the existing
      implementation:
      - The --section-start with the lowest address is assumed to be at the start
      of the map. This assumption is incorrect, we have to iterate through the
      SectionStartMap to find the lowest address.
      - The addresses in --section-start were being over-aligned when the
      sections were marked as PageAlign. This is inconsistent with the use of
      SectionStartMap in fixHeaders(), and can cause problems when the PageAlign
      causes an "unable to move location counter backward" error when the
      --section-start with PageAlign is aligned to an address higher than the next
      --section-start. The ld.bfd and ld.gold seem to be more consistent with this
      approach but this is not a well specified area.
          
      This change fixes the problems above and also corrects a typo in which
      fabricateDefaultCommands() is called with the wrong parameter, it should be
      called with AllocateHeader not Config->MaxPageSize.
      
      Differential Revision: https://reviews.llvm.org/D32749
      
      llvm-svn: 302007
      c60b4510
    • Rui Ueyama's avatar
      Remove a dead function declaration. · 9decbfee
      Rui Ueyama authored
      llvm-svn: 301982
      9decbfee
    • Joel Jones's avatar
      Remove _NC suffix from ELF relocations TLSDESC_{LD64,ADD}_LO12 · 93340741
      Joel Jones authored
      llvm-svn: 301979
      93340741
  8. May 02, 2017
Loading