2017-06-27 23:00:22 +08:00
|
|
|
# RUN: llc -o - %s -mtriple=aarch64--linux-gnu -mcpu=falkor -run-pass=aarch64-ccmp | FileCheck %s
|
|
|
|
---
|
|
|
|
# This test checks that successor probabilties are properly updated after a
|
|
|
|
# ccmp-conversion.
|
|
|
|
#
|
|
|
|
# CHECK-LABEL: name: aarch64-ccmp-successor-probs
|
|
|
|
# CHECK: bb.0:
|
|
|
|
# CHECK-NEXT: successors: %bb.2(0x04000000), %bb.3(0x7c000000)
|
2018-02-01 06:04:26 +08:00
|
|
|
# CHECK: CCMPXr %5, %4, 0, 10, implicit-def $nzcv, implicit $nzcv
|
2017-06-27 23:00:22 +08:00
|
|
|
#
|
|
|
|
name: aarch64-ccmp-successor-probs
|
|
|
|
registers:
|
|
|
|
- { id: 0, class: gpr64 }
|
|
|
|
- { id: 1, class: gpr64 }
|
|
|
|
- { id: 2, class: gpr64 }
|
|
|
|
- { id: 3, class: gpr64 }
|
|
|
|
- { id: 4, class: gpr64 }
|
|
|
|
- { id: 5, class: gpr64 }
|
|
|
|
- { id: 6, class: gpr64 }
|
|
|
|
- { id: 7, class: gpr64 }
|
|
|
|
body : |
|
|
|
|
bb.0:
|
|
|
|
successors: %bb.1(0x7e000000), %bb.2(0x02000000)
|
|
|
|
|
2018-02-01 06:04:26 +08:00
|
|
|
%0 = LDRXui killed $x0, 69
|
|
|
|
%1 = COPY $xzr
|
|
|
|
%2 = SUBSXrr %1, %0, implicit-def dead $nzcv
|
|
|
|
%3 = SUBSXri $x1, 1, 0, implicit-def dead $nzcv
|
2017-06-27 23:00:22 +08:00
|
|
|
%4 = COPY %0
|
|
|
|
%5 = COPY %3
|
2018-02-01 06:04:26 +08:00
|
|
|
%6 = SUBSXrr $x1, killed %2, implicit-def $nzcv
|
|
|
|
Bcc 11, %bb.2, implicit $nzcv
|
2017-06-27 23:00:22 +08:00
|
|
|
B %bb.1
|
|
|
|
|
|
|
|
bb.1:
|
|
|
|
successors: %bb.2(0x02082082), %bb.3(0x7df7df7e)
|
|
|
|
|
2018-02-01 06:04:26 +08:00
|
|
|
%7 = SUBSXrr %5, %4, implicit-def $nzcv
|
|
|
|
Bcc 12, %bb.2, implicit $nzcv
|
2017-06-27 23:00:22 +08:00
|
|
|
B %bb.3
|
|
|
|
|
|
|
|
bb.2:
|
|
|
|
successors: %bb.3(0x80000000)
|
|
|
|
|
|
|
|
bb.3:
|
|
|
|
...
|