Skip to content
  1. Dec 12, 2013
    • Rui Ueyama's avatar
      [PECOFF] Add /dllexport option. · 4cf5a161
      Rui Ueyama authored
      /DLLEXPORT is a command line option to export a symbol. __declspec(dllexport)
      uses that to make the linker to export DLLExport'ed functions, by adding the
      option to .drectve section.
      
      This patch implements the parser of the command line option.
      
      llvm-svn: 197122
      4cf5a161
  2. Dec 11, 2013
  3. Dec 10, 2013
  4. Dec 09, 2013
  5. Dec 08, 2013
    • Rui Ueyama's avatar
      Fix -Wunused-function to unbreak buildbot. · 2994f6f7
      Rui Ueyama authored
      llvm-svn: 196716
      2994f6f7
    • Rui Ueyama's avatar
      Move static member functions out of a class. · 5af4622f
      Rui Ueyama authored
      Because compare() and its heper functions no longer have to be members of
      LayoutPass class, we can remove it from the class. No functionality change.
      
      llvm-svn: 196715
      5af4622f
    • Rui Ueyama's avatar
      Optimize the layout pass. · 37c43e9f
      Rui Ueyama authored
      The comparator used in the layout pass has many calls of map::find(). Because
      std::sort runs the comparator N*log2(N) times, the maps are looked up with the
      same key again and again. The map lookup is not a very fast operation. It made
      the pass slow.
      
      This patch eliminates the duplicate map lookups using decorate-sort-undecorate
      idiom. The pass used to take 1.1 seconds when linking LLD with LLD on Windows,
      but it now takes only 0.3 seconds. Overall performance gain in that case is from
      6.1 seconds to 5.2 seconds.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2358
      
      llvm-svn: 196714
      37c43e9f
Loading