summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/SystemZ
diff options
context:
space:
mode:
authorJonas Paulsson <paulsson@linux.vnet.ibm.com>2019-09-30 07:29:54 +0000
committerJonas Paulsson <paulsson@linux.vnet.ibm.com>2019-09-30 07:29:54 +0000
commite794c049b3e281121722069c74def5163ecf927b (patch)
tree00e7b3cec4b998099aff275753b324beebba2044 /llvm/test/CodeGen/SystemZ
parent5951e3f81340e54b2c80fc5d3c2c452bc442f5c6 (diff)
downloadbcm5719-llvm-e794c049b3e281121722069c74def5163ecf927b.tar.gz
bcm5719-llvm-e794c049b3e281121722069c74def5163ecf927b.zip
[SystemZ] Add SystemZPostRewrite in addPostRegAlloc() instead at -O0.
SystemZPostRewrite needs to be run before (it may emit COPYs) the Post-RA pseudo pass also at -O0, so it should be added in addPostRegAlloc(). Review: Ulrich Weigand llvm-svn: 373182
Diffstat (limited to 'llvm/test/CodeGen/SystemZ')
-rw-r--r--llvm/test/CodeGen/SystemZ/cond-move-09.mir29
1 files changed, 29 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/SystemZ/cond-move-09.mir b/llvm/test/CodeGen/SystemZ/cond-move-09.mir
new file mode 100644
index 00000000000..9eb4885c2b4
--- /dev/null
+++ b/llvm/test/CodeGen/SystemZ/cond-move-09.mir
@@ -0,0 +1,29 @@
+# RUN: llc -mtriple=s390x-linux-gnu -mcpu=z14 -O0 -start-after=regallocfast %s \
+# RUN: -o - | FileCheck %s
+#
+# Test that LOCRMux expansion works at -O0.
+
+--- |
+ define internal i32 @fun(i16 %arg) { bb: ret i32 0 }
+...
+
+# CHECK-LABEL: fun
+# CHECK: risbhg %r13, %r13, 0, 159, 32
+
+---
+name: 'fun'
+alignment: 16
+tracksRegLiveness: true
+frameInfo:
+ maxAlignment: 8
+machineFunctionInfo: {}
+body: |
+ bb.0.bb:
+ renamable $r0d = IMPLICIT_DEF
+ CGHI killed renamable $r0d, 8, implicit-def $cc
+ renamable $r13l = LHIMux 0
+ renamable $r13h = LHIMux -1
+ renamable $r13h = LOCRMux renamable $r13h, killed renamable $r13l, 14, 10, implicit $cc
+ renamable $r2l = COPY killed renamable $r13h
+ Return implicit killed $r2l
+...
OpenPOWER on IntegriCloud