aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/machine-region-info.mir
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-04-16 16:01:22 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-04-16 16:01:22 +0000
commit71d5a2540a98c81f5bcaeb48805e0e2881f530ef (patch)
tree5343938942df402b49ec7300a1c25a2d4ccd5821 /test/CodeGen/X86/machine-region-info.mir
parent31bbf64f3a4974a2d6c8b3b27ad2f519caf74057 (diff)
downloadsrc-71d5a2540a98c81f5bcaeb48805e0e2881f530ef.tar.gz
src-71d5a2540a98c81f5bcaeb48805e0e2881f530ef.zip
Vendor import of llvm trunk r300422:vendor/llvm/llvm-trunk-r300422
Notes
Notes: svn path=/vendor/llvm/dist/; revision=317017 svn path=/vendor/llvm/llvm-trunk-r300422/; revision=317018; tag=vendor/llvm/llvm-trunk-r300422
Diffstat (limited to 'test/CodeGen/X86/machine-region-info.mir')
-rw-r--r--test/CodeGen/X86/machine-region-info.mir83
1 files changed, 83 insertions, 0 deletions
diff --git a/test/CodeGen/X86/machine-region-info.mir b/test/CodeGen/X86/machine-region-info.mir
new file mode 100644
index 000000000000..0998fe97c235
--- /dev/null
+++ b/test/CodeGen/X86/machine-region-info.mir
@@ -0,0 +1,83 @@
+# RUN: llc -mtriple=x86_64-- -run-pass=machine-region-info %s -debug-only=machine-region-info -o /dev/null 2>&1 | FileCheck %s
+# REQUIRES: asserts
+---
+name: fun
+body: |
+ bb.0:
+ successors: %bb.1, %bb.7
+
+ CMP32ri8 %edi, 40, implicit-def %eflags
+ JNE_1 %bb.7, implicit killed %eflags
+ JMP_1 %bb.1
+
+ bb.1:
+ successors: %bb.2, %bb.11
+
+ CMP32ri8 %edi, 1, implicit-def %eflags
+ JNE_1 %bb.11, implicit killed %eflags
+ JMP_1 %bb.2
+
+ bb.2:
+ successors: %bb.3, %bb.5
+
+ CMP32ri8 %edi, 2, implicit-def %eflags
+ JNE_1 %bb.5, implicit killed %eflags
+ JMP_1 %bb.3
+
+ bb.3:
+ successors: %bb.4, %bb.5
+
+ CMP32ri8 %edi, 90, implicit-def %eflags
+ JNE_1 %bb.5, implicit killed %eflags
+ JMP_1 %bb.4
+
+ bb.4:
+ successors: %bb.5
+
+ bb.5:
+ successors: %bb.6, %bb.11
+
+ CMP32ri8 %edi, 4, implicit-def %eflags
+ JNE_1 %bb.11, implicit killed %eflags
+ JMP_1 %bb.6
+
+ bb.6:
+ successors: %bb.11
+
+ JMP_1 %bb.11
+
+ bb.7:
+ successors: %bb.9, %bb.8
+
+ CMP32ri8 %edi, 5, implicit-def %eflags
+ JE_1 %bb.9, implicit killed %eflags
+ JMP_1 %bb.8
+
+ bb.8:
+ successors: %bb.9
+
+ bb.9:
+ successors: %bb.11, %bb.10
+
+ CMP32ri8 %edi, 6, implicit-def %eflags
+ JE_1 %bb.11, implicit killed %eflags
+ JMP_1 %bb.10
+
+ bb.10:
+ successors: %bb.11
+
+ bb.11:
+ RET 0
+
+...
+
+# CHECK: Region tree:
+# CHECK-NEXT: [0] BB#0 => <Function Return>
+# CHECK-NEXT: [1] BB#0 => BB#11
+# CHECK-NEXT: [2] BB#1 => BB#11
+# CHECK-NEXT: [3] BB#2 => BB#5
+# CHECK-NEXT: [4] BB#3 => BB#5
+# CHECK-NEXT: [3] BB#5 => BB#11
+# CHECK-NEXT: [2] BB#7 => BB#9
+# CHECK-NEXT: [2] BB#9 => BB#11
+# CHECK-NEXT: End region tree