167 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 52# RUN: llc -run-pass=aarch64-expand-pseudo -mtriple=aarch64-unknown-linux-gnu -o - %s | FileCheck %s3 4---5 6# X0 = TPIDR2 block pointer7# X8 = TPIDR2_EL08name: restore_za_save9alignment: 410tracksRegLiveness: true11body: |12 bb.0:13 ; CHECK-LABEL: name: restore_za_save14 ; CHECK: successors: %bb.1(0x40000000), %bb.2(0x40000000)15 ; CHECK-NEXT: {{ $}}16 ; CHECK-NEXT: $x0 = IMPLICIT_DEF17 ; CHECK-NEXT: $x8 = MRS 56965, implicit-def $nzcv18 ; CHECK-NEXT: CBZX $x8, %bb.119 ; CHECK-NEXT: B %bb.220 ; CHECK-NEXT: {{ $}}21 ; CHECK-NEXT: .1:22 ; CHECK-NEXT: successors: %bb.2(0x80000000)23 ; CHECK-NEXT: liveins: $x8, $x024 ; CHECK-NEXT: {{ $}}25 ; CHECK-NEXT: BL &__arm_tpidr2_restore, csr_aarch64_sme_abi_support_routines_preservemost_from_x0, implicit-def $lr, implicit $sp, implicit $x026 ; CHECK-NEXT: B %bb.227 ; CHECK-NEXT: {{ $}}28 ; CHECK-NEXT: .2:29 ; CHECK-NEXT: RET undef $lr30 $x0 = IMPLICIT_DEF31 $x8 = MRS 56965, implicit-def $nzcv32 33 RestoreZAPseudo $x8, $x0, &__arm_tpidr2_restore, csr_aarch64_sme_abi_support_routines_preservemost_from_x034 35 RET_ReallyLR36 37...38---39 40# X8 = TPIDR2_EL041name: commit_za_save42alignment: 443tracksRegLiveness: true44body: |45 bb.0:46 ; CHECK-LABEL: name: commit_za_save47 ; CHECK: successors: %bb.1(0x40000000), %bb.2(0x40000000)48 ; CHECK-NEXT: {{ $}}49 ; CHECK-NEXT: $x8 = MRS 56965, implicit-def $nzcv50 ; CHECK-NEXT: CBNZX $x8, %bb.151 ; CHECK-NEXT: B %bb.252 ; CHECK-NEXT: {{ $}}53 ; CHECK-NEXT: .1:54 ; CHECK-NEXT: successors: %bb.2(0x80000000)55 ; CHECK-NEXT: liveins: $x856 ; CHECK-NEXT: {{ $}}57 ; CHECK-NEXT: BL &__arm_tpidr2_save, csr_aarch64_sme_abi_support_routines_preservemost_from_x0, implicit-def $lr, implicit $sp58 ; CHECK-NEXT: MSR 56965, $xzr59 ; CHECK-NEXT: B %bb.260 ; CHECK-NEXT: {{ $}}61 ; CHECK-NEXT: .2:62 ; CHECK-NEXT: RET undef $lr63 $x8 = MRS 56965, implicit-def $nzcv64 65 CommitZASavePseudo $x8, 0, 0, &__arm_tpidr2_save, csr_aarch64_sme_abi_support_routines_preservemost_from_x066 67 RET_ReallyLR68 69...70---71# X8 = TPIDR2_EL072name: commit_za_save_zero_za73alignment: 474tracksRegLiveness: true75body: |76 bb.0:77 ; CHECK-LABEL: name: commit_za_save_zero_za78 ; CHECK: successors: %bb.1(0x40000000), %bb.2(0x40000000)79 ; CHECK-NEXT: {{ $}}80 ; CHECK-NEXT: $x8 = MRS 56965, implicit-def $nzcv81 ; CHECK-NEXT: CBNZX $x8, %bb.182 ; CHECK-NEXT: B %bb.283 ; CHECK-NEXT: {{ $}}84 ; CHECK-NEXT: .1:85 ; CHECK-NEXT: successors: %bb.2(0x80000000)86 ; CHECK-NEXT: liveins: $x887 ; CHECK-NEXT: {{ $}}88 ; CHECK-NEXT: BL &__arm_tpidr2_save, csr_aarch64_sme_abi_support_routines_preservemost_from_x0, implicit-def $lr, implicit $sp, implicit-def $zab089 ; CHECK-NEXT: MSR 56965, $xzr90 ; CHECK-NEXT: ZERO_M 255, implicit-def $zab091 ; CHECK-NEXT: B %bb.292 ; CHECK-NEXT: {{ $}}93 ; CHECK-NEXT: .2:94 ; CHECK-NEXT: RET undef $lr95 $x8 = MRS 56965, implicit-def $nzcv96 97 CommitZASavePseudo $x8, 1, 0, &__arm_tpidr2_save, csr_aarch64_sme_abi_support_routines_preservemost_from_x0, implicit-def $zab098 99 RET_ReallyLR100 101...102---103# X8 = TPIDR2_EL0104name: commit_za_save_zero_zt0105alignment: 4106tracksRegLiveness: true107body: |108 bb.0:109 ; CHECK-LABEL: name: commit_za_save_zero_zt0110 ; CHECK: successors: %bb.1(0x40000000), %bb.2(0x40000000)111 ; CHECK-NEXT: {{ $}}112 ; CHECK-NEXT: $x8 = MRS 56965, implicit-def $nzcv113 ; CHECK-NEXT: CBNZX $x8, %bb.1114 ; CHECK-NEXT: B %bb.2115 ; CHECK-NEXT: {{ $}}116 ; CHECK-NEXT: .1:117 ; CHECK-NEXT: successors: %bb.2(0x80000000)118 ; CHECK-NEXT: liveins: $x8119 ; CHECK-NEXT: {{ $}}120 ; CHECK-NEXT: BL &__arm_tpidr2_save, csr_aarch64_sme_abi_support_routines_preservemost_from_x0, implicit-def $lr, implicit $sp, implicit-def $zt0121 ; CHECK-NEXT: MSR 56965, $xzr122 ; CHECK-NEXT: $zt0 = ZERO_T123 ; CHECK-NEXT: B %bb.2124 ; CHECK-NEXT: {{ $}}125 ; CHECK-NEXT: .2:126 ; CHECK-NEXT: RET undef $lr127 $x8 = MRS 56965, implicit-def $nzcv128 129 CommitZASavePseudo $x8, 0, 1, &__arm_tpidr2_save, csr_aarch64_sme_abi_support_routines_preservemost_from_x0, implicit-def $zt0130 131 RET_ReallyLR132 133...134---135# X8 = TPIDR2_EL0136name: commit_za_save_zero_everything137alignment: 4138tracksRegLiveness: true139body: |140 bb.0:141 ; CHECK-LABEL: name: commit_za_save_zero_everything142 ; CHECK: successors: %bb.1(0x40000000), %bb.2(0x40000000)143 ; CHECK-NEXT: {{ $}}144 ; CHECK-NEXT: $x8 = MRS 56965, implicit-def $nzcv145 ; CHECK-NEXT: CBNZX $x8, %bb.1146 ; CHECK-NEXT: B %bb.2147 ; CHECK-NEXT: {{ $}}148 ; CHECK-NEXT: .1:149 ; CHECK-NEXT: successors: %bb.2(0x80000000)150 ; CHECK-NEXT: liveins: $x8151 ; CHECK-NEXT: {{ $}}152 ; CHECK-NEXT: BL &__arm_tpidr2_save, csr_aarch64_sme_abi_support_routines_preservemost_from_x0, implicit-def $lr, implicit $sp, implicit-def $zab0, implicit-def $zt0153 ; CHECK-NEXT: MSR 56965, $xzr154 ; CHECK-NEXT: ZERO_M 255, implicit-def $zab0155 ; CHECK-NEXT: $zt0 = ZERO_T156 ; CHECK-NEXT: B %bb.2157 ; CHECK-NEXT: {{ $}}158 ; CHECK-NEXT: .2:159 ; CHECK-NEXT: RET undef $lr160 $x8 = MRS 56965, implicit-def $nzcv161 162 CommitZASavePseudo $x8, 1, 1, &__arm_tpidr2_save, csr_aarch64_sme_abi_support_routines_preservemost_from_x0, implicit-def $zab0, implicit-def $zt0163 164 RET_ReallyLR165 166...167