diff options
| author | David Bolvansky <david.bolvansky@gmail.com> | 2019-08-13 17:18:46 +0000 |
|---|---|---|
| committer | David Bolvansky <david.bolvansky@gmail.com> | 2019-08-13 17:18:46 +0000 |
| commit | 038d604f4f8c0f02ef8b6e8740f1a6fc1538c193 (patch) | |
| tree | 428c4803e9b67c72caaf171af6d19e59f4b40a3b /llvm/test/Transforms/MemCpyOpt | |
| parent | 2a4f26b4c28aaf9307e690b2f743ffcde5183b9e (diff) | |
| download | bcm5719-llvm-038d604f4f8c0f02ef8b6e8740f1a6fc1538c193.tar.gz bcm5719-llvm-038d604f4f8c0f02ef8b6e8740f1a6fc1538c193.zip | |
[SimplifyLibCalls] Add noalias from known callsites
Summary:
Should be fine for memcpy, strcpy, strncpy.
Reviewers: jdoerfert, efriedma
Reviewed By: jdoerfert
Subscribers: uenoku, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66135
llvm-svn: 368724
Diffstat (limited to 'llvm/test/Transforms/MemCpyOpt')
| -rw-r--r-- | llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll b/llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll index ee2f6adb431..4d0b120f605 100644 --- a/llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll +++ b/llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll @@ -34,7 +34,7 @@ define void @bar([8 x i64]* noalias nocapture sret dereferenceable(64) %sret, [8 ; CHECK-NEXT: call void @llvm.memset.p0i8.i64(i8* nonnull align 8 dereferenceable(64) [[SRET_CAST]], i8 0, i64 64, i1 false) ; CHECK-NEXT: call void @llvm.memset.p0i8.i64(i8* nonnull align 8 dereferenceable(32) [[A_CAST]], i8 42, i64 32, i1 false) ; CHECK-NEXT: [[OUT_CAST:%.*]] = bitcast [8 x i64]* [[OUT:%.*]] to i8* -; CHECK-NEXT: call void @llvm.memcpy.p0i8.p0i8.i64(i8* nonnull align 8 dereferenceable(64) [[OUT_CAST]], i8* nonnull align 8 dereferenceable(64) [[A_CAST]], i64 64, i1 false) +; CHECK-NEXT: call void @llvm.memcpy.p0i8.p0i8.i64(i8* noalias nonnull align 8 dereferenceable(64) [[OUT_CAST]], i8* noalias nonnull align 8 dereferenceable(64) [[A_CAST]], i64 64, i1 false) ; CHECK-NEXT: call void @llvm.lifetime.end.p0i8(i64 64, i8* nonnull [[A_CAST]]) ; CHECK-NEXT: ret void ; |

