Skip to content
Commits on Jul 1, 2016
  1. @arsenm

    AMDGPU: Add option to run the load/store vectorizer

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274329 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jul 1, 2016
  2. @arsenm

    LoadStoreVectorizer: improvements: better pointer analysis

    If OpB has an ADD NSW/NUW, we can use that to prove that adding 1
    to OpA won't wrap if OpA + 1 == OpB.
    
    Patch by Fiona Glaser
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274324 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jul 1, 2016
  3. @arsenm

    LoadStoreVectorizer: Don't increase alignment with no align set

    If no alignment was set on the load/stores, it would vectorize
    to the new type even though this increases the default alignment.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274323 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jul 1, 2016
  4. @arsenm

    LoadStoreVectorizer: Check TTI for vec reg bit width

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274322 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jul 1, 2016
  5. @arsenm

    LoadStoreVectorizer: Fix assert when merging pointer ops

    This needs to use inttoptr/ptrtoint if combining an int and pointer
    load. If a pointer is used always do an integer load.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274321 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jul 1, 2016
  6. @arsenm

    LoadStoreVectorizer: Use AA metadata

    This was not passing the full instruction with metadata
    to the alias query.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274318 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jul 1, 2016
  7. @arsenm

    AMDGPU: Implement getLoadStoreVecRegBitWidth

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274312 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jul 1, 2016
  8. @arsenm

    LoadStoreVectorizer: if one element of a vector is integer, default to

    integer.
    
    Fixes issues on some architectures where we use arithmetic ops to build
    vectors, which can cause bad things to happen for loads/stores of mixed
    types.
    
    Patch by Fiona Glaser
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274307 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jul 1, 2016
  9. @arsenm

    LoadStoreVectorizer: Fix crashes on sub-byte types

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274306 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jul 1, 2016
Commits on Jun 30, 2016
  1. @arsenm

    LoadStoreVectorizer: Check skipFunction first.

    Also add test I forgot to add to r274296.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274299 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 30, 2016
  2. @arsenm

    LoadStoreVectorizer: Skip optnone functions

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274296 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 30, 2016
  3. @arsenm

    Add LoadStoreVectorizer pass

    This was contributed by Apple, and I've been working on
    minimal cleanups and generalizing it.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274293 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 30, 2016
  4. @arsenm

    Don't use unchecked dyn_cast

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274282 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 30, 2016
  5. @arsenm

    SLPVectorizer: Move propagateMetadata to VectorUtils

    This will be re-used by the LoadStoreVectorizer.
    
    Fix handling of range metadata and testcase by Justin Lebar.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274281 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 30, 2016
  6. @arsenm

    AMDGPU: Add m0 vgpr load loop block as successor

    This shows up as a verifier error when I move this
    earlier, not sure why it didn't before.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274275 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 30, 2016
Commits on Jun 28, 2016
  1. @arsenm

    AMDGPU: Fix global isel crashes

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274039 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 28, 2016
  2. @arsenm

    AMDGPU: Fix typo

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274034 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 28, 2016
  3. @arsenm

    AMDGPU: Remove unused function

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@274033 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 28, 2016
  4. @arsenm

    AMDGPU: Fix out of bounds indirect indexing errors

    This was producing acceses to registers beyond the super
    register's limits, resulting in verifier failures.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273977 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 28, 2016
  5. @arsenm

    AMDGPU: Fix global isel build

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273964 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 28, 2016
Commits on Jun 27, 2016
  1. @arsenm

    AMDGPU: Set MinInstAlignment

    Not sure this actually changes anything
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273947 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 27, 2016
  2. @arsenm

    AMDGPU: Implement per-function subtargets

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273940 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 27, 2016
  3. @arsenm

    AMDGPU: Move subtarget feature checks into passes

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273937 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 27, 2016
  4. @arsenm

    AMDGPU: Fix verifier errors with undef vector indices

    Also fix pointlessly adding exec to liveins.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273916 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 27, 2016
  5. @arsenm

    Verifier: Reject non-float !fpmath

    Code already assumes this is float. getFPAccuracy()
    crashes on any other type.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273912 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 27, 2016
  6. @arsenm

    DAGCombiner: Don't narrow volatile vector loads + extract

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273909 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 27, 2016
Commits on Jun 24, 2016
  1. @arsenm

    AMDGPU: Add stub custom CodeGenPrepare pass

    This will do various things including ones
    CodeGenPrepare does, but with knowledge of uniform
    values.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273657 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 24, 2016
  2. @arsenm

    AMDGPU: Un-xfail and add tests

    Un XFAIL a few tests plus a few more I had lying around
    in my tree, which seem to all work now but I don't see tests
    that quite test the same things.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273655 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 24, 2016
  3. @arsenm

    AMDGPU: Remove disable-irstructurizer subtarget feature

    The only real reason to use it is for testing, so replace
    it with a command line option instead of a potentially function
    dependent feature.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273653 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 24, 2016
  4. @arsenm

    AMDGPU: Cleanup subtarget handling.

    Split AMDGPUSubtarget into amdgcn/r600 specific subclasses.
    This removes most of the static_casting of the basic codegen
    classes everywhere, and tries to restrict the features
    visible on the wrong target.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273652 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 24, 2016
Commits on Jun 23, 2016
  1. @arsenm

    AMDGPU: Add option to disable spilling SGPRs to VGPRs.

    This can help debug spilling problems.
    
    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273605 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 23, 2016
  2. @arsenm

    Fix doubly included header

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273528 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 23, 2016
  3. @arsenm

    AMDGPU: readlane/writelane do not read exec

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273525 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 23, 2016
Commits on Jun 22, 2016
  1. @arsenm

    AMDGPU: Fix liveness when expanding m0 loop

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273514 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 22, 2016
  2. @arsenm

    AMDGPU: Run verifier after 2nd run of SIShrinkInstructions

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273469 91177308-0d34-0410-b5e6-96231b3b80d8
    arsenm committed Jun 22, 2016
Something went wrong with that request. Please try again.