2017-09-20 16:23:29 +08:00
|
|
|
# RUN: llc -mtriple=arm-apple-ios -run-pass=if-converter %s -o - | FileCheck %s
|
|
|
|
---
|
|
|
|
name: foo
|
|
|
|
body: |
|
|
|
|
bb.0:
|
2018-02-01 06:04:26 +08:00
|
|
|
Bcc %bb.2, 1, $cpsr
|
2017-09-20 16:23:29 +08:00
|
|
|
|
|
|
|
bb.1:
|
|
|
|
successors: %bb.3(0x20000000), %bb.4(0x60000000)
|
2018-02-01 06:04:26 +08:00
|
|
|
$sp = tADDspi $sp, 1, 14, _
|
|
|
|
Bcc %bb.3, 1, $cpsr
|
2017-09-20 16:23:29 +08:00
|
|
|
B %bb.4
|
|
|
|
|
|
|
|
bb.2:
|
|
|
|
successors: %bb.3(0x20000000), %bb.4(0x60000000)
|
2018-02-01 06:04:26 +08:00
|
|
|
$sp = tADDspi $sp, 2, 14, _
|
|
|
|
Bcc %bb.3, 1, $cpsr
|
2017-09-20 16:23:29 +08:00
|
|
|
B %bb.4
|
|
|
|
|
|
|
|
bb.3:
|
|
|
|
successors:
|
2018-02-01 06:04:26 +08:00
|
|
|
$sp = tADDspi $sp, 3, 14, _
|
2017-09-20 16:23:29 +08:00
|
|
|
BX_RET 14, _
|
|
|
|
|
|
|
|
bb.4:
|
|
|
|
successors:
|
2018-02-01 06:04:26 +08:00
|
|
|
$sp = tADDspi $sp, 4, 14, _
|
2017-09-20 16:23:29 +08:00
|
|
|
BX_RET 14, _
|
|
|
|
...
|
|
|
|
|
|
|
|
# Forked-diamond testcase with unanalyzable instructions in both the True and
|
|
|
|
# False BBs following the forked diamond.
|
|
|
|
|
|
|
|
# CHECK: body: |
|
|
|
|
# CHECK: bb.0:
|
|
|
|
# CHECK: successors: %bb.2(0x20000000), %bb.1(0x60000000)
|
|
|
|
|
2018-02-01 06:04:26 +08:00
|
|
|
# CHECK: $sp = tADDspi $sp, 2, 1, $cpsr
|
|
|
|
# CHECK: $sp = tADDspi $sp, 1, 0, $cpsr, implicit $sp
|
|
|
|
# CHECK: Bcc %bb.2, 1, $cpsr
|
2017-09-20 16:23:29 +08:00
|
|
|
|
|
|
|
# CHECK: bb.1:
|
2018-02-01 06:04:26 +08:00
|
|
|
# CHECK: $sp = tADDspi $sp, 4, 14, $noreg
|
|
|
|
# CHECK: BX_RET 14, $noreg
|
2017-09-20 16:23:29 +08:00
|
|
|
|
|
|
|
# CHECK: bb.2:
|
2018-02-01 06:04:26 +08:00
|
|
|
# CHECK: $sp = tADDspi $sp, 3, 14, $noreg
|
|
|
|
# CHECK: BX_RET 14, $noreg
|