1# RUN: llc -mtriple=aarch64-none-linux-gnu -run-pass=postra-machine-sink -verify-machineinstrs  -o - %s | FileCheck -check-prefix=RUN-POSTRA %s
2# RUN: llc -mtriple=aarch64-none-linux-gnu -run-pass=postra-machine-sink -opt-bisect-limit=0 -verify-machineinstrs  -o - %s | FileCheck -check-prefix=BISECT-NO-RUN-POSTRA %s
3
4---
5
6# Make sure the pass is run.
7# Sink w19 to %bb.1.
8# RUN-POSTRA-LABEL: name: sinkcopy1
9# RUN-POSTRA: bb.0:
10# RUN-POSTRA-NOT: $w19 = COPY killed $w0
11# RUN-POSTRA: bb.1:
12# RUN-POSTRA: liveins: $w0, $w1
13# RUN-POSTRA: renamable $w19 = COPY killed $w0
14
15# Make sure the pass it not run.
16# BISECT-NO-RUN-POSTRA-LABEL: name: sinkcopy1
17# BISECT-NO-RUN-POSTRA: bb.0:
18# BISECT-NO-RUN-POSTRA: $w19 = COPY killed $w0
19# BISECT-NO-RUN-POSTRA: bb.1:
20# BISECT-NO-RUN-POSTRA: liveins: $w1, $w19
21
22name: sinkcopy1
23tracksRegLiveness: true
24body: |
25  bb.0:
26    liveins: $w0, $w1
27    $w1 = SUBSWri $w1, 1, 0, implicit-def $nzcv
28    renamable  $w19 = COPY killed $w0
29    Bcc 11, %bb.1, implicit $nzcv
30    B %bb.2
31
32  bb.1:
33    liveins: $w1, $w19
34    $w0 = ADDWrr $w1, $w19
35    RET $x0
36
37  bb.2:
38    $w0 = COPY $wzr
39    RET   $x0
40...
41