211 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 52# RUN: llc -mtriple=amdgcn -mcpu=gfx908 -run-pass=postrapseudos %s -o - | FileCheck -check-prefixes=CHECK,GFX908 %s3# RUN: llc -mtriple=amdgcn -mcpu=gfx90a -run-pass=postrapseudos %s -o - | FileCheck -check-prefixes=CHECK,GFX90A %s4# RUN: llc -mtriple=amdgcn -mcpu=gfx942 -run-pass=postrapseudos %s -o - | FileCheck -check-prefixes=CHECK,GFX942 %s5 6---7name: av_mov_b32_imm_pseudo_agpr_08tracksRegLiveness: true9body: |10 bb.0:11 ; CHECK-LABEL: name: av_mov_b32_imm_pseudo_agpr_012 ; CHECK: $agpr0 = V_ACCVGPR_WRITE_B32_e64 0, implicit $exec13 $agpr0 = AV_MOV_B32_IMM_PSEUDO 0, implicit $exec14...15 16---17name: av_mov_b32_imm_pseudo_agpr_6418tracksRegLiveness: true19body: |20 bb.0:21 ; CHECK-LABEL: name: av_mov_b32_imm_pseudo_agpr_6422 ; CHECK: $agpr0 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec23 $agpr0 = AV_MOV_B32_IMM_PSEUDO 64, implicit $exec24...25 26---27name: av_mov_b32_imm_pseudo_vgpr_028tracksRegLiveness: true29body: |30 bb.0:31 ; CHECK-LABEL: name: av_mov_b32_imm_pseudo_vgpr_032 ; CHECK: $vgpr0 = V_MOV_B32_e32 0, implicit $exec33 $vgpr0 = AV_MOV_B32_IMM_PSEUDO 0, implicit $exec34...35 36---37name: av_mov_b32_imm_pseudo_vgpr_6438tracksRegLiveness: true39body: |40 bb.0:41 ; CHECK-LABEL: name: av_mov_b32_imm_pseudo_vgpr_6442 ; CHECK: $vgpr0 = V_MOV_B32_e32 64, implicit $exec43 $vgpr0 = AV_MOV_B32_IMM_PSEUDO 64, implicit $exec44...45 46---47name: av_mov_b32_imm_pseudo_agpr_vgpr48tracksRegLiveness: true49body: |50 bb.0:51 liveins: $vgpr052 ; CHECK-LABEL: name: av_mov_b32_imm_pseudo_agpr_vgpr53 ; CHECK: liveins: $vgpr054 ; CHECK-NEXT: {{ $}}55 ; CHECK-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec56 $agpr1 = AV_MOV_B32_IMM_PSEUDO $vgpr0, implicit $exec57...58 59---60name: av_mov_b64_imm_pseudo_agpr_061tracksRegLiveness: true62body: |63 bb.0:64 ; CHECK-LABEL: name: av_mov_b64_imm_pseudo_agpr_065 ; CHECK: $agpr0 = V_ACCVGPR_WRITE_B32_e64 0, implicit $exec, implicit-def $agpr0_agpr166 ; CHECK-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 0, implicit $exec, implicit-def $agpr0_agpr167 $agpr0_agpr1 = AV_MOV_B64_IMM_PSEUDO 0, implicit $exec68...69 70---71name: av_mov_b64_imm_pseudo_agpr_neg172tracksRegLiveness: true73body: |74 bb.0:75 ; CHECK-LABEL: name: av_mov_b64_imm_pseudo_agpr_neg176 ; CHECK: $agpr0 = V_ACCVGPR_WRITE_B32_e64 -1, implicit $exec, implicit-def $agpr0_agpr177 ; CHECK-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 -1, implicit $exec, implicit-def $agpr0_agpr178 $agpr0_agpr1 = AV_MOV_B64_IMM_PSEUDO -1, implicit $exec79...80 81---82name: av_mov_b64_imm_pseudo_agpr_6483tracksRegLiveness: true84body: |85 bb.0:86 ; CHECK-LABEL: name: av_mov_b64_imm_pseudo_agpr_6487 ; CHECK: $agpr0 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec, implicit-def $agpr0_agpr188 ; CHECK-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 0, implicit $exec, implicit-def $agpr0_agpr189 $agpr0_agpr1 = AV_MOV_B64_IMM_PSEUDO 64, implicit $exec90...91 92---93name: av_mov_b64_imm_pseudo_vgpr_094tracksRegLiveness: true95body: |96 bb.0:97 ; GFX908-LABEL: name: av_mov_b64_imm_pseudo_vgpr_098 ; GFX908: $vgpr0 = V_MOV_B32_e32 0, implicit $exec, implicit-def $vgpr0_vgpr199 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 0, implicit $exec, implicit-def $vgpr0_vgpr1100 ;101 ; GFX90A-LABEL: name: av_mov_b64_imm_pseudo_vgpr_0102 ; GFX90A: $vgpr0_vgpr1 = V_PK_MOV_B32 8, 0, 8, 0, 0, 0, 0, 0, 0, implicit $exec103 ;104 ; GFX942-LABEL: name: av_mov_b64_imm_pseudo_vgpr_0105 ; GFX942: $vgpr0_vgpr1 = V_MOV_B64_e32 0, implicit $exec106 $vgpr0_vgpr1 = AV_MOV_B64_IMM_PSEUDO 0, implicit $exec107...108 109---110name: av_mov_b64_imm_pseudo_vgpr_64111tracksRegLiveness: true112body: |113 bb.0:114 ; GFX908-LABEL: name: av_mov_b64_imm_pseudo_vgpr_64115 ; GFX908: $vgpr0 = V_MOV_B32_e32 64, implicit $exec, implicit-def $vgpr0_vgpr1116 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 0, implicit $exec, implicit-def $vgpr0_vgpr1117 ;118 ; GFX90A-LABEL: name: av_mov_b64_imm_pseudo_vgpr_64119 ; GFX90A: $vgpr0 = V_MOV_B32_e32 64, implicit $exec, implicit-def $vgpr0_vgpr1120 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 0, implicit $exec, implicit-def $vgpr0_vgpr1121 ;122 ; GFX942-LABEL: name: av_mov_b64_imm_pseudo_vgpr_64123 ; GFX942: $vgpr0_vgpr1 = V_MOV_B64_e32 64, implicit $exec124 $vgpr0_vgpr1 = AV_MOV_B64_IMM_PSEUDO 64, implicit $exec125...126 127---128name: av_mov_b64_imm_pseudo_agpr_64_hi_0_lo129tracksRegLiveness: true130body: |131 bb.0:132 ; CHECK-LABEL: name: av_mov_b64_imm_pseudo_agpr_64_hi_0_lo133 ; CHECK: $agpr0 = V_ACCVGPR_WRITE_B32_e64 0, implicit $exec, implicit-def $agpr0_agpr1134 ; CHECK-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec, implicit-def $agpr0_agpr1135 $agpr0_agpr1 = AV_MOV_B64_IMM_PSEUDO 274877906944, implicit $exec136...137 138---139name: av_mov_b64_imm_pseudo_agpr_64_hi_2_lo140tracksRegLiveness: true141body: |142 bb.0:143 ; CHECK-LABEL: name: av_mov_b64_imm_pseudo_agpr_64_hi_2_lo144 ; CHECK: $agpr0 = V_ACCVGPR_WRITE_B32_e64 2, implicit $exec, implicit-def $agpr0_agpr1145 ; CHECK-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 64, implicit $exec, implicit-def $agpr0_agpr1146 $agpr0_agpr1 = AV_MOV_B64_IMM_PSEUDO 274877906946, implicit $exec147...148 149---150name: av_mov_b64_imm_pseudo_agpr_neg16_hi_9_lo151tracksRegLiveness: true152body: |153 bb.0:154 ; CHECK-LABEL: name: av_mov_b64_imm_pseudo_agpr_neg16_hi_9_lo155 ; CHECK: $agpr0 = V_ACCVGPR_WRITE_B32_e64 9, implicit $exec, implicit-def $agpr0_agpr1156 ; CHECK-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 -16, implicit $exec, implicit-def $agpr0_agpr1157 $agpr0_agpr1 = AV_MOV_B64_IMM_PSEUDO 18446744004990074889, implicit $exec158...159 160---161name: av_mov_b64_imm_pseudo_vgpr_inv2pi162tracksRegLiveness: true163body: |164 bb.0:165 ; GFX908-LABEL: name: av_mov_b64_imm_pseudo_vgpr_inv2pi166 ; GFX908: $vgpr0 = V_MOV_B32_e32 1042479491, implicit $exec, implicit-def $vgpr0_vgpr1167 ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 0, implicit $exec, implicit-def $vgpr0_vgpr1168 ; GFX908-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec, implicit-def $vgpr2_vgpr3169 ; GFX908-NEXT: $vgpr3 = V_MOV_B32_e32 1042479491, implicit $exec, implicit-def $vgpr2_vgpr3170 ; GFX908-NEXT: $vgpr4 = V_MOV_B32_e32 1042479491, implicit $exec, implicit-def $vgpr4_vgpr5171 ; GFX908-NEXT: $vgpr5 = V_MOV_B32_e32 1042479491, implicit $exec, implicit-def $vgpr4_vgpr5172 ;173 ; GFX90A-LABEL: name: av_mov_b64_imm_pseudo_vgpr_inv2pi174 ; GFX90A: $vgpr0 = V_MOV_B32_e32 1042479491, implicit $exec, implicit-def $vgpr0_vgpr1175 ; GFX90A-NEXT: $vgpr1 = V_MOV_B32_e32 0, implicit $exec, implicit-def $vgpr0_vgpr1176 ; GFX90A-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec, implicit-def $vgpr2_vgpr3177 ; GFX90A-NEXT: $vgpr3 = V_MOV_B32_e32 1042479491, implicit $exec, implicit-def $vgpr2_vgpr3178 ; GFX90A-NEXT: $vgpr4_vgpr5 = V_PK_MOV_B32 8, 1042479491, 8, 1042479491, 0, 0, 0, 0, 0, implicit $exec179 ;180 ; GFX942-LABEL: name: av_mov_b64_imm_pseudo_vgpr_inv2pi181 ; GFX942: $vgpr0_vgpr1 = V_MOV_B64_e32 1042479491, implicit $exec182 ; GFX942-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec, implicit-def $vgpr2_vgpr3183 ; GFX942-NEXT: $vgpr3 = V_MOV_B32_e32 1042479491, implicit $exec, implicit-def $vgpr2_vgpr3184 ; GFX942-NEXT: $vgpr4_vgpr5 = V_PK_MOV_B32 8, 1042479491, 8, 1042479491, 0, 0, 0, 0, 0, implicit $exec185 $vgpr0_vgpr1 = AV_MOV_B64_IMM_PSEUDO 1042479491, implicit $exec186 $vgpr2_vgpr3 = AV_MOV_B64_IMM_PSEUDO 4477415320595726336, implicit $exec187 $vgpr4_vgpr5 = AV_MOV_B64_IMM_PSEUDO 4477415321638205827, implicit $exec188...189 190---191name: av_mov_b64_imm_pseudo_unaligned_agpr192tracksRegLiveness: true193body: |194 bb.0:195 ; CHECK-LABEL: name: av_mov_b64_imm_pseudo_unaligned_agpr196 ; CHECK: $agpr1 = V_ACCVGPR_WRITE_B32_e64 9, implicit $exec, implicit-def $agpr1_agpr2197 ; CHECK-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 -16, implicit $exec, implicit-def $agpr1_agpr2198 $agpr1_agpr2 = AV_MOV_B64_IMM_PSEUDO 18446744004990074889, implicit $exec199...200 201---202name: av_mov_b64_imm_pseudo_unaligned_vgpr203tracksRegLiveness: true204body: |205 bb.0:206 ; CHECK-LABEL: name: av_mov_b64_imm_pseudo_unaligned_vgpr207 ; CHECK: $vgpr1 = V_MOV_B32_e32 9, implicit $exec, implicit-def $vgpr1_vgpr2208 ; CHECK-NEXT: $vgpr2 = V_MOV_B32_e32 -16, implicit $exec, implicit-def $vgpr1_vgpr2209 $vgpr1_vgpr2 = AV_MOV_B64_IMM_PSEUDO 18446744004990074889, implicit $exec210...211