diff options
author | Bryant Wong <llvm-commits@xorshift.org> | 2016-12-25 22:42:27 +0000 |
---|---|---|
committer | Bryant Wong <llvm-commits@xorshift.org> | 2016-12-25 22:42:27 +0000 |
commit | a07d9b14603780b70c61a8d5741bc5eb4ab7be69 (patch) | |
tree | d45fa135783373d0aa69641f827cb959a699a413 /llvm/test/Transforms/Util/MemorySSA | |
parent | d7c12ee54ccf5db8c85426f13e37616106e883f7 (diff) | |
download | bcm5719-llvm-a07d9b14603780b70c61a8d5741bc5eb4ab7be69.tar.gz bcm5719-llvm-a07d9b14603780b70c61a8d5741bc5eb4ab7be69.zip |
[AliasAnalysis] Teach BasicAA about memcpy.
Differential Revision: https://reviews.llvm.org/D27034
llvm-svn: 290526
Diffstat (limited to 'llvm/test/Transforms/Util/MemorySSA')
-rw-r--r-- | llvm/test/Transforms/Util/MemorySSA/basicaa-memcpy.ll | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/llvm/test/Transforms/Util/MemorySSA/basicaa-memcpy.ll b/llvm/test/Transforms/Util/MemorySSA/basicaa-memcpy.ll new file mode 100644 index 00000000000..bfd7c899b59 --- /dev/null +++ b/llvm/test/Transforms/Util/MemorySSA/basicaa-memcpy.ll @@ -0,0 +1,16 @@ +; RUN: opt -disable-output -basicaa -print-memoryssa %s 2>&1 | FileCheck %s + +declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture, i64, i32, i1) nounwind + +define void @source_clobber(i8* %a, i8* %b) { +; CHECK-LABEL: @source_clobber( +; CHECK-NEXT: ; 1 = MemoryDef(liveOnEntry) +; CHECK-NEXT: call void @llvm.memcpy.p0i8.p0i8.i64(i8* %a, i8* %b, i64 128, i32 1, i1 false) +; CHECK-NEXT: ; MemoryUse(liveOnEntry) +; CHECK-NEXT: [[X:%.*]] = load i8, i8* %b +; CHECK-NEXT: ret void +; + call void @llvm.memcpy.p0i8.p0i8.i64(i8* %a, i8* %b, i64 128, i32 1, i1 false) + %x = load i8, i8* %b + ret void +} |