summaryrefslogtreecommitdiff
path: root/test/CodeGen/Hexagon
diff options
context:
space:
mode:
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>2017-10-19 16:59:22 +0000
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>2017-10-19 16:59:22 +0000
commit99a0c4c3b561d074c178d71c0a392d565133b58a (patch)
tree6a824ed32a89777707d8060a0cae1d0c69e1ae11 /test/CodeGen/Hexagon
parent2ac0f38d31db3f40ae0cedfeb3848a6d9aa376fa (diff)
[Hexagon] Fix store conversion from rr to io in optimize addressing modes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@316170 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/Hexagon')
-rw-r--r--test/CodeGen/Hexagon/addrmode-rr-to-io.mir22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/CodeGen/Hexagon/addrmode-rr-to-io.mir b/test/CodeGen/Hexagon/addrmode-rr-to-io.mir
new file mode 100644
index 00000000000..75eb0d38440
--- /dev/null
+++ b/test/CodeGen/Hexagon/addrmode-rr-to-io.mir
@@ -0,0 +1,22 @@
+# RUN: llc -march=hexagon -run-pass amode-opt %s -o - | FileCheck %s
+
+# This testcase used to crash.
+# CHECK: S2_storerb_io killed %r0, @var_i8, killed %r2
+
+--- |
+ define void @fred() { ret void }
+ @var_i8 = global [10 x i8] zeroinitializer, align 8
+...
+
+---
+name: fred
+tracksRegLiveness: true
+body: |
+ bb.0:
+ liveins: %r0
+ %r1 = A2_tfrsi @var_i8
+ %r2 = A2_tfrsi 255
+ S4_storerb_rr killed %r0, killed %r1, 0, killed %r2
+ PS_jmpret %r31, implicit-def %pc
+...
+