Skip to content
  1. Dec 27, 2013
    • Nico Weber's avatar
      Strip dead code when linking by default with BFD ld (linux, ...) and ld64 (os x). · 47ba8fa7
      Nico Weber authored
      This reduces the size of clang-format from 22 MB to 1.8 MB, diagtool goes from
      21 MB to 2.8 MB, libclang.so goes from 29 MB to 20 MB, etc.  The size of the
      bin/ folder shrinks from 270 MB to 200 MB.
      
      Targets that support plugins and don't already use EXPORTED_SYMBOL_FILE
      (which libclang and libLTO already do) can set NO_DEAD_STRIP to opt out.
      
      llvm-svn: 198087
      47ba8fa7
  2. Dec 25, 2013
  3. Dec 24, 2013
  4. Dec 20, 2013
  5. Dec 19, 2013
  6. Dec 18, 2013
  7. Dec 17, 2013
    • NAKAMURA Takumi's avatar
      llvm-config: Let directories aware of CMAKE_CFG_INTDIR. · 7b789b3b
      NAKAMURA Takumi authored
      With llvm-config.exe --bindir --libdir --build-mode, on Visual Studio 2010,
      
      In build tree:
        (OBJ_ROOT)/bin/MinSizeRel
        (OBJ_ROOT)/lib/MinSizeRel
        MinSizeRel
      
      In installed tree:
        (INSTALL_PREFIX)/bin
        (INSTALL_PREFIX)/lib
        MinSizeRel
      
      This is enhancements since r196283.
      
      llvm-svn: 197467
      7b789b3b
  8. Dec 16, 2013
  9. Dec 13, 2013
    • Yuchen Wu's avatar
      llvm-cov: Added -b option for branch probabilities. · 342714c1
      Yuchen Wu authored
      This option tells llvm-cov to print out branch probabilities when
      a basic block contains multiple branches. It also prints out some
      function summary info including the number of times the function enters,
      the percent of time it returns, and how many blocks were executed.
      
      Also updated tests.
      
      llvm-svn: 197198
      342714c1
  10. Dec 10, 2013
  11. Dec 07, 2013
  12. Dec 05, 2013
    • Yuchen Wu's avatar
      llvm-cov: Conformed headers. · c3e64247
      Yuchen Wu authored
      llvm-svn: 196541
      c3e64247
    • Renato Golin's avatar
      Add #pragma vectorize enable/disable to LLVM · 729a3ae9
      Renato Golin authored
      The intended behaviour is to force vectorization on the presence
      of the flag (either turn on or off), and to continue the behaviour
      as expected in its absence. Tests were added to make sure the all
      cases are covered in opt. No tests were added in other tools with
      the assumption that they should use the PassManagerBuilder in the
      same way.
      
      This patch also removes the outdated -late-vectorize flag, which was
      on by default and not helping much.
      
      The pragma metadata is being attached to the same place as other loop
      metadata, but nothing forbids one from attaching it to a function
      (to enable #pragma optimize) or basic blocks (to hint the basic-block
      vectorizers), etc. The logic should be the same all around.
      
      Patches to Clang to produce the metadata will be produced after the
      initial implementation is agreed upon and committed. Patches to other
      vectorizers (such as SLP and BB) will be added once we're happy with
      the pass manager changes.
      
      llvm-svn: 196537
      729a3ae9
    • Matt Arsenault's avatar
      Fix minor GCC warnings. · c44a3ff6
      Matt Arsenault authored
      Unused typedefs and unused variables.
      
      llvm-svn: 196526
      c44a3ff6
    • Alp Toker's avatar
      Correct word hyphenations · f907b891
      Alp Toker authored
      This patch tries to avoid unrelated changes other than fixing a few
      hyphen-related ambiguities and contractions in nearby lines.
      
      llvm-svn: 196471
      f907b891
    • Will Dietz's avatar
      Export symbols in tools that support loading plugins. · ff1264b5
      Will Dietz authored
      llvm-svn: 196447
      ff1264b5
  13. Dec 04, 2013
  14. Dec 03, 2013
  15. Dec 02, 2013
  16. Nov 27, 2013
  17. Nov 26, 2013
    • Chandler Carruth's avatar
      [PM] Split the CallGraph out from the ModulePass which creates the · 6378cf53
      Chandler Carruth authored
      CallGraph.
      
      This makes the CallGraph a totally generic analysis object that is the
      container for the graph data structure and the primary interface for
      querying and manipulating it. The pass logic is separated into its own
      class. For compatibility reasons, the pass provides wrapper methods for
      most of the methods on CallGraph -- they all just forward.
      
      This will allow the new pass manager infrastructure to provide its own
      analysis pass that constructs the same CallGraph object and makes it
      available. The idea is that in the new pass manager, the analysis pass's
      'run' method returns a concrete analysis 'result'. Here, that result is
      a 'CallGraph'. The 'run' method will typically do only minimal work,
      deferring much of the work into the implementation of the result object
      in order to be lazy about computing things, but when (like DomTree)
      there is *some* up-front computation, the analysis does it prior to
      handing the result back to the querying pass.
      
      I know some of this is fairly ugly. I'm happy to change it around if
      folks can suggest a cleaner interim state, but there is going to be some
      amount of unavoidable ugliness during the transition period. The good
      thing is that this is very limited and will naturally go away when the
      old pass infrastructure goes away. It won't hang around to bother us
      later.
      
      Next up is the initial new-PM-style call graph analysis. =]
      
      llvm-svn: 195722
      6378cf53
Loading