brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.1 KiB · c3c39f4 Raw
138 lines · plain
1# RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sve -run-pass=aarch64-expand-pseudo -simplify-mir -verify-machineinstrs %s -o - | FileCheck %s2---3name:            add_x4alignment:       45tracksRegLiveness: true6liveins:7  - { reg: '$p0' }8  - { reg: '$z0' }9frameInfo:10  maxCallFrameSize: 011body:             |12  bb.0:13    liveins: $p0, $z014 15    ; CHECK: name: add_x16    ; CHECK-NOT: MOVPRFX17    ; CHECK: $z0 = FADD_ZPmZ_S renamable $p0, killed $z0, renamable $z018    ; CHECK-NEXT: RET19    renamable $z0 = FADD_ZPZZ_S_UNDEF renamable $p0, renamable $z0, killed renamable $z020    RET_ReallyLR21 22...23 24---25name: expand_mls_to_msb26body:             |27  bb.0:28    ; CHECK: name: expand_mls_to_msb29    ; CHECK: {{.*}} MSB_ZPmZZ_B {{.*}}30    renamable $p0 = PTRUE_B 31, implicit $vg31    renamable $z0 = MLS_ZPZZZ_B_UNDEF killed renamable $p0, killed renamable $z2, killed renamable $z0, killed renamable $z132    RET_ReallyLR implicit $z033...34 35---36name: expand_mla_to_mad37body:             |38  bb.0:39    ; CHECK: name: expand_mla_to_mad40    ; CHECK: {{.*}} MAD_ZPmZZ_B {{.*}}41    renamable $p0 = PTRUE_B 31, implicit $vg42    renamable $z0 = MLA_ZPZZZ_B_UNDEF killed renamable $p0, killed renamable $z2, killed renamable $z0, killed renamable $z143    RET_ReallyLR implicit $z044...45 46---47name: expand_transfer_implicit_defs48body:             |49  bb.0:50    ; CHECK: name: expand_transfer_implicit_defs51    ; CHECK:      BUNDLE52    ; CHECK-SAME: implicit-def $z0_z1_z2_z353    liveins: $z1, $z2, $p054    renamable $z0 = FADD_ZPZZ_D_UNDEF killed $p0, killed $z1, killed $z2, implicit-def $z0_z1_z2_z355    RET_ReallyLR implicit $z0_z1_z2_z356...57 58---59name: unary_undef_operand60body:             |61  bb.0:62    liveins: $p0, $z063 64    ; CHECK: name: unary_undef_operand65    ; CHECK: $z0 = MOVPRFX_ZZ undef $z166    ; CHECK: $z0 = ABS_ZPmZ_S internal killed $z0, renamable $p0, killed undef renamable $z167    ; NOTE: Unary _UNDEF psuedo instructions ignore the passthru operand.68    renamable $z0 = ABS_ZPmZ_S_UNDEF renamable $z0, renamable $p0, killed undef renamable $z169    RET_ReallyLR70 71...72 73---74name: binop_undef_operand75body:             |76  bb.0:77    liveins: $p0, $z178 79    ; CHECK: name: binop_undef_operand80    ; CHECK-NOT: MOVPRFX81    ; CHECK: $z0 = SMIN_ZPmZ_S renamable $p0, killed undef $z0, killed renamable $z182    renamable $z0 = SMIN_ZPZZ_S_UNDEF renamable $p0, undef renamable $z0, killed renamable $z183    RET_ReallyLR84 85...86 87---88name: binop_undef_operand_requires_movpfrx89body:             |90  bb.0:91    liveins: $p0, $z192 93    ; CHECK: name: binop_undef_operand_requires_movpfrx94    ; CHECK: $z0 = MOVPRFX_ZZ undef $z295    ; CHECK: $z0 = SMIN_ZPmZ_S renamable $p0, internal killed $z0, killed renamable $z196    renamable $z0 = SMIN_ZPZZ_S_UNDEF renamable $p0, undef renamable $z2, killed renamable $z197    RET_ReallyLR98 99...100 101---102name: binop_undef_operand_requires_zeroing_movpfrx103body:             |104  bb.0:105    liveins: $p0, $z1106 107    ; CHECK: name: binop_undef_operand_requires_zeroing_movpfrx108    ; CHECK: $z0 = MOVPRFX_ZPzZ_S $p0, undef $z2109    ; CHECK: $z0 = ADD_ZPmZ_S renamable $p0, internal killed $z0, killed renamable $z1110    renamable $z0 = ADD_ZPZZ_S_ZERO renamable $p0, undef renamable $z2, killed renamable $z1111    RET_ReallyLR112 113...114 115---116name: ternaryop_undef_operand117body:             |118  bb.0:119    liveins: $p0, $z1, $z2120    ; CHECK: name: ternaryop_undef_operand121    ; CHECK-NOT: MOVPRFX122    ; CHECK: $z0 = MLA_ZPmZZ_B killed renamable $p0, killed undef $z0, killed renamable $z1, killed renamable $z2123    renamable $z0 = MLA_ZPZZZ_B_UNDEF killed renamable $p0, killed undef renamable $z0, killed renamable $z1, killed renamable $z2124    RET_ReallyLR implicit $z0125...126 127---128name: ternaryop_undef_operand_requires_movprfx129body:             |130  bb.0:131    liveins: $p0, $z1, $z2132    ; CHECK: name: ternaryop_undef_operand_requires_movprfx133    ; CHECK: $z0 = MOVPRFX_ZZ undef $z3134    ; CHECK: $z0 = MLA_ZPmZZ_B killed renamable $p0, internal killed $z0, killed renamable $z1, killed renamable $z2135    renamable $z0 = MLA_ZPZZZ_B_UNDEF killed renamable $p0, killed undef renamable $z3, killed renamable $z1, killed renamable $z2136    RET_ReallyLR implicit $z0137...138