diff options
author | dim <dim@FreeBSD.org> | 2015-02-19 22:20:19 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2015-02-19 22:20:19 +0000 |
commit | 1e024675bcd5e4ace8bffb2dd6afd3fa8b8ad7f3 (patch) | |
tree | 84663adb8262b7962030778aaba745cd98e8b356 /contrib/llvm/lib/Transforms/Vectorize | |
parent | 184b3c7999c408b8e298b506ccfdff9d81c9ffd5 (diff) | |
parent | 49b6407b6cc89756540e2097c1cf8b9bb4a422e1 (diff) | |
download | FreeBSD-src-1e024675bcd5e4ace8bffb2dd6afd3fa8b8ad7f3.zip FreeBSD-src-1e024675bcd5e4ace8bffb2dd6afd3fa8b8ad7f3.tar.gz |
Merge llvm 3.6.0rc4 from ^/vendor/llvm/dist, merge clang 3.6.0rc4 from
^/vendor/clang/dist, resolve conflicts, and update patches.
Diffstat (limited to 'contrib/llvm/lib/Transforms/Vectorize')
-rw-r--r-- | contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp b/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp index 557304e..47b92a3 100644 --- a/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp +++ b/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp @@ -1874,6 +1874,7 @@ void InnerLoopVectorizer::vectorizeMemoryInstruction(Instruction *Instr) { // wide store needs to start at the last vector element. PartPtr = Builder.CreateGEP(Ptr, Builder.getInt32(-Part * VF)); PartPtr = Builder.CreateGEP(PartPtr, Builder.getInt32(1 - VF)); + Mask[Part] = reverseVector(Mask[Part]); } Value *VecPtr = Builder.CreateBitCast(PartPtr, @@ -1902,6 +1903,7 @@ void InnerLoopVectorizer::vectorizeMemoryInstruction(Instruction *Instr) { // wide load needs to start at the last vector element. PartPtr = Builder.CreateGEP(Ptr, Builder.getInt32(-Part * VF)); PartPtr = Builder.CreateGEP(PartPtr, Builder.getInt32(1 - VF)); + Mask[Part] = reverseVector(Mask[Part]); } Instruction* NewLI; |