brintos

brintos / llvm-project-archived public Read only

0
0
Text · 8.5 KiB · bb47392 Raw
196 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -mcpu=gfx1010 -verify-machineinstrs -run-pass si-insert-waitcnts -o - %s | FileCheck -check-prefix=GFX10 %s3# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -verify-machineinstrs -run-pass si-insert-waitcnts -o - %s | FileCheck -check-prefix=GFX11 %s4 5---6name:            test_waitcnt_preexisting_vscnt_unmodified7body:             |8  bb.0:9    liveins: $vgpr0_vgpr1, $vgpr210 11    ; GFX10-LABEL: name: test_waitcnt_preexisting_vscnt_unmodified12    ; GFX10: liveins: $vgpr0_vgpr1, $vgpr213    ; GFX10-NEXT: {{  $}}14    ; GFX10-NEXT: S_WAITCNT 015    ; GFX10-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec16    ; GFX10-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 017    ; GFX10-NEXT: S_BARRIER18    ; GFX10-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr19    ; GFX10-NEXT: S_WAITCNT 11220    ; GFX10-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr21    ; GFX10-NEXT: S_ENDPGM 022    ;23    ; GFX11-LABEL: name: test_waitcnt_preexisting_vscnt_unmodified24    ; GFX11: liveins: $vgpr0_vgpr1, $vgpr225    ; GFX11-NEXT: {{  $}}26    ; GFX11-NEXT: S_WAITCNT 027    ; GFX11-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec28    ; GFX11-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 029    ; GFX11-NEXT: S_BARRIER30    ; GFX11-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr31    ; GFX11-NEXT: S_WAITCNT 732    ; GFX11-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr33    ; GFX11-NEXT: S_ENDPGM 034    GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec35    S_WAITCNT_VSCNT_soft undef $sgpr_null, 036    S_BARRIER37    $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr38    FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr39    S_ENDPGM 040...41 42---43name:            test_waitcnt_preexisting_vscnt_needs_vscnt44body:             |45  bb.0:46    liveins: $vgpr0_vgpr1, $vgpr247 48    ; GFX10-LABEL: name: test_waitcnt_preexisting_vscnt_needs_vscnt49    ; GFX10: liveins: $vgpr0_vgpr1, $vgpr250    ; GFX10-NEXT: {{  $}}51    ; GFX10-NEXT: S_WAITCNT 052    ; GFX10-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec53    ; GFX10-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 154    ; GFX10-NEXT: S_BARRIER55    ; GFX10-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr56    ; GFX10-NEXT: S_WAITCNT 11257    ; GFX10-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr58    ; GFX10-NEXT: S_ENDPGM 059    ;60    ; GFX11-LABEL: name: test_waitcnt_preexisting_vscnt_needs_vscnt61    ; GFX11: liveins: $vgpr0_vgpr1, $vgpr262    ; GFX11-NEXT: {{  $}}63    ; GFX11-NEXT: S_WAITCNT 064    ; GFX11-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec65    ; GFX11-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 166    ; GFX11-NEXT: S_BARRIER67    ; GFX11-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr68    ; GFX11-NEXT: S_WAITCNT 769    ; GFX11-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr70    ; GFX11-NEXT: S_ENDPGM 071    GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec72    S_WAITCNT_VSCNT_soft undef $sgpr_null, 173    S_BARRIER74    $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr75    FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr76    S_ENDPGM 077...78 79---80name:            test_waitcnt_preexisting_vscnt_with_other_waitcnt81body:             |82  bb.0:83    liveins: $vgpr0_vgpr1, $vgpr284 85    ; GFX10-LABEL: name: test_waitcnt_preexisting_vscnt_with_other_waitcnt86    ; GFX10: liveins: $vgpr0_vgpr1, $vgpr287    ; GFX10-NEXT: {{  $}}88    ; GFX10-NEXT: S_WAITCNT 089    ; GFX10-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec90    ; GFX10-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 091    ; GFX10-NEXT: S_BARRIER92    ; GFX10-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr93    ; GFX10-NEXT: S_WAITCNT 11294    ; GFX10-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr95    ; GFX10-NEXT: S_ENDPGM 096    ;97    ; GFX11-LABEL: name: test_waitcnt_preexisting_vscnt_with_other_waitcnt98    ; GFX11: liveins: $vgpr0_vgpr1, $vgpr299    ; GFX11-NEXT: {{  $}}100    ; GFX11-NEXT: S_WAITCNT 0101    ; GFX11-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec102    ; GFX11-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 0103    ; GFX11-NEXT: S_BARRIER104    ; GFX11-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr105    ; GFX11-NEXT: S_WAITCNT 7106    ; GFX11-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr107    ; GFX11-NEXT: S_ENDPGM 0108    GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec109    S_WAITCNT_soft 112110    S_WAITCNT_VSCNT_soft undef $sgpr_null, 0111    S_BARRIER112    $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr113    FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr114    S_ENDPGM 0115...116 117---118name:            test_waitcnt_preexisting_vscnt_combined119body:             |120  bb.0:121    liveins: $vgpr0_vgpr1, $vgpr2122 123    ; GFX10-LABEL: name: test_waitcnt_preexisting_vscnt_combined124    ; GFX10: liveins: $vgpr0_vgpr1, $vgpr2125    ; GFX10-NEXT: {{  $}}126    ; GFX10-NEXT: S_WAITCNT 0127    ; GFX10-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec128    ; GFX10-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 0129    ; GFX10-NEXT: S_BARRIER130    ; GFX10-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr131    ; GFX10-NEXT: S_WAITCNT 112132    ; GFX10-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr133    ; GFX10-NEXT: S_ENDPGM 0134    ;135    ; GFX11-LABEL: name: test_waitcnt_preexisting_vscnt_combined136    ; GFX11: liveins: $vgpr0_vgpr1, $vgpr2137    ; GFX11-NEXT: {{  $}}138    ; GFX11-NEXT: S_WAITCNT 0139    ; GFX11-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec140    ; GFX11-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 0141    ; GFX11-NEXT: S_BARRIER142    ; GFX11-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr143    ; GFX11-NEXT: S_WAITCNT 7144    ; GFX11-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr145    ; GFX11-NEXT: S_ENDPGM 0146    GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec147    S_WAITCNT_VSCNT_soft undef $sgpr_null, 0148    S_WAITCNT_VSCNT_soft undef $sgpr_null, 1149    S_WAITCNT_VSCNT_soft undef $sgpr_null, 2150    S_BARRIER151    $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr152    FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr153    S_ENDPGM 0154...155 156---157name:            test_waitcnt_preexisting_vscnt_combined_both_types158body:             |159  bb.0:160    liveins: $vgpr0_vgpr1, $vgpr2161 162    ; GFX10-LABEL: name: test_waitcnt_preexisting_vscnt_combined_both_types163    ; GFX10: liveins: $vgpr0_vgpr1, $vgpr2164    ; GFX10-NEXT: {{  $}}165    ; GFX10-NEXT: S_WAITCNT 0166    ; GFX10-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec167    ; GFX10-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 1168    ; GFX10-NEXT: S_BARRIER169    ; GFX10-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr170    ; GFX10-NEXT: S_WAITCNT 112171    ; GFX10-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr172    ; GFX10-NEXT: S_ENDPGM 0173    ;174    ; GFX11-LABEL: name: test_waitcnt_preexisting_vscnt_combined_both_types175    ; GFX11: liveins: $vgpr0_vgpr1, $vgpr2176    ; GFX11-NEXT: {{  $}}177    ; GFX11-NEXT: S_WAITCNT 0178    ; GFX11-NEXT: GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec179    ; GFX11-NEXT: S_WAITCNT_VSCNT undef $sgpr_null, 1180    ; GFX11-NEXT: S_BARRIER181    ; GFX11-NEXT: $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr182    ; GFX11-NEXT: S_WAITCNT 7183    ; GFX11-NEXT: FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr184    ; GFX11-NEXT: S_ENDPGM 0185    GLOBAL_STORE_DWORD $vgpr0_vgpr1, $vgpr2, 0, 0, implicit $exec186    S_WAITCNT_soft 0187    S_WAITCNT_VSCNT_soft undef $sgpr_null, 1188    S_WAITCNT_soft 0189    S_WAITCNT_VSCNT_soft undef $sgpr_null, 2190    S_WAITCNT_soft 0191    S_BARRIER192    $vgpr0 = FLAT_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec, implicit $flat_scr193    FLAT_STORE_DWORD $vgpr0_vgpr1, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr194    S_ENDPGM 0195...196