@@ -88,7 +88,7 @@ define <4 x i32> @combine_vec_shl_known_zero1(<4 x i32> %x) {
8888; SSE2-NEXT: pmuludq %xmm0, %xmm1
8989; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,2,2,3]
9090; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,1,3,3]
91- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
91+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [32768,u,8192,u]
9292; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
9393; SSE2-NEXT: punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
9494; SSE2-NEXT: movdqa %xmm1, %xmm0
@@ -198,9 +198,9 @@ define <4 x i32> @combine_vec_shl_shl1(<4 x i32> %x) {
198198; SSE2-LABEL: combine_vec_shl_shl1:
199199; SSE2: # %bb.0:
200200; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm0[1,1,3,3]
201- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
201+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [16,64,256,1024]
202202; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
203- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
203+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1 # [64,u,1024,u]
204204; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,2,2,3]
205205; SSE2-NEXT: punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
206206; SSE2-NEXT: retq
@@ -304,17 +304,17 @@ define <8 x i32> @combine_vec_shl_ext_shl2(<8 x i16> %x) {
304304; SSE2-NEXT: punpcklwd {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3]
305305; SSE2-NEXT: psrad $16, %xmm1
306306; SSE2-NEXT: pshufd {{.*#+}} xmm3 = xmm1[1,1,3,3]
307- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
307+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1 # [131072,524288,2097152,8388608]
308308; SSE2-NEXT: pshufd {{.*#+}} xmm2 = xmm1[0,2,2,3]
309- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm3
309+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm3 # [524288,u,8388608,u]
310310; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm3[0,2,2,3]
311311; SSE2-NEXT: punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
312312; SSE2-NEXT: punpckhwd {{.*#+}} xmm0 = xmm0[4,4,5,5,6,6,7,7]
313313; SSE2-NEXT: psrad $16, %xmm0
314314; SSE2-NEXT: pshufd {{.*#+}} xmm3 = xmm0[1,1,3,3]
315- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
315+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [33554432,134217728,536870912,2147483648]
316316; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm0[0,2,2,3]
317- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm3
317+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm3 # [134217728,u,2147483648,u]
318318; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm3[0,2,2,3]
319319; SSE2-NEXT: punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
320320; SSE2-NEXT: movdqa %xmm2, %xmm0
@@ -673,9 +673,9 @@ define <4 x i32> @combine_vec_shl_add1(<4 x i32> %x) {
673673; SSE2-LABEL: combine_vec_shl_add1:
674674; SSE2: # %bb.0:
675675; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm0[1,1,3,3]
676- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
676+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [2,4,8,16]
677677; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
678- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
678+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1 # [4,u,16,u]
679679; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,2,2,3]
680680; SSE2-NEXT: punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
681681; SSE2-NEXT: paddd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
@@ -726,9 +726,9 @@ define <4 x i32> @combine_vec_shl_or1(<4 x i32> %x) {
726726; SSE2-LABEL: combine_vec_shl_or1:
727727; SSE2: # %bb.0:
728728; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm0[1,1,3,3]
729- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
729+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [2,4,8,16]
730730; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
731- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
731+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1 # [4,u,16,u]
732732; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,2,2,3]
733733; SSE2-NEXT: punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
734734; SSE2-NEXT: por {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
@@ -787,9 +787,9 @@ define <4 x i32> @combine_vec_shl_mul1(<4 x i32> %x) {
787787; SSE2-LABEL: combine_vec_shl_mul1:
788788; SSE2: # %bb.0:
789789; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm0[1,1,3,3]
790- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
790+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [10,24,56,128]
791791; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
792- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
792+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1 # [24,u,128,u]
793793; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,2,2,3]
794794; SSE2-NEXT: punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
795795; SSE2-NEXT: retq
@@ -813,9 +813,9 @@ define <4 x i32> @combine_vec_add_shl_nonsplat(<4 x i32> %a0) {
813813; SSE2-LABEL: combine_vec_add_shl_nonsplat:
814814; SSE2: # %bb.0:
815815; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm0[1,1,3,3]
816- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
816+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [4,8,16,32]
817817; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
818- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
818+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1 # [8,u,32,u]
819819; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,2,2,3]
820820; SSE2-NEXT: punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
821821; SSE2-NEXT: por {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
@@ -852,7 +852,7 @@ define <4 x i32> @combine_vec_add_shl_and_nonsplat(<4 x i32> %a0) {
852852; SSE2-NEXT: pmuludq %xmm0, %xmm1
853853; SSE2-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,2,2,3]
854854; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,1,3,3]
855- ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
855+ ; SSE2-NEXT: pmuludq {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [8,u,32,u]
856856; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
857857; SSE2-NEXT: punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
858858; SSE2-NEXT: por {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
0 commit comments