brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.5 KiB · d031468 Raw
146 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -O0 -mtriple=aarch64-apple-ios -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s -check-prefix=CHECK3---4name:            ptr_add5legalized:       true6regBankSelected: true7body:             |8  bb.0:9      liveins: $x010    ; CHECK-LABEL: name: ptr_add11    ; CHECK: liveins: $x012    ; CHECK-NEXT: {{  $}}13    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr64 = COPY $x014    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr64common = COPY [[COPY]]15    ; CHECK-NEXT: [[ADDXri:%[0-9]+]]:gpr64sp = ADDXri [[COPY1]], 42, 016    ; CHECK-NEXT: $x0 = COPY [[ADDXri]]17    %0:gpr(p0) = COPY $x018    %1:gpr(s64) = G_CONSTANT i64 4219    %2:gpr(p0) = G_PTR_ADD %0, %1(s64)20    $x0 = COPY %2(p0)21...22 23---24name:            ptr_add_no_constant25legalized:       true26regBankSelected: true27body:             |28  bb.0:29      liveins: $x0, $x130    ; CHECK-LABEL: name: ptr_add_no_constant31    ; CHECK: liveins: $x0, $x132    ; CHECK-NEXT: {{  $}}33    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr64 = COPY $x034    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr64 = COPY $x135    ; CHECK-NEXT: [[ADDXrr:%[0-9]+]]:gpr64 = ADDXrr [[COPY]], [[COPY1]]36    ; CHECK-NEXT: $x0 = COPY [[ADDXrr]]37    %0:gpr(p0) = COPY $x038    %1:gpr(s64) = COPY $x139    %2:gpr(p0) = G_PTR_ADD %0, %1(s64)40    $x0 = COPY %2(p0)41...42 43---44name:            ptr_add_bad_imm45legalized:       true46regBankSelected: true47body:             |48  bb.0:49      liveins: $x0, $x150    ; CHECK-LABEL: name: ptr_add_bad_imm51    ; CHECK: liveins: $x0, $x152    ; CHECK-NEXT: {{  $}}53    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr64 = COPY $x054    ; CHECK-NEXT: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 1000055    ; CHECK-NEXT: [[SUBREG_TO_REG:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, [[MOVi32imm]], %subreg.sub_3256    ; CHECK-NEXT: [[ADDXrr:%[0-9]+]]:gpr64 = ADDXrr [[COPY]], [[SUBREG_TO_REG]]57    ; CHECK-NEXT: $x0 = COPY [[ADDXrr]]58    %0:gpr(p0) = COPY $x059    %1:gpr(s64) = G_CONSTANT i64 1000060    %2:gpr(p0) = G_PTR_ADD %0, %1(s64)61    $x0 = COPY %2(p0)62...63 64---65name:            ptr_add_vec66legalized:       true67regBankSelected: true68body:             |69  bb.0:70      liveins: $q0, $q171    ; CHECK-LABEL: name: ptr_add_vec72    ; CHECK: liveins: $q0, $q173    ; CHECK-NEXT: {{  $}}74    ; CHECK-NEXT: [[COPY:%[0-9]+]]:fpr128 = COPY $q075    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr128 = COPY $q176    ; CHECK-NEXT: [[ADDv2i64_:%[0-9]+]]:fpr128 = ADDv2i64 [[COPY]], [[COPY1]]77    ; CHECK-NEXT: $q0 = COPY [[ADDv2i64_]]78    %0:fpr(<2 x p0>) = COPY $q079    %1:fpr(<2 x s64>) = COPY $q180    %3:fpr(<2 x p0>) = G_PTR_ADD %0, %1(<2 x s64>)81    $q0 = COPY %3(<2 x p0>)82...83---84name:            ptr_add_neg_imm85legalized:       true86regBankSelected: true87body:             |88  bb.0:89      liveins: $x090    ; CHECK-LABEL: name: ptr_add_neg_imm91    ; CHECK: liveins: $x092    ; CHECK-NEXT: {{  $}}93    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr64 = COPY $x094    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr64common = COPY [[COPY]]95    ; CHECK-NEXT: [[SUBSXri:%[0-9]+]]:gpr64 = SUBSXri [[COPY1]], 10, 0, implicit-def dead $nzcv96    ; CHECK-NEXT: $x0 = COPY [[SUBSXri]]97    %0:gpr(p0) = COPY $x098    %1:gpr(s64) = G_CONSTANT i64 -1099    %2:gpr(p0) = G_PTR_ADD %0, %1(s64)100    $x0 = COPY %2(p0)101...102---103name:            ptr_add_arith_extended104legalized:       true105regBankSelected: true106body:             |107  bb.0:108      liveins: $x0109    ; CHECK-LABEL: name: ptr_add_arith_extended110    ; CHECK: liveins: $x0111    ; CHECK-NEXT: {{  $}}112    ; CHECK-NEXT: %reg0:gpr32 = COPY $w0113    ; CHECK-NEXT: %ptr:gpr64 = COPY $x1114    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr64common = COPY %ptr115    ; CHECK-NEXT: %ptr_add:gpr64sp = ADDXrx [[COPY]], %reg0, 18116    ; CHECK-NEXT: $x0 = COPY %ptr_add117    %reg0:gpr(s32) = COPY $w0118    %ptr:gpr(p0) = COPY $x1119    %ext:gpr(s64) = G_ZEXT %reg0(s32)120    %cst:gpr(s64) = G_CONSTANT i64 2121    %shift:gpr(s64) = G_SHL %ext, %cst(s64)122    %ptr_add:gpr(p0) = G_PTR_ADD %ptr, %shift(s64)123    $x0 = COPY %ptr_add(p0)124...125---126name:            ptr_add_negated_reg127legalized:       true128regBankSelected: true129body:             |130  bb.0:131      liveins: $x0, $x1132    ; CHECK-LABEL: name: ptr_add_negated_reg133    ; CHECK: liveins: $x0, $x1134    ; CHECK-NEXT: {{  $}}135    ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr64 = COPY $x0136    ; CHECK-NEXT: %src:gpr64 = COPY $x1137    ; CHECK-NEXT: [[SUBSXrr:%[0-9]+]]:gpr64 = SUBSXrr [[COPY]], %src, implicit-def dead $nzcv138    ; CHECK-NEXT: $x0 = COPY [[SUBSXrr]]139    %0:gpr(p0) = COPY $x0140    %src:gpr(s64) = COPY $x1141    %1:gpr(s64) = G_CONSTANT i64 0142    %neg:gpr(s64) = G_SUB %1, %src143    %2:gpr(p0) = G_PTR_ADD %0, %neg(s64)144    $x0 = COPY %2(p0)145...146