[llvm] 35def30 - [GlobalIsel][X86] Regenerate legalize-phi.mir
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 13 02:43:25 PDT 2023
Author: Simon Pilgrim
Date: 2023-06-13T10:40:23+01:00
New Revision: 35def3034f1e94e9ea461335a8029147539fc355
URL: https://github.com/llvm/llvm-project/commit/35def3034f1e94e9ea461335a8029147539fc355
DIFF: https://github.com/llvm/llvm-project/commit/35def3034f1e94e9ea461335a8029147539fc355.diff
LOG: [GlobalIsel][X86] Regenerate legalize-phi.mir
Added:
Modified:
llvm/test/CodeGen/X86/GlobalISel/legalize-phi.mir
Removed:
################################################################################
diff --git a/llvm/test/CodeGen/X86/GlobalISel/legalize-phi.mir b/llvm/test/CodeGen/X86/GlobalISel/legalize-phi.mir
index 6f0346d4aaccd..fa67c1e6bf352 100644
--- a/llvm/test/CodeGen/X86/GlobalISel/legalize-phi.mir
+++ b/llvm/test/CodeGen/X86/GlobalISel/legalize-phi.mir
@@ -1,5 +1,5 @@
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
-# RUN: llc -mtriple=x86_64-linux-gnu -run-pass=legalizer %s -o - | FileCheck %s --check-prefix=ALL
+# RUN: llc -mtriple=x86_64-linux-gnu -run-pass=legalizer %s -o - | FileCheck %s
--- |
@@ -141,25 +141,29 @@ constants:
body: |
- ; ALL-LABEL: name: test_i1
- ; ALL: bb.0.entry:
- ; ALL: successors: %bb.2(0x40000000), %bb.1(0x40000000)
- ; ALL: liveins: $edi, $edx, $esi
- ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
- ; ALL: [[COPY1:%[0-9]+]]:_(s32) = COPY $esi
- ; ALL: [[COPY2:%[0-9]+]]:_(s32) = COPY $edx
- ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
- ; ALL: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
- ; ALL: [[TRUNC1:%[0-9]+]]:_(s8) = G_TRUNC [[COPY1]](s32)
- ; ALL: G_BRCOND [[TRUNC]](s1), %bb.2
- ; ALL: bb.1.cond.false:
- ; ALL: successors: %bb.2(0x80000000)
- ; ALL: [[TRUNC2:%[0-9]+]]:_(s8) = G_TRUNC [[COPY2]](s32)
- ; ALL: bb.2.cond.end:
- ; ALL: [[PHI:%[0-9]+]]:_(s8) = G_PHI [[TRUNC2]](s8), %bb.1, [[TRUNC1]](s8), %bb.0
- ; ALL: $al = COPY [[PHI]](s8)
- ; ALL: RET 0, implicit $al
+ ; CHECK-LABEL: name: test_i1
+ ; CHECK: bb.0.entry:
+ ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
+ ; CHECK-NEXT: liveins: $edi, $edx, $esi
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $esi
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $edx
+ ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK-NEXT: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
+ ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:_(s8) = G_TRUNC [[COPY1]](s32)
+ ; CHECK-NEXT: G_BRCOND [[TRUNC]](s1), %bb.2
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.1.cond.false:
+ ; CHECK-NEXT: successors: %bb.2(0x80000000)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: [[TRUNC2:%[0-9]+]]:_(s8) = G_TRUNC [[COPY2]](s32)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.2.cond.end:
+ ; CHECK-NEXT: [[PHI:%[0-9]+]]:_(s8) = G_PHI [[TRUNC2]](s8), %bb.1, [[TRUNC1]](s8), %bb.0
+ ; CHECK-NEXT: $al = COPY [[PHI]](s8)
+ ; CHECK-NEXT: RET 0, implicit $al
bb.1.entry:
successors: %bb.3(0x40000000), %bb.2(0x40000000)
liveins: $edi, $edx, $esi
@@ -207,25 +211,29 @@ constants:
body: |
- ; ALL-LABEL: name: test_i8
- ; ALL: bb.0.entry:
- ; ALL: successors: %bb.2(0x40000000), %bb.1(0x40000000)
- ; ALL: liveins: $edi, $edx, $esi
- ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
- ; ALL: [[COPY1:%[0-9]+]]:_(s32) = COPY $esi
- ; ALL: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[COPY1]](s32)
- ; ALL: [[COPY2:%[0-9]+]]:_(s32) = COPY $edx
- ; ALL: [[TRUNC1:%[0-9]+]]:_(s8) = G_TRUNC [[COPY2]](s32)
- ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
- ; ALL: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
- ; ALL: G_BRCOND [[TRUNC2]](s1), %bb.2
- ; ALL: bb.1.cond.false:
- ; ALL: successors: %bb.2(0x80000000)
- ; ALL: bb.2.cond.end:
- ; ALL: [[PHI:%[0-9]+]]:_(s8) = G_PHI [[TRUNC1]](s8), %bb.1, [[TRUNC]](s8), %bb.0
- ; ALL: $al = COPY [[PHI]](s8)
- ; ALL: RET 0, implicit $al
+ ; CHECK-LABEL: name: test_i8
+ ; CHECK: bb.0.entry:
+ ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
+ ; CHECK-NEXT: liveins: $edi, $edx, $esi
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $esi
+ ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[COPY1]](s32)
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $edx
+ ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:_(s8) = G_TRUNC [[COPY2]](s32)
+ ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK-NEXT: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; CHECK-NEXT: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
+ ; CHECK-NEXT: G_BRCOND [[TRUNC2]](s1), %bb.2
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.1.cond.false:
+ ; CHECK-NEXT: successors: %bb.2(0x80000000)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.2.cond.end:
+ ; CHECK-NEXT: [[PHI:%[0-9]+]]:_(s8) = G_PHI [[TRUNC1]](s8), %bb.1, [[TRUNC]](s8), %bb.0
+ ; CHECK-NEXT: $al = COPY [[PHI]](s8)
+ ; CHECK-NEXT: RET 0, implicit $al
bb.1.entry:
successors: %bb.3(0x40000000), %bb.2(0x40000000)
liveins: $edi, $edx, $esi
@@ -272,25 +280,29 @@ constants:
body: |
- ; ALL-LABEL: name: test_i16
- ; ALL: bb.0.entry:
- ; ALL: successors: %bb.2(0x40000000), %bb.1(0x40000000)
- ; ALL: liveins: $edi, $edx, $esi
- ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
- ; ALL: [[COPY1:%[0-9]+]]:_(s32) = COPY $esi
- ; ALL: [[TRUNC:%[0-9]+]]:_(s16) = G_TRUNC [[COPY1]](s32)
- ; ALL: [[COPY2:%[0-9]+]]:_(s32) = COPY $edx
- ; ALL: [[TRUNC1:%[0-9]+]]:_(s16) = G_TRUNC [[COPY2]](s32)
- ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
- ; ALL: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
- ; ALL: G_BRCOND [[TRUNC2]](s1), %bb.2
- ; ALL: bb.1.cond.false:
- ; ALL: successors: %bb.2(0x80000000)
- ; ALL: bb.2.cond.end:
- ; ALL: [[PHI:%[0-9]+]]:_(s16) = G_PHI [[TRUNC1]](s16), %bb.1, [[TRUNC]](s16), %bb.0
- ; ALL: $ax = COPY [[PHI]](s16)
- ; ALL: RET 0, implicit $ax
+ ; CHECK-LABEL: name: test_i16
+ ; CHECK: bb.0.entry:
+ ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
+ ; CHECK-NEXT: liveins: $edi, $edx, $esi
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $esi
+ ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s16) = G_TRUNC [[COPY1]](s32)
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $edx
+ ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:_(s16) = G_TRUNC [[COPY2]](s32)
+ ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK-NEXT: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; CHECK-NEXT: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
+ ; CHECK-NEXT: G_BRCOND [[TRUNC2]](s1), %bb.2
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.1.cond.false:
+ ; CHECK-NEXT: successors: %bb.2(0x80000000)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.2.cond.end:
+ ; CHECK-NEXT: [[PHI:%[0-9]+]]:_(s16) = G_PHI [[TRUNC1]](s16), %bb.1, [[TRUNC]](s16), %bb.0
+ ; CHECK-NEXT: $ax = COPY [[PHI]](s16)
+ ; CHECK-NEXT: RET 0, implicit $ax
bb.1.entry:
successors: %bb.3(0x40000000), %bb.2(0x40000000)
liveins: $edi, $edx, $esi
@@ -335,27 +347,33 @@ constants:
body: |
- ; ALL-LABEL: name: test_i32
- ; ALL: bb.0.entry:
- ; ALL: successors: %bb.1(0x40000000), %bb.2(0x40000000)
- ; ALL: liveins: $edi, $edx, $esi
- ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
- ; ALL: [[COPY1:%[0-9]+]]:_(s32) = COPY $esi
- ; ALL: [[COPY2:%[0-9]+]]:_(s32) = COPY $edx
- ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
- ; ALL: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
- ; ALL: G_BRCOND [[TRUNC]](s1), %bb.1
- ; ALL: G_BR %bb.2
- ; ALL: bb.1.cond.true:
- ; ALL: successors: %bb.3(0x80000000)
- ; ALL: G_BR %bb.3
- ; ALL: bb.2.cond.false:
- ; ALL: successors: %bb.3(0x80000000)
- ; ALL: bb.3.cond.end:
- ; ALL: [[PHI:%[0-9]+]]:_(s32) = G_PHI [[COPY1]](s32), %bb.1, [[COPY2]](s32), %bb.2
- ; ALL: $eax = COPY [[PHI]](s32)
- ; ALL: RET 0, implicit $eax
+ ; CHECK-LABEL: name: test_i32
+ ; CHECK: bb.0.entry:
+ ; CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
+ ; CHECK-NEXT: liveins: $edi, $edx, $esi
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $esi
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $edx
+ ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK-NEXT: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
+ ; CHECK-NEXT: G_BRCOND [[TRUNC]](s1), %bb.1
+ ; CHECK-NEXT: G_BR %bb.2
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.1.cond.true:
+ ; CHECK-NEXT: successors: %bb.3(0x80000000)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: G_BR %bb.3
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.2.cond.false:
+ ; CHECK-NEXT: successors: %bb.3(0x80000000)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.3.cond.end:
+ ; CHECK-NEXT: [[PHI:%[0-9]+]]:_(s32) = G_PHI [[COPY1]](s32), %bb.1, [[COPY2]](s32), %bb.2
+ ; CHECK-NEXT: $eax = COPY [[PHI]](s32)
+ ; CHECK-NEXT: RET 0, implicit $eax
bb.1.entry:
successors: %bb.2(0x40000000), %bb.3(0x40000000)
liveins: $edi, $edx, $esi
@@ -404,27 +422,33 @@ constants:
body: |
- ; ALL-LABEL: name: test_i64
- ; ALL: bb.0.entry:
- ; ALL: successors: %bb.1(0x40000000), %bb.2(0x40000000)
- ; ALL: liveins: $edi, $rdx, $rsi
- ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
- ; ALL: [[COPY1:%[0-9]+]]:_(s64) = COPY $rsi
- ; ALL: [[COPY2:%[0-9]+]]:_(s64) = COPY $rdx
- ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
- ; ALL: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
- ; ALL: G_BRCOND [[TRUNC]](s1), %bb.1
- ; ALL: G_BR %bb.2
- ; ALL: bb.1.cond.true:
- ; ALL: successors: %bb.3(0x80000000)
- ; ALL: G_BR %bb.3
- ; ALL: bb.2.cond.false:
- ; ALL: successors: %bb.3(0x80000000)
- ; ALL: bb.3.cond.end:
- ; ALL: [[PHI:%[0-9]+]]:_(s64) = G_PHI [[COPY1]](s64), %bb.1, [[COPY2]](s64), %bb.2
- ; ALL: $rax = COPY [[PHI]](s64)
- ; ALL: RET 0, implicit $rax
+ ; CHECK-LABEL: name: test_i64
+ ; CHECK: bb.0.entry:
+ ; CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
+ ; CHECK-NEXT: liveins: $edi, $rdx, $rsi
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s64) = COPY $rsi
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s64) = COPY $rdx
+ ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK-NEXT: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
+ ; CHECK-NEXT: G_BRCOND [[TRUNC]](s1), %bb.1
+ ; CHECK-NEXT: G_BR %bb.2
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.1.cond.true:
+ ; CHECK-NEXT: successors: %bb.3(0x80000000)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: G_BR %bb.3
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.2.cond.false:
+ ; CHECK-NEXT: successors: %bb.3(0x80000000)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.3.cond.end:
+ ; CHECK-NEXT: [[PHI:%[0-9]+]]:_(s64) = G_PHI [[COPY1]](s64), %bb.1, [[COPY2]](s64), %bb.2
+ ; CHECK-NEXT: $rax = COPY [[PHI]](s64)
+ ; CHECK-NEXT: RET 0, implicit $rax
bb.1.entry:
successors: %bb.2(0x40000000), %bb.3(0x40000000)
liveins: $edi, $rdx, $rsi
@@ -476,26 +500,30 @@ constants:
body: |
- ; ALL-LABEL: name: test_float
- ; ALL: bb.0.entry:
- ; ALL: successors: %bb.2(0x40000000), %bb.1(0x40000000)
- ; ALL: liveins: $edi, $xmm0, $xmm1
- ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
- ; ALL: [[COPY1:%[0-9]+]]:_(s128) = COPY $xmm0
- ; ALL: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s128)
- ; ALL: [[COPY2:%[0-9]+]]:_(s128) = COPY $xmm1
- ; ALL: [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[COPY2]](s128)
- ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
- ; ALL: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
- ; ALL: G_BRCOND [[TRUNC2]](s1), %bb.2
- ; ALL: bb.1.cond.false:
- ; ALL: successors: %bb.2(0x80000000)
- ; ALL: bb.2.cond.end:
- ; ALL: [[PHI:%[0-9]+]]:_(s32) = G_PHI [[TRUNC1]](s32), %bb.1, [[TRUNC]](s32), %bb.0
- ; ALL: [[ANYEXT:%[0-9]+]]:_(s128) = G_ANYEXT [[PHI]](s32)
- ; ALL: $xmm0 = COPY [[ANYEXT]](s128)
- ; ALL: RET 0, implicit $xmm0
+ ; CHECK-LABEL: name: test_float
+ ; CHECK: bb.0.entry:
+ ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
+ ; CHECK-NEXT: liveins: $edi, $xmm0, $xmm1
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s128) = COPY $xmm0
+ ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s128)
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s128) = COPY $xmm1
+ ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[COPY2]](s128)
+ ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK-NEXT: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; CHECK-NEXT: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
+ ; CHECK-NEXT: G_BRCOND [[TRUNC2]](s1), %bb.2
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.1.cond.false:
+ ; CHECK-NEXT: successors: %bb.2(0x80000000)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.2.cond.end:
+ ; CHECK-NEXT: [[PHI:%[0-9]+]]:_(s32) = G_PHI [[TRUNC1]](s32), %bb.1, [[TRUNC]](s32), %bb.0
+ ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:_(s128) = G_ANYEXT [[PHI]](s32)
+ ; CHECK-NEXT: $xmm0 = COPY [[ANYEXT]](s128)
+ ; CHECK-NEXT: RET 0, implicit $xmm0
bb.1.entry:
successors: %bb.3(0x40000000), %bb.2(0x40000000)
liveins: $edi, $xmm0, $xmm1
@@ -544,26 +572,30 @@ constants:
body: |
- ; ALL-LABEL: name: test_double
- ; ALL: bb.0.entry:
- ; ALL: successors: %bb.2(0x40000000), %bb.1(0x40000000)
- ; ALL: liveins: $edi, $xmm0, $xmm1
- ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
- ; ALL: [[COPY1:%[0-9]+]]:_(s128) = COPY $xmm0
- ; ALL: [[TRUNC:%[0-9]+]]:_(s64) = G_TRUNC [[COPY1]](s128)
- ; ALL: [[COPY2:%[0-9]+]]:_(s128) = COPY $xmm1
- ; ALL: [[TRUNC1:%[0-9]+]]:_(s64) = G_TRUNC [[COPY2]](s128)
- ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
- ; ALL: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
- ; ALL: G_BRCOND [[TRUNC2]](s1), %bb.2
- ; ALL: bb.1.cond.false:
- ; ALL: successors: %bb.2(0x80000000)
- ; ALL: bb.2.cond.end:
- ; ALL: [[PHI:%[0-9]+]]:_(s64) = G_PHI [[TRUNC1]](s64), %bb.1, [[TRUNC]](s64), %bb.0
- ; ALL: [[ANYEXT:%[0-9]+]]:_(s128) = G_ANYEXT [[PHI]](s64)
- ; ALL: $xmm0 = COPY [[ANYEXT]](s128)
- ; ALL: RET 0, implicit $xmm0
+ ; CHECK-LABEL: name: test_double
+ ; CHECK: bb.0.entry:
+ ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
+ ; CHECK-NEXT: liveins: $edi, $xmm0, $xmm1
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $edi
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s128) = COPY $xmm0
+ ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s64) = G_TRUNC [[COPY1]](s128)
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s128) = COPY $xmm1
+ ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:_(s64) = G_TRUNC [[COPY2]](s128)
+ ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK-NEXT: [[ICMP:%[0-9]+]]:_(s8) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; CHECK-NEXT: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s8)
+ ; CHECK-NEXT: G_BRCOND [[TRUNC2]](s1), %bb.2
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.1.cond.false:
+ ; CHECK-NEXT: successors: %bb.2(0x80000000)
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: {{ $}}
+ ; CHECK-NEXT: bb.2.cond.end:
+ ; CHECK-NEXT: [[PHI:%[0-9]+]]:_(s64) = G_PHI [[TRUNC1]](s64), %bb.1, [[TRUNC]](s64), %bb.0
+ ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:_(s128) = G_ANYEXT [[PHI]](s64)
+ ; CHECK-NEXT: $xmm0 = COPY [[ANYEXT]](s128)
+ ; CHECK-NEXT: RET 0, implicit $xmm0
bb.1.entry:
successors: %bb.3(0x40000000), %bb.2(0x40000000)
liveins: $edi, $xmm0, $xmm1
More information about the llvm-commits
mailing list