Skip to content
  1. Sep 16, 2013
  2. Sep 14, 2013
    • Robert Wilhelm's avatar
      Fix spelling. · 042f10ce
      Robert Wilhelm authored
      llvm-svn: 190750
      042f10ce
    • Chandler Carruth's avatar
      Remove the long, long defunct IR block placement pass. · ebeac5cb
      Chandler Carruth authored
      This pass was based on the previous (essentially unused) profiling
      infrastructure and the assumption that by ordering the basic blocks at
      the IR level in a particular way, the correct layout would happen in the
      end. This sometimes worked, and mostly didn't. It also was a really
      naive implementation of the classical paper that dates from when branch
      predictors were primarily directional and when loop structure wasn't
      commonly available. It also didn't factor into the equation
      non-fallthrough branches and other machine level details.
      
      Anyways, for all of these reasons and more, I wrote
      MachineBlockPlacement, which completely supercedes this pass. It both
      uses modern profile information infrastructure, and actually works. =]
      
      llvm-svn: 190748
      ebeac5cb
  3. Sep 13, 2013
  4. Sep 11, 2013
  5. Sep 10, 2013
  6. Sep 09, 2013
    • Quentin Colombet's avatar
      [InstCombiner] Expose opportunities to merge subtract and comparison. · 5ab55553
      Quentin Colombet authored
      Several architectures use the same instruction to perform both a comparison and
      a subtract. The instruction selection framework does not allow to consider
      different basic blocks to expose such fusion opportunities.
      
      Therefore, these instructions are “merged” by CSE at MI IR level.
      
      To increase the likelihood of CSE to apply in such situation, we reorder the
      operands of the comparison, when they have the same complexity, so that they
      matches the order of the most frequent subtract.
      E.g.,
      
      icmp A, B
      ...
      sub B, A
      
      <rdar://problem/14514580>
      
      llvm-svn: 190352
      5ab55553
    • Bob Wilson's avatar
      Revert patches to add case-range support for PR1255. · e407736a
      Bob Wilson authored
      The work on this project was left in an unfinished and inconsistent state.
      Hopefully someone will eventually get a chance to implement this feature, but
      in the meantime, it is better to put things back the way the were.  I have
      left support in the bitcode reader to handle the case-range bitcode format,
      so that we do not lose bitcode compatibility with the llvm 3.3 release.
      
      This reverts the following commits: 155464, 156374, 156377, 156613, 156704,
      156757, 156804 156808, 156985, 157046, 157112, 157183, 157315, 157384, 157575,
      157576, 157586, 157612, 157810, 157814, 157815, 157880, 157881, 157882, 157884,
      157887, 157901, 158979, 157987, 157989, 158986, 158997, 159076, 159101, 159100,
      159200, 159201, 159207, 159527, 159532, 159540, 159583, 159618, 159658, 159659,
      159660, 159661, 159703, 159704, 160076, 167356, 172025, 186736
      
      llvm-svn: 190328
      e407736a
  7. Sep 07, 2013
    • Manman Ren's avatar
      TBAA: add isTBAAVtableAccess to MDNode so clients can call the function · d8c68b18
      Manman Ren authored
      instead of having its own implementation.
      
      The implementation of isTBAAVtableAccess is in TypeBasedAliasAnalysis.cpp
      since it is related to the format of TBAA metadata.
      
      The path for struct-path tbaa will be exercised by
      test/Instrumentation/ThreadSanitizer/read_from_global.ll, vptr_read.ll, and
      vptr_update.ll when struct-path tbaa is on by default.
      
      llvm-svn: 190216
      d8c68b18
  8. Sep 06, 2013
  9. Sep 05, 2013
  10. Sep 04, 2013
Loading