brintos

brintos / llvm-project-archived public Read only

0
0
Text · 31.5 KiB · 0d25bc9 Raw
488 lines · plain
1; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=tahiti -amdgpu-s-branch-bits=5 -amdgpu-long-branch-factor=0  < %s | FileCheck --check-prefix=GCN %s2; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=tahiti -amdgpu-s-branch-bits=5 -amdgpu-long-branch-factor=0 -amdgpu-use-amdgpu-trackers=1  < %s | FileCheck --check-prefix=GCN-GCNTRACKERS %s3 4; CHECK-LABEL: {{^}}spill:5; GCN:    NumSgprs: 1046; GCN-GCNTRACKERS:    NumSgprs: 1047; GCN:    NumVgprs: 18; GCN-GCNTRACKERS:    NumVgprs: 29; GCN:    ScratchSize: 010; GCN-GCNTRACKERS:    ScratchSize: 011; GCN:    Occupancy: 512; GCN-GCNTRACKERS:    Occupancy: 513 14; FIXME: GCN Trackers do not track pressure from PhysRegs, so scheduling is actually worse15 16define amdgpu_kernel void @spill(ptr addrspace(1) %arg, i32 %cnd) #0 {17entry:18  %sgpr0 = tail call i32 asm sideeffect "s_mov_b32 s0, 0", "={s0}"() #019  %sgpr1 = tail call i32 asm sideeffect "s_mov_b32 s1, 0", "={s1}"() #020  %sgpr2 = tail call i32 asm sideeffect "s_mov_b32 s2, 0", "={s2}"() #021  %sgpr3 = tail call i32 asm sideeffect "s_mov_b32 s3, 0", "={s3}"() #022  %sgpr4 = tail call i32 asm sideeffect "s_mov_b32 s4, 0", "={s4}"() #023  %sgpr5 = tail call i32 asm sideeffect "s_mov_b32 s5, 0", "={s5}"() #024  %sgpr6 = tail call i32 asm sideeffect "s_mov_b32 s6, 0", "={s6}"() #025  %sgpr7 = tail call i32 asm sideeffect "s_mov_b32 s7, 0", "={s7}"() #026  %sgpr8 = tail call i32 asm sideeffect "s_mov_b32 s8, 0", "={s8}"() #027  %sgpr9 = tail call i32 asm sideeffect "s_mov_b32 s9, 0", "={s9}"() #028  %sgpr10 = tail call i32 asm sideeffect "s_mov_b32 s10, 0", "={s10}"() #029  %sgpr11 = tail call i32 asm sideeffect "s_mov_b32 s11, 0", "={s11}"() #030  %sgpr12 = tail call i32 asm sideeffect "s_mov_b32 s12, 0", "={s12}"() #031  %sgpr13 = tail call i32 asm sideeffect "s_mov_b32 s13, 0", "={s13}"() #032  %sgpr14 = tail call i32 asm sideeffect "s_mov_b32 s14, 0", "={s14}"() #033  %sgpr15 = tail call i32 asm sideeffect "s_mov_b32 s15, 0", "={s15}"() #034  %sgpr16 = tail call i32 asm sideeffect "s_mov_b32 s16, 0", "={s16}"() #035  %sgpr17 = tail call i32 asm sideeffect "s_mov_b32 s17, 0", "={s17}"() #036  %sgpr18 = tail call i32 asm sideeffect "s_mov_b32 s18, 0", "={s18}"() #037  %sgpr19 = tail call i32 asm sideeffect "s_mov_b32 s19, 0", "={s19}"() #038  %sgpr20 = tail call i32 asm sideeffect "s_mov_b32 s20, 0", "={s20}"() #039  %sgpr21 = tail call i32 asm sideeffect "s_mov_b32 s21, 0", "={s21}"() #040  %sgpr22 = tail call i32 asm sideeffect "s_mov_b32 s22, 0", "={s22}"() #041  %sgpr23 = tail call i32 asm sideeffect "s_mov_b32 s23, 0", "={s23}"() #042  %sgpr24 = tail call i32 asm sideeffect "s_mov_b32 s24, 0", "={s24}"() #043  %sgpr25 = tail call i32 asm sideeffect "s_mov_b32 s25, 0", "={s25}"() #044  %sgpr26 = tail call i32 asm sideeffect "s_mov_b32 s26, 0", "={s26}"() #045  %sgpr27 = tail call i32 asm sideeffect "s_mov_b32 s27, 0", "={s27}"() #046  %sgpr28 = tail call i32 asm sideeffect "s_mov_b32 s28, 0", "={s28}"() #047  %sgpr29 = tail call i32 asm sideeffect "s_mov_b32 s29, 0", "={s29}"() #048  %sgpr30 = tail call i32 asm sideeffect "s_mov_b32 s30, 0", "={s30}"() #049  %sgpr31 = tail call i32 asm sideeffect "s_mov_b32 s31, 0", "={s31}"() #050  %sgpr32 = tail call i32 asm sideeffect "s_mov_b32 s32, 0", "={s32}"() #051  %sgpr33 = tail call i32 asm sideeffect "s_mov_b32 s33, 0", "={s33}"() #052  %sgpr34 = tail call i32 asm sideeffect "s_mov_b32 s34, 0", "={s34}"() #053  %sgpr35 = tail call i32 asm sideeffect "s_mov_b32 s35, 0", "={s35}"() #054  %sgpr36 = tail call i32 asm sideeffect "s_mov_b32 s36, 0", "={s36}"() #055  %sgpr37 = tail call i32 asm sideeffect "s_mov_b32 s37, 0", "={s37}"() #056  %sgpr38 = tail call i32 asm sideeffect "s_mov_b32 s38, 0", "={s38}"() #057  %sgpr39 = tail call i32 asm sideeffect "s_mov_b32 s39, 0", "={s39}"() #058  %sgpr40 = tail call i32 asm sideeffect "s_mov_b32 s40, 0", "={s40}"() #059  %sgpr41 = tail call i32 asm sideeffect "s_mov_b32 s41, 0", "={s41}"() #060  %sgpr42 = tail call i32 asm sideeffect "s_mov_b32 s42, 0", "={s42}"() #061  %sgpr43 = tail call i32 asm sideeffect "s_mov_b32 s43, 0", "={s43}"() #062  %sgpr44 = tail call i32 asm sideeffect "s_mov_b32 s44, 0", "={s44}"() #063  %sgpr45 = tail call i32 asm sideeffect "s_mov_b32 s45, 0", "={s45}"() #064  %sgpr46 = tail call i32 asm sideeffect "s_mov_b32 s46, 0", "={s46}"() #065  %sgpr47 = tail call i32 asm sideeffect "s_mov_b32 s47, 0", "={s47}"() #066  %sgpr48 = tail call i32 asm sideeffect "s_mov_b32 s48, 0", "={s48}"() #067  %sgpr49 = tail call i32 asm sideeffect "s_mov_b32 s49, 0", "={s49}"() #068  %sgpr50 = tail call i32 asm sideeffect "s_mov_b32 s50, 0", "={s50}"() #069  %sgpr51 = tail call i32 asm sideeffect "s_mov_b32 s51, 0", "={s51}"() #070  %sgpr52 = tail call i32 asm sideeffect "s_mov_b32 s52, 0", "={s52}"() #071  %sgpr53 = tail call i32 asm sideeffect "s_mov_b32 s53, 0", "={s53}"() #072  %sgpr54 = tail call i32 asm sideeffect "s_mov_b32 s54, 0", "={s54}"() #073  %sgpr55 = tail call i32 asm sideeffect "s_mov_b32 s55, 0", "={s55}"() #074  %sgpr56 = tail call i32 asm sideeffect "s_mov_b32 s56, 0", "={s56}"() #075  %sgpr57 = tail call i32 asm sideeffect "s_mov_b32 s57, 0", "={s57}"() #076  %sgpr58 = tail call i32 asm sideeffect "s_mov_b32 s58, 0", "={s58}"() #077  %sgpr59 = tail call i32 asm sideeffect "s_mov_b32 s59, 0", "={s59}"() #078  %sgpr60 = tail call i32 asm sideeffect "s_mov_b32 s60, 0", "={s60}"() #079  %sgpr61 = tail call i32 asm sideeffect "s_mov_b32 s61, 0", "={s61}"() #080  %sgpr62 = tail call i32 asm sideeffect "s_mov_b32 s62, 0", "={s62}"() #081  %sgpr63 = tail call i32 asm sideeffect "s_mov_b32 s63, 0", "={s63}"() #082  %sgpr64 = tail call i32 asm sideeffect "s_mov_b32 s64, 0", "={s64}"() #083  %sgpr65 = tail call i32 asm sideeffect "s_mov_b32 s65, 0", "={s65}"() #084  %sgpr66 = tail call i32 asm sideeffect "s_mov_b32 s66, 0", "={s66}"() #085  %sgpr67 = tail call i32 asm sideeffect "s_mov_b32 s67, 0", "={s67}"() #086  %sgpr68 = tail call i32 asm sideeffect "s_mov_b32 s68, 0", "={s68}"() #087  %sgpr69 = tail call i32 asm sideeffect "s_mov_b32 s69, 0", "={s69}"() #088  %sgpr70 = tail call i32 asm sideeffect "s_mov_b32 s70, 0", "={s70}"() #089  %sgpr71 = tail call i32 asm sideeffect "s_mov_b32 s71, 0", "={s71}"() #090  %sgpr72 = tail call i32 asm sideeffect "s_mov_b32 s72, 0", "={s72}"() #091  %sgpr73 = tail call i32 asm sideeffect "s_mov_b32 s73, 0", "={s73}"() #092  %sgpr74 = tail call i32 asm sideeffect "s_mov_b32 s74, 0", "={s74}"() #093  %sgpr75 = tail call i32 asm sideeffect "s_mov_b32 s75, 0", "={s75}"() #094  %sgpr76 = tail call i32 asm sideeffect "s_mov_b32 s76, 0", "={s76}"() #095  %sgpr77 = tail call i32 asm sideeffect "s_mov_b32 s77, 0", "={s77}"() #096  %sgpr78 = tail call i32 asm sideeffect "s_mov_b32 s78, 0", "={s78}"() #097  %sgpr79 = tail call i32 asm sideeffect "s_mov_b32 s79, 0", "={s79}"() #098  %sgpr80 = tail call i32 asm sideeffect "s_mov_b32 s80, 0", "={s80}"() #099  %sgpr81 = tail call i32 asm sideeffect "s_mov_b32 s81, 0", "={s81}"() #0100  %sgpr82 = tail call i32 asm sideeffect "s_mov_b32 s82, 0", "={s82}"() #0101  %sgpr83 = tail call i32 asm sideeffect "s_mov_b32 s83, 0", "={s83}"() #0102  %sgpr84 = tail call i32 asm sideeffect "s_mov_b32 s84, 0", "={s84}"() #0103  %sgpr85 = tail call i32 asm sideeffect "s_mov_b32 s85, 0", "={s85}"() #0104  %sgpr86 = tail call i32 asm sideeffect "s_mov_b32 s86, 0", "={s86}"() #0105  %sgpr87 = tail call i32 asm sideeffect "s_mov_b32 s87, 0", "={s87}"() #0106  %sgpr88 = tail call i32 asm sideeffect "s_mov_b32 s88, 0", "={s88}"() #0107  %sgpr89 = tail call i32 asm sideeffect "s_mov_b32 s89, 0", "={s89}"() #0108  %sgpr90 = tail call i32 asm sideeffect "s_mov_b32 s90, 0", "={s90}"() #0109  %sgpr91 = tail call i32 asm sideeffect "s_mov_b32 s91, 0", "={s91}"() #0110  %sgpr92 = tail call i32 asm sideeffect "s_mov_b32 s92, 0", "={s92}"() #0111  %sgpr93 = tail call i32 asm sideeffect "s_mov_b32 s93, 0", "={s93}"() #0112  %sgpr94 = tail call i32 asm sideeffect "s_mov_b32 s94, 0", "={s94}"() #0113  %sgpr95 = tail call i32 asm sideeffect "s_mov_b32 s95, 0", "={s95}"() #0114  %sgpr96 = tail call i32 asm sideeffect "s_mov_b32 s96, 0", "={s96}"() #0115  %sgpr97 = tail call i32 asm sideeffect "s_mov_b32 s97, 0", "={s97}"() #0116  %sgpr98 = tail call i32 asm sideeffect "s_mov_b32 s98, 0", "={s98}"() #0117  %sgpr99 = tail call i32 asm sideeffect "s_mov_b32 s99, 0", "={s99}"() #0118  %sgpr100 = tail call i32 asm sideeffect "s_mov_b32 s100, 0", "={s100}"() #0119  %sgpr101 = tail call i32 asm sideeffect "s_mov_b32 s101, 0", "={s101}"() #0120  %vcc_lo = tail call i32 asm sideeffect "s_mov_b32 $0, 0", "={vcc_lo}"() #0121  %vcc_hi = tail call i32 asm sideeffect "s_mov_b32 $0, 0", "={vcc_hi}"() #0122  %cmp = icmp eq i32 %cnd, 0123  br i1 %cmp, label %bb3, label %bb2 ; +8 dword branch124 125bb2: ; 68 bytes126  ; 64 byte asm127  call void asm sideeffect128   "v_nop_e64129    v_nop_e64130    v_nop_e64131    v_nop_e64132    v_nop_e64133    v_nop_e64134    v_nop_e64135    v_nop_e64",""() #0136  br label %bb3137 138bb3:139  tail call void asm sideeffect "; reg use $0", "{s0}"(i32 %sgpr0) #0140  tail call void asm sideeffect "; reg use $0", "{s1}"(i32 %sgpr1) #0141  tail call void asm sideeffect "; reg use $0", "{s2}"(i32 %sgpr2) #0142  tail call void asm sideeffect "; reg use $0", "{s3}"(i32 %sgpr3) #0143  tail call void asm sideeffect "; reg use $0", "{s4}"(i32 %sgpr4) #0144  tail call void asm sideeffect "; reg use $0", "{s5}"(i32 %sgpr5) #0145  tail call void asm sideeffect "; reg use $0", "{s6}"(i32 %sgpr6) #0146  tail call void asm sideeffect "; reg use $0", "{s7}"(i32 %sgpr7) #0147  tail call void asm sideeffect "; reg use $0", "{s8}"(i32 %sgpr8) #0148  tail call void asm sideeffect "; reg use $0", "{s9}"(i32 %sgpr9) #0149  tail call void asm sideeffect "; reg use $0", "{s10}"(i32 %sgpr10) #0150  tail call void asm sideeffect "; reg use $0", "{s11}"(i32 %sgpr11) #0151  tail call void asm sideeffect "; reg use $0", "{s12}"(i32 %sgpr12) #0152  tail call void asm sideeffect "; reg use $0", "{s13}"(i32 %sgpr13) #0153  tail call void asm sideeffect "; reg use $0", "{s14}"(i32 %sgpr14) #0154  tail call void asm sideeffect "; reg use $0", "{s15}"(i32 %sgpr15) #0155  tail call void asm sideeffect "; reg use $0", "{s16}"(i32 %sgpr16) #0156  tail call void asm sideeffect "; reg use $0", "{s17}"(i32 %sgpr17) #0157  tail call void asm sideeffect "; reg use $0", "{s18}"(i32 %sgpr18) #0158  tail call void asm sideeffect "; reg use $0", "{s19}"(i32 %sgpr19) #0159  tail call void asm sideeffect "; reg use $0", "{s20}"(i32 %sgpr20) #0160  tail call void asm sideeffect "; reg use $0", "{s21}"(i32 %sgpr21) #0161  tail call void asm sideeffect "; reg use $0", "{s22}"(i32 %sgpr22) #0162  tail call void asm sideeffect "; reg use $0", "{s23}"(i32 %sgpr23) #0163  tail call void asm sideeffect "; reg use $0", "{s24}"(i32 %sgpr24) #0164  tail call void asm sideeffect "; reg use $0", "{s25}"(i32 %sgpr25) #0165  tail call void asm sideeffect "; reg use $0", "{s26}"(i32 %sgpr26) #0166  tail call void asm sideeffect "; reg use $0", "{s27}"(i32 %sgpr27) #0167  tail call void asm sideeffect "; reg use $0", "{s28}"(i32 %sgpr28) #0168  tail call void asm sideeffect "; reg use $0", "{s29}"(i32 %sgpr29) #0169  tail call void asm sideeffect "; reg use $0", "{s30}"(i32 %sgpr30) #0170  tail call void asm sideeffect "; reg use $0", "{s31}"(i32 %sgpr31) #0171  tail call void asm sideeffect "; reg use $0", "{s32}"(i32 %sgpr32) #0172  tail call void asm sideeffect "; reg use $0", "{s33}"(i32 %sgpr33) #0173  tail call void asm sideeffect "; reg use $0", "{s34}"(i32 %sgpr34) #0174  tail call void asm sideeffect "; reg use $0", "{s35}"(i32 %sgpr35) #0175  tail call void asm sideeffect "; reg use $0", "{s36}"(i32 %sgpr36) #0176  tail call void asm sideeffect "; reg use $0", "{s37}"(i32 %sgpr37) #0177  tail call void asm sideeffect "; reg use $0", "{s38}"(i32 %sgpr38) #0178  tail call void asm sideeffect "; reg use $0", "{s39}"(i32 %sgpr39) #0179  tail call void asm sideeffect "; reg use $0", "{s40}"(i32 %sgpr40) #0180  tail call void asm sideeffect "; reg use $0", "{s41}"(i32 %sgpr41) #0181  tail call void asm sideeffect "; reg use $0", "{s42}"(i32 %sgpr42) #0182  tail call void asm sideeffect "; reg use $0", "{s43}"(i32 %sgpr43) #0183  tail call void asm sideeffect "; reg use $0", "{s44}"(i32 %sgpr44) #0184  tail call void asm sideeffect "; reg use $0", "{s45}"(i32 %sgpr45) #0185  tail call void asm sideeffect "; reg use $0", "{s46}"(i32 %sgpr46) #0186  tail call void asm sideeffect "; reg use $0", "{s47}"(i32 %sgpr47) #0187  tail call void asm sideeffect "; reg use $0", "{s48}"(i32 %sgpr48) #0188  tail call void asm sideeffect "; reg use $0", "{s49}"(i32 %sgpr49) #0189  tail call void asm sideeffect "; reg use $0", "{s50}"(i32 %sgpr50) #0190  tail call void asm sideeffect "; reg use $0", "{s51}"(i32 %sgpr51) #0191  tail call void asm sideeffect "; reg use $0", "{s52}"(i32 %sgpr52) #0192  tail call void asm sideeffect "; reg use $0", "{s53}"(i32 %sgpr53) #0193  tail call void asm sideeffect "; reg use $0", "{s54}"(i32 %sgpr54) #0194  tail call void asm sideeffect "; reg use $0", "{s55}"(i32 %sgpr55) #0195  tail call void asm sideeffect "; reg use $0", "{s56}"(i32 %sgpr56) #0196  tail call void asm sideeffect "; reg use $0", "{s57}"(i32 %sgpr57) #0197  tail call void asm sideeffect "; reg use $0", "{s58}"(i32 %sgpr58) #0198  tail call void asm sideeffect "; reg use $0", "{s59}"(i32 %sgpr59) #0199  tail call void asm sideeffect "; reg use $0", "{s60}"(i32 %sgpr60) #0200  tail call void asm sideeffect "; reg use $0", "{s61}"(i32 %sgpr61) #0201  tail call void asm sideeffect "; reg use $0", "{s62}"(i32 %sgpr62) #0202  tail call void asm sideeffect "; reg use $0", "{s63}"(i32 %sgpr63) #0203  tail call void asm sideeffect "; reg use $0", "{s64}"(i32 %sgpr64) #0204  tail call void asm sideeffect "; reg use $0", "{s65}"(i32 %sgpr65) #0205  tail call void asm sideeffect "; reg use $0", "{s66}"(i32 %sgpr66) #0206  tail call void asm sideeffect "; reg use $0", "{s67}"(i32 %sgpr67) #0207  tail call void asm sideeffect "; reg use $0", "{s68}"(i32 %sgpr68) #0208  tail call void asm sideeffect "; reg use $0", "{s69}"(i32 %sgpr69) #0209  tail call void asm sideeffect "; reg use $0", "{s70}"(i32 %sgpr70) #0210  tail call void asm sideeffect "; reg use $0", "{s71}"(i32 %sgpr71) #0211  tail call void asm sideeffect "; reg use $0", "{s72}"(i32 %sgpr72) #0212  tail call void asm sideeffect "; reg use $0", "{s73}"(i32 %sgpr73) #0213  tail call void asm sideeffect "; reg use $0", "{s74}"(i32 %sgpr74) #0214  tail call void asm sideeffect "; reg use $0", "{s75}"(i32 %sgpr75) #0215  tail call void asm sideeffect "; reg use $0", "{s76}"(i32 %sgpr76) #0216  tail call void asm sideeffect "; reg use $0", "{s77}"(i32 %sgpr77) #0217  tail call void asm sideeffect "; reg use $0", "{s78}"(i32 %sgpr78) #0218  tail call void asm sideeffect "; reg use $0", "{s79}"(i32 %sgpr79) #0219  tail call void asm sideeffect "; reg use $0", "{s80}"(i32 %sgpr80) #0220  tail call void asm sideeffect "; reg use $0", "{s81}"(i32 %sgpr81) #0221  tail call void asm sideeffect "; reg use $0", "{s82}"(i32 %sgpr82) #0222  tail call void asm sideeffect "; reg use $0", "{s83}"(i32 %sgpr83) #0223  tail call void asm sideeffect "; reg use $0", "{s84}"(i32 %sgpr84) #0224  tail call void asm sideeffect "; reg use $0", "{s85}"(i32 %sgpr85) #0225  tail call void asm sideeffect "; reg use $0", "{s86}"(i32 %sgpr86) #0226  tail call void asm sideeffect "; reg use $0", "{s87}"(i32 %sgpr87) #0227  tail call void asm sideeffect "; reg use $0", "{s88}"(i32 %sgpr88) #0228  tail call void asm sideeffect "; reg use $0", "{s89}"(i32 %sgpr89) #0229  tail call void asm sideeffect "; reg use $0", "{s90}"(i32 %sgpr90) #0230  tail call void asm sideeffect "; reg use $0", "{s91}"(i32 %sgpr91) #0231  tail call void asm sideeffect "; reg use $0", "{s92}"(i32 %sgpr92) #0232  tail call void asm sideeffect "; reg use $0", "{s93}"(i32 %sgpr93) #0233  tail call void asm sideeffect "; reg use $0", "{s94}"(i32 %sgpr94) #0234  tail call void asm sideeffect "; reg use $0", "{s95}"(i32 %sgpr95) #0235  tail call void asm sideeffect "; reg use $0", "{s96}"(i32 %sgpr96) #0236  tail call void asm sideeffect "; reg use $0", "{s97}"(i32 %sgpr97) #0237  tail call void asm sideeffect "; reg use $0", "{s98}"(i32 %sgpr98) #0238  tail call void asm sideeffect "; reg use $0", "{s99}"(i32 %sgpr99) #0239  tail call void asm sideeffect "; reg use $0", "{s100}"(i32 %sgpr100) #0240  tail call void asm sideeffect "; reg use $0", "{s101}"(i32 %sgpr101) #0241  tail call void asm sideeffect "; reg use $0", "{vcc_lo}"(i32 %vcc_lo) #0242  tail call void asm sideeffect "; reg use $0", "{vcc_hi}"(i32 %vcc_hi) #0243  ret void244}245 246; CHECK-LABEL: {{^}}spill_func:247; GCN:    NumSgprs: 104248; GCN-GCNTRACKERS:    NumSgprs: 104249; GCN:    NumVgprs: 2250; GCN-GCNTRACKERS:    NumVgprs: 3251; GCN:    ScratchSize: 8252; GCN-GCNTRACKERS:    ScratchSize: 12253 254define void @spill_func(ptr addrspace(1) %arg) #0 {255entry:256  %cnd = tail call i32 @llvm.amdgcn.workgroup.id.x() #0257  %sgpr0 = tail call i32 asm sideeffect "s_mov_b32 s0, 0", "={s0}"() #0258  %sgpr1 = tail call i32 asm sideeffect "s_mov_b32 s1, 0", "={s1}"() #0259  %sgpr2 = tail call i32 asm sideeffect "s_mov_b32 s2, 0", "={s2}"() #0260  %sgpr3 = tail call i32 asm sideeffect "s_mov_b32 s3, 0", "={s3}"() #0261  %sgpr4 = tail call i32 asm sideeffect "s_mov_b32 s4, 0", "={s4}"() #0262  %sgpr5 = tail call i32 asm sideeffect "s_mov_b32 s5, 0", "={s5}"() #0263  %sgpr6 = tail call i32 asm sideeffect "s_mov_b32 s6, 0", "={s6}"() #0264  %sgpr7 = tail call i32 asm sideeffect "s_mov_b32 s7, 0", "={s7}"() #0265  %sgpr8 = tail call i32 asm sideeffect "s_mov_b32 s8, 0", "={s8}"() #0266  %sgpr9 = tail call i32 asm sideeffect "s_mov_b32 s9, 0", "={s9}"() #0267  %sgpr10 = tail call i32 asm sideeffect "s_mov_b32 s10, 0", "={s10}"() #0268  %sgpr11 = tail call i32 asm sideeffect "s_mov_b32 s11, 0", "={s11}"() #0269  %sgpr12 = tail call i32 asm sideeffect "s_mov_b32 s12, 0", "={s12}"() #0270  %sgpr13 = tail call i32 asm sideeffect "s_mov_b32 s13, 0", "={s13}"() #0271  %sgpr14 = tail call i32 asm sideeffect "s_mov_b32 s14, 0", "={s14}"() #0272  %sgpr15 = tail call i32 asm sideeffect "s_mov_b32 s15, 0", "={s15}"() #0273  %sgpr16 = tail call i32 asm sideeffect "s_mov_b32 s16, 0", "={s16}"() #0274  %sgpr17 = tail call i32 asm sideeffect "s_mov_b32 s17, 0", "={s17}"() #0275  %sgpr18 = tail call i32 asm sideeffect "s_mov_b32 s18, 0", "={s18}"() #0276  %sgpr19 = tail call i32 asm sideeffect "s_mov_b32 s19, 0", "={s19}"() #0277  %sgpr20 = tail call i32 asm sideeffect "s_mov_b32 s20, 0", "={s20}"() #0278  %sgpr21 = tail call i32 asm sideeffect "s_mov_b32 s21, 0", "={s21}"() #0279  %sgpr22 = tail call i32 asm sideeffect "s_mov_b32 s22, 0", "={s22}"() #0280  %sgpr23 = tail call i32 asm sideeffect "s_mov_b32 s23, 0", "={s23}"() #0281  %sgpr24 = tail call i32 asm sideeffect "s_mov_b32 s24, 0", "={s24}"() #0282  %sgpr25 = tail call i32 asm sideeffect "s_mov_b32 s25, 0", "={s25}"() #0283  %sgpr26 = tail call i32 asm sideeffect "s_mov_b32 s26, 0", "={s26}"() #0284  %sgpr27 = tail call i32 asm sideeffect "s_mov_b32 s27, 0", "={s27}"() #0285  %sgpr28 = tail call i32 asm sideeffect "s_mov_b32 s28, 0", "={s28}"() #0286  %sgpr29 = tail call i32 asm sideeffect "s_mov_b32 s29, 0", "={s29}"() #0287  %sgpr30 = tail call i32 asm sideeffect "s_mov_b32 s30, 0", "={s30}"() #0288  %sgpr31 = tail call i32 asm sideeffect "s_mov_b32 s31, 0", "={s31}"() #0289  %sgpr32 = tail call i32 asm sideeffect "s_mov_b32 s32, 0", "={s32}"() #0290  %sgpr33 = tail call i32 asm sideeffect "s_mov_b32 s33, 0", "={s33}"() #0291  %sgpr34 = tail call i32 asm sideeffect "s_mov_b32 s34, 0", "={s34}"() #0292  %sgpr35 = tail call i32 asm sideeffect "s_mov_b32 s35, 0", "={s35}"() #0293  %sgpr36 = tail call i32 asm sideeffect "s_mov_b32 s36, 0", "={s36}"() #0294  %sgpr37 = tail call i32 asm sideeffect "s_mov_b32 s37, 0", "={s37}"() #0295  %sgpr38 = tail call i32 asm sideeffect "s_mov_b32 s38, 0", "={s38}"() #0296  %sgpr39 = tail call i32 asm sideeffect "s_mov_b32 s39, 0", "={s39}"() #0297  %sgpr40 = tail call i32 asm sideeffect "s_mov_b32 s40, 0", "={s40}"() #0298  %sgpr41 = tail call i32 asm sideeffect "s_mov_b32 s41, 0", "={s41}"() #0299  %sgpr42 = tail call i32 asm sideeffect "s_mov_b32 s42, 0", "={s42}"() #0300  %sgpr43 = tail call i32 asm sideeffect "s_mov_b32 s43, 0", "={s43}"() #0301  %sgpr44 = tail call i32 asm sideeffect "s_mov_b32 s44, 0", "={s44}"() #0302  %sgpr45 = tail call i32 asm sideeffect "s_mov_b32 s45, 0", "={s45}"() #0303  %sgpr46 = tail call i32 asm sideeffect "s_mov_b32 s46, 0", "={s46}"() #0304  %sgpr47 = tail call i32 asm sideeffect "s_mov_b32 s47, 0", "={s47}"() #0305  %sgpr48 = tail call i32 asm sideeffect "s_mov_b32 s48, 0", "={s48}"() #0306  %sgpr49 = tail call i32 asm sideeffect "s_mov_b32 s49, 0", "={s49}"() #0307  %sgpr50 = tail call i32 asm sideeffect "s_mov_b32 s50, 0", "={s50}"() #0308  %sgpr51 = tail call i32 asm sideeffect "s_mov_b32 s51, 0", "={s51}"() #0309  %sgpr52 = tail call i32 asm sideeffect "s_mov_b32 s52, 0", "={s52}"() #0310  %sgpr53 = tail call i32 asm sideeffect "s_mov_b32 s53, 0", "={s53}"() #0311  %sgpr54 = tail call i32 asm sideeffect "s_mov_b32 s54, 0", "={s54}"() #0312  %sgpr55 = tail call i32 asm sideeffect "s_mov_b32 s55, 0", "={s55}"() #0313  %sgpr56 = tail call i32 asm sideeffect "s_mov_b32 s56, 0", "={s56}"() #0314  %sgpr57 = tail call i32 asm sideeffect "s_mov_b32 s57, 0", "={s57}"() #0315  %sgpr58 = tail call i32 asm sideeffect "s_mov_b32 s58, 0", "={s58}"() #0316  %sgpr59 = tail call i32 asm sideeffect "s_mov_b32 s59, 0", "={s59}"() #0317  %sgpr60 = tail call i32 asm sideeffect "s_mov_b32 s60, 0", "={s60}"() #0318  %sgpr61 = tail call i32 asm sideeffect "s_mov_b32 s61, 0", "={s61}"() #0319  %sgpr62 = tail call i32 asm sideeffect "s_mov_b32 s62, 0", "={s62}"() #0320  %sgpr63 = tail call i32 asm sideeffect "s_mov_b32 s63, 0", "={s63}"() #0321  %sgpr64 = tail call i32 asm sideeffect "s_mov_b32 s64, 0", "={s64}"() #0322  %sgpr65 = tail call i32 asm sideeffect "s_mov_b32 s65, 0", "={s65}"() #0323  %sgpr66 = tail call i32 asm sideeffect "s_mov_b32 s66, 0", "={s66}"() #0324  %sgpr67 = tail call i32 asm sideeffect "s_mov_b32 s67, 0", "={s67}"() #0325  %sgpr68 = tail call i32 asm sideeffect "s_mov_b32 s68, 0", "={s68}"() #0326  %sgpr69 = tail call i32 asm sideeffect "s_mov_b32 s69, 0", "={s69}"() #0327  %sgpr70 = tail call i32 asm sideeffect "s_mov_b32 s70, 0", "={s70}"() #0328  %sgpr71 = tail call i32 asm sideeffect "s_mov_b32 s71, 0", "={s71}"() #0329  %sgpr72 = tail call i32 asm sideeffect "s_mov_b32 s72, 0", "={s72}"() #0330  %sgpr73 = tail call i32 asm sideeffect "s_mov_b32 s73, 0", "={s73}"() #0331  %sgpr74 = tail call i32 asm sideeffect "s_mov_b32 s74, 0", "={s74}"() #0332  %sgpr75 = tail call i32 asm sideeffect "s_mov_b32 s75, 0", "={s75}"() #0333  %sgpr76 = tail call i32 asm sideeffect "s_mov_b32 s76, 0", "={s76}"() #0334  %sgpr77 = tail call i32 asm sideeffect "s_mov_b32 s77, 0", "={s77}"() #0335  %sgpr78 = tail call i32 asm sideeffect "s_mov_b32 s78, 0", "={s78}"() #0336  %sgpr79 = tail call i32 asm sideeffect "s_mov_b32 s79, 0", "={s79}"() #0337  %sgpr80 = tail call i32 asm sideeffect "s_mov_b32 s80, 0", "={s80}"() #0338  %sgpr81 = tail call i32 asm sideeffect "s_mov_b32 s81, 0", "={s81}"() #0339  %sgpr82 = tail call i32 asm sideeffect "s_mov_b32 s82, 0", "={s82}"() #0340  %sgpr83 = tail call i32 asm sideeffect "s_mov_b32 s83, 0", "={s83}"() #0341  %sgpr84 = tail call i32 asm sideeffect "s_mov_b32 s84, 0", "={s84}"() #0342  %sgpr85 = tail call i32 asm sideeffect "s_mov_b32 s85, 0", "={s85}"() #0343  %sgpr86 = tail call i32 asm sideeffect "s_mov_b32 s86, 0", "={s86}"() #0344  %sgpr87 = tail call i32 asm sideeffect "s_mov_b32 s87, 0", "={s87}"() #0345  %sgpr88 = tail call i32 asm sideeffect "s_mov_b32 s88, 0", "={s88}"() #0346  %sgpr89 = tail call i32 asm sideeffect "s_mov_b32 s89, 0", "={s89}"() #0347  %sgpr90 = tail call i32 asm sideeffect "s_mov_b32 s90, 0", "={s90}"() #0348  %sgpr91 = tail call i32 asm sideeffect "s_mov_b32 s91, 0", "={s91}"() #0349  %sgpr92 = tail call i32 asm sideeffect "s_mov_b32 s92, 0", "={s92}"() #0350  %sgpr93 = tail call i32 asm sideeffect "s_mov_b32 s93, 0", "={s93}"() #0351  %sgpr94 = tail call i32 asm sideeffect "s_mov_b32 s94, 0", "={s94}"() #0352  %sgpr95 = tail call i32 asm sideeffect "s_mov_b32 s95, 0", "={s95}"() #0353  %sgpr96 = tail call i32 asm sideeffect "s_mov_b32 s96, 0", "={s96}"() #0354  %sgpr97 = tail call i32 asm sideeffect "s_mov_b32 s97, 0", "={s97}"() #0355  %sgpr98 = tail call i32 asm sideeffect "s_mov_b32 s98, 0", "={s98}"() #0356  %sgpr99 = tail call i32 asm sideeffect "s_mov_b32 s99, 0", "={s99}"() #0357  %sgpr100 = tail call i32 asm sideeffect "s_mov_b32 s100, 0", "={s100}"() #0358  %sgpr101 = tail call i32 asm sideeffect "s_mov_b32 s101, 0", "={s101}"() #0359  %vcc_lo = tail call i32 asm sideeffect "s_mov_b32 $0, 0", "={vcc_lo}"() #0360  %vcc_hi = tail call i32 asm sideeffect "s_mov_b32 $0, 0", "={vcc_hi}"() #0361  %cmp = icmp eq i32 %cnd, 0362  br i1 %cmp, label %bb3, label %bb2 ; +8 dword branch363 364bb2: ; 68 bytes365  ; 64 byte asm366  call void asm sideeffect367   "v_nop_e64368    v_nop_e64369    v_nop_e64370    v_nop_e64371    v_nop_e64372    v_nop_e64373    v_nop_e64374    v_nop_e64",""() #0375  br label %bb3376 377bb3:378  tail call void asm sideeffect "; reg use $0", "{s0}"(i32 %sgpr0) #0379  tail call void asm sideeffect "; reg use $0", "{s1}"(i32 %sgpr1) #0380  tail call void asm sideeffect "; reg use $0", "{s2}"(i32 %sgpr2) #0381  tail call void asm sideeffect "; reg use $0", "{s3}"(i32 %sgpr3) #0382  tail call void asm sideeffect "; reg use $0", "{s4}"(i32 %sgpr4) #0383  tail call void asm sideeffect "; reg use $0", "{s5}"(i32 %sgpr5) #0384  tail call void asm sideeffect "; reg use $0", "{s6}"(i32 %sgpr6) #0385  tail call void asm sideeffect "; reg use $0", "{s7}"(i32 %sgpr7) #0386  tail call void asm sideeffect "; reg use $0", "{s8}"(i32 %sgpr8) #0387  tail call void asm sideeffect "; reg use $0", "{s9}"(i32 %sgpr9) #0388  tail call void asm sideeffect "; reg use $0", "{s10}"(i32 %sgpr10) #0389  tail call void asm sideeffect "; reg use $0", "{s11}"(i32 %sgpr11) #0390  tail call void asm sideeffect "; reg use $0", "{s12}"(i32 %sgpr12) #0391  tail call void asm sideeffect "; reg use $0", "{s13}"(i32 %sgpr13) #0392  tail call void asm sideeffect "; reg use $0", "{s14}"(i32 %sgpr14) #0393  tail call void asm sideeffect "; reg use $0", "{s15}"(i32 %sgpr15) #0394  tail call void asm sideeffect "; reg use $0", "{s16}"(i32 %sgpr16) #0395  tail call void asm sideeffect "; reg use $0", "{s17}"(i32 %sgpr17) #0396  tail call void asm sideeffect "; reg use $0", "{s18}"(i32 %sgpr18) #0397  tail call void asm sideeffect "; reg use $0", "{s19}"(i32 %sgpr19) #0398  tail call void asm sideeffect "; reg use $0", "{s20}"(i32 %sgpr20) #0399  tail call void asm sideeffect "; reg use $0", "{s21}"(i32 %sgpr21) #0400  tail call void asm sideeffect "; reg use $0", "{s22}"(i32 %sgpr22) #0401  tail call void asm sideeffect "; reg use $0", "{s23}"(i32 %sgpr23) #0402  tail call void asm sideeffect "; reg use $0", "{s24}"(i32 %sgpr24) #0403  tail call void asm sideeffect "; reg use $0", "{s25}"(i32 %sgpr25) #0404  tail call void asm sideeffect "; reg use $0", "{s26}"(i32 %sgpr26) #0405  tail call void asm sideeffect "; reg use $0", "{s27}"(i32 %sgpr27) #0406  tail call void asm sideeffect "; reg use $0", "{s28}"(i32 %sgpr28) #0407  tail call void asm sideeffect "; reg use $0", "{s29}"(i32 %sgpr29) #0408  tail call void asm sideeffect "; reg use $0", "{s30}"(i32 %sgpr30) #0409  tail call void asm sideeffect "; reg use $0", "{s31}"(i32 %sgpr31) #0410  tail call void asm sideeffect "; reg use $0", "{s32}"(i32 %sgpr32) #0411  tail call void asm sideeffect "; reg use $0", "{s33}"(i32 %sgpr33) #0412  tail call void asm sideeffect "; reg use $0", "{s34}"(i32 %sgpr34) #0413  tail call void asm sideeffect "; reg use $0", "{s35}"(i32 %sgpr35) #0414  tail call void asm sideeffect "; reg use $0", "{s36}"(i32 %sgpr36) #0415  tail call void asm sideeffect "; reg use $0", "{s37}"(i32 %sgpr37) #0416  tail call void asm sideeffect "; reg use $0", "{s38}"(i32 %sgpr38) #0417  tail call void asm sideeffect "; reg use $0", "{s39}"(i32 %sgpr39) #0418  tail call void asm sideeffect "; reg use $0", "{s40}"(i32 %sgpr40) #0419  tail call void asm sideeffect "; reg use $0", "{s41}"(i32 %sgpr41) #0420  tail call void asm sideeffect "; reg use $0", "{s42}"(i32 %sgpr42) #0421  tail call void asm sideeffect "; reg use $0", "{s43}"(i32 %sgpr43) #0422  tail call void asm sideeffect "; reg use $0", "{s44}"(i32 %sgpr44) #0423  tail call void asm sideeffect "; reg use $0", "{s45}"(i32 %sgpr45) #0424  tail call void asm sideeffect "; reg use $0", "{s46}"(i32 %sgpr46) #0425  tail call void asm sideeffect "; reg use $0", "{s47}"(i32 %sgpr47) #0426  tail call void asm sideeffect "; reg use $0", "{s48}"(i32 %sgpr48) #0427  tail call void asm sideeffect "; reg use $0", "{s49}"(i32 %sgpr49) #0428  tail call void asm sideeffect "; reg use $0", "{s50}"(i32 %sgpr50) #0429  tail call void asm sideeffect "; reg use $0", "{s51}"(i32 %sgpr51) #0430  tail call void asm sideeffect "; reg use $0", "{s52}"(i32 %sgpr52) #0431  tail call void asm sideeffect "; reg use $0", "{s53}"(i32 %sgpr53) #0432  tail call void asm sideeffect "; reg use $0", "{s54}"(i32 %sgpr54) #0433  tail call void asm sideeffect "; reg use $0", "{s55}"(i32 %sgpr55) #0434  tail call void asm sideeffect "; reg use $0", "{s56}"(i32 %sgpr56) #0435  tail call void asm sideeffect "; reg use $0", "{s57}"(i32 %sgpr57) #0436  tail call void asm sideeffect "; reg use $0", "{s58}"(i32 %sgpr58) #0437  tail call void asm sideeffect "; reg use $0", "{s59}"(i32 %sgpr59) #0438  tail call void asm sideeffect "; reg use $0", "{s60}"(i32 %sgpr60) #0439  tail call void asm sideeffect "; reg use $0", "{s61}"(i32 %sgpr61) #0440  tail call void asm sideeffect "; reg use $0", "{s62}"(i32 %sgpr62) #0441  tail call void asm sideeffect "; reg use $0", "{s63}"(i32 %sgpr63) #0442  tail call void asm sideeffect "; reg use $0", "{s64}"(i32 %sgpr64) #0443  tail call void asm sideeffect "; reg use $0", "{s65}"(i32 %sgpr65) #0444  tail call void asm sideeffect "; reg use $0", "{s66}"(i32 %sgpr66) #0445  tail call void asm sideeffect "; reg use $0", "{s67}"(i32 %sgpr67) #0446  tail call void asm sideeffect "; reg use $0", "{s68}"(i32 %sgpr68) #0447  tail call void asm sideeffect "; reg use $0", "{s69}"(i32 %sgpr69) #0448  tail call void asm sideeffect "; reg use $0", "{s70}"(i32 %sgpr70) #0449  tail call void asm sideeffect "; reg use $0", "{s71}"(i32 %sgpr71) #0450  tail call void asm sideeffect "; reg use $0", "{s72}"(i32 %sgpr72) #0451  tail call void asm sideeffect "; reg use $0", "{s73}"(i32 %sgpr73) #0452  tail call void asm sideeffect "; reg use $0", "{s74}"(i32 %sgpr74) #0453  tail call void asm sideeffect "; reg use $0", "{s75}"(i32 %sgpr75) #0454  tail call void asm sideeffect "; reg use $0", "{s76}"(i32 %sgpr76) #0455  tail call void asm sideeffect "; reg use $0", "{s77}"(i32 %sgpr77) #0456  tail call void asm sideeffect "; reg use $0", "{s78}"(i32 %sgpr78) #0457  tail call void asm sideeffect "; reg use $0", "{s79}"(i32 %sgpr79) #0458  tail call void asm sideeffect "; reg use $0", "{s80}"(i32 %sgpr80) #0459  tail call void asm sideeffect "; reg use $0", "{s81}"(i32 %sgpr81) #0460  tail call void asm sideeffect "; reg use $0", "{s82}"(i32 %sgpr82) #0461  tail call void asm sideeffect "; reg use $0", "{s83}"(i32 %sgpr83) #0462  tail call void asm sideeffect "; reg use $0", "{s84}"(i32 %sgpr84) #0463  tail call void asm sideeffect "; reg use $0", "{s85}"(i32 %sgpr85) #0464  tail call void asm sideeffect "; reg use $0", "{s86}"(i32 %sgpr86) #0465  tail call void asm sideeffect "; reg use $0", "{s87}"(i32 %sgpr87) #0466  tail call void asm sideeffect "; reg use $0", "{s88}"(i32 %sgpr88) #0467  tail call void asm sideeffect "; reg use $0", "{s89}"(i32 %sgpr89) #0468  tail call void asm sideeffect "; reg use $0", "{s90}"(i32 %sgpr90) #0469  tail call void asm sideeffect "; reg use $0", "{s91}"(i32 %sgpr91) #0470  tail call void asm sideeffect "; reg use $0", "{s92}"(i32 %sgpr92) #0471  tail call void asm sideeffect "; reg use $0", "{s93}"(i32 %sgpr93) #0472  tail call void asm sideeffect "; reg use $0", "{s94}"(i32 %sgpr94) #0473  tail call void asm sideeffect "; reg use $0", "{s95}"(i32 %sgpr95) #0474  tail call void asm sideeffect "; reg use $0", "{s96}"(i32 %sgpr96) #0475  tail call void asm sideeffect "; reg use $0", "{s97}"(i32 %sgpr97) #0476  tail call void asm sideeffect "; reg use $0", "{s98}"(i32 %sgpr98) #0477  tail call void asm sideeffect "; reg use $0", "{s99}"(i32 %sgpr99) #0478  tail call void asm sideeffect "; reg use $0", "{s100}"(i32 %sgpr100) #0479  tail call void asm sideeffect "; reg use $0", "{s101}"(i32 %sgpr101) #0480  tail call void asm sideeffect "; reg use $0", "{vcc_lo}"(i32 %vcc_lo) #0481  tail call void asm sideeffect "; reg use $0", "{vcc_hi}"(i32 %vcc_hi) #0482  ret void483}484 485declare i32 @llvm.amdgcn.workgroup.id.x() #0486 487attributes #0 = { nounwind }488