Skip to content
  1. Sep 21, 2015
    • Rui Ueyama's avatar
      COFF: Add /nosymtab command line option. · 1576261e
      Rui Ueyama authored
      This is an LLD extension to MSVC link.exe command line. MSVC linker
      does not write symbol tables for executables. We do unless no /debug
      option is given.
      
      There's a situation that we want to enable debug info but don't want
      to emit the symbol table. One example is when we are comparing output
      file size. With this patch, you can tell the linker to not create
      a symbol table by just specifying /nosymtab.
      
      git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@248225 91177308-0d34-0410-b5e6-96231b3b80d8
      1576261e
  2. Sep 19, 2015
  3. Sep 18, 2015
  4. Sep 16, 2015
  5. Sep 03, 2015
  6. Sep 02, 2015
  7. Aug 17, 2015
  8. Aug 14, 2015
  9. Aug 13, 2015
  10. Aug 11, 2015
  11. Aug 07, 2015
  12. Aug 06, 2015
  13. Aug 05, 2015
  14. Jul 30, 2015
  15. Jul 29, 2015
  16. Jul 28, 2015
  17. Jul 27, 2015
  18. Jul 25, 2015
  19. Jul 24, 2015
    • Rui Ueyama's avatar
      COFF: Implement Safe SEH support for x86. · 92083a4c
      Rui Ueyama authored
      An object file compatible with Safe SEH contains a .sxdata section.
      The section contains a list of symbol table indices, each of which
      is an exception handler function. A safe SEH-enabled executable
      contains a list of exception handler RVAs. So, what the linker has
      to do to support Safe SEH is basically to read the .sxdata section,
      interpret the contents as a list of symbol indices, unique-fy and
      sort their RVAs, and then emit that list to .rdata. This patch
      implements that feature.
      
      git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@243182 91177308-0d34-0410-b5e6-96231b3b80d8
      92083a4c
    • Rui Ueyama's avatar
      COFF: Fix __ImageBase symbol relocation. · e1397418
      Rui Ueyama authored
      __ImageBase is a special symbol whose value is the image base address.
      Previously, we handled __ImageBase symbol as an absolute symbol.
      
      Absolute symbols point to specific locations in memory and the locations
      never change even if an image is base-relocated. That means that we
      don't have base relocation entries for absolute symbols.
      
      This is not a case for __ImageBase. If an image is base-relocated, its
      base address changes, and __ImageBase needs to be shifted as well.
      So we have to have base relocations for __ImageBase. That means that
      __ImageBase is not really an absolute symbol but a different kind of
      symbol.
      
      In this patch, I introduced a new type of symbol -- DefinedRelative.
      DefinedRelative is similar to DefinedAbsolute, but it has not a VA but RVA
      and is a subject of base relocation. Currently only __ImageBase is of
      the new symbol type.
      
      git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@243176 91177308-0d34-0410-b5e6-96231b3b80d8
      e1397418
  20. Jul 16, 2015
  21. Jul 13, 2015