summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>2017-07-19 19:17:32 +0000
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>2017-07-19 19:17:32 +0000
commitac01994db94c96b03fdc63affbe7128040ce8d15 (patch)
treea11d77972f0e546aecc237621b4759fedb042884 /llvm/test
parent04f3910537eb509ba3033d84bc011eb00b92cb87 (diff)
downloadbcm5719-llvm-ac01994db94c96b03fdc63affbe7128040ce8d15.tar.gz
bcm5719-llvm-ac01994db94c96b03fdc63affbe7128040ce8d15.zip
[Hexagon] Fix a bug in r308502: post-inc offset is always 0
llvm-svn: 308510
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/CodeGen/Hexagon/postinc-baseoffset.mir22
1 files changed, 22 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Hexagon/postinc-baseoffset.mir b/llvm/test/CodeGen/Hexagon/postinc-baseoffset.mir
new file mode 100644
index 00000000000..69337e92dda
--- /dev/null
+++ b/llvm/test/CodeGen/Hexagon/postinc-baseoffset.mir
@@ -0,0 +1,22 @@
+# RUN: llc -march=hexagon -start-before hexagon-packetizer %s -o - | FileCheck %s
+
+# Check that we don't packetize these two instructions together. It happened
+# earlier because "offset" in the post-increment instruction was taken to be 8.
+
+# CHECK: memw(r0+#0) = #-1
+# CHECK: }
+# CHECK: {
+# CHECK: r1 = memw(r0++#8)
+
+--- |
+ define void @fred(i32* %a) { ret void }
+...
+---
+name: fred
+tracksRegLiveness: true
+
+body: |
+ bb.0:
+ liveins: %r0
+ S4_storeiri_io %r0, 0, -1 :: (store 4 into %ir.a)
+ %r1, %r0 = L2_loadri_pi %r0, 8 :: (load 4 from %ir.a)
OpenPOWER on IntegriCloud