@@ -2573,7 +2573,6 @@ define void @vec384_i8_widen_to_i24_factor3_broadcast_to_v16i24_factor16(ptr %in
25732573; AVX512F-NEXT: vpalignr {{.*#+}} xmm1 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0]
25742574; AVX512F-NEXT: vpshufb {{.*#+}} xmm1 = xmm1[15,0,1,15,3,4,15,6,7,15,9,10,15,12,13,15]
25752575; AVX512F-NEXT: vpbroadcastb %xmm0, %ymm0
2576- ; AVX512F-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
25772576; AVX512F-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
25782577; AVX512F-NEXT: vpaddb (%rdx), %ymm1, %ymm1
25792578; AVX512F-NEXT: vpaddb 32(%rdx), %ymm0, %ymm0
@@ -2591,7 +2590,6 @@ define void @vec384_i8_widen_to_i24_factor3_broadcast_to_v16i24_factor16(ptr %in
25912590; AVX512DQ-NEXT: vpalignr {{.*#+}} xmm1 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0]
25922591; AVX512DQ-NEXT: vpshufb {{.*#+}} xmm1 = xmm1[15,0,1,15,3,4,15,6,7,15,9,10,15,12,13,15]
25932592; AVX512DQ-NEXT: vpbroadcastb %xmm0, %ymm0
2594- ; AVX512DQ-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
25952593; AVX512DQ-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
25962594; AVX512DQ-NEXT: vpaddb (%rdx), %ymm1, %ymm1
25972595; AVX512DQ-NEXT: vpaddb 32(%rdx), %ymm0, %ymm0
@@ -2837,7 +2835,6 @@ define void @vec384_i8_widen_to_i48_factor6_broadcast_to_v8i48_factor8(ptr %in.v
28372835; AVX512F-NEXT: vpalignr {{.*#+}} xmm1 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0]
28382836; AVX512F-NEXT: vpshufb {{.*#+}} xmm1 = xmm1[15,0,1,2,3,4,15,6,7,8,9,10,15,12,13,14]
28392837; AVX512F-NEXT: vpbroadcastb %xmm0, %ymm0
2840- ; AVX512F-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
28412838; AVX512F-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
28422839; AVX512F-NEXT: vpaddb (%rdx), %ymm1, %ymm1
28432840; AVX512F-NEXT: vpaddb 32(%rdx), %ymm0, %ymm0
@@ -2855,7 +2852,6 @@ define void @vec384_i8_widen_to_i48_factor6_broadcast_to_v8i48_factor8(ptr %in.v
28552852; AVX512DQ-NEXT: vpalignr {{.*#+}} xmm1 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0]
28562853; AVX512DQ-NEXT: vpshufb {{.*#+}} xmm1 = xmm1[15,0,1,2,3,4,15,6,7,8,9,10,15,12,13,14]
28572854; AVX512DQ-NEXT: vpbroadcastb %xmm0, %ymm0
2858- ; AVX512DQ-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
28592855; AVX512DQ-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
28602856; AVX512DQ-NEXT: vpaddb (%rdx), %ymm1, %ymm1
28612857; AVX512DQ-NEXT: vpaddb 32(%rdx), %ymm0, %ymm0
@@ -3100,7 +3096,6 @@ define void @vec384_i8_widen_to_i96_factor12_broadcast_to_v4i96_factor4(ptr %in.
31003096; AVX512F-NEXT: vpalignr {{.*#+}} xmm1 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0]
31013097; AVX512F-NEXT: vpshufb {{.*#+}} xmm1 = xmm1[15,0,1,2,3,4,5,6,7,8,9,10,15,12,13,14]
31023098; AVX512F-NEXT: vpbroadcastb %xmm0, %ymm0
3103- ; AVX512F-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
31043099; AVX512F-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
31053100; AVX512F-NEXT: vpaddb (%rdx), %ymm1, %ymm1
31063101; AVX512F-NEXT: vpaddb 32(%rdx), %ymm0, %ymm0
@@ -3118,7 +3113,6 @@ define void @vec384_i8_widen_to_i96_factor12_broadcast_to_v4i96_factor4(ptr %in.
31183113; AVX512DQ-NEXT: vpalignr {{.*#+}} xmm1 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0]
31193114; AVX512DQ-NEXT: vpshufb {{.*#+}} xmm1 = xmm1[15,0,1,2,3,4,5,6,7,8,9,10,15,12,13,14]
31203115; AVX512DQ-NEXT: vpbroadcastb %xmm0, %ymm0
3121- ; AVX512DQ-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
31223116; AVX512DQ-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
31233117; AVX512DQ-NEXT: vpaddb (%rdx), %ymm1, %ymm1
31243118; AVX512DQ-NEXT: vpaddb 32(%rdx), %ymm0, %ymm0
@@ -3614,10 +3608,9 @@ define void @vec384_i16_widen_to_i48_factor3_broadcast_to_v8i48_factor8(ptr %in.
36143608; AVX512F: # %bb.0:
36153609; AVX512F-NEXT: vmovdqa (%rdi), %xmm0
36163610; AVX512F-NEXT: vmovdqa 48(%rdi), %xmm1
3611+ ; AVX512F-NEXT: vpaddb 48(%rsi), %xmm1, %xmm1
36173612; AVX512F-NEXT: vpaddb (%rsi), %xmm0, %xmm0
36183613; AVX512F-NEXT: vpbroadcastw %xmm0, %ymm0
3619- ; AVX512F-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
3620- ; AVX512F-NEXT: vpaddb 48(%rsi), %xmm1, %xmm1
36213614; AVX512F-NEXT: vpblendw {{.*#+}} xmm1 = xmm0[0],xmm1[1,2],xmm0[3],xmm1[4,5],xmm0[6],xmm1[7]
36223615; AVX512F-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
36233616; AVX512F-NEXT: vpaddb (%rdx), %ymm1, %ymm1
@@ -3631,10 +3624,9 @@ define void @vec384_i16_widen_to_i48_factor3_broadcast_to_v8i48_factor8(ptr %in.
36313624; AVX512DQ: # %bb.0:
36323625; AVX512DQ-NEXT: vmovdqa (%rdi), %xmm0
36333626; AVX512DQ-NEXT: vmovdqa 48(%rdi), %xmm1
3627+ ; AVX512DQ-NEXT: vpaddb 48(%rsi), %xmm1, %xmm1
36343628; AVX512DQ-NEXT: vpaddb (%rsi), %xmm0, %xmm0
36353629; AVX512DQ-NEXT: vpbroadcastw %xmm0, %ymm0
3636- ; AVX512DQ-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
3637- ; AVX512DQ-NEXT: vpaddb 48(%rsi), %xmm1, %xmm1
36383630; AVX512DQ-NEXT: vpblendw {{.*#+}} xmm1 = xmm0[0],xmm1[1,2],xmm0[3],xmm1[4,5],xmm0[6],xmm1[7]
36393631; AVX512DQ-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
36403632; AVX512DQ-NEXT: vpaddb (%rdx), %ymm1, %ymm1
@@ -3868,10 +3860,9 @@ define void @vec384_i16_widen_to_i96_factor6_broadcast_to_v4i96_factor4(ptr %in.
38683860; AVX512F: # %bb.0:
38693861; AVX512F-NEXT: vmovdqa (%rdi), %xmm0
38703862; AVX512F-NEXT: vmovdqa 48(%rdi), %xmm1
3863+ ; AVX512F-NEXT: vpaddb 48(%rsi), %xmm1, %xmm1
38713864; AVX512F-NEXT: vpaddb (%rsi), %xmm0, %xmm0
38723865; AVX512F-NEXT: vpbroadcastw %xmm0, %ymm0
3873- ; AVX512F-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
3874- ; AVX512F-NEXT: vpaddb 48(%rsi), %xmm1, %xmm1
38753866; AVX512F-NEXT: vpblendw {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3,4,5],xmm0[6],xmm1[7]
38763867; AVX512F-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
38773868; AVX512F-NEXT: vpaddb (%rdx), %ymm1, %ymm1
@@ -3885,10 +3876,9 @@ define void @vec384_i16_widen_to_i96_factor6_broadcast_to_v4i96_factor4(ptr %in.
38853876; AVX512DQ: # %bb.0:
38863877; AVX512DQ-NEXT: vmovdqa (%rdi), %xmm0
38873878; AVX512DQ-NEXT: vmovdqa 48(%rdi), %xmm1
3879+ ; AVX512DQ-NEXT: vpaddb 48(%rsi), %xmm1, %xmm1
38883880; AVX512DQ-NEXT: vpaddb (%rsi), %xmm0, %xmm0
38893881; AVX512DQ-NEXT: vpbroadcastw %xmm0, %ymm0
3890- ; AVX512DQ-NEXT: vinserti64x4 $1, %ymm0, %zmm0, %zmm0
3891- ; AVX512DQ-NEXT: vpaddb 48(%rsi), %xmm1, %xmm1
38923882; AVX512DQ-NEXT: vpblendw {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3,4,5],xmm0[6],xmm1[7]
38933883; AVX512DQ-NEXT: vinserti128 $1, %xmm0, %ymm1, %ymm1
38943884; AVX512DQ-NEXT: vpaddb (%rdx), %ymm1, %ymm1
0 commit comments