Lines Matching refs:EG

4 … -march=r600 -mtriple=r600-- -mcpu=redwood -verify-machineinstrs | FileCheck %s --check-prefixes=EG
45 ; EG-LABEL: shl_v2i32:
46 ; EG: ; %bb.0:
47 ; EG-NEXT: ALU 0, @8, KC0[CB0:0-32], KC1[]
48 ; EG-NEXT: TEX 0 @6
49 ; EG-NEXT: ALU 3, @9, KC0[CB0:0-32], KC1[]
50 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
51 ; EG-NEXT: CF_END
52 ; EG-NEXT: PAD
53 ; EG-NEXT: Fetch clause starting at 6:
54 ; EG-NEXT: VTX_READ_128 T0.XYZW, T0.X, 0, #1
55 ; EG-NEXT: ALU clause starting at 8:
56 ; EG-NEXT: MOV * T0.X, KC0[2].Z,
57 ; EG-NEXT: ALU clause starting at 9:
58 ; EG-NEXT: LSHL * T0.Y, T0.Y, T0.W,
59 ; EG-NEXT: LSHL T0.X, T0.X, T0.Z,
60 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
61 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
112 ; EG-LABEL: shl_v4i32:
113 ; EG: ; %bb.0:
114 ; EG-NEXT: ALU 0, @10, KC0[CB0:0-32], KC1[]
115 ; EG-NEXT: TEX 1 @6
116 ; EG-NEXT: ALU 5, @11, KC0[CB0:0-32], KC1[]
117 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XYZW, T1.X, 1
118 ; EG-NEXT: CF_END
119 ; EG-NEXT: PAD
120 ; EG-NEXT: Fetch clause starting at 6:
121 ; EG-NEXT: VTX_READ_128 T1.XYZW, T0.X, 16, #1
122 ; EG-NEXT: VTX_READ_128 T0.XYZW, T0.X, 0, #1
123 ; EG-NEXT: ALU clause starting at 10:
124 ; EG-NEXT: MOV * T0.X, KC0[2].Z,
125 ; EG-NEXT: ALU clause starting at 11:
126 ; EG-NEXT: LSHL * T0.W, T0.W, T1.W,
127 ; EG-NEXT: LSHL * T0.Z, T0.Z, T1.Z,
128 ; EG-NEXT: LSHL * T0.Y, T0.Y, T1.Y,
129 ; EG-NEXT: LSHL T0.X, T0.X, T1.X,
130 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
131 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
179 ; EG-LABEL: shl_i16:
180 ; EG: ; %bb.0:
181 ; EG-NEXT: ALU 0, @10, KC0[CB0:0-32], KC1[]
182 ; EG-NEXT: TEX 1 @6
183 ; EG-NEXT: ALU 12, @11, KC0[CB0:0-32], KC1[]
184 ; EG-NEXT: MEM_RAT MSKOR T0.XW, T1.X
185 ; EG-NEXT: CF_END
186 ; EG-NEXT: PAD
187 ; EG-NEXT: Fetch clause starting at 6:
188 ; EG-NEXT: VTX_READ_16 T1.X, T0.X, 2, #1
189 ; EG-NEXT: VTX_READ_16 T0.X, T0.X, 0, #1
190 ; EG-NEXT: ALU clause starting at 10:
191 ; EG-NEXT: MOV * T0.X, KC0[2].Z,
192 ; EG-NEXT: ALU clause starting at 11:
193 ; EG-NEXT: AND_INT T0.W, KC0[2].Y, literal.x,
194 ; EG-NEXT: LSHL * T1.W, T0.X, T1.X,
195 ; EG-NEXT: 3(4.203895e-45), 0(0.000000e+00)
196 ; EG-NEXT: AND_INT T1.W, PS, literal.x,
197 ; EG-NEXT: LSHL * T0.W, PV.W, literal.y,
198 ; EG-NEXT: 65535(9.183409e-41), 3(4.203895e-45)
199 ; EG-NEXT: LSHL T0.X, PV.W, PS,
200 ; EG-NEXT: LSHL * T0.W, literal.x, PS,
201 ; EG-NEXT: 65535(9.183409e-41), 0(0.000000e+00)
202 ; EG-NEXT: MOV T0.Y, 0.0,
203 ; EG-NEXT: MOV * T0.Z, 0.0,
204 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
205 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
253 ; EG-LABEL: shl_i16_v_s:
254 ; EG: ; %bb.0:
255 ; EG-NEXT: ALU 1, @10, KC0[CB0:0-32], KC1[]
256 ; EG-NEXT: TEX 1 @6
257 ; EG-NEXT: ALU 12, @12, KC0[CB0:0-32], KC1[]
258 ; EG-NEXT: MEM_RAT MSKOR T0.XW, T1.X
259 ; EG-NEXT: CF_END
260 ; EG-NEXT: PAD
261 ; EG-NEXT: Fetch clause starting at 6:
262 ; EG-NEXT: VTX_READ_16 T1.X, T1.X, 0, #1
263 ; EG-NEXT: VTX_READ_16 T0.X, T0.X, 44, #3
264 ; EG-NEXT: ALU clause starting at 10:
265 ; EG-NEXT: MOV T0.X, 0.0,
266 ; EG-NEXT: MOV * T1.X, KC0[2].Z,
267 ; EG-NEXT: ALU clause starting at 12:
268 ; EG-NEXT: AND_INT T0.W, KC0[2].Y, literal.x,
269 ; EG-NEXT: LSHL * T1.W, T1.X, T0.X,
270 ; EG-NEXT: 3(4.203895e-45), 0(0.000000e+00)
271 ; EG-NEXT: AND_INT T1.W, PS, literal.x,
272 ; EG-NEXT: LSHL * T0.W, PV.W, literal.y,
273 ; EG-NEXT: 65535(9.183409e-41), 3(4.203895e-45)
274 ; EG-NEXT: LSHL T0.X, PV.W, PS,
275 ; EG-NEXT: LSHL * T0.W, literal.x, PS,
276 ; EG-NEXT: 65535(9.183409e-41), 0(0.000000e+00)
277 ; EG-NEXT: MOV T0.Y, 0.0,
278 ; EG-NEXT: MOV * T0.Z, 0.0,
279 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
280 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
328 ; EG-LABEL: shl_i16_v_compute_s:
329 ; EG: ; %bb.0:
330 ; EG-NEXT: ALU 0, @12, KC0[], KC1[]
331 ; EG-NEXT: TEX 0 @8
332 ; EG-NEXT: ALU 0, @13, KC0[CB0:0-32], KC1[]
333 ; EG-NEXT: TEX 0 @10
334 ; EG-NEXT: ALU 15, @14, KC0[CB0:0-32], KC1[]
335 ; EG-NEXT: MEM_RAT MSKOR T0.XW, T1.X
336 ; EG-NEXT: CF_END
337 ; EG-NEXT: PAD
338 ; EG-NEXT: Fetch clause starting at 8:
339 ; EG-NEXT: VTX_READ_16 T0.X, T0.X, 44, #3
340 ; EG-NEXT: Fetch clause starting at 10:
341 ; EG-NEXT: VTX_READ_16 T1.X, T1.X, 0, #1
342 ; EG-NEXT: ALU clause starting at 12:
343 ; EG-NEXT: MOV * T0.X, 0.0,
344 ; EG-NEXT: ALU clause starting at 13:
345 ; EG-NEXT: MOV * T1.X, KC0[2].Z,
346 ; EG-NEXT: ALU clause starting at 14:
347 ; EG-NEXT: ADD_INT * T0.W, T0.X, literal.x,
348 ; EG-NEXT: 3(4.203895e-45), 0(0.000000e+00)
349 ; EG-NEXT: AND_INT T0.W, PV.W, literal.x,
350 ; EG-NEXT: AND_INT * T1.W, KC0[2].Y, literal.y,
351 ; EG-NEXT: 65535(9.183409e-41), 3(4.203895e-45)
352 ; EG-NEXT: LSHL * T0.W, T1.X, PV.W,
353 ; EG-NEXT: AND_INT T0.W, PV.W, literal.x,
354 ; EG-NEXT: LSHL * T1.W, T1.W, literal.y,
355 ; EG-NEXT: 65535(9.183409e-41), 3(4.203895e-45)
356 ; EG-NEXT: LSHL T0.X, PV.W, PS,
357 ; EG-NEXT: LSHL * T0.W, literal.x, PS,
358 ; EG-NEXT: 65535(9.183409e-41), 0(0.000000e+00)
359 ; EG-NEXT: MOV T0.Y, 0.0,
360 ; EG-NEXT: MOV * T0.Z, 0.0,
361 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
362 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
424 ; EG-LABEL: shl_i16_computed_amount:
425 ; EG: ; %bb.0:
426 ; EG-NEXT: ALU 0, @12, KC0[CB0:0-32], KC1[]
427 ; EG-NEXT: TEX 0 @8
428 ; EG-NEXT: ALU 1, @13, KC0[CB0:0-32], KC1[]
429 ; EG-NEXT: TEX 0 @10
430 ; EG-NEXT: ALU 15, @15, KC0[CB0:0-32], KC1[]
431 ; EG-NEXT: MEM_RAT MSKOR T0.XW, T1.X
432 ; EG-NEXT: CF_END
433 ; EG-NEXT: PAD
434 ; EG-NEXT: Fetch clause starting at 8:
435 ; EG-NEXT: VTX_READ_16 T1.X, T1.X, 0, #1
436 ; EG-NEXT: Fetch clause starting at 10:
437 ; EG-NEXT: VTX_READ_16 T0.X, T0.X, 2, #1
438 ; EG-NEXT: ALU clause starting at 12:
439 ; EG-NEXT: MOV * T1.X, KC0[2].Z,
440 ; EG-NEXT: ALU clause starting at 13:
441 ; EG-NEXT: LSHL * T0.W, T0.X, 1,
442 ; EG-NEXT: ADD_INT * T0.X, KC0[2].Z, PV.W,
443 ; EG-NEXT: ALU clause starting at 15:
444 ; EG-NEXT: ADD_INT * T0.W, T0.X, literal.x,
445 ; EG-NEXT: 3(4.203895e-45), 0(0.000000e+00)
446 ; EG-NEXT: AND_INT T0.W, PV.W, literal.x,
447 ; EG-NEXT: AND_INT * T1.W, KC0[2].Y, literal.y,
448 ; EG-NEXT: 65535(9.183409e-41), 3(4.203895e-45)
449 ; EG-NEXT: LSHL * T0.W, T1.X, PV.W,
450 ; EG-NEXT: AND_INT T0.W, PV.W, literal.x,
451 ; EG-NEXT: LSHL * T1.W, T1.W, literal.y,
452 ; EG-NEXT: 65535(9.183409e-41), 3(4.203895e-45)
453 ; EG-NEXT: LSHL T0.X, PV.W, PS,
454 ; EG-NEXT: LSHL * T0.W, literal.x, PS,
455 ; EG-NEXT: 65535(9.183409e-41), 0(0.000000e+00)
456 ; EG-NEXT: MOV T0.Y, 0.0,
457 ; EG-NEXT: MOV * T0.Z, 0.0,
458 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
459 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
497 ; EG-LABEL: shl_i16_i_s:
498 ; EG: ; %bb.0:
499 ; EG-NEXT: ALU 0, @8, KC0[], KC1[]
500 ; EG-NEXT: TEX 0 @6
501 ; EG-NEXT: ALU 14, @9, KC0[CB0:0-32], KC1[]
502 ; EG-NEXT: MEM_RAT MSKOR T0.XW, T1.X
503 ; EG-NEXT: CF_END
504 ; EG-NEXT: PAD
505 ; EG-NEXT: Fetch clause starting at 6:
506 ; EG-NEXT: VTX_READ_16 T0.X, T0.X, 40, #3
507 ; EG-NEXT: ALU clause starting at 8:
508 ; EG-NEXT: MOV * T0.X, 0.0,
509 ; EG-NEXT: ALU clause starting at 9:
510 ; EG-NEXT: BFE_INT T0.W, T0.X, 0.0, literal.x,
511 ; EG-NEXT: AND_INT * T1.W, KC0[2].Y, literal.y,
512 ; EG-NEXT: 16(2.242078e-44), 3(4.203895e-45)
513 ; EG-NEXT: LSHL * T0.W, PV.W, literal.x,
514 ; EG-NEXT: 12(1.681558e-44), 0(0.000000e+00)
515 ; EG-NEXT: AND_INT T0.W, PV.W, literal.x,
516 ; EG-NEXT: LSHL * T1.W, T1.W, literal.y,
517 ; EG-NEXT: 61440(8.609578e-41), 3(4.203895e-45)
518 ; EG-NEXT: LSHL T0.X, PV.W, PS,
519 ; EG-NEXT: LSHL * T0.W, literal.x, PS,
520 ; EG-NEXT: 65535(9.183409e-41), 0(0.000000e+00)
521 ; EG-NEXT: MOV T0.Y, 0.0,
522 ; EG-NEXT: MOV * T0.Z, 0.0,
523 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
524 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
586 ; EG-LABEL: shl_v2i16:
587 ; EG: ; %bb.0:
588 ; EG-NEXT: ALU 2, @12, KC0[CB0:0-32], KC1[]
589 ; EG-NEXT: TEX 0 @8
590 ; EG-NEXT: ALU 0, @15, KC0[CB0:0-32], KC1[]
591 ; EG-NEXT: TEX 0 @10
592 ; EG-NEXT: ALU 11, @16, KC0[CB0:0-32], KC1[]
593 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.X, T7.X, 1
594 ; EG-NEXT: CF_END
595 ; EG-NEXT: PAD
596 ; EG-NEXT: Fetch clause starting at 8:
597 ; EG-NEXT: VTX_READ_32 T0.X, T0.X, 4, #1
598 ; EG-NEXT: Fetch clause starting at 10:
599 ; EG-NEXT: VTX_READ_32 T7.X, T7.X, 0, #1
600 ; EG-NEXT: ALU clause starting at 12:
601 ; EG-NEXT: LSHL * T0.W, T0.X, literal.x,
602 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
603 ; EG-NEXT: ADD_INT * T0.X, KC0[2].Z, PV.W,
604 ; EG-NEXT: ALU clause starting at 15:
605 ; EG-NEXT: MOV * T7.X, KC0[2].Z,
606 ; EG-NEXT: ALU clause starting at 16:
607 ; EG-NEXT: AND_INT T0.Z, T0.X, literal.x,
608 ; EG-NEXT: LSHR T0.W, T0.X, literal.y,
609 ; EG-NEXT: LSHR * T1.W, T7.X, literal.y,
610 ; EG-NEXT: 65535(9.183409e-41), 16(2.242078e-44)
611 ; EG-NEXT: LSHL T0.W, PS, PV.W,
612 ; EG-NEXT: LSHL * T1.W, T7.X, PV.Z,
613 ; EG-NEXT: AND_INT T1.W, PS, literal.x,
614 ; EG-NEXT: LSHL * T0.W, PV.W, literal.y,
615 ; EG-NEXT: 65535(9.183409e-41), 16(2.242078e-44)
616 ; EG-NEXT: OR_INT T0.X, PV.W, PS,
617 ; EG-NEXT: LSHR * T7.X, KC0[2].Y, literal.x,
618 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
682 ; EG-LABEL: shl_v4i16:
683 ; EG: ; %bb.0:
684 ; EG-NEXT: ALU 2, @8, KC0[CB0:0-32], KC1[]
685 ; EG-NEXT: TEX 0 @6
686 ; EG-NEXT: ALU 51, @11, KC0[CB0:0-32], KC1[]
687 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T10.XY, T0.X, 1
688 ; EG-NEXT: CF_END
689 ; EG-NEXT: PAD
690 ; EG-NEXT: Fetch clause starting at 6:
691 ; EG-NEXT: VTX_READ_128 T10.XYZW, T0.X, 0, #1
692 ; EG-NEXT: ALU clause starting at 8:
693 ; EG-NEXT: LSHL * T0.W, T0.X, literal.x,
694 ; EG-NEXT: 3(4.203895e-45), 0(0.000000e+00)
695 ; EG-NEXT: ADD_INT * T0.X, KC0[2].Z, PV.W,
696 ; EG-NEXT: ALU clause starting at 11:
697 ; EG-NEXT: MOV T4.X, T10.X,
698 ; EG-NEXT: MOV * T5.X, T10.Y,
699 ; EG-NEXT: MOV T0.X, PV.X,
700 ; EG-NEXT: MOV T0.Y, PS,
701 ; EG-NEXT: MOV * T2.X, T10.Z,
702 ; EG-NEXT: MOV T3.X, T10.W,
703 ; EG-NEXT: MOV * T0.Z, T6.X,
704 ; EG-NEXT: MOV * T1.Y, T2.X,
705 ; EG-NEXT: AND_INT * T1.W, PV.Y, literal.x,
706 ; EG-NEXT: 65535(9.183409e-41), 0(0.000000e+00)
707 ; EG-NEXT: LSHL * T1.W, T0.X, PV.W,
708 ; EG-NEXT: AND_INT T1.W, PV.W, literal.x,
709 ; EG-NEXT: AND_INT * T2.W, T0.Z, literal.y,
710 ; EG-NEXT: 65535(9.183409e-41), -65536(nan)
711 ; EG-NEXT: OR_INT * T1.W, PS, PV.W,
712 ; EG-NEXT: MOV * T0.Z, T3.X,
713 ; EG-NEXT: MOV * T6.X, T1.W,
714 ; EG-NEXT: MOV T1.Z, PV.X,
715 ; EG-NEXT: LSHR T1.W, T1.Y, literal.x,
716 ; EG-NEXT: LSHR * T2.W, T0.X, literal.x,
717 ; EG-NEXT: 16(2.242078e-44), 0(0.000000e+00)
718 ; EG-NEXT: LSHL T1.W, PS, PV.W,
719 ; EG-NEXT: AND_INT * T2.W, PV.Z, literal.x,
720 ; EG-NEXT: 65535(9.183409e-41), 0(0.000000e+00)
721 ; EG-NEXT: LSHL * T1.W, PV.W, literal.x,
722 ; EG-NEXT: 16(2.242078e-44), 0(0.000000e+00)
723 ; EG-NEXT: OR_INT * T1.W, T2.W, PV.W,
724 ; EG-NEXT: MOV T6.X, PV.W,
725 ; EG-NEXT: MOV * T0.X, T7.X,
726 ; EG-NEXT: AND_INT * T1.W, T0.Z, literal.x,
727 ; EG-NEXT: 65535(9.183409e-41), 0(0.000000e+00)
728 ; EG-NEXT: LSHL T1.W, T0.Y, PV.W,
729 ; EG-NEXT: AND_INT * T2.W, T0.X, literal.x,
730 ; EG-NEXT: -65536(nan), 0(0.000000e+00)
731 ; EG-NEXT: AND_INT * T1.W, PV.W, literal.x,
732 ; EG-NEXT: 65535(9.183409e-41), 0(0.000000e+00)
733 ; EG-NEXT: OR_INT * T1.W, T2.W, PV.W,
734 ; EG-NEXT: MOV * T7.X, PV.W,
735 ; EG-NEXT: MOV T0.X, PV.X,
736 ; EG-NEXT: LSHR T1.W, T0.Z, literal.x,
737 ; EG-NEXT: LSHR * T2.W, T0.Y, literal.x,
738 ; EG-NEXT: 16(2.242078e-44), 0(0.000000e+00)
739 ; EG-NEXT: LSHL * T1.W, PS, PV.W,
740 ; EG-NEXT: AND_INT T0.Z, T0.X, literal.x,
741 ; EG-NEXT: LSHL T1.W, PV.W, literal.y,
742 ; EG-NEXT: ADD_INT * T0.W, KC0[2].Y, T0.W,
743 ; EG-NEXT: 65535(9.183409e-41), 16(2.242078e-44)
744 ; EG-NEXT: LSHR T0.X, PS, literal.x,
745 ; EG-NEXT: OR_INT * T10.Y, PV.Z, PV.W,
746 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
747 ; EG-NEXT: MOV T7.X, PV.Y,
748 ; EG-NEXT: MOV * T10.X, T6.X,
793 ; EG-LABEL: shl_i64:
794 ; EG: ; %bb.0:
795 ; EG-NEXT: ALU 0, @8, KC0[CB0:0-32], KC1[]
796 ; EG-NEXT: TEX 0 @6
797 ; EG-NEXT: ALU 12, @9, KC0[CB0:0-32], KC1[]
798 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
799 ; EG-NEXT: CF_END
800 ; EG-NEXT: PAD
801 ; EG-NEXT: Fetch clause starting at 6:
802 ; EG-NEXT: VTX_READ_128 T0.XYZW, T0.X, 0, #1
803 ; EG-NEXT: ALU clause starting at 8:
804 ; EG-NEXT: MOV * T0.X, KC0[2].Z,
805 ; EG-NEXT: ALU clause starting at 9:
806 ; EG-NEXT: AND_INT T1.Y, T0.Z, literal.x,
807 ; EG-NEXT: LSHR T1.Z, T0.Y, 1,
808 ; EG-NEXT: BIT_ALIGN_INT T0.W, T0.Y, T0.X, 1,
809 ; EG-NEXT: NOT_INT * T1.W, T0.Z,
810 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
811 ; EG-NEXT: BIT_ALIGN_INT T1.Z, PV.Z, PV.W, PS,
812 ; EG-NEXT: LSHL T0.W, T0.X, PV.Y,
813 ; EG-NEXT: AND_INT * T1.W, T0.Z, literal.x,
814 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
815 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.Z, PV.W,
816 ; EG-NEXT: CNDE_INT T0.X, T1.W, T0.W, 0.0,
817 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
818 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
865 ; EG-LABEL: shl_v2i64:
866 ; EG: ; %bb.0:
867 ; EG-NEXT: ALU 0, @10, KC0[CB0:0-32], KC1[]
868 ; EG-NEXT: TEX 1 @6
869 ; EG-NEXT: ALU 22, @11, KC0[CB0:0-32], KC1[]
870 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T3.XYZW, T0.X, 1
871 ; EG-NEXT: CF_END
872 ; EG-NEXT: PAD
873 ; EG-NEXT: Fetch clause starting at 6:
874 ; EG-NEXT: VTX_READ_128 T1.XYZW, T0.X, 16, #1
875 ; EG-NEXT: VTX_READ_128 T0.XYZW, T0.X, 0, #1
876 ; EG-NEXT: ALU clause starting at 10:
877 ; EG-NEXT: MOV * T0.X, KC0[2].Z,
878 ; EG-NEXT: ALU clause starting at 11:
879 ; EG-NEXT: AND_INT T1.Y, T1.Z, literal.x,
880 ; EG-NEXT: LSHR T2.Z, T0.W, 1,
881 ; EG-NEXT: BIT_ALIGN_INT T0.W, T0.W, T0.Z, 1,
882 ; EG-NEXT: NOT_INT * T1.W, T1.Z,
883 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
884 ; EG-NEXT: BIT_ALIGN_INT T0.W, PV.Z, PV.W, PS,
885 ; EG-NEXT: LSHL * T1.W, T0.Z, PV.Y,
886 ; EG-NEXT: AND_INT T2.X, T1.Z, literal.x,
887 ; EG-NEXT: AND_INT T1.Y, T1.X, literal.y,
888 ; EG-NEXT: LSHR T0.Z, T0.Y, 1,
889 ; EG-NEXT: BIT_ALIGN_INT T2.W, T0.Y, T0.X, 1,
890 ; EG-NEXT: NOT_INT * T3.W, T1.X,
891 ; EG-NEXT: 32(4.484155e-44), 31(4.344025e-44)
892 ; EG-NEXT: BIT_ALIGN_INT T0.Y, PV.Z, PV.W, PS,
893 ; EG-NEXT: LSHL T0.Z, T0.X, PV.Y,
894 ; EG-NEXT: AND_INT T2.W, T1.X, literal.x, BS:VEC_120/SCL_212
895 ; EG-NEXT: CNDE_INT * T3.W, PV.X, T0.W, T1.W,
896 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
897 ; EG-NEXT: CNDE_INT T3.Y, PV.W, PV.Y, PV.Z,
898 ; EG-NEXT: CNDE_INT * T3.Z, T2.X, T1.W, 0.0,
899 ; EG-NEXT: CNDE_INT T3.X, T2.W, T0.Z, 0.0,
900 ; EG-NEXT: LSHR * T0.X, KC0[2].Y, literal.x,
901 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
962 ; EG-LABEL: shl_v4i64:
963 ; EG: ; %bb.0:
964 ; EG-NEXT: ALU 0, @14, KC0[CB0:0-32], KC1[]
965 ; EG-NEXT: TEX 3 @6
966 ; EG-NEXT: ALU 47, @15, KC0[CB0:0-32], KC1[]
967 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T1.XYZW, T2.X, 0
968 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T4.XYZW, T0.X, 1
969 ; EG-NEXT: CF_END
970 ; EG-NEXT: Fetch clause starting at 6:
971 ; EG-NEXT: VTX_READ_128 T1.XYZW, T0.X, 48, #1
972 ; EG-NEXT: VTX_READ_128 T2.XYZW, T0.X, 0, #1
973 ; EG-NEXT: VTX_READ_128 T3.XYZW, T0.X, 32, #1
974 ; EG-NEXT: VTX_READ_128 T0.XYZW, T0.X, 16, #1
975 ; EG-NEXT: ALU clause starting at 14:
976 ; EG-NEXT: MOV * T0.X, KC0[2].Z,
977 ; EG-NEXT: ALU clause starting at 15:
978 ; EG-NEXT: AND_INT T4.Z, T1.Z, literal.x,
979 ; EG-NEXT: LSHR T1.W, T0.W, 1,
980 ; EG-NEXT: NOT_INT * T3.W, T1.Z,
981 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
982 ; EG-NEXT: BIT_ALIGN_INT T4.X, T0.W, T0.Z, 1,
983 ; EG-NEXT: AND_INT T1.Y, T3.Z, literal.x, BS:VEC_201
984 ; EG-NEXT: LSHR T5.Z, T2.W, 1, BS:VEC_120/SCL_212
985 ; EG-NEXT: BIT_ALIGN_INT T0.W, T2.W, T2.Z, 1, BS:VEC_102/SCL_221
986 ; EG-NEXT: NOT_INT * T2.W, T3.Z,
987 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
988 ; EG-NEXT: BIT_ALIGN_INT T3.Y, PV.Z, PV.W, PS,
989 ; EG-NEXT: LSHL T2.Z, T2.Z, PV.Y,
990 ; EG-NEXT: BIT_ALIGN_INT T0.W, T1.W, PV.X, T3.W,
991 ; EG-NEXT: LSHL * T1.W, T0.Z, T4.Z,
992 ; EG-NEXT: AND_INT T4.X, T1.Z, literal.x,
993 ; EG-NEXT: AND_INT T1.Y, T1.X, literal.y,
994 ; EG-NEXT: LSHR T0.Z, T0.Y, 1,
995 ; EG-NEXT: BIT_ALIGN_INT T2.W, T0.Y, T0.X, 1,
996 ; EG-NEXT: NOT_INT * T3.W, T1.X,
997 ; EG-NEXT: 32(4.484155e-44), 31(4.344025e-44)
998 ; EG-NEXT: AND_INT T5.X, T3.Z, literal.x,
999 ; EG-NEXT: BIT_ALIGN_INT T0.Y, PV.Z, PV.W, PS,
1000 ; EG-NEXT: LSHL T0.Z, T0.X, PV.Y,
1001 ; EG-NEXT: AND_INT T2.W, T1.X, literal.x, BS:VEC_120/SCL_212
1002 ; EG-NEXT: CNDE_INT * T4.W, PV.X, T0.W, T1.W,
1003 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
1004 ; EG-NEXT: AND_INT T0.X, T3.X, literal.x,
1005 ; EG-NEXT: CNDE_INT T4.Y, PV.W, PV.Y, PV.Z,
1006 ; EG-NEXT: LSHR T1.Z, T2.Y, 1,
1007 ; EG-NEXT: BIT_ALIGN_INT T0.W, T2.Y, T2.X, 1,
1008 ; EG-NEXT: NOT_INT * T3.W, T3.X,
1009 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
1010 ; EG-NEXT: BIT_ALIGN_INT T1.X, PV.Z, PV.W, PS,
1011 ; EG-NEXT: LSHL T0.Y, T2.X, PV.X,
1012 ; EG-NEXT: CNDE_INT T4.Z, T4.X, T1.W, 0.0, BS:VEC_120/SCL_212
1013 ; EG-NEXT: AND_INT * T0.W, T3.X, literal.x, BS:VEC_201
1014 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
1015 ; EG-NEXT: CNDE_INT * T1.W, T5.X, T3.Y, T2.Z,
1016 ; EG-NEXT: CNDE_INT T4.X, T2.W, T0.Z, 0.0,
1017 ; EG-NEXT: CNDE_INT T1.Y, T0.W, T1.X, T0.Y, BS:VEC_120/SCL_212
1018 ; EG-NEXT: ADD_INT * T2.W, KC0[2].Y, literal.x,
1019 ; EG-NEXT: 16(2.242078e-44), 0(0.000000e+00)
1020 ; EG-NEXT: LSHR T0.X, PV.W, literal.x,
1021 ; EG-NEXT: CNDE_INT T1.Z, T5.X, T2.Z, 0.0,
1022 ; EG-NEXT: CNDE_INT * T1.X, T0.W, T0.Y, 0.0,
1023 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1024 ; EG-NEXT: LSHR * T2.X, KC0[2].Y, literal.x,
1025 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1060 ; EG-LABEL: s_shl_32_i64:
1061 ; EG: ; %bb.0:
1062 ; EG-NEXT: ALU 3, @4, KC0[CB0:0-32], KC1[]
1063 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1064 ; EG-NEXT: CF_END
1065 ; EG-NEXT: PAD
1066 ; EG-NEXT: ALU clause starting at 4:
1067 ; EG-NEXT: MOV * T0.Y, KC0[4].W,
1068 ; EG-NEXT: MOV T0.X, 0.0,
1069 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1070 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1114 ; EG-LABEL: v_shl_32_i64:
1115 ; EG: ; %bb.0:
1116 ; EG-NEXT: ALU 2, @8, KC0[CB0:0-32], KC1[]
1117 ; EG-NEXT: TEX 0 @6
1118 ; EG-NEXT: ALU 4, @11, KC0[CB0:0-32], KC1[]
1119 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T1.XY, T2.X, 1
1120 ; EG-NEXT: CF_END
1121 ; EG-NEXT: PAD
1122 ; EG-NEXT: Fetch clause starting at 6:
1123 ; EG-NEXT: VTX_READ_32 T0.X, T0.X, 0, #1
1124 ; EG-NEXT: ALU clause starting at 8:
1125 ; EG-NEXT: LSHL * T0.W, T1.X, literal.x,
1126 ; EG-NEXT: 3(4.203895e-45), 0(0.000000e+00)
1127 ; EG-NEXT: ADD_INT * T0.X, KC0[2].Z, PV.W,
1128 ; EG-NEXT: ALU clause starting at 11:
1129 ; EG-NEXT: MOV T1.X, 0.0,
1130 ; EG-NEXT: ADD_INT * T0.W, KC0[2].Y, T0.W,
1131 ; EG-NEXT: LSHR T2.X, PV.W, literal.x,
1132 ; EG-NEXT: MOV * T1.Y, T0.X,
1133 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1176 ; EG-LABEL: s_shl_constant_i64:
1177 ; EG: ; %bb.0:
1178 ; EG-NEXT: ALU 12, @4, KC0[CB0:0-32], KC1[]
1179 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1180 ; EG-NEXT: CF_END
1181 ; EG-NEXT: PAD
1182 ; EG-NEXT: ALU clause starting at 4:
1183 ; EG-NEXT: AND_INT T0.Z, KC0[2].W, literal.x,
1184 ; EG-NEXT: MOV T0.W, literal.y,
1185 ; EG-NEXT: NOT_INT * T1.W, KC0[2].W,
1186 ; EG-NEXT: 31(4.344025e-44), -1(nan)
1187 ; EG-NEXT: BIT_ALIGN_INT T1.Z, literal.x, PV.W, PS,
1188 ; EG-NEXT: LSHL T0.W, literal.y, PV.Z,
1189 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.z,
1190 ; EG-NEXT: 32767(4.591635e-41), -1(nan)
1191 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
1192 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.Z, PV.W,
1193 ; EG-NEXT: CNDE_INT T0.X, T1.W, T0.W, 0.0,
1194 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1195 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1240 ; EG-LABEL: v_shl_constant_i64:
1241 ; EG: ; %bb.0:
1242 ; EG-NEXT: ALU 0, @8, KC0[CB0:0-32], KC1[]
1243 ; EG-NEXT: TEX 0 @6
1244 ; EG-NEXT: ALU 12, @9, KC0[CB0:0-32], KC1[]
1245 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1246 ; EG-NEXT: CF_END
1247 ; EG-NEXT: PAD
1248 ; EG-NEXT: Fetch clause starting at 6:
1249 ; EG-NEXT: VTX_READ_32 T0.X, T0.X, 0, #1
1250 ; EG-NEXT: ALU clause starting at 8:
1251 ; EG-NEXT: MOV * T0.X, KC0[2].Z,
1252 ; EG-NEXT: ALU clause starting at 9:
1253 ; EG-NEXT: NOT_INT T0.Z, T0.X,
1254 ; EG-NEXT: MOV T0.W, literal.x,
1255 ; EG-NEXT: AND_INT * T1.W, T0.X, literal.y,
1256 ; EG-NEXT: 1435293955(1.935796e+13), 31(4.344025e-44)
1257 ; EG-NEXT: LSHL T1.Z, literal.x, PS,
1258 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.y, PV.W, PV.Z,
1259 ; EG-NEXT: AND_INT * T1.W, T0.X, literal.z,
1260 ; EG-NEXT: -1424379385(-5.460358e-13), 143(2.003857e-43)
1261 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
1262 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, PV.Z,
1263 ; EG-NEXT: CNDE_INT T0.X, T1.W, T1.Z, 0.0,
1264 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1265 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1309 ; EG-LABEL: v_shl_i64_32_bit_constant:
1310 ; EG: ; %bb.0:
1311 ; EG-NEXT: ALU 0, @8, KC0[CB0:0-32], KC1[]
1312 ; EG-NEXT: TEX 0 @6
1313 ; EG-NEXT: ALU 11, @9, KC0[CB0:0-32], KC1[]
1314 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1315 ; EG-NEXT: CF_END
1316 ; EG-NEXT: PAD
1317 ; EG-NEXT: Fetch clause starting at 6:
1318 ; EG-NEXT: VTX_READ_32 T0.X, T0.X, 0, #1
1319 ; EG-NEXT: ALU clause starting at 8:
1320 ; EG-NEXT: MOV * T0.X, KC0[2].Z,
1321 ; EG-NEXT: ALU clause starting at 9:
1322 ; EG-NEXT: AND_INT T0.W, T0.X, literal.x,
1323 ; EG-NEXT: NOT_INT * T1.W, T0.X,
1324 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
1325 ; EG-NEXT: BIT_ALIGN_INT T0.Z, 0.0, literal.x, PS,
1326 ; EG-NEXT: LSHL T0.W, literal.y, PV.W,
1327 ; EG-NEXT: AND_INT * T1.W, T0.X, literal.z,
1328 ; EG-NEXT: 617283(8.649977e-40), 1234567(1.729997e-39)
1329 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
1330 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.Z, PV.W,
1331 ; EG-NEXT: CNDE_INT T0.X, T1.W, T0.W, 0.0,
1332 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1333 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1373 ; EG-LABEL: v_shl_inline_imm_64_i64:
1374 ; EG: ; %bb.0:
1375 ; EG-NEXT: ALU 0, @8, KC0[CB0:0-32], KC1[]
1376 ; EG-NEXT: TEX 0 @6
1377 ; EG-NEXT: ALU 10, @9, KC0[CB0:0-32], KC1[]
1378 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1379 ; EG-NEXT: CF_END
1380 ; EG-NEXT: PAD
1381 ; EG-NEXT: Fetch clause starting at 6:
1382 ; EG-NEXT: VTX_READ_32 T0.X, T0.X, 0, #1
1383 ; EG-NEXT: ALU clause starting at 8:
1384 ; EG-NEXT: MOV * T0.X, KC0[2].Z,
1385 ; EG-NEXT: ALU clause starting at 9:
1386 ; EG-NEXT: AND_INT T0.W, T0.X, literal.x,
1387 ; EG-NEXT: NOT_INT * T1.W, T0.X,
1388 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
1389 ; EG-NEXT: BIT_ALIGN_INT T0.Z, 0.0, literal.x, PS,
1390 ; EG-NEXT: LSHL T0.W, literal.y, PV.W,
1391 ; EG-NEXT: AND_INT * T1.W, T0.X, literal.x,
1392 ; EG-NEXT: 32(4.484155e-44), 64(8.968310e-44)
1393 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.Z, PV.W,
1394 ; EG-NEXT: CNDE_INT T0.X, T1.W, T0.W, 0.0,
1395 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1396 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1430 ; EG-LABEL: s_shl_inline_imm_64_i64:
1431 ; EG: ; %bb.0:
1432 ; EG-NEXT: ALU 10, @4, KC0[CB0:0-32], KC1[]
1433 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1434 ; EG-NEXT: CF_END
1435 ; EG-NEXT: PAD
1436 ; EG-NEXT: ALU clause starting at 4:
1437 ; EG-NEXT: NOT_INT T0.W, KC0[2].W,
1438 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.x,
1439 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
1440 ; EG-NEXT: LSHL T0.Z, literal.x, PS,
1441 ; EG-NEXT: BIT_ALIGN_INT T0.W, 0.0, literal.y, PV.W,
1442 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
1443 ; EG-NEXT: 64(8.968310e-44), 32(4.484155e-44)
1444 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, PV.Z,
1445 ; EG-NEXT: CNDE_INT T0.X, T1.W, T0.Z, 0.0,
1446 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1447 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1480 ; EG-LABEL: s_shl_inline_imm_1_i64:
1481 ; EG: ; %bb.0:
1482 ; EG-NEXT: ALU 11, @4, KC0[CB0:0-32], KC1[]
1483 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1484 ; EG-NEXT: CF_END
1485 ; EG-NEXT: PAD
1486 ; EG-NEXT: ALU clause starting at 4:
1487 ; EG-NEXT: AND_INT T0.W, KC0[2].W, literal.x,
1488 ; EG-NEXT: LSHL * T1.W, KC0[2].W, literal.y,
1489 ; EG-NEXT: 31(4.344025e-44), 26(3.643376e-44)
1490 ; EG-NEXT: ASHR T1.W, PS, literal.x,
1491 ; EG-NEXT: LSHL * T0.W, 1, PV.W,
1492 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
1493 ; EG-NEXT: AND_INT T0.Y, PV.W, PS,
1494 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.x,
1495 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
1496 ; EG-NEXT: CNDE_INT T0.X, PV.W, T0.W, 0.0,
1497 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1498 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1531 ; EG-LABEL: s_shl_inline_imm_1_0_i64:
1532 ; EG: ; %bb.0:
1533 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
1534 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1535 ; EG-NEXT: CF_END
1536 ; EG-NEXT: PAD
1537 ; EG-NEXT: ALU clause starting at 4:
1538 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
1539 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
1540 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
1541 ; EG-NEXT: 536346624(1.050321e-19), 32(4.484155e-44)
1542 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
1543 ; EG-NEXT: MOV T0.X, 0.0,
1544 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1545 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1578 ; EG-LABEL: s_shl_inline_imm_neg_1_0_i64:
1579 ; EG: ; %bb.0:
1580 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
1581 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1582 ; EG-NEXT: CF_END
1583 ; EG-NEXT: PAD
1584 ; EG-NEXT: ALU clause starting at 4:
1585 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
1586 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
1587 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
1588 ; EG-NEXT: 1610088448(3.574057e+19), 32(4.484155e-44)
1589 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
1590 ; EG-NEXT: MOV T0.X, 0.0,
1591 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1592 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1625 ; EG-LABEL: s_shl_inline_imm_0_5_i64:
1626 ; EG: ; %bb.0:
1627 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
1628 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1629 ; EG-NEXT: CF_END
1630 ; EG-NEXT: PAD
1631 ; EG-NEXT: ALU clause starting at 4:
1632 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
1633 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
1634 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
1635 ; EG-NEXT: 535822336(1.016440e-19), 32(4.484155e-44)
1636 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
1637 ; EG-NEXT: MOV T0.X, 0.0,
1638 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1639 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1672 ; EG-LABEL: s_shl_inline_imm_neg_0_5_i64:
1673 ; EG: ; %bb.0:
1674 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
1675 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1676 ; EG-NEXT: CF_END
1677 ; EG-NEXT: PAD
1678 ; EG-NEXT: ALU clause starting at 4:
1679 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
1680 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
1681 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
1682 ; EG-NEXT: 1609564160(3.458765e+19), 32(4.484155e-44)
1683 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
1684 ; EG-NEXT: MOV T0.X, 0.0,
1685 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1686 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1719 ; EG-LABEL: s_shl_inline_imm_2_0_i64:
1720 ; EG: ; %bb.0:
1721 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
1722 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1723 ; EG-NEXT: CF_END
1724 ; EG-NEXT: PAD
1725 ; EG-NEXT: ALU clause starting at 4:
1726 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
1727 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
1728 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
1729 ; EG-NEXT: 536870912(1.084202e-19), 32(4.484155e-44)
1730 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
1731 ; EG-NEXT: MOV T0.X, 0.0,
1732 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1733 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1766 ; EG-LABEL: s_shl_inline_imm_neg_2_0_i64:
1767 ; EG: ; %bb.0:
1768 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
1769 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1770 ; EG-NEXT: CF_END
1771 ; EG-NEXT: PAD
1772 ; EG-NEXT: ALU clause starting at 4:
1773 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
1774 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
1775 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
1776 ; EG-NEXT: 1610612736(3.689349e+19), 32(4.484155e-44)
1777 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
1778 ; EG-NEXT: MOV T0.X, 0.0,
1779 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1780 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1813 ; EG-LABEL: s_shl_inline_imm_4_0_i64:
1814 ; EG: ; %bb.0:
1815 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
1816 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1817 ; EG-NEXT: CF_END
1818 ; EG-NEXT: PAD
1819 ; EG-NEXT: ALU clause starting at 4:
1820 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
1821 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
1822 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
1823 ; EG-NEXT: 537395200(1.151965e-19), 32(4.484155e-44)
1824 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
1825 ; EG-NEXT: MOV T0.X, 0.0,
1826 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1827 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1860 ; EG-LABEL: s_shl_inline_imm_neg_4_0_i64:
1861 ; EG: ; %bb.0:
1862 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
1863 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1864 ; EG-NEXT: CF_END
1865 ; EG-NEXT: PAD
1866 ; EG-NEXT: ALU clause starting at 4:
1867 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
1868 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
1869 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
1870 ; EG-NEXT: 1611137024(3.919933e+19), 32(4.484155e-44)
1871 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
1872 ; EG-NEXT: MOV T0.X, 0.0,
1873 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1874 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1912 ; EG-LABEL: s_shl_inline_imm_f32_4_0_i64:
1913 ; EG: ; %bb.0:
1914 ; EG-NEXT: ALU 11, @4, KC0[CB0:0-32], KC1[]
1915 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1916 ; EG-NEXT: CF_END
1917 ; EG-NEXT: PAD
1918 ; EG-NEXT: ALU clause starting at 4:
1919 ; EG-NEXT: NOT_INT T0.W, KC0[2].W,
1920 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.x,
1921 ; EG-NEXT: 31(4.344025e-44), 0(0.000000e+00)
1922 ; EG-NEXT: LSHL T0.Z, literal.x, PS,
1923 ; EG-NEXT: BIT_ALIGN_INT T0.W, 0.0, literal.y, PV.W,
1924 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.z,
1925 ; EG-NEXT: 1082130432(4.000000e+00), 541065216(1.626303e-19)
1926 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
1927 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, PV.Z,
1928 ; EG-NEXT: CNDE_INT T0.X, T1.W, T0.Z, 0.0,
1929 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1930 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
1968 ; EG-LABEL: s_shl_inline_imm_f32_neg_4_0_i64:
1969 ; EG: ; %bb.0:
1970 ; EG-NEXT: ALU 12, @4, KC0[CB0:0-32], KC1[]
1971 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
1972 ; EG-NEXT: CF_END
1973 ; EG-NEXT: PAD
1974 ; EG-NEXT: ALU clause starting at 4:
1975 ; EG-NEXT: AND_INT T0.Z, KC0[2].W, literal.x,
1976 ; EG-NEXT: MOV T0.W, literal.y,
1977 ; EG-NEXT: NOT_INT * T1.W, KC0[2].W,
1978 ; EG-NEXT: 31(4.344025e-44), -532676608(-5.534023e+19)
1979 ; EG-NEXT: BIT_ALIGN_INT T1.Z, literal.x, PV.W, PS,
1980 ; EG-NEXT: LSHL T0.W, literal.y, PV.Z,
1981 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.z,
1982 ; EG-NEXT: 2147483647(nan), -1065353216(-4.000000e+00)
1983 ; EG-NEXT: 32(4.484155e-44), 0(0.000000e+00)
1984 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.Z, PV.W,
1985 ; EG-NEXT: CNDE_INT T0.X, T1.W, T0.W, 0.0,
1986 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
1987 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
2024 ; EG-LABEL: s_shl_inline_high_imm_f32_4_0_i64:
2025 ; EG: ; %bb.0:
2026 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
2027 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
2028 ; EG-NEXT: CF_END
2029 ; EG-NEXT: PAD
2030 ; EG-NEXT: ALU clause starting at 4:
2031 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
2032 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
2033 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
2034 ; EG-NEXT: 541065216(1.626303e-19), 32(4.484155e-44)
2035 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
2036 ; EG-NEXT: MOV T0.X, 0.0,
2037 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
2038 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
2075 ; EG-LABEL: s_shl_inline_high_imm_f32_neg_4_0_i64:
2076 ; EG: ; %bb.0:
2077 ; EG-NEXT: ALU 7, @4, KC0[CB0:0-32], KC1[]
2078 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1
2079 ; EG-NEXT: CF_END
2080 ; EG-NEXT: PAD
2081 ; EG-NEXT: ALU clause starting at 4:
2082 ; EG-NEXT: NOT_INT * T0.W, KC0[2].W,
2083 ; EG-NEXT: BIT_ALIGN_INT T0.W, literal.x, 0.0, PV.W,
2084 ; EG-NEXT: AND_INT * T1.W, KC0[2].W, literal.y,
2085 ; EG-NEXT: 1614807040(5.534023e+19), 32(4.484155e-44)
2086 ; EG-NEXT: CNDE_INT * T0.Y, PS, PV.W, 0.0,
2087 ; EG-NEXT: MOV T0.X, 0.0,
2088 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.x,
2089 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
2120 ; EG-LABEL: test_mul2:
2121 ; EG: ; %bb.0:
2122 ; EG-NEXT: ALU 2, @4, KC0[CB0:0-32], KC1[]
2123 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T1.X, T0.X, 1
2124 ; EG-NEXT: CF_END
2125 ; EG-NEXT: PAD
2126 ; EG-NEXT: ALU clause starting at 4:
2127 ; EG-NEXT: MOV T0.X, literal.x,
2128 ; EG-NEXT: LSHL * T1.X, KC0[2].Y, 1,
2129 ; EG-NEXT: 0(0.000000e+00), 0(0.000000e+00)
2158 ; EG-LABEL: shl_or_k:
2159 ; EG: ; %bb.0:
2160 ; EG-NEXT: ALU 4, @4, KC0[CB0:0-32], KC1[]
2161 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T0.X, T1.X, 1
2162 ; EG-NEXT: CF_END
2163 ; EG-NEXT: PAD
2164 ; EG-NEXT: ALU clause starting at 4:
2165 ; EG-NEXT: LSHL * T0.W, KC0[2].Z, literal.x,
2166 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
2167 ; EG-NEXT: OR_INT T0.X, PV.W, literal.x,
2168 ; EG-NEXT: LSHR * T1.X, KC0[2].Y, literal.y,
2169 ; EG-NEXT: 4(5.605194e-45), 2(2.802597e-45)
2201 ; EG-LABEL: shl_or_k_two_uses:
2202 ; EG: ; %bb.0:
2203 ; EG-NEXT: ALU 5, @4, KC0[CB0:0-32], KC1[]
2204 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T2.X, T3.X, 0
2205 ; EG-NEXT: MEM_RAT_CACHELESS STORE_RAW T1.X, T0.X, 1
2206 ; EG-NEXT: CF_END
2207 ; EG-NEXT: ALU clause starting at 4:
2208 ; EG-NEXT: LSHR T0.X, KC0[2].Z, literal.x,
2209 ; EG-NEXT: OR_INT * T1.X, KC0[2].W, 1,
2210 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)
2211 ; EG-NEXT: LSHL T2.X, PS, literal.x,
2212 ; EG-NEXT: LSHR * T3.X, KC0[2].Y, literal.x,
2213 ; EG-NEXT: 2(2.802597e-45), 0(0.000000e+00)