Lines Matching refs:SI
2 …dgcn -mcpu=verde -verify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefixes=GCN,SI %s
7 ; SI-LABEL: i64_imm_inline_lo:
8 ; SI: ; %bb.0: ; %entry
9 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
10 ; SI-NEXT: s_mov_b32 s3, 0xf000
11 ; SI-NEXT: s_mov_b32 s2, -1
12 ; SI-NEXT: v_mov_b32_e32 v0, 5
13 ; SI-NEXT: v_mov_b32_e32 v1, 0x12345678
14 ; SI-NEXT: s_waitcnt lgkmcnt(0)
15 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
16 ; SI-NEXT: s_endpgm
35 ; SI-LABEL: i64_imm_inline_hi:
36 ; SI: ; %bb.0: ; %entry
37 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
38 ; SI-NEXT: s_mov_b32 s3, 0xf000
39 ; SI-NEXT: s_mov_b32 s2, -1
40 ; SI-NEXT: v_mov_b32_e32 v0, 0x12345678
41 ; SI-NEXT: v_mov_b32_e32 v1, 5
42 ; SI-NEXT: s_waitcnt lgkmcnt(0)
43 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
44 ; SI-NEXT: s_endpgm
62 ; SI-LABEL: store_imm_neg_0.0_i64:
63 ; SI: ; %bb.0:
64 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
65 ; SI-NEXT: s_mov_b32 s3, 0xf000
66 ; SI-NEXT: s_mov_b32 s2, -1
67 ; SI-NEXT: v_mov_b32_e32 v0, 0
68 ; SI-NEXT: v_bfrev_b32_e32 v1, 1
69 ; SI-NEXT: s_waitcnt lgkmcnt(0)
70 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
71 ; SI-NEXT: s_endpgm
88 ; SI-LABEL: store_inline_imm_neg_0.0_i32:
89 ; SI: ; %bb.0:
90 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
91 ; SI-NEXT: s_mov_b32 s3, 0xf000
92 ; SI-NEXT: s_mov_b32 s2, -1
93 ; SI-NEXT: v_bfrev_b32_e32 v0, 1
94 ; SI-NEXT: s_waitcnt lgkmcnt(0)
95 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
96 ; SI-NEXT: s_endpgm
112 ; SI-LABEL: store_inline_imm_0.0_f32:
113 ; SI: ; %bb.0:
114 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
115 ; SI-NEXT: s_mov_b32 s3, 0xf000
116 ; SI-NEXT: s_mov_b32 s2, -1
117 ; SI-NEXT: v_mov_b32_e32 v0, 0
118 ; SI-NEXT: s_waitcnt lgkmcnt(0)
119 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
120 ; SI-NEXT: s_endpgm
136 ; SI-LABEL: store_imm_neg_0.0_f32:
137 ; SI: ; %bb.0:
138 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
139 ; SI-NEXT: s_mov_b32 s3, 0xf000
140 ; SI-NEXT: s_mov_b32 s2, -1
141 ; SI-NEXT: v_bfrev_b32_e32 v0, 1
142 ; SI-NEXT: s_waitcnt lgkmcnt(0)
143 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
144 ; SI-NEXT: s_endpgm
160 ; SI-LABEL: store_inline_imm_0.5_f32:
161 ; SI: ; %bb.0:
162 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
163 ; SI-NEXT: s_mov_b32 s3, 0xf000
164 ; SI-NEXT: s_mov_b32 s2, -1
165 ; SI-NEXT: v_mov_b32_e32 v0, 0.5
166 ; SI-NEXT: s_waitcnt lgkmcnt(0)
167 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
168 ; SI-NEXT: s_endpgm
184 ; SI-LABEL: store_inline_imm_m_0.5_f32:
185 ; SI: ; %bb.0:
186 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
187 ; SI-NEXT: s_mov_b32 s3, 0xf000
188 ; SI-NEXT: s_mov_b32 s2, -1
189 ; SI-NEXT: v_mov_b32_e32 v0, -0.5
190 ; SI-NEXT: s_waitcnt lgkmcnt(0)
191 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
192 ; SI-NEXT: s_endpgm
208 ; SI-LABEL: store_inline_imm_1.0_f32:
209 ; SI: ; %bb.0:
210 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
211 ; SI-NEXT: s_mov_b32 s3, 0xf000
212 ; SI-NEXT: s_mov_b32 s2, -1
213 ; SI-NEXT: v_mov_b32_e32 v0, 1.0
214 ; SI-NEXT: s_waitcnt lgkmcnt(0)
215 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
216 ; SI-NEXT: s_endpgm
232 ; SI-LABEL: store_inline_imm_m_1.0_f32:
233 ; SI: ; %bb.0:
234 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
235 ; SI-NEXT: s_mov_b32 s3, 0xf000
236 ; SI-NEXT: s_mov_b32 s2, -1
237 ; SI-NEXT: v_mov_b32_e32 v0, -1.0
238 ; SI-NEXT: s_waitcnt lgkmcnt(0)
239 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
240 ; SI-NEXT: s_endpgm
256 ; SI-LABEL: store_inline_imm_2.0_f32:
257 ; SI: ; %bb.0:
258 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
259 ; SI-NEXT: s_mov_b32 s3, 0xf000
260 ; SI-NEXT: s_mov_b32 s2, -1
261 ; SI-NEXT: v_mov_b32_e32 v0, 2.0
262 ; SI-NEXT: s_waitcnt lgkmcnt(0)
263 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
264 ; SI-NEXT: s_endpgm
280 ; SI-LABEL: store_inline_imm_m_2.0_f32:
281 ; SI: ; %bb.0:
282 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
283 ; SI-NEXT: s_mov_b32 s3, 0xf000
284 ; SI-NEXT: s_mov_b32 s2, -1
285 ; SI-NEXT: v_mov_b32_e32 v0, -2.0
286 ; SI-NEXT: s_waitcnt lgkmcnt(0)
287 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
288 ; SI-NEXT: s_endpgm
304 ; SI-LABEL: store_inline_imm_4.0_f32:
305 ; SI: ; %bb.0:
306 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
307 ; SI-NEXT: s_mov_b32 s3, 0xf000
308 ; SI-NEXT: s_mov_b32 s2, -1
309 ; SI-NEXT: v_mov_b32_e32 v0, 4.0
310 ; SI-NEXT: s_waitcnt lgkmcnt(0)
311 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
312 ; SI-NEXT: s_endpgm
328 ; SI-LABEL: store_inline_imm_m_4.0_f32:
329 ; SI: ; %bb.0:
330 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
331 ; SI-NEXT: s_mov_b32 s3, 0xf000
332 ; SI-NEXT: s_mov_b32 s2, -1
333 ; SI-NEXT: v_mov_b32_e32 v0, -4.0
334 ; SI-NEXT: s_waitcnt lgkmcnt(0)
335 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
336 ; SI-NEXT: s_endpgm
352 ; SI-LABEL: store_inline_imm_inv_2pi_f32:
353 ; SI: ; %bb.0:
354 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
355 ; SI-NEXT: s_mov_b32 s3, 0xf000
356 ; SI-NEXT: s_mov_b32 s2, -1
357 ; SI-NEXT: v_mov_b32_e32 v0, 0x3e22f983
358 ; SI-NEXT: s_waitcnt lgkmcnt(0)
359 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
360 ; SI-NEXT: s_endpgm
376 ; SI-LABEL: store_inline_imm_m_inv_2pi_f32:
377 ; SI: ; %bb.0:
378 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
379 ; SI-NEXT: s_mov_b32 s3, 0xf000
380 ; SI-NEXT: s_mov_b32 s2, -1
381 ; SI-NEXT: v_mov_b32_e32 v0, 0xbe22f983
382 ; SI-NEXT: s_waitcnt lgkmcnt(0)
383 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
384 ; SI-NEXT: s_endpgm
400 ; SI-LABEL: store_literal_imm_f32:
401 ; SI: ; %bb.0:
402 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
403 ; SI-NEXT: s_mov_b32 s3, 0xf000
404 ; SI-NEXT: s_mov_b32 s2, -1
405 ; SI-NEXT: v_mov_b32_e32 v0, 0x45800000
406 ; SI-NEXT: s_waitcnt lgkmcnt(0)
407 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
408 ; SI-NEXT: s_endpgm
424 ; SI-LABEL: add_inline_imm_0.0_f32:
425 ; SI: ; %bb.0:
426 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
427 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
428 ; SI-NEXT: s_mov_b32 s3, 0xf000
429 ; SI-NEXT: s_mov_b32 s2, -1
430 ; SI-NEXT: s_waitcnt lgkmcnt(0)
431 ; SI-NEXT: v_add_f32_e64 v0, s4, 0
432 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
433 ; SI-NEXT: s_endpgm
451 ; SI-LABEL: add_inline_imm_0.5_f32:
452 ; SI: ; %bb.0:
453 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
454 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
455 ; SI-NEXT: s_mov_b32 s3, 0xf000
456 ; SI-NEXT: s_mov_b32 s2, -1
457 ; SI-NEXT: s_waitcnt lgkmcnt(0)
458 ; SI-NEXT: v_add_f32_e64 v0, s4, 0.5
459 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
460 ; SI-NEXT: s_endpgm
478 ; SI-LABEL: add_inline_imm_neg_0.5_f32:
479 ; SI: ; %bb.0:
480 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
481 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
482 ; SI-NEXT: s_mov_b32 s3, 0xf000
483 ; SI-NEXT: s_mov_b32 s2, -1
484 ; SI-NEXT: s_waitcnt lgkmcnt(0)
485 ; SI-NEXT: v_add_f32_e64 v0, s4, -0.5
486 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
487 ; SI-NEXT: s_endpgm
505 ; SI-LABEL: add_inline_imm_1.0_f32:
506 ; SI: ; %bb.0:
507 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
508 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
509 ; SI-NEXT: s_mov_b32 s3, 0xf000
510 ; SI-NEXT: s_mov_b32 s2, -1
511 ; SI-NEXT: s_waitcnt lgkmcnt(0)
512 ; SI-NEXT: v_add_f32_e64 v0, s4, 1.0
513 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
514 ; SI-NEXT: s_endpgm
532 ; SI-LABEL: add_inline_imm_neg_1.0_f32:
533 ; SI: ; %bb.0:
534 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
535 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
536 ; SI-NEXT: s_mov_b32 s3, 0xf000
537 ; SI-NEXT: s_mov_b32 s2, -1
538 ; SI-NEXT: s_waitcnt lgkmcnt(0)
539 ; SI-NEXT: v_add_f32_e64 v0, s4, -1.0
540 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
541 ; SI-NEXT: s_endpgm
559 ; SI-LABEL: add_inline_imm_2.0_f32:
560 ; SI: ; %bb.0:
561 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
562 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
563 ; SI-NEXT: s_mov_b32 s3, 0xf000
564 ; SI-NEXT: s_mov_b32 s2, -1
565 ; SI-NEXT: s_waitcnt lgkmcnt(0)
566 ; SI-NEXT: v_add_f32_e64 v0, s4, 2.0
567 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
568 ; SI-NEXT: s_endpgm
586 ; SI-LABEL: add_inline_imm_neg_2.0_f32:
587 ; SI: ; %bb.0:
588 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
589 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
590 ; SI-NEXT: s_mov_b32 s3, 0xf000
591 ; SI-NEXT: s_mov_b32 s2, -1
592 ; SI-NEXT: s_waitcnt lgkmcnt(0)
593 ; SI-NEXT: v_add_f32_e64 v0, s4, -2.0
594 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
595 ; SI-NEXT: s_endpgm
613 ; SI-LABEL: add_inline_imm_4.0_f32:
614 ; SI: ; %bb.0:
615 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
616 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
617 ; SI-NEXT: s_mov_b32 s3, 0xf000
618 ; SI-NEXT: s_mov_b32 s2, -1
619 ; SI-NEXT: s_waitcnt lgkmcnt(0)
620 ; SI-NEXT: v_add_f32_e64 v0, s4, 4.0
621 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
622 ; SI-NEXT: s_endpgm
640 ; SI-LABEL: add_inline_imm_neg_4.0_f32:
641 ; SI: ; %bb.0:
642 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
643 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
644 ; SI-NEXT: s_mov_b32 s3, 0xf000
645 ; SI-NEXT: s_mov_b32 s2, -1
646 ; SI-NEXT: s_waitcnt lgkmcnt(0)
647 ; SI-NEXT: v_add_f32_e64 v0, s4, -4.0
648 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
649 ; SI-NEXT: s_endpgm
667 ; SI-LABEL: commute_add_inline_imm_0.5_f32:
668 ; SI: ; %bb.0:
669 ; SI-NEXT: s_load_dwordx4 s[0:3], s[0:1], 0x9
670 ; SI-NEXT: s_mov_b32 s7, 0xf000
671 ; SI-NEXT: s_mov_b32 s6, -1
672 ; SI-NEXT: s_mov_b32 s10, s6
673 ; SI-NEXT: s_mov_b32 s11, s7
674 ; SI-NEXT: s_waitcnt lgkmcnt(0)
675 ; SI-NEXT: s_mov_b32 s8, s2
676 ; SI-NEXT: s_mov_b32 s9, s3
677 ; SI-NEXT: buffer_load_dword v0, off, s[8:11], 0
678 ; SI-NEXT: s_mov_b32 s4, s0
679 ; SI-NEXT: s_mov_b32 s5, s1
680 ; SI-NEXT: s_waitcnt vmcnt(0)
681 ; SI-NEXT: v_add_f32_e32 v0, 0.5, v0
682 ; SI-NEXT: buffer_store_dword v0, off, s[4:7], 0
683 ; SI-NEXT: s_endpgm
709 ; SI-LABEL: commute_add_literal_f32:
710 ; SI: ; %bb.0:
711 ; SI-NEXT: s_load_dwordx4 s[0:3], s[0:1], 0x9
712 ; SI-NEXT: s_mov_b32 s7, 0xf000
713 ; SI-NEXT: s_mov_b32 s6, -1
714 ; SI-NEXT: s_mov_b32 s10, s6
715 ; SI-NEXT: s_mov_b32 s11, s7
716 ; SI-NEXT: s_waitcnt lgkmcnt(0)
717 ; SI-NEXT: s_mov_b32 s8, s2
718 ; SI-NEXT: s_mov_b32 s9, s3
719 ; SI-NEXT: buffer_load_dword v0, off, s[8:11], 0
720 ; SI-NEXT: s_mov_b32 s4, s0
721 ; SI-NEXT: s_mov_b32 s5, s1
722 ; SI-NEXT: s_waitcnt vmcnt(0)
723 ; SI-NEXT: v_add_f32_e32 v0, 0x44800000, v0
724 ; SI-NEXT: buffer_store_dword v0, off, s[4:7], 0
725 ; SI-NEXT: s_endpgm
751 ; SI-LABEL: add_inline_imm_1_f32:
752 ; SI: ; %bb.0:
753 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
754 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
755 ; SI-NEXT: s_mov_b32 s3, 0xf000
756 ; SI-NEXT: s_mov_b32 s2, -1
757 ; SI-NEXT: s_waitcnt lgkmcnt(0)
758 ; SI-NEXT: v_add_f32_e64 v0, s4, 1
759 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
760 ; SI-NEXT: s_endpgm
778 ; SI-LABEL: add_inline_imm_2_f32:
779 ; SI: ; %bb.0:
780 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
781 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
782 ; SI-NEXT: s_mov_b32 s3, 0xf000
783 ; SI-NEXT: s_mov_b32 s2, -1
784 ; SI-NEXT: s_waitcnt lgkmcnt(0)
785 ; SI-NEXT: v_add_f32_e64 v0, s4, 2
786 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
787 ; SI-NEXT: s_endpgm
805 ; SI-LABEL: add_inline_imm_16_f32:
806 ; SI: ; %bb.0:
807 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
808 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
809 ; SI-NEXT: s_mov_b32 s3, 0xf000
810 ; SI-NEXT: s_mov_b32 s2, -1
811 ; SI-NEXT: s_waitcnt lgkmcnt(0)
812 ; SI-NEXT: v_add_f32_e64 v0, s4, 16
813 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
814 ; SI-NEXT: s_endpgm
832 ; SI-LABEL: add_inline_imm_neg_1_f32:
833 ; SI: ; %bb.0:
834 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
835 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
836 ; SI-NEXT: s_mov_b32 s3, 0xf000
837 ; SI-NEXT: s_mov_b32 s2, -1
838 ; SI-NEXT: s_waitcnt lgkmcnt(0)
839 ; SI-NEXT: s_add_i32 s4, s4, -1
840 ; SI-NEXT: v_mov_b32_e32 v0, s4
841 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
842 ; SI-NEXT: s_endpgm
863 ; SI-LABEL: add_inline_imm_neg_2_f32:
864 ; SI: ; %bb.0:
865 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
866 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
867 ; SI-NEXT: s_mov_b32 s3, 0xf000
868 ; SI-NEXT: s_mov_b32 s2, -1
869 ; SI-NEXT: s_waitcnt lgkmcnt(0)
870 ; SI-NEXT: s_add_i32 s4, s4, -2
871 ; SI-NEXT: v_mov_b32_e32 v0, s4
872 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
873 ; SI-NEXT: s_endpgm
894 ; SI-LABEL: add_inline_imm_neg_16_f32:
895 ; SI: ; %bb.0:
896 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
897 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
898 ; SI-NEXT: s_mov_b32 s3, 0xf000
899 ; SI-NEXT: s_mov_b32 s2, -1
900 ; SI-NEXT: s_waitcnt lgkmcnt(0)
901 ; SI-NEXT: s_add_i32 s4, s4, -16
902 ; SI-NEXT: v_mov_b32_e32 v0, s4
903 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
904 ; SI-NEXT: s_endpgm
925 ; SI-LABEL: add_inline_imm_63_f32:
926 ; SI: ; %bb.0:
927 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
928 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
929 ; SI-NEXT: s_mov_b32 s3, 0xf000
930 ; SI-NEXT: s_mov_b32 s2, -1
931 ; SI-NEXT: s_waitcnt lgkmcnt(0)
932 ; SI-NEXT: v_add_f32_e64 v0, s4, 63
933 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
934 ; SI-NEXT: s_endpgm
952 ; SI-LABEL: add_inline_imm_64_f32:
953 ; SI: ; %bb.0:
954 ; SI-NEXT: s_load_dword s4, s[0:1], 0xb
955 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
956 ; SI-NEXT: s_mov_b32 s3, 0xf000
957 ; SI-NEXT: s_mov_b32 s2, -1
958 ; SI-NEXT: s_waitcnt lgkmcnt(0)
959 ; SI-NEXT: v_add_f32_e64 v0, s4, 64
960 ; SI-NEXT: buffer_store_dword v0, off, s[0:3], 0
961 ; SI-NEXT: s_endpgm
979 ; SI-LABEL: add_inline_imm_0.0_f64:
980 ; SI: ; %bb.0:
981 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
982 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
983 ; SI-NEXT: s_waitcnt lgkmcnt(0)
984 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 0
985 ; SI-NEXT: s_mov_b32 s3, 0xf000
986 ; SI-NEXT: s_mov_b32 s2, -1
987 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
988 ; SI-NEXT: s_endpgm
1006 ; SI-LABEL: add_inline_imm_0.5_f64:
1007 ; SI: ; %bb.0:
1008 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1009 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1010 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1011 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 0.5
1012 ; SI-NEXT: s_mov_b32 s3, 0xf000
1013 ; SI-NEXT: s_mov_b32 s2, -1
1014 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1015 ; SI-NEXT: s_endpgm
1033 ; SI-LABEL: add_inline_imm_neg_0.5_f64:
1034 ; SI: ; %bb.0:
1035 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1036 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1037 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1038 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], -0.5
1039 ; SI-NEXT: s_mov_b32 s3, 0xf000
1040 ; SI-NEXT: s_mov_b32 s2, -1
1041 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1042 ; SI-NEXT: s_endpgm
1060 ; SI-LABEL: add_inline_imm_1.0_f64:
1061 ; SI: ; %bb.0:
1062 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1063 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1064 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1065 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 1.0
1066 ; SI-NEXT: s_mov_b32 s3, 0xf000
1067 ; SI-NEXT: s_mov_b32 s2, -1
1068 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1069 ; SI-NEXT: s_endpgm
1087 ; SI-LABEL: add_inline_imm_neg_1.0_f64:
1088 ; SI: ; %bb.0:
1089 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1090 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1091 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1092 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], -1.0
1093 ; SI-NEXT: s_mov_b32 s3, 0xf000
1094 ; SI-NEXT: s_mov_b32 s2, -1
1095 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1096 ; SI-NEXT: s_endpgm
1114 ; SI-LABEL: add_inline_imm_2.0_f64:
1115 ; SI: ; %bb.0:
1116 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1117 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1118 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1119 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 2.0
1120 ; SI-NEXT: s_mov_b32 s3, 0xf000
1121 ; SI-NEXT: s_mov_b32 s2, -1
1122 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1123 ; SI-NEXT: s_endpgm
1141 ; SI-LABEL: add_inline_imm_neg_2.0_f64:
1142 ; SI: ; %bb.0:
1143 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1144 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1145 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1146 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], -2.0
1147 ; SI-NEXT: s_mov_b32 s3, 0xf000
1148 ; SI-NEXT: s_mov_b32 s2, -1
1149 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1150 ; SI-NEXT: s_endpgm
1168 ; SI-LABEL: add_inline_imm_4.0_f64:
1169 ; SI: ; %bb.0:
1170 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1171 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1172 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1173 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 4.0
1174 ; SI-NEXT: s_mov_b32 s3, 0xf000
1175 ; SI-NEXT: s_mov_b32 s2, -1
1176 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1177 ; SI-NEXT: s_endpgm
1195 ; SI-LABEL: add_inline_imm_neg_4.0_f64:
1196 ; SI: ; %bb.0:
1197 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1198 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1199 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1200 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], -4.0
1201 ; SI-NEXT: s_mov_b32 s3, 0xf000
1202 ; SI-NEXT: s_mov_b32 s2, -1
1203 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1204 ; SI-NEXT: s_endpgm
1222 ; SI-LABEL: add_inline_imm_inv_2pi_f64:
1223 ; SI: ; %bb.0:
1224 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1225 ; SI-NEXT: v_mov_b32_e32 v0, 0x6dc9c882
1226 ; SI-NEXT: v_mov_b32_e32 v1, 0x3fc45f30
1227 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1228 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1229 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], v[0:1]
1230 ; SI-NEXT: s_mov_b32 s3, 0xf000
1231 ; SI-NEXT: s_mov_b32 s2, -1
1232 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1233 ; SI-NEXT: s_endpgm
1251 ; SI-LABEL: add_m_inv_2pi_f64:
1252 ; SI: ; %bb.0:
1253 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1254 ; SI-NEXT: v_mov_b32_e32 v0, 0x6dc9c882
1255 ; SI-NEXT: v_mov_b32_e32 v1, 0xbfc45f30
1256 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1257 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1258 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], v[0:1]
1259 ; SI-NEXT: s_mov_b32 s3, 0xf000
1260 ; SI-NEXT: s_mov_b32 s2, -1
1261 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1262 ; SI-NEXT: s_endpgm
1282 ; SI-LABEL: add_inline_imm_1_f64:
1283 ; SI: ; %bb.0:
1284 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1285 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1286 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1287 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 1
1288 ; SI-NEXT: s_mov_b32 s3, 0xf000
1289 ; SI-NEXT: s_mov_b32 s2, -1
1290 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1291 ; SI-NEXT: s_endpgm
1309 ; SI-LABEL: add_inline_imm_2_f64:
1310 ; SI: ; %bb.0:
1311 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1312 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1313 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1314 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 2
1315 ; SI-NEXT: s_mov_b32 s3, 0xf000
1316 ; SI-NEXT: s_mov_b32 s2, -1
1317 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1318 ; SI-NEXT: s_endpgm
1336 ; SI-LABEL: add_inline_imm_16_f64:
1337 ; SI: ; %bb.0:
1338 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1339 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1340 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1341 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 16
1342 ; SI-NEXT: s_mov_b32 s3, 0xf000
1343 ; SI-NEXT: s_mov_b32 s2, -1
1344 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1345 ; SI-NEXT: s_endpgm
1363 ; SI-LABEL: add_inline_imm_neg_1_f64:
1364 ; SI: ; %bb.0:
1365 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1366 ; SI-NEXT: v_mov_b32_e32 v0, -1
1367 ; SI-NEXT: s_mov_b32 s3, 0xf000
1368 ; SI-NEXT: s_mov_b32 s2, -1
1369 ; SI-NEXT: v_mov_b32_e32 v1, v0
1370 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1371 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1372 ; SI-NEXT: s_endpgm
1390 ; SI-LABEL: add_inline_imm_neg_2_f64:
1391 ; SI: ; %bb.0:
1392 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1393 ; SI-NEXT: s_mov_b32 s3, 0xf000
1394 ; SI-NEXT: s_mov_b32 s2, -1
1395 ; SI-NEXT: v_mov_b32_e32 v0, -2
1396 ; SI-NEXT: v_mov_b32_e32 v1, -1
1397 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1398 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1399 ; SI-NEXT: s_endpgm
1417 ; SI-LABEL: add_inline_imm_neg_16_f64:
1418 ; SI: ; %bb.0:
1419 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1420 ; SI-NEXT: s_mov_b32 s3, 0xf000
1421 ; SI-NEXT: s_mov_b32 s2, -1
1422 ; SI-NEXT: v_mov_b32_e32 v0, -16
1423 ; SI-NEXT: v_mov_b32_e32 v1, -1
1424 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1425 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1426 ; SI-NEXT: s_endpgm
1444 ; SI-LABEL: add_inline_imm_63_f64:
1445 ; SI: ; %bb.0:
1446 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1447 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1448 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1449 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 63
1450 ; SI-NEXT: s_mov_b32 s3, 0xf000
1451 ; SI-NEXT: s_mov_b32 s2, -1
1452 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1453 ; SI-NEXT: s_endpgm
1471 ; SI-LABEL: add_inline_imm_64_f64:
1472 ; SI: ; %bb.0:
1473 ; SI-NEXT: s_load_dwordx2 s[2:3], s[0:1], 0x13
1474 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1475 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1476 ; SI-NEXT: v_add_f64 v[0:1], s[2:3], 64
1477 ; SI-NEXT: s_mov_b32 s3, 0xf000
1478 ; SI-NEXT: s_mov_b32 s2, -1
1479 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1480 ; SI-NEXT: s_endpgm
1498 ; SI-LABEL: store_inline_imm_0.0_f64:
1499 ; SI: ; %bb.0:
1500 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1501 ; SI-NEXT: v_mov_b32_e32 v0, 0
1502 ; SI-NEXT: s_mov_b32 s3, 0xf000
1503 ; SI-NEXT: s_mov_b32 s2, -1
1504 ; SI-NEXT: v_mov_b32_e32 v1, v0
1505 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1506 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1507 ; SI-NEXT: s_endpgm
1524 ; SI-LABEL: store_literal_imm_neg_0.0_f64:
1525 ; SI: ; %bb.0:
1526 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1527 ; SI-NEXT: s_mov_b32 s3, 0xf000
1528 ; SI-NEXT: s_mov_b32 s2, -1
1529 ; SI-NEXT: v_mov_b32_e32 v0, 0
1530 ; SI-NEXT: v_bfrev_b32_e32 v1, 1
1531 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1532 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1533 ; SI-NEXT: s_endpgm
1550 ; SI-LABEL: store_inline_imm_0.5_f64:
1551 ; SI: ; %bb.0:
1552 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1553 ; SI-NEXT: s_mov_b32 s3, 0xf000
1554 ; SI-NEXT: s_mov_b32 s2, -1
1555 ; SI-NEXT: v_mov_b32_e32 v0, 0
1556 ; SI-NEXT: v_mov_b32_e32 v1, 0x3fe00000
1557 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1558 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1559 ; SI-NEXT: s_endpgm
1576 ; SI-LABEL: store_inline_imm_m_0.5_f64:
1577 ; SI: ; %bb.0:
1578 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1579 ; SI-NEXT: s_mov_b32 s3, 0xf000
1580 ; SI-NEXT: s_mov_b32 s2, -1
1581 ; SI-NEXT: v_mov_b32_e32 v0, 0
1582 ; SI-NEXT: v_mov_b32_e32 v1, 0xbfe00000
1583 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1584 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1585 ; SI-NEXT: s_endpgm
1602 ; SI-LABEL: store_inline_imm_1.0_f64:
1603 ; SI: ; %bb.0:
1604 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1605 ; SI-NEXT: s_mov_b32 s3, 0xf000
1606 ; SI-NEXT: s_mov_b32 s2, -1
1607 ; SI-NEXT: v_mov_b32_e32 v0, 0
1608 ; SI-NEXT: v_mov_b32_e32 v1, 0x3ff00000
1609 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1610 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1611 ; SI-NEXT: s_endpgm
1628 ; SI-LABEL: store_inline_imm_m_1.0_f64:
1629 ; SI: ; %bb.0:
1630 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1631 ; SI-NEXT: s_mov_b32 s3, 0xf000
1632 ; SI-NEXT: s_mov_b32 s2, -1
1633 ; SI-NEXT: v_mov_b32_e32 v0, 0
1634 ; SI-NEXT: v_mov_b32_e32 v1, 0xbff00000
1635 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1636 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1637 ; SI-NEXT: s_endpgm
1654 ; SI-LABEL: store_inline_imm_2.0_f64:
1655 ; SI: ; %bb.0:
1656 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1657 ; SI-NEXT: s_mov_b32 s3, 0xf000
1658 ; SI-NEXT: s_mov_b32 s2, -1
1659 ; SI-NEXT: v_mov_b32_e32 v0, 0
1660 ; SI-NEXT: v_mov_b32_e32 v1, 2.0
1661 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1662 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1663 ; SI-NEXT: s_endpgm
1680 ; SI-LABEL: store_inline_imm_m_2.0_f64:
1681 ; SI: ; %bb.0:
1682 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1683 ; SI-NEXT: s_mov_b32 s3, 0xf000
1684 ; SI-NEXT: s_mov_b32 s2, -1
1685 ; SI-NEXT: v_mov_b32_e32 v0, 0
1686 ; SI-NEXT: v_mov_b32_e32 v1, -2.0
1687 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1688 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1689 ; SI-NEXT: s_endpgm
1706 ; SI-LABEL: store_inline_imm_4.0_f64:
1707 ; SI: ; %bb.0:
1708 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1709 ; SI-NEXT: s_mov_b32 s3, 0xf000
1710 ; SI-NEXT: s_mov_b32 s2, -1
1711 ; SI-NEXT: v_mov_b32_e32 v0, 0
1712 ; SI-NEXT: v_mov_b32_e32 v1, 0x40100000
1713 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1714 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1715 ; SI-NEXT: s_endpgm
1732 ; SI-LABEL: store_inline_imm_m_4.0_f64:
1733 ; SI: ; %bb.0:
1734 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1735 ; SI-NEXT: s_mov_b32 s3, 0xf000
1736 ; SI-NEXT: s_mov_b32 s2, -1
1737 ; SI-NEXT: v_mov_b32_e32 v0, 0
1738 ; SI-NEXT: v_mov_b32_e32 v1, 0xc0100000
1739 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1740 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1741 ; SI-NEXT: s_endpgm
1758 ; SI-LABEL: store_inv_2pi_f64:
1759 ; SI: ; %bb.0:
1760 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1761 ; SI-NEXT: s_mov_b32 s3, 0xf000
1762 ; SI-NEXT: s_mov_b32 s2, -1
1763 ; SI-NEXT: v_mov_b32_e32 v0, 0x6dc9c882
1764 ; SI-NEXT: v_mov_b32_e32 v1, 0x3fc45f30
1765 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1766 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1767 ; SI-NEXT: s_endpgm
1784 ; SI-LABEL: store_inline_imm_m_inv_2pi_f64:
1785 ; SI: ; %bb.0:
1786 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1787 ; SI-NEXT: s_mov_b32 s3, 0xf000
1788 ; SI-NEXT: s_mov_b32 s2, -1
1789 ; SI-NEXT: v_mov_b32_e32 v0, 0x6dc9c882
1790 ; SI-NEXT: v_mov_b32_e32 v1, 0xbfc45f30
1791 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1792 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1793 ; SI-NEXT: s_endpgm
1810 ; SI-LABEL: store_literal_imm_f64:
1811 ; SI: ; %bb.0:
1812 ; SI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x9
1813 ; SI-NEXT: s_mov_b32 s3, 0xf000
1814 ; SI-NEXT: s_mov_b32 s2, -1
1815 ; SI-NEXT: v_mov_b32_e32 v0, 0
1816 ; SI-NEXT: v_mov_b32_e32 v1, 0x40b00000
1817 ; SI-NEXT: s_waitcnt lgkmcnt(0)
1818 ; SI-NEXT: buffer_store_dwordx2 v[0:1], off, s[0:3], 0
1819 ; SI-NEXT: s_endpgm