Skip to content
  1. Nov 23, 2016
  2. Nov 22, 2016
  3. Nov 21, 2016
  4. Nov 18, 2016
  5. Nov 17, 2016
  6. Nov 16, 2016
  7. Nov 15, 2016
    • Eugene Leviant's avatar
      [ELF] Convert DynamicSection to input section. · 6380ce22
      Eugene Leviant authored
      This patch introduces the following changes:
      - DynamicSection now inherits InputSection<ELFT> and was moved
        to SyntheticSections.h/.cpp.
      - Link and Entsize fields of DynamicSection are propagated to 
        its output section
      - In<ELFT>::SyntheticSections was removed.
      - Finalization of synthetic sections was removed from 
        OutputSection<ELFT>::finalize. Now finalizeSyntheticSections is
        used instead.
      
      Differential revision: https://reviews.llvm.org/D26603
      
      llvm-svn: 286950
      6380ce22
  8. Nov 14, 2016
  9. Nov 11, 2016
  10. Nov 10, 2016
    • Rui Ueyama's avatar
      Include version string into ".comment" section. · 3da3f06d
      Rui Ueyama authored
      Summary:
      This patch adds a ".comment" section to an output. The comment
      section contains the linker's version string. You can now
      find out whether a binary is created by LLD or not using objdump
      command like this.
      
        $ objdump -s -j .comment foo
      
        foo:     file format elf64-x86-64
      
        Contents of section .comment:
         0000 00474343 3a202855 62756e74 7520342e  .GCC: (Ubuntu 4.
         0010 382e342d 32756275 6e747531 7e31342e  8.4-2ubuntu1~14.
         ...
         00c0 766d2f74 72756e6b 20323835 38343629  vm/trunk 285846)
         00d0 004c696e 6b65723a 204c4c44 20342e30  .Linker: LLD 4.0
         00e0 2e302028 7472756e 6b203238 36343036  .0 (trunk 286406
         00f0 2900                                 ).
      
      Compilers emits .comment section as well, so the output contains
      both compiler and linker information.
      
      Alternative considered:
      
      I first tried to add a SHT_NOTE section because GNU gold does that.
      A NOTE section starts with a header which contains content type.
      It turned out that ld.gold sets type NT_GNU_GOLD_VERSION to their
      NOTE section. So the NOTE type is only for GNU gold (surprise!)
      
      Next, I tried to create ".linker-version" section. However, it seems
      that reusing the existing ".comment" section is better because 1)
      other tools already know about .comment section and is able to strip
      it and 2) the result contans not only linker info but also compiler
      info.
      
      Differential Revision: https://reviews.llvm.org/D26487
      
      llvm-svn: 286496
      3da3f06d
    • Rafael Espindola's avatar
      Replace duplicated '16' with a named constant. · 0e876cfb
      Rafael Espindola authored
      Thanks to Michael Spencer for the suggestion.
      
      llvm-svn: 286462
      0e876cfb
    • Eugene Leviant's avatar
      [ELF] Make SyntheticSection::writeTo pure virtual. NFC. · 12e8a92a
      Eugene Leviant authored
      llvm-svn: 286445
      12e8a92a
    • Eugene Leviant's avatar
      [ELF] Convert .got.plt section to input section · 41ca327b
      Eugene Leviant authored
      Differential revision: https://reviews.llvm.org/D26349
      
      llvm-svn: 286443
      41ca327b
  11. Nov 09, 2016
    • Simon Atanasyan's avatar
      [ELF][MIPS] Convert .MIPS.abiflags section to synthetic input section · fa03b0fa
      Simon Atanasyan authored
      Previously, we have both input and output section for .MIPS.abiflags.
      Now we have only one class for .MIPS.abiflags, which is MipsAbiFlagsSection.
      This class is a synthetic input section.
      
      .MIPS.abiflags sections are handled as regular sections until
      the control reaches Writer. Writer then aggregates all sections
      whose type is SHT_MIPS_ABIFLAGS to create a single synthesized
      input section. The synthesized section is then processed normally
      as if it came from an input file.
      
      llvm-svn: 286398
      fa03b0fa
    • Simon Atanasyan's avatar
      [ELF][MIPS] Convert .reginfo and .MIPS.options sections to synthetic input sections · ce02cf00
      Simon Atanasyan authored
      Previously, we have both input and output sections for .reginfo and
      .MIPS.options. Now for each such sections we have one synthetic input
      sections: MipsReginfoSection and MipsOptionsSection respectively.
      
      Both sections are handled as regular sections until the control reaches
      Writer. Writer then aggregates all sections whose type is SHT_MIPS_REGINFO
      or SHT_MIPS_OPTIONS to create a single synthesized input section. In that
      moment Writer also save GP0 value to the MipsGp0 field of the corresponding
      ObjectFile. This value required for R_MIPS_GPREL16 and R_MIPS_GPREL32
      relocations calculation.
      
      Differential revision: https://reviews.llvm.org/D26444
      
      llvm-svn: 286397
      ce02cf00
  12. Nov 08, 2016
  13. Nov 07, 2016
  14. Nov 06, 2016
  15. Nov 02, 2016
Loading