aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGen/Hexagon/loop-idiom/hexagon-memmove2.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/Hexagon/loop-idiom/hexagon-memmove2.ll')
-rw-r--r--test/CodeGen/Hexagon/loop-idiom/hexagon-memmove2.ll36
1 files changed, 0 insertions, 36 deletions
diff --git a/test/CodeGen/Hexagon/loop-idiom/hexagon-memmove2.ll b/test/CodeGen/Hexagon/loop-idiom/hexagon-memmove2.ll
deleted file mode 100644
index b9747a887a59..000000000000
--- a/test/CodeGen/Hexagon/loop-idiom/hexagon-memmove2.ll
+++ /dev/null
@@ -1,36 +0,0 @@
-; RUN: opt -basicaa -hexagon-loop-idiom -S -mtriple hexagon-unknown-elf < %s \
-; RUN: | FileCheck %s
-
-define void @PR14241(i32* %s, i64 %size) #0 {
-; Ensure that we don't form a memcpy for strided loops. Briefly, when we taught
-; LoopIdiom about memmove and strided loops, this got miscompiled into a memcpy
-; instead of a memmove. If we get the memmove transform back, this will catch
-; regressions.
-;
-; CHECK-LABEL: @PR14241(
-
-entry:
- %end.idx = add i64 %size, -1
- %end.ptr = getelementptr inbounds i32, i32* %s, i64 %end.idx
- br label %while.body
-; CHECK-NOT: memcpy
-; CHECK: memmove
-
-while.body:
- %phi.ptr = phi i32* [ %s, %entry ], [ %next.ptr, %while.body ]
- %src.ptr = getelementptr inbounds i32, i32* %phi.ptr, i64 1
- %val = load i32, i32* %src.ptr, align 4
-; CHECK: load
- %dst.ptr = getelementptr inbounds i32, i32* %phi.ptr, i64 0
- store i32 %val, i32* %dst.ptr, align 4
-; CHECK: store
- %next.ptr = getelementptr inbounds i32, i32* %phi.ptr, i64 1
- %cmp = icmp eq i32* %next.ptr, %end.ptr
- br i1 %cmp, label %exit, label %while.body
-
-exit:
- ret void
-; CHECK: ret void
-}
-
-attributes #0 = { nounwind }