@@ -66,7 +66,7 @@ define <4 x i32> @combine_vec_mul_pow2a(<4 x i32> %x) {
6666define <4 x i32 > @combine_vec_mul_pow2b (<4 x i32 > %x ) {
6767; SSE-LABEL: combine_vec_mul_pow2b:
6868; SSE: # %bb.0:
69- ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
69+ ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [1,2,4,16]
7070; SSE-NEXT: retq
7171;
7272; AVX-LABEL: combine_vec_mul_pow2b:
@@ -120,12 +120,12 @@ define <4 x i32> @combine_vec_mul_negpow2a(<4 x i32> %x) {
120120define <4 x i32 > @combine_vec_mul_negpow2b (<4 x i32 > %x ) {
121121; SSE-LABEL: combine_vec_mul_negpow2b:
122122; SSE: # %bb.0:
123- ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
123+ ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [4294967295,4294967294,4294967292,4294967280]
124124; SSE-NEXT: retq
125125;
126126; AVX-LABEL: combine_vec_mul_negpow2b:
127127; AVX: # %bb.0:
128- ; AVX-NEXT: vpmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
128+ ; AVX-NEXT: vpmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0 # [4294967295,4294967294,4294967292,4294967280]
129129; AVX-NEXT: retq
130130 %1 = mul <4 x i32 > %x , <i32 -1 , i32 -2 , i32 -4 , i32 -16 >
131131 ret <4 x i32 > %1
@@ -176,12 +176,12 @@ define <4 x i64> @combine_vec_mul_negpow2c(<4 x i64> %x) {
176176define <4 x i32 > @combine_vec_mul_shl_const (<4 x i32 > %x ) {
177177; SSE-LABEL: combine_vec_mul_shl_const:
178178; SSE: # %bb.0:
179- ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
179+ ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [2,12,1280,458752]
180180; SSE-NEXT: retq
181181;
182182; AVX-LABEL: combine_vec_mul_shl_const:
183183; AVX: # %bb.0:
184- ; AVX-NEXT: vpmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
184+ ; AVX-NEXT: vpmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0 # [2,12,1280,458752]
185185; AVX-NEXT: retq
186186 %1 = shl <4 x i32 > %x , <i32 1 , i32 2 , i32 8 , i32 16 >
187187 %2 = mul <4 x i32 > %1 , <i32 1 , i32 3 , i32 5 , i32 7 >
@@ -193,7 +193,7 @@ define <4 x i32> @combine_vec_mul_shl_oneuse0(<4 x i32> %x, <4 x i32> %y) {
193193; SSE-LABEL: combine_vec_mul_shl_oneuse0:
194194; SSE: # %bb.0:
195195; SSE-NEXT: pmulld %xmm1, %xmm0
196- ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
196+ ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [2,4,256,65536]
197197; SSE-NEXT: retq
198198;
199199; AVX-LABEL: combine_vec_mul_shl_oneuse0:
@@ -210,7 +210,7 @@ define <4 x i32> @combine_vec_mul_shl_oneuse1(<4 x i32> %x, <4 x i32> %y) {
210210; SSE-LABEL: combine_vec_mul_shl_oneuse1:
211211; SSE: # %bb.0:
212212; SSE-NEXT: pmulld %xmm1, %xmm0
213- ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
213+ ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [2,4,256,65536]
214214; SSE-NEXT: retq
215215;
216216; AVX-LABEL: combine_vec_mul_shl_oneuse1:
@@ -226,7 +226,7 @@ define <4 x i32> @combine_vec_mul_shl_oneuse1(<4 x i32> %x, <4 x i32> %y) {
226226define <4 x i32 > @combine_vec_mul_shl_multiuse0 (<4 x i32 > %x , <4 x i32 > %y ) {
227227; SSE-LABEL: combine_vec_mul_shl_multiuse0:
228228; SSE: # %bb.0:
229- ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
229+ ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [2,4,256,65536]
230230; SSE-NEXT: pmulld %xmm0, %xmm1
231231; SSE-NEXT: paddd %xmm1, %xmm0
232232; SSE-NEXT: retq
@@ -246,7 +246,7 @@ define <4 x i32> @combine_vec_mul_shl_multiuse0(<4 x i32> %x, <4 x i32> %y) {
246246define <4 x i32 > @combine_vec_mul_shl_multiuse1 (<4 x i32 > %x , <4 x i32 > %y ) {
247247; SSE-LABEL: combine_vec_mul_shl_multiuse1:
248248; SSE: # %bb.0:
249- ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
249+ ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [2,4,256,65536]
250250; SSE-NEXT: pmulld %xmm0, %xmm1
251251; SSE-NEXT: paddd %xmm1, %xmm0
252252; SSE-NEXT: retq
@@ -268,13 +268,13 @@ define <4 x i32> @combine_vec_mul_shl_multiuse1(<4 x i32> %x, <4 x i32> %y) {
268268define <4 x i32 > @combine_vec_mul_add (<4 x i32 > %x ) {
269269; SSE-LABEL: combine_vec_mul_add:
270270; SSE: # %bb.0:
271- ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
271+ ; SSE-NEXT: pmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0 # [4,6,2,0]
272272; SSE-NEXT: paddd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
273273; SSE-NEXT: retq
274274;
275275; AVX-LABEL: combine_vec_mul_add:
276276; AVX: # %bb.0:
277- ; AVX-NEXT: vpmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
277+ ; AVX-NEXT: vpmulld {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0 # [4,6,2,0]
278278; AVX-NEXT: vpaddd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
279279; AVX-NEXT: retq
280280 %1 = add <4 x i32 > %x , <i32 1 , i32 2 , i32 8 , i32 16 >
0 commit comments