summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen
diff options
context:
space:
mode:
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>2018-02-20 14:29:43 +0000
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>2018-02-20 14:29:43 +0000
commitb404fae9e3c2d757b4e11215fff8d88346835900 (patch)
tree081bc4fdb85dbf1b2acc579f9752b34e440776d6 /llvm/test/CodeGen
parent61ba2237046395ce7a6ad993e23740c0ffacf281 (diff)
downloadbcm5719-llvm-b404fae9e3c2d757b4e11215fff8d88346835900.tar.gz
bcm5719-llvm-b404fae9e3c2d757b4e11215fff8d88346835900.zip
[Hexagon] Fix alignment calculation of stack objects in Hexagon bit tracker
llvm-svn: 325580
Diffstat (limited to 'llvm/test/CodeGen')
-rw-r--r--llvm/test/CodeGen/Hexagon/bit-addr-align.mir18
1 files changed, 18 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Hexagon/bit-addr-align.mir b/llvm/test/CodeGen/Hexagon/bit-addr-align.mir
new file mode 100644
index 00000000000..911f23e8084
--- /dev/null
+++ b/llvm/test/CodeGen/Hexagon/bit-addr-align.mir
@@ -0,0 +1,18 @@
+# RUN: llc -march=hexagon -run-pass hexagon-bit-simplify %s -o - | FileCheck %s
+
+# Hexagon bit tracker incorrectly calculated address alignment and removed
+# a necessary A2_andir instruction. Make sure it remains.
+# CHECK: A2_andir %0, -8
+
+---
+name: fred
+stack:
+ - { id: 0, type: default, size: 64, alignment: 64 }
+tracksRegLiveness: true
+body: |
+ bb.0:
+ %0:intregs = PS_fi %stack.0, 60
+ %1:intregs = A2_andir %0, -8
+ %2:doubleregs = L2_loadrd_io %1, 8
+...
+
OpenPOWER on IntegriCloud