Skip to content
  1. Nov 01, 2012
    • Chandler Carruth's avatar
      Revert the majority of the next patch in the address space series: · 5da3f051
      Chandler Carruth authored
      r165941: Resubmit the changes to llvm core to update the functions to
               support different pointer sizes on a per address space basis.
      
      Despite this commit log, this change primarily changed stuff outside of
      VMCore, and those changes do not carry any tests for correctness (or
      even plausibility), and we have consistently found questionable or flat
      out incorrect cases in these changes. Most of them are probably correct,
      but we need to devise a system that makes it more clear when we have
      handled the address space concerns correctly, and ideally each pass that
      gets updated would receive an accompanying test case that exercises that
      pass specificaly w.r.t. alternate address spaces.
      
      However, from this commit, I have retained the new C API entry points.
      Those were an orthogonal change that probably should have been split
      apart, but they seem entirely good.
      
      In several places the changes were very obvious cleanups with no actual
      multiple address space code added; these I have not reverted when
      I spotted them.
      
      In a few other places there were merge conflicts due to a cleaner
      solution being implemented later, often not using address spaces at all.
      In those cases, I've preserved the new code which isn't address space
      dependent.
      
      This is part of my ongoing effort to clean out the partial address space
      code which carries high risk and low test coverage, and not likely to be
      finished before the 3.2 release looms closer. Duncan and I would both
      like to see the above issues addressed before we return to these
      changes.
      
      llvm-svn: 167222
      5da3f051
    • Chandler Carruth's avatar
      Revert the series of commits starting with r166578 which introduced the · 7ec5085e
      Chandler Carruth authored
      getIntPtrType support for multiple address spaces via a pointer type,
      and also introduced a crasher bug in the constant folder reported in
      PR14233.
      
      These commits also contained several problems that should really be
      addressed before they are re-committed. I have avoided reverting various
      cleanups to the DataLayout APIs that are reasonable to have moving
      forward in order to reduce the amount of churn, and minimize the number
      of commits that were reverted. I've also manually updated merge
      conflicts and manually arranged for the getIntPtrType function to stay
      in DataLayout and to be defined in a plausible way after this revert.
      
      Thanks to Duncan for working through this exact strategy with me, and
      Nick Lewycky for tracking down the really annoying crasher this
      triggered. (Test case to follow in its own commit.)
      
      After discussing with Duncan extensively, and based on a note from
      Micah, I'm going to continue to back out some more of the more
      problematic patches in this series in order to ensure we go into the
      LLVM 3.2 branch with a reasonable story here. I'll send a note to
      llvmdev explaining what's going on and why.
      
      Summary of reverted revisions:
      
      r166634: Fix a compiler warning with an unused variable.
      r166607: Add some cleanup to the DataLayout changes requested by
               Chandler.
      r166596: Revert "Back out r166591, not sure why this made it through
               since I cancelled the command. Bleh, sorry about this!
      r166591: Delete a directory that wasn't supposed to be checked in yet.
      r166578: Add in support for getIntPtrType to get the pointer type based
               on the address space.
      llvm-svn: 167221
      7ec5085e
    • Hal Finkel's avatar
      BBVectorize: Account for internal shuffle costs · c89e75e9
      Hal Finkel authored
      When target costs are available, use them to account for the costs of
      shuffles on internal edges of the DAG of candidate pairs.
      
      Because the shuffle costs here are currently for only the internal edges,
      the current target cost model is trivial, and the chain depth requirement
      is still in place, I don't yet have an easy test
      case. Nevertheless, by looking at the debug output, it does seem to do the right
      think to the effective "size" of each DAG of candidate pairs.
      
      llvm-svn: 167217
      c89e75e9
    • Michael Liao's avatar
      Cleanup another place redundant SP maintained · 70a99c8e
      Michael Liao authored
      llvm-svn: 167209
      70a99c8e
    • NAKAMURA Takumi's avatar
      [CMake] Add llvm-mcmarkup to check-llvm. · e9b89b4f
      NAKAMURA Takumi authored
      llvm-svn: 167208
      e9b89b4f
    • NAKAMURA Takumi's avatar
      test/CodeGen/X86/fp-fast.ll: Add +avx. · 68d1700e
      NAKAMURA Takumi authored
      llvm-svn: 167207
      68d1700e
    • Owen Anderson's avatar
      b351c8d6
    • Jakob Stoklund Olesen's avatar
      Exploit the new identity composition in composeSubRegIndices(). · 9892a4b7
      Jakob Stoklund Olesen authored
      The static compose() function in RegisterCoalescer was doing the exact
      same thing.
      
      llvm-svn: 167198
      9892a4b7
    • Jakub Staszak's avatar
      4e45abf0
    • Andrew Kaylor's avatar
      Streamlined memory manager hierarchy for MCJIT and RuntimeDyld. · f2c10782
      Andrew Kaylor authored
      Patch by Ashok Thirumurthi
      
      llvm-svn: 167192
      f2c10782
    • Michael J. Spencer's avatar
      be6f0032
    • Jakob Stoklund Olesen's avatar
      Generate a table-driven version of TRI::composeSubRegIndices(). · 366bd863
      Jakob Stoklund Olesen authored
      Explicitly allow composition of null sub-register indices, and handle
      that common case in an inlinable stub.
      
      Use a compressed table implementation instead of the previous nested
      switches which generated pretty bad code.
      
      llvm-svn: 167190
      366bd863
    • Andrew Kaylor's avatar
      8565e50a
    • Jim Grosbach's avatar
      MC: Simple example parser for MC assembly markup. · acd8801e
      Jim Grosbach authored
      Nothing fancy, just a simple demonstration parser.
      
      llvm-svn: 167181
      acd8801e
    • Shuxin Yang's avatar
      (For X86) Enhancement to add-carray/sub-borrow (adc/sbb) optimization. · 01efdd6c
      Shuxin Yang authored
        The adc/sbb optimization is to able to convert following expression
      into a single adc/sbb instruction:
        (ult) ... = x + 1 // where the ult is unsigned-less-than comparison
        (ult) ... = x - 1
      
        This change is to flip the "x >u y" (i.e. ugt comparison) in order 
      to expose the adc/sbb opportunity.
      
      llvm-svn: 167180
      01efdd6c
  2. Oct 31, 2012
Loading