brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.9 KiB · 0da29c9 Raw
202 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=aarch64-- -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s3 4---5name:            cbz_s326legalized:       true7regBankSelected: true8 9body:             |10  ; CHECK-LABEL: name: cbz_s3211  ; CHECK: bb.0:12  ; CHECK-NEXT:   successors: %bb.0(0x40000000), %bb.1(0x40000000)13  ; CHECK-NEXT:   liveins: $w014  ; CHECK-NEXT: {{  $}}15  ; CHECK-NEXT:   [[COPY:%[0-9]+]]:gpr32 = COPY $w016  ; CHECK-NEXT:   CBZW [[COPY]], %bb.117  ; CHECK-NEXT:   B %bb.018  ; CHECK-NEXT: {{  $}}19  ; CHECK-NEXT: bb.1:20  bb.0:21    liveins: $w022    successors: %bb.0, %bb.123 24    %0:gpr(s32) = COPY $w025    %1:gpr(s32) = G_CONSTANT i32 026    %2:gpr(s32) = G_ICMP intpred(eq), %0, %127    G_BRCOND %2, %bb.128    G_BR %bb.029 30  bb.1:31...32 33---34name:            cbz_s6435legalized:       true36regBankSelected: true37 38body:             |39  ; CHECK-LABEL: name: cbz_s6440  ; CHECK: bb.0:41  ; CHECK-NEXT:   successors: %bb.0(0x40000000), %bb.1(0x40000000)42  ; CHECK-NEXT:   liveins: $x043  ; CHECK-NEXT: {{  $}}44  ; CHECK-NEXT:   [[COPY:%[0-9]+]]:gpr64 = COPY $x045  ; CHECK-NEXT:   CBZX [[COPY]], %bb.146  ; CHECK-NEXT:   B %bb.047  ; CHECK-NEXT: {{  $}}48  ; CHECK-NEXT: bb.1:49  bb.0:50    liveins: $x051    successors: %bb.0, %bb.152 53    %0:gpr(s64) = COPY $x054    %1:gpr(s64) = G_CONSTANT i64 055    %2:gpr(s32) = G_ICMP intpred(eq), %0, %156    G_BRCOND %2, %bb.157    G_BR %bb.058 59  bb.1:60...61 62---63name:            cbnz_s3264legalized:       true65regBankSelected: true66 67body:             |68  ; CHECK-LABEL: name: cbnz_s3269  ; CHECK: bb.0:70  ; CHECK-NEXT:   successors: %bb.0(0x40000000), %bb.1(0x40000000)71  ; CHECK-NEXT:   liveins: $w072  ; CHECK-NEXT: {{  $}}73  ; CHECK-NEXT:   [[COPY:%[0-9]+]]:gpr32 = COPY $w074  ; CHECK-NEXT:   CBNZW [[COPY]], %bb.175  ; CHECK-NEXT:   B %bb.076  ; CHECK-NEXT: {{  $}}77  ; CHECK-NEXT: bb.1:78  bb.0:79    liveins: $w080    successors: %bb.0, %bb.181 82    %0:gpr(s32) = COPY $w083    %1:gpr(s32) = G_CONSTANT i32 084    %2:gpr(s32) = G_ICMP intpred(ne), %0, %185    G_BRCOND %2, %bb.186    G_BR %bb.087 88  bb.1:89...90 91---92name:            cbnz_s6493legalized:       true94regBankSelected: true95 96body:             |97  ; CHECK-LABEL: name: cbnz_s6498  ; CHECK: bb.0:99  ; CHECK-NEXT:   successors: %bb.0(0x40000000), %bb.1(0x40000000)100  ; CHECK-NEXT:   liveins: $x0101  ; CHECK-NEXT: {{  $}}102  ; CHECK-NEXT:   [[COPY:%[0-9]+]]:gpr64 = COPY $x0103  ; CHECK-NEXT:   CBNZX [[COPY]], %bb.1104  ; CHECK-NEXT:   B %bb.0105  ; CHECK-NEXT: {{  $}}106  ; CHECK-NEXT: bb.1:107  bb.0:108    liveins: $x0109    successors: %bb.0, %bb.1110 111    %0:gpr(s64) = COPY $x0112    %1:gpr(s64) = G_CONSTANT i64 0113    %2:gpr(s32) = G_ICMP intpred(ne), %0, %1114    G_BRCOND %2, %bb.1115    G_BR %bb.0116 117  bb.1:118...119---120name:            test_rhs_inttoptr121alignment:       4122legalized:       true123regBankSelected: true124tracksRegLiveness: true125body:             |126  ; CHECK-LABEL: name: test_rhs_inttoptr127  ; CHECK: bb.0:128  ; CHECK-NEXT:   successors: %bb.1(0x40000000), %bb.2(0x40000000)129  ; CHECK-NEXT:   liveins: $x0130  ; CHECK-NEXT: {{  $}}131  ; CHECK-NEXT:   [[COPY:%[0-9]+]]:gpr64common = COPY $x0132  ; CHECK-NEXT:   CBZX [[COPY]], %bb.2133  ; CHECK-NEXT: {{  $}}134  ; CHECK-NEXT: bb.1:135  ; CHECK-NEXT:   successors: %bb.2(0x80000000)136  ; CHECK-NEXT: {{  $}}137  ; CHECK-NEXT:   STRXui $xzr, [[COPY]], 0 :: (store (s64))138  ; CHECK-NEXT: {{  $}}139  ; CHECK-NEXT: bb.2:140  ; CHECK-NEXT:   RET_ReallyLR141  bb.1:142    successors: %bb.2, %bb.3143    liveins: $x0144 145    %0:gpr(p0) = COPY $x0146    %2:gpr(s64) = G_CONSTANT i64 0147    %1:gpr(p0) = G_INTTOPTR %2(s64)148    %4:gpr(s32) = G_ICMP intpred(eq), %0(p0), %1149    G_BRCOND %4, %bb.3150 151  bb.2:152    %5:gpr(s64) = G_CONSTANT i64 0153    G_STORE %5(s64), %0(p0) :: (store (s64))154 155  bb.3:156    RET_ReallyLR157 158...159---160name:            test_rhs_unknown161alignment:       4162legalized:       true163regBankSelected: true164tracksRegLiveness: true165body:             |166  ; CHECK-LABEL: name: test_rhs_unknown167  ; CHECK: bb.0:168  ; CHECK-NEXT:   successors: %bb.1(0x40000000), %bb.2(0x40000000)169  ; CHECK-NEXT:   liveins: $x0170  ; CHECK-NEXT: {{  $}}171  ; CHECK-NEXT:   [[COPY:%[0-9]+]]:gpr64sp = COPY $x0172  ; CHECK-NEXT:   [[LDRXui:%[0-9]+]]:gpr64common = LDRXui [[COPY]], 0 :: (load (s64))173  ; CHECK-NEXT:   [[SUBSXri:%[0-9]+]]:gpr64 = SUBSXri [[LDRXui]], 42, 0, implicit-def $nzcv174  ; CHECK-NEXT:   Bcc 0, %bb.2, implicit $nzcv175  ; CHECK-NEXT: {{  $}}176  ; CHECK-NEXT: bb.1:177  ; CHECK-NEXT:   successors: %bb.2(0x80000000)178  ; CHECK-NEXT: {{  $}}179  ; CHECK-NEXT:   STRXui $xzr, [[COPY]], 0 :: (store (s64))180  ; CHECK-NEXT: {{  $}}181  ; CHECK-NEXT: bb.2:182  ; CHECK-NEXT:   RET_ReallyLR183  bb.1:184    successors: %bb.2, %bb.3185    liveins: $x0186 187    %0:gpr(p0) = COPY $x0188    %2:gpr(s64) = G_CONSTANT i64 42189    %4:gpr(s64) = G_CONSTANT i64 0190    %1:gpr(s64) = G_LOAD %0(p0) :: (load (s64))191    %5:gpr(s32) = G_ICMP intpred(eq), %1(s64), %2192    G_BRCOND %5, %bb.3193 194  bb.2:195    %6:gpr(s64) = G_CONSTANT i64 0196    G_STORE %6(s64), %0(p0) :: (store (s64))197 198  bb.3:199    RET_ReallyLR200 201 202