Skip to content
  1. May 20, 2016
  2. May 15, 2016
  3. May 12, 2016
  4. May 11, 2016
  5. May 10, 2016
  6. May 07, 2016
  7. May 06, 2016
    • Mehdi Amini's avatar
      Tweak the ThinLTO pass pipeline · 31407ba0
      Mehdi Amini authored
      Summary:
      The original ThinLTO pipeline was derived from some
      work I did tuning FullLTO on the test suite and SPEC. This
      patch reduces the amount of work done in the "linker phase" of
      the build, and extend the function simplifications passes
      performed during the "compile phase". This helps the build time
      by reducing the IR as much as possible during the compile phase
      and limiting the work to be performed during the "link phase",
      while keeping the performance "on par" with the existing pipeline.
      
      Reviewers: tejohnson
      
      Subscribers: llvm-commits, joker.eph
      
      Differential Revision: http://reviews.llvm.org/D19773
      
      From: Mehdi Amini <mehdi.amini@apple.com>
      llvm-svn: 268769
      31407ba0
    • Xinliang David Li's avatar
      [PM] port IR based PGO prof-gen pass to new pass manager · 8aebf44c
      Xinliang David Li authored
      llvm-svn: 268710
      8aebf44c
  8. May 05, 2016
  9. May 04, 2016
  10. May 03, 2016
  11. May 02, 2016
  12. Apr 30, 2016
  13. Apr 29, 2016
  14. Apr 28, 2016
  15. Apr 27, 2016
    • Ahmed Bougacha's avatar
      [TLI] Unify LibFunc attribute inference. NFCI. · b0624a2c
      Ahmed Bougacha authored
      Now the pass is just a tiny wrapper around the util. This lets us reuse
      the logic elsewhere (done here for BuildLibCalls) instead of duplicating
      it.
      
      The next step is to have something like getOrInsertLibFunc that also
      sets the attributes.
      
      Differential Revision: http://reviews.llvm.org/D19470
      
      llvm-svn: 267759
      b0624a2c
    • Ahmed Bougacha's avatar
      [TLI] Unify LibFunc signature checking. NFCI. · d765a82b
      Ahmed Bougacha authored
      I tried to be as close as possible to the strongest check that
      existed before; cleaning these up properly is left for future work.
      
      Differential Revision: http://reviews.llvm.org/D19469
      
      llvm-svn: 267758
      d765a82b
    • Adam Nemet's avatar
      [LoopDist] Add llvm.loop.distribute.enable loop metadata · d2fa4147
      Adam Nemet authored
      Summary:
      D19403 adds a new pragma for loop distribution.  This change adds
      support for the corresponding metadata that the pragma is translated to
      by the FE.
      
      As part of this I had to rethink the flag -enable-loop-distribute.  My
      goal was to be backward compatible with the existing behavior:
      
        A1. pass is off by default from the optimization pipeline
        unless -enable-loop-distribute is specified
      
        A2. pass is on when invoked directly from opt (e.g. for unit-testing)
      
      The new pragma/metadata overrides these defaults so the new behavior is:
      
        B1. A1 + enable distribution for individual loop with the pragma/metadata
      
        B2. A2 + disable distribution for individual loop with the pragma/metadata
      
      The default value whether the pass is on or off comes from the initiator
      of the pass.  From the PassManagerBuilder the default is off, from opt
      it's on.
      
      I moved -enable-loop-distribute under the pass.  If the flag is
      specified it overrides the default from above.
      
      Then the pragma/metadata can further modifies this per loop.
      
      As a side-effect, we can now also use -enable-loop-distribute=0 from opt
      to emulate the default from the optimization pipeline.  So to be precise
      this is the new behavior:
      
        C1. pass is off by default from the optimization pipeline
        unless -enable-loop-distribute or the pragma/metadata enables it
      
        C2. pass is on when invoked directly from opt
        unless -enable-loop-distribute=0 or the pragma/metadata disables it
      
      Reviewers: hfinkel
      
      Subscribers: joker.eph, mzolotukhin, llvm-commits
      
      Differential Revision: http://reviews.llvm.org/D19431
      
      llvm-svn: 267672
      d2fa4147
    • Mehdi Amini's avatar
      ThinLTO: do not promote GlobalVariable that have a specific section. · b4e1e829
      Mehdi Amini authored
      Differential Revision: http://reviews.llvm.org/D18298
      
      From: Mehdi Amini <mehdi.amini@apple.com>
      llvm-svn: 267646
      b4e1e829
Loading