diff options
| author | Craig Topper <craig.topper@gmail.com> | 2016-05-30 23:15:56 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@gmail.com> | 2016-05-30 23:15:56 +0000 |
| commit | 8287fd8abde6228ebab32953e85c78e75ce0fd30 (patch) | |
| tree | 4794e9ba319afa3c9da01ea5f248b5b57f4ddb86 /llvm/lib/Transforms/InstCombine | |
| parent | 424b5ee8f7d8139b3893fd8577062c0d4482b52a (diff) | |
| download | bcm5719-llvm-8287fd8abde6228ebab32953e85c78e75ce0fd30.tar.gz bcm5719-llvm-8287fd8abde6228ebab32953e85c78e75ce0fd30.zip | |
[X86] Remove SSE/AVX unaligned store intrinsics as clang no longer uses them. Auto upgrade to native unaligned store instructions.
llvm-svn: 271236
Diffstat (limited to 'llvm/lib/Transforms/InstCombine')
| -rw-r--r-- | llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp | 26 |
1 files changed, 0 insertions, 26 deletions
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp index c87d0466a9d..e0ec74f814b 100644 --- a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp +++ b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp @@ -1397,32 +1397,6 @@ Instruction *InstCombiner::visitCallInst(CallInst &CI) { } break; - case Intrinsic::x86_sse_storeu_ps: - case Intrinsic::x86_sse2_storeu_pd: - case Intrinsic::x86_sse2_storeu_dq: - // Turn X86 storeu -> store if the pointer is known aligned. - if (getOrEnforceKnownAlignment(II->getArgOperand(0), 16, DL, II, AC, DT) >= - 16) { - Type *OpPtrTy = - PointerType::getUnqual(II->getArgOperand(1)->getType()); - Value *Ptr = Builder->CreateBitCast(II->getArgOperand(0), OpPtrTy); - return new StoreInst(II->getArgOperand(1), Ptr); - } - break; - - case Intrinsic::x86_avx_storeu_ps_256: - case Intrinsic::x86_avx_storeu_pd_256: - case Intrinsic::x86_avx_storeu_dq_256: - // Turn X86 storeu -> store if the pointer is known aligned. - if (getOrEnforceKnownAlignment(II->getArgOperand(0), 32, DL, II, AC, DT) >= - 32) { - Type *OpPtrTy = - PointerType::getUnqual(II->getArgOperand(1)->getType()); - Value *Ptr = Builder->CreateBitCast(II->getArgOperand(0), OpPtrTy); - return new StoreInst(II->getArgOperand(1), Ptr); - } - break; - case Intrinsic::x86_vcvtph2ps_128: case Intrinsic::x86_vcvtph2ps_256: { auto Arg = II->getArgOperand(0); |

