Skip to content
  1. Jan 09, 2017
  2. Jan 06, 2017
  3. Nov 25, 2016
  4. Nov 23, 2016
  5. Nov 10, 2016
    • Rafael Espindola's avatar
      Parse relocations only once. · 9f0c4bb7
      Rafael Espindola authored
      Relocations are the last thing that we wore storing a raw section
      pointer to and parsing on demand.
      
      With this patch we parse it only once and store a pointer to the
      actual data.
      
      The patch also changes where we store it. It is now in
      InputSectionBase. Not all sections have relocations, but most do and
      this simplifies the logic. It also means that we now only support one
      relocation section per section. Given that that constraint is
      maintained even with -r with gold bfd and lld, I think it is OK.
      
      llvm-svn: 286459
      9f0c4bb7
  6. 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
  7. Nov 08, 2016
  8. Nov 03, 2016
  9. Nov 02, 2016
  10. Nov 01, 2016
  11. Oct 28, 2016
    • Rui Ueyama's avatar
      Consolidate BumpPtrAllocators. · 55518e7d
      Rui Ueyama authored
      Previously, we have a lot of BumpPtrAllocators, but all these
      allocators virtually have the same lifetime because they are
      not freed until the linker finishes its job. This patch aggregates
      them into a single allocator.
      
      Differential revision: https://reviews.llvm.org/D26042
      
      llvm-svn: 285452
      55518e7d
  12. Oct 27, 2016
  13. Oct 26, 2016
  14. Oct 21, 2016
  15. Oct 20, 2016
  16. Oct 12, 2016
  17. Oct 10, 2016
    • Peter Smith's avatar
      [ELF][ARM] Garbage collection support for .ARM.exidx sections · 0760605a
      Peter Smith authored
      .ARM.exidx sections have a reverse dependency on the section they have
      a SHF_LINK_ORDER dependency on. In other words a .ARM.exidx section is
      live only if the executable section it describes is live. We implement
      this with a reverse dependency field in InputSection.
      
      Adding the dependency to InputSection is the simplest implementation
      but it could be moved out to a separate map if it were found to decrease
      performance for non ARM targets.
      
      Differential revision: https://reviews.llvm.org/D25234
      
      llvm-svn: 283734
      0760605a
  18. Oct 04, 2016
  19. Sep 29, 2016
  20. Sep 14, 2016
    • Rui Ueyama's avatar
      Simplify InputFile ownership management. · 38dbd3ee
      Rui Ueyama authored
      Previously, all input files were owned by the symbol table.
      Files were created at various places, such as the Driver, the lazy
      symbols, or the bitcode compiler, and the ownership of new files
      was transferred to the symbol table using std::unique_ptr.
      All input files were then free'd when the symbol table is freed
      which is on program exit.
      
      I think we don't have to transfer ownership just to free all
      instance at once on exit.
      
      In this patch, all instances are automatically collected to a
      vector and freed on exit. In this way, we no longer have to
      use std::unique_ptr.
      
      Differential Revision: https://reviews.llvm.org/D24493
      
      llvm-svn: 281425
      38dbd3ee
  21. Sep 10, 2016
  22. Aug 12, 2016
  23. Jul 26, 2016
    • Peter Collingbourne's avatar
      COFF: Implement /linkrepro flag. · feee2103
      Peter Collingbourne authored
      This flag is implemented similarly to --reproduce in the ELF linker.
      
      This patch implements /linkrepro by moving the cpio writer and associated
      utility functions to lldCore, and using that implementation in both linkers.
      
      One COFF-specific detail is that we store the object file from which the
      resource files were created in our reproducer, rather than the resource
      files themselves. This allows the reproducer to be used on non-Windows
      systems for example.
      
      Differential Revision: https://reviews.llvm.org/D22418
      
      llvm-svn: 276719
      feee2103
  24. Jul 15, 2016
Loading