Lines Matching refs:VI
3 …dhsa -mcpu=tonga -verify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefixes=GCN,VI %s
36 ; VI-LABEL: lds_atomic_inc_ret_i32:
37 ; VI: ; %bb.0:
38 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
39 ; VI-NEXT: s_load_dword s2, s[4:5], 0x8
40 ; VI-NEXT: v_mov_b32_e32 v0, 42
41 ; VI-NEXT: s_mov_b32 m0, -1
42 ; VI-NEXT: s_waitcnt lgkmcnt(0)
43 ; VI-NEXT: v_mov_b32_e32 v1, s2
44 ; VI-NEXT: ds_inc_rtn_u32 v2, v1, v0
45 ; VI-NEXT: v_mov_b32_e32 v0, s0
46 ; VI-NEXT: v_mov_b32_e32 v1, s1
47 ; VI-NEXT: s_waitcnt lgkmcnt(0)
48 ; VI-NEXT: flat_store_dword v[0:1], v2
49 ; VI-NEXT: s_endpgm
86 ; VI-LABEL: lds_atomic_inc_ret_i32_offset:
87 ; VI: ; %bb.0:
88 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
89 ; VI-NEXT: s_load_dword s2, s[4:5], 0x8
90 ; VI-NEXT: v_mov_b32_e32 v0, 42
91 ; VI-NEXT: s_mov_b32 m0, -1
92 ; VI-NEXT: s_waitcnt lgkmcnt(0)
93 ; VI-NEXT: v_mov_b32_e32 v1, s2
94 ; VI-NEXT: ds_inc_rtn_u32 v2, v1, v0 offset:16
95 ; VI-NEXT: v_mov_b32_e32 v0, s0
96 ; VI-NEXT: v_mov_b32_e32 v1, s1
97 ; VI-NEXT: s_waitcnt lgkmcnt(0)
98 ; VI-NEXT: flat_store_dword v[0:1], v2
99 ; VI-NEXT: s_endpgm
130 ; VI-LABEL: lds_atomic_inc_noret_i32:
131 ; VI: ; %bb.0:
132 ; VI-NEXT: s_load_dword s0, s[4:5], 0x0
133 ; VI-NEXT: v_mov_b32_e32 v0, 42
134 ; VI-NEXT: s_mov_b32 m0, -1
135 ; VI-NEXT: s_waitcnt lgkmcnt(0)
136 ; VI-NEXT: v_mov_b32_e32 v1, s0
137 ; VI-NEXT: ds_inc_rtn_u32 v0, v1, v0
138 ; VI-NEXT: s_endpgm
163 ; VI-LABEL: lds_atomic_inc_noret_i32_offset:
164 ; VI: ; %bb.0:
165 ; VI-NEXT: s_load_dword s0, s[4:5], 0x0
166 ; VI-NEXT: v_mov_b32_e32 v0, 42
167 ; VI-NEXT: s_mov_b32 m0, -1
168 ; VI-NEXT: s_waitcnt lgkmcnt(0)
169 ; VI-NEXT: v_mov_b32_e32 v1, s0
170 ; VI-NEXT: ds_inc_rtn_u32 v0, v1, v0 offset:16
171 ; VI-NEXT: s_endpgm
201 ; VI-LABEL: global_atomic_inc_ret_i32:
202 ; VI: ; %bb.0:
203 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
204 ; VI-NEXT: v_mov_b32_e32 v2, 42
205 ; VI-NEXT: s_waitcnt lgkmcnt(0)
206 ; VI-NEXT: v_mov_b32_e32 v0, s2
207 ; VI-NEXT: v_mov_b32_e32 v1, s3
208 ; VI-NEXT: flat_atomic_inc v2, v[0:1], v2 glc
209 ; VI-NEXT: v_mov_b32_e32 v0, s0
210 ; VI-NEXT: v_mov_b32_e32 v1, s1
211 ; VI-NEXT: s_waitcnt vmcnt(0)
212 ; VI-NEXT: flat_store_dword v[0:1], v2
213 ; VI-NEXT: s_endpgm
247 ; VI-LABEL: global_atomic_inc_ret_i32_offset:
248 ; VI: ; %bb.0:
249 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
250 ; VI-NEXT: v_mov_b32_e32 v2, 42
251 ; VI-NEXT: s_waitcnt lgkmcnt(0)
252 ; VI-NEXT: s_add_u32 s2, s2, 16
253 ; VI-NEXT: s_addc_u32 s3, s3, 0
254 ; VI-NEXT: v_mov_b32_e32 v0, s2
255 ; VI-NEXT: v_mov_b32_e32 v1, s3
256 ; VI-NEXT: flat_atomic_inc v2, v[0:1], v2 glc
257 ; VI-NEXT: v_mov_b32_e32 v0, s0
258 ; VI-NEXT: v_mov_b32_e32 v1, s1
259 ; VI-NEXT: s_waitcnt vmcnt(0)
260 ; VI-NEXT: flat_store_dword v[0:1], v2
261 ; VI-NEXT: s_endpgm
290 ; VI-LABEL: global_atomic_inc_noret_i32:
291 ; VI: ; %bb.0:
292 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
293 ; VI-NEXT: v_mov_b32_e32 v2, 42
294 ; VI-NEXT: s_waitcnt lgkmcnt(0)
295 ; VI-NEXT: v_mov_b32_e32 v0, s0
296 ; VI-NEXT: v_mov_b32_e32 v1, s1
297 ; VI-NEXT: flat_atomic_inc v0, v[0:1], v2 glc
298 ; VI-NEXT: s_endpgm
325 ; VI-LABEL: global_atomic_inc_noret_i32_offset:
326 ; VI: ; %bb.0:
327 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
328 ; VI-NEXT: v_mov_b32_e32 v2, 42
329 ; VI-NEXT: s_waitcnt lgkmcnt(0)
330 ; VI-NEXT: s_add_u32 s0, s0, 16
331 ; VI-NEXT: s_addc_u32 s1, s1, 0
332 ; VI-NEXT: v_mov_b32_e32 v0, s0
333 ; VI-NEXT: v_mov_b32_e32 v1, s1
334 ; VI-NEXT: flat_atomic_inc v0, v[0:1], v2 glc
335 ; VI-NEXT: s_endpgm
372 ; VI-LABEL: global_atomic_inc_ret_i32_offset_addr64:
373 ; VI: ; %bb.0:
374 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
375 ; VI-NEXT: v_lshlrev_b32_e32 v2, 2, v0
376 ; VI-NEXT: s_waitcnt lgkmcnt(0)
377 ; VI-NEXT: v_mov_b32_e32 v0, s2
378 ; VI-NEXT: v_mov_b32_e32 v1, s3
379 ; VI-NEXT: v_add_u32_e32 v3, vcc, v0, v2
380 ; VI-NEXT: v_addc_u32_e32 v4, vcc, 0, v1, vcc
381 ; VI-NEXT: v_mov_b32_e32 v0, s0
382 ; VI-NEXT: v_mov_b32_e32 v1, s1
383 ; VI-NEXT: v_add_u32_e32 v0, vcc, v0, v2
384 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
385 ; VI-NEXT: v_add_u32_e32 v2, vcc, 20, v3
386 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v4, vcc
387 ; VI-NEXT: v_mov_b32_e32 v4, 42
388 ; VI-NEXT: flat_atomic_inc v2, v[2:3], v4 glc
389 ; VI-NEXT: s_waitcnt vmcnt(0)
390 ; VI-NEXT: flat_store_dword v[0:1], v2
391 ; VI-NEXT: s_endpgm
428 ; VI-LABEL: global_atomic_inc_noret_i32_offset_addr64:
429 ; VI: ; %bb.0:
430 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
431 ; VI-NEXT: v_lshlrev_b32_e32 v2, 2, v0
432 ; VI-NEXT: s_waitcnt lgkmcnt(0)
433 ; VI-NEXT: v_mov_b32_e32 v0, s0
434 ; VI-NEXT: v_add_u32_e32 v0, vcc, v0, v2
435 ; VI-NEXT: v_mov_b32_e32 v1, s1
436 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
437 ; VI-NEXT: v_add_u32_e32 v0, vcc, 20, v0
438 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
439 ; VI-NEXT: v_mov_b32_e32 v2, 42
440 ; VI-NEXT: flat_atomic_inc v0, v[0:1], v2 glc
441 ; VI-NEXT: s_endpgm
478 ; VI-LABEL: atomic_inc_shl_base_lds_0_i32:
479 ; VI: ; %bb.0:
480 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
481 ; VI-NEXT: v_add_u32_e32 v2, vcc, 2, v0
482 ; VI-NEXT: v_lshlrev_b32_e32 v0, 2, v0
483 ; VI-NEXT: v_mov_b32_e32 v1, 9
484 ; VI-NEXT: s_mov_b32 m0, -1
485 ; VI-NEXT: ds_inc_rtn_u32 v3, v0, v1 offset:8
486 ; VI-NEXT: s_waitcnt lgkmcnt(0)
487 ; VI-NEXT: v_mov_b32_e32 v0, s2
488 ; VI-NEXT: v_mov_b32_e32 v1, s3
489 ; VI-NEXT: flat_store_dword v[0:1], v2
490 ; VI-NEXT: v_mov_b32_e32 v0, s0
491 ; VI-NEXT: v_mov_b32_e32 v1, s1
492 ; VI-NEXT: flat_store_dword v[0:1], v3
493 ; VI-NEXT: s_endpgm
533 ; VI-LABEL: lds_atomic_inc_ret_i64:
534 ; VI: ; %bb.0:
535 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
536 ; VI-NEXT: s_load_dword s2, s[4:5], 0x8
537 ; VI-NEXT: v_mov_b32_e32 v0, 42
538 ; VI-NEXT: v_mov_b32_e32 v1, 0
539 ; VI-NEXT: s_mov_b32 m0, -1
540 ; VI-NEXT: s_waitcnt lgkmcnt(0)
541 ; VI-NEXT: v_mov_b32_e32 v2, s2
542 ; VI-NEXT: ds_inc_rtn_u64 v[0:1], v2, v[0:1]
543 ; VI-NEXT: v_mov_b32_e32 v3, s1
544 ; VI-NEXT: v_mov_b32_e32 v2, s0
545 ; VI-NEXT: s_waitcnt lgkmcnt(0)
546 ; VI-NEXT: flat_store_dwordx2 v[2:3], v[0:1]
547 ; VI-NEXT: s_endpgm
584 ; VI-LABEL: lds_atomic_inc_ret_i64_offset:
585 ; VI: ; %bb.0:
586 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
587 ; VI-NEXT: s_load_dword s2, s[4:5], 0x8
588 ; VI-NEXT: v_mov_b32_e32 v0, 42
589 ; VI-NEXT: v_mov_b32_e32 v1, 0
590 ; VI-NEXT: s_mov_b32 m0, -1
591 ; VI-NEXT: s_waitcnt lgkmcnt(0)
592 ; VI-NEXT: v_mov_b32_e32 v2, s2
593 ; VI-NEXT: ds_inc_rtn_u64 v[0:1], v2, v[0:1] offset:32
594 ; VI-NEXT: v_mov_b32_e32 v3, s1
595 ; VI-NEXT: v_mov_b32_e32 v2, s0
596 ; VI-NEXT: s_waitcnt lgkmcnt(0)
597 ; VI-NEXT: flat_store_dwordx2 v[2:3], v[0:1]
598 ; VI-NEXT: s_endpgm
631 ; VI-LABEL: lds_atomic_inc_noret_i64:
632 ; VI: ; %bb.0:
633 ; VI-NEXT: s_load_dword s0, s[4:5], 0x0
634 ; VI-NEXT: v_mov_b32_e32 v0, 42
635 ; VI-NEXT: v_mov_b32_e32 v1, 0
636 ; VI-NEXT: s_mov_b32 m0, -1
637 ; VI-NEXT: s_waitcnt lgkmcnt(0)
638 ; VI-NEXT: v_mov_b32_e32 v2, s0
639 ; VI-NEXT: ds_inc_rtn_u64 v[0:1], v2, v[0:1]
640 ; VI-NEXT: s_endpgm
667 ; VI-LABEL: lds_atomic_inc_noret_i64_offset:
668 ; VI: ; %bb.0:
669 ; VI-NEXT: s_load_dword s0, s[4:5], 0x0
670 ; VI-NEXT: v_mov_b32_e32 v0, 42
671 ; VI-NEXT: v_mov_b32_e32 v1, 0
672 ; VI-NEXT: s_mov_b32 m0, -1
673 ; VI-NEXT: s_waitcnt lgkmcnt(0)
674 ; VI-NEXT: v_mov_b32_e32 v2, s0
675 ; VI-NEXT: ds_inc_rtn_u64 v[0:1], v2, v[0:1] offset:32
676 ; VI-NEXT: s_endpgm
708 ; VI-LABEL: global_atomic_inc_ret_i64:
709 ; VI: ; %bb.0:
710 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
711 ; VI-NEXT: v_mov_b32_e32 v2, 42
712 ; VI-NEXT: v_mov_b32_e32 v3, 0
713 ; VI-NEXT: s_waitcnt lgkmcnt(0)
714 ; VI-NEXT: v_mov_b32_e32 v0, s2
715 ; VI-NEXT: v_mov_b32_e32 v1, s3
716 ; VI-NEXT: flat_atomic_inc_x2 v[0:1], v[0:1], v[2:3] glc
717 ; VI-NEXT: v_mov_b32_e32 v3, s1
718 ; VI-NEXT: v_mov_b32_e32 v2, s0
719 ; VI-NEXT: s_waitcnt vmcnt(0)
720 ; VI-NEXT: flat_store_dwordx2 v[2:3], v[0:1]
721 ; VI-NEXT: s_endpgm
757 ; VI-LABEL: global_atomic_inc_ret_i64_offset:
758 ; VI: ; %bb.0:
759 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
760 ; VI-NEXT: v_mov_b32_e32 v2, 42
761 ; VI-NEXT: v_mov_b32_e32 v3, 0
762 ; VI-NEXT: s_waitcnt lgkmcnt(0)
763 ; VI-NEXT: s_add_u32 s2, s2, 32
764 ; VI-NEXT: s_addc_u32 s3, s3, 0
765 ; VI-NEXT: v_mov_b32_e32 v0, s2
766 ; VI-NEXT: v_mov_b32_e32 v1, s3
767 ; VI-NEXT: flat_atomic_inc_x2 v[0:1], v[0:1], v[2:3] glc
768 ; VI-NEXT: v_mov_b32_e32 v3, s1
769 ; VI-NEXT: v_mov_b32_e32 v2, s0
770 ; VI-NEXT: s_waitcnt vmcnt(0)
771 ; VI-NEXT: flat_store_dwordx2 v[2:3], v[0:1]
772 ; VI-NEXT: s_endpgm
803 ; VI-LABEL: global_atomic_inc_noret_i64:
804 ; VI: ; %bb.0:
805 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
806 ; VI-NEXT: v_mov_b32_e32 v2, 42
807 ; VI-NEXT: v_mov_b32_e32 v3, 0
808 ; VI-NEXT: s_waitcnt lgkmcnt(0)
809 ; VI-NEXT: v_mov_b32_e32 v0, s0
810 ; VI-NEXT: v_mov_b32_e32 v1, s1
811 ; VI-NEXT: flat_atomic_inc_x2 v[0:1], v[0:1], v[2:3] glc
812 ; VI-NEXT: s_endpgm
841 ; VI-LABEL: global_atomic_inc_noret_i64_offset:
842 ; VI: ; %bb.0:
843 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
844 ; VI-NEXT: v_mov_b32_e32 v2, 42
845 ; VI-NEXT: v_mov_b32_e32 v3, 0
846 ; VI-NEXT: s_waitcnt lgkmcnt(0)
847 ; VI-NEXT: s_add_u32 s0, s0, 32
848 ; VI-NEXT: s_addc_u32 s1, s1, 0
849 ; VI-NEXT: v_mov_b32_e32 v0, s0
850 ; VI-NEXT: v_mov_b32_e32 v1, s1
851 ; VI-NEXT: flat_atomic_inc_x2 v[0:1], v[0:1], v[2:3] glc
852 ; VI-NEXT: s_endpgm
891 ; VI-LABEL: global_atomic_inc_ret_i64_offset_addr64:
892 ; VI: ; %bb.0:
893 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
894 ; VI-NEXT: v_lshlrev_b32_e32 v2, 3, v0
895 ; VI-NEXT: s_waitcnt lgkmcnt(0)
896 ; VI-NEXT: v_mov_b32_e32 v0, s2
897 ; VI-NEXT: v_mov_b32_e32 v1, s3
898 ; VI-NEXT: v_add_u32_e32 v3, vcc, v0, v2
899 ; VI-NEXT: v_addc_u32_e32 v4, vcc, 0, v1, vcc
900 ; VI-NEXT: v_mov_b32_e32 v0, s0
901 ; VI-NEXT: v_mov_b32_e32 v1, s1
902 ; VI-NEXT: v_add_u32_e32 v0, vcc, v0, v2
903 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
904 ; VI-NEXT: v_add_u32_e32 v2, vcc, 40, v3
905 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v4, vcc
906 ; VI-NEXT: v_mov_b32_e32 v4, 42
907 ; VI-NEXT: v_mov_b32_e32 v5, 0
908 ; VI-NEXT: flat_atomic_inc_x2 v[2:3], v[2:3], v[4:5] glc
909 ; VI-NEXT: s_waitcnt vmcnt(0)
910 ; VI-NEXT: flat_store_dwordx2 v[0:1], v[2:3]
911 ; VI-NEXT: s_endpgm
950 ; VI-LABEL: global_atomic_inc_noret_i64_offset_addr64:
951 ; VI: ; %bb.0:
952 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
953 ; VI-NEXT: v_lshlrev_b32_e32 v2, 3, v0
954 ; VI-NEXT: s_waitcnt lgkmcnt(0)
955 ; VI-NEXT: v_mov_b32_e32 v0, s0
956 ; VI-NEXT: v_add_u32_e32 v0, vcc, v0, v2
957 ; VI-NEXT: v_mov_b32_e32 v1, s1
958 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
959 ; VI-NEXT: v_add_u32_e32 v0, vcc, 40, v0
960 ; VI-NEXT: v_mov_b32_e32 v2, 42
961 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
962 ; VI-NEXT: v_mov_b32_e32 v3, 0
963 ; VI-NEXT: flat_atomic_inc_x2 v[0:1], v[0:1], v[2:3] glc
964 ; VI-NEXT: s_endpgm
1076 ; VI-LABEL: flat_atomic_inc_ret_i32_offset_addr64:
1077 ; VI: ; %bb.0:
1078 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
1079 ; VI-NEXT: v_lshlrev_b32_e32 v2, 2, v0
1080 ; VI-NEXT: s_waitcnt lgkmcnt(0)
1081 ; VI-NEXT: v_mov_b32_e32 v0, s2
1082 ; VI-NEXT: v_mov_b32_e32 v1, s3
1083 ; VI-NEXT: v_add_u32_e32 v3, vcc, v0, v2
1084 ; VI-NEXT: v_addc_u32_e32 v4, vcc, 0, v1, vcc
1085 ; VI-NEXT: v_mov_b32_e32 v0, s0
1086 ; VI-NEXT: v_mov_b32_e32 v1, s1
1087 ; VI-NEXT: v_add_u32_e32 v0, vcc, v0, v2
1088 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
1089 ; VI-NEXT: v_add_u32_e32 v2, vcc, 20, v3
1090 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v4, vcc
1091 ; VI-NEXT: v_mov_b32_e32 v4, 42
1092 ; VI-NEXT: flat_atomic_inc v2, v[2:3], v4 glc
1093 ; VI-NEXT: s_waitcnt vmcnt(0) lgkmcnt(0)
1094 ; VI-NEXT: flat_store_dword v[0:1], v2
1095 ; VI-NEXT: s_endpgm
1142 ; VI-LABEL: flat_atomic_inc_noret_i32_offset_addr64:
1143 ; VI: ; %bb.0:
1144 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
1145 ; VI-NEXT: v_lshlrev_b32_e32 v2, 2, v0
1146 ; VI-NEXT: s_waitcnt lgkmcnt(0)
1147 ; VI-NEXT: v_mov_b32_e32 v0, s0
1148 ; VI-NEXT: v_add_u32_e32 v0, vcc, v0, v2
1149 ; VI-NEXT: v_mov_b32_e32 v1, s1
1150 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
1151 ; VI-NEXT: v_add_u32_e32 v0, vcc, 20, v0
1152 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
1153 ; VI-NEXT: v_mov_b32_e32 v2, 42
1154 ; VI-NEXT: flat_atomic_inc v0, v[0:1], v2 glc
1155 ; VI-NEXT: s_endpgm
1199 ; VI-LABEL: atomic_inc_shl_base_lds_0_i64:
1200 ; VI: ; %bb.0:
1201 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
1202 ; VI-NEXT: v_add_u32_e32 v4, vcc, 2, v0
1203 ; VI-NEXT: v_lshlrev_b32_e32 v2, 3, v0
1204 ; VI-NEXT: v_mov_b32_e32 v0, 9
1205 ; VI-NEXT: v_mov_b32_e32 v1, 0
1206 ; VI-NEXT: s_mov_b32 m0, -1
1207 ; VI-NEXT: ds_inc_rtn_u64 v[0:1], v2, v[0:1] offset:16
1208 ; VI-NEXT: s_waitcnt lgkmcnt(0)
1209 ; VI-NEXT: v_mov_b32_e32 v2, s2
1210 ; VI-NEXT: v_mov_b32_e32 v3, s3
1211 ; VI-NEXT: flat_store_dword v[2:3], v4
1212 ; VI-NEXT: v_mov_b32_e32 v3, s1
1213 ; VI-NEXT: v_mov_b32_e32 v2, s0
1214 ; VI-NEXT: flat_store_dwordx2 v[2:3], v[0:1]
1215 ; VI-NEXT: s_endpgm
1338 ; VI-LABEL: flat_atomic_inc_ret_i64_offset_addr64:
1339 ; VI: ; %bb.0:
1340 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
1341 ; VI-NEXT: v_lshlrev_b32_e32 v2, 3, v0
1342 ; VI-NEXT: s_waitcnt lgkmcnt(0)
1343 ; VI-NEXT: v_mov_b32_e32 v0, s2
1344 ; VI-NEXT: v_mov_b32_e32 v1, s3
1345 ; VI-NEXT: v_add_u32_e32 v3, vcc, v0, v2
1346 ; VI-NEXT: v_addc_u32_e32 v4, vcc, 0, v1, vcc
1347 ; VI-NEXT: v_mov_b32_e32 v0, s0
1348 ; VI-NEXT: v_mov_b32_e32 v1, s1
1349 ; VI-NEXT: v_add_u32_e32 v0, vcc, v0, v2
1350 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
1351 ; VI-NEXT: v_add_u32_e32 v2, vcc, 40, v3
1352 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v4, vcc
1353 ; VI-NEXT: v_mov_b32_e32 v4, 42
1354 ; VI-NEXT: v_mov_b32_e32 v5, 0
1355 ; VI-NEXT: flat_atomic_inc_x2 v[2:3], v[2:3], v[4:5] glc
1356 ; VI-NEXT: s_waitcnt vmcnt(0) lgkmcnt(0)
1357 ; VI-NEXT: flat_store_dwordx2 v[0:1], v[2:3]
1358 ; VI-NEXT: s_endpgm
1407 ; VI-LABEL: flat_atomic_inc_noret_i64_offset_addr64:
1408 ; VI: ; %bb.0:
1409 ; VI-NEXT: s_load_dwordx2 s[0:1], s[4:5], 0x0
1410 ; VI-NEXT: v_lshlrev_b32_e32 v2, 3, v0
1411 ; VI-NEXT: s_waitcnt lgkmcnt(0)
1412 ; VI-NEXT: v_mov_b32_e32 v0, s0
1413 ; VI-NEXT: v_add_u32_e32 v0, vcc, v0, v2
1414 ; VI-NEXT: v_mov_b32_e32 v1, s1
1415 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
1416 ; VI-NEXT: v_add_u32_e32 v0, vcc, 40, v0
1417 ; VI-NEXT: v_mov_b32_e32 v2, 42
1418 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
1419 ; VI-NEXT: v_mov_b32_e32 v3, 0
1420 ; VI-NEXT: flat_atomic_inc_x2 v[0:1], v[0:1], v[2:3] glc
1421 ; VI-NEXT: s_endpgm
1466 ; VI-LABEL: nocse_lds_atomic_inc_ret_i32:
1467 ; VI: ; %bb.0:
1468 ; VI-NEXT: s_load_dwordx4 s[0:3], s[4:5], 0x0
1469 ; VI-NEXT: s_load_dword s4, s[4:5], 0x10
1470 ; VI-NEXT: v_mov_b32_e32 v0, 42
1471 ; VI-NEXT: s_mov_b32 m0, -1
1472 ; VI-NEXT: s_waitcnt lgkmcnt(0)
1473 ; VI-NEXT: v_mov_b32_e32 v2, s2
1474 ; VI-NEXT: v_mov_b32_e32 v1, s4
1475 ; VI-NEXT: ds_inc_rtn_u32 v4, v1, v0
1476 ; VI-NEXT: ds_inc_rtn_u32 v5, v1, v0
1477 ; VI-NEXT: v_mov_b32_e32 v0, s0
1478 ; VI-NEXT: v_mov_b32_e32 v1, s1
1479 ; VI-NEXT: v_mov_b32_e32 v3, s3
1480 ; VI-NEXT: s_waitcnt lgkmcnt(1)
1481 ; VI-NEXT: flat_store_dword v[0:1], v4
1482 ; VI-NEXT: s_waitcnt lgkmcnt(0)
1483 ; VI-NEXT: flat_store_dword v[2:3], v5
1484 ; VI-NEXT: s_endpgm