Skip to content
  1. Jan 04, 2017
    • Peter Smith's avatar
      [ELF] Add support for thunks to undefined non-weak symbols · 97c6d78f
      Peter Smith authored
          
      In a shared library an undefined symbol is implicitly imported. If the
      symbol is called as a function a PLT entry is generated for it. When the
      caller is a Thumb b.w a thunk to the PLT entry is needed as all PLT
      entries are in ARM state.
          
      This change allows undefined symbols to have thunks in the same way that
      shared symbols may have thunks.
      
      llvm-svn: 290951
      97c6d78f
  2. Nov 29, 2016
    • Rui Ueyama's avatar
      Introduce StringRefZ class to represent null-terminated strings. · a13efc2a
      Rui Ueyama authored
      StringRefZ is a class to represent a null-terminated string. String
      length is computed lazily, so it's more efficient than StringRef to
      represent strings in string table.
      
      The motivation of defining this new class is to merge functions
      that only differ in string types; we have many constructors that takes
      `const char *` or `StringRef`. With StringRefZ, we can merge them.
      
      Differential Revision: https://reviews.llvm.org/D27037
      
      llvm-svn: 288172
      a13efc2a
  3. Nov 26, 2016
  4. Nov 22, 2016
  5. Nov 11, 2016
  6. Nov 05, 2016
  7. 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
  8. Oct 26, 2016
    • Rafael Espindola's avatar
      Reduce the number of allocators. · 5da1d884
      Rafael Espindola authored
      We used to have one allocator per file, which reduces the advantage of
      using an allocator in the first place.
      
      This is a small speed up is most cases. The largest speedup was in
      1.014X in chromium no-gc. The largest slowdown was scylla at 1.003X.
      
      llvm-svn: 285205
      5da1d884
  9. Oct 20, 2016
  10. Oct 11, 2016
  11. Oct 10, 2016
  12. Sep 30, 2016
  13. Sep 29, 2016
  14. Sep 24, 2016
  15. 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
  16. Aug 31, 2016
  17. Aug 30, 2016
  18. Jul 17, 2016
    • Rui Ueyama's avatar
      Add a pointer to a source file to SymbolBody. · 434b5617
      Rui Ueyama authored
      Previously, each subclass of SymbolBody had a pointer to a source
      file from which it was created. So, there was no single way to get
      a source file for a symbol. We had getSourceFile<ELFT>(), but the
      function was a bit inconvenient as it's a template.
      
      This patch makes SymbolBody have a pointer to a source file.
      If a symbol is not created from a file, the pointer has a nullptr.
      
      llvm-svn: 275701
      434b5617
  19. Jul 16, 2016
  20. Jul 15, 2016
  21. Jul 14, 2016
  22. Jun 22, 2016
  23. Jun 21, 2016
  24. Jun 11, 2016
  25. Jun 03, 2016
  26. Jun 01, 2016
  27. May 27, 2016
  28. May 15, 2016
Loading