@@ -467,7 +467,7 @@ define <4 x i32> @test4(<4 x i64> %x, <4 x i64> %y, <4 x i64> %x1, <4 x i64> %y1
467
467
; KNL-NEXT: ## kill: def $ymm0 killed $ymm0 def $zmm0
468
468
; KNL-NEXT: vpcmpgtq %zmm3, %zmm2, %k1
469
469
; KNL-NEXT: vpcmpleq %zmm1, %zmm0, %k1 {%k1}
470
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
470
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
471
471
; KNL-NEXT: ## kill: def $xmm0 killed $xmm0 killed $zmm0
472
472
; KNL-NEXT: vzeroupper
473
473
; KNL-NEXT: retq
@@ -488,7 +488,7 @@ define <4 x i32> @test4(<4 x i64> %x, <4 x i64> %y, <4 x i64> %x1, <4 x i64> %y1
488
488
; AVX512BW-NEXT: ## kill: def $ymm0 killed $ymm0 def $zmm0
489
489
; AVX512BW-NEXT: vpcmpgtq %zmm3, %zmm2, %k1
490
490
; AVX512BW-NEXT: vpcmpleq %zmm1, %zmm0, %k1 {%k1}
491
- ; AVX512BW-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
491
+ ; AVX512BW-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
492
492
; AVX512BW-NEXT: ## kill: def $xmm0 killed $xmm0 killed $zmm0
493
493
; AVX512BW-NEXT: vzeroupper
494
494
; AVX512BW-NEXT: retq
@@ -529,7 +529,7 @@ define <2 x i64> @test5(<2 x i64> %x, <2 x i64> %y, <2 x i64> %x1, <2 x i64> %y1
529
529
; KNL-NEXT: ## kill: def $xmm0 killed $xmm0 def $zmm0
530
530
; KNL-NEXT: vpcmpgtq %zmm0, %zmm1, %k1
531
531
; KNL-NEXT: vpcmpleq %zmm3, %zmm2, %k1 {%k1}
532
- ; KNL-NEXT: vpternlogq $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
532
+ ; KNL-NEXT: vpternlogq {{.*#+}} zmm0 {%k1} {z} = -1
533
533
; KNL-NEXT: ## kill: def $xmm0 killed $xmm0 killed $zmm0
534
534
; KNL-NEXT: vzeroupper
535
535
; KNL-NEXT: retq
@@ -549,7 +549,7 @@ define <2 x i64> @test5(<2 x i64> %x, <2 x i64> %y, <2 x i64> %x1, <2 x i64> %y1
549
549
; AVX512BW-NEXT: ## kill: def $xmm0 killed $xmm0 def $zmm0
550
550
; AVX512BW-NEXT: vpcmpgtq %zmm0, %zmm1, %k1
551
551
; AVX512BW-NEXT: vpcmpleq %zmm3, %zmm2, %k1 {%k1}
552
- ; AVX512BW-NEXT: vpternlogq $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
552
+ ; AVX512BW-NEXT: vpternlogq {{.*#+}} zmm0 {%k1} {z} = -1
553
553
; AVX512BW-NEXT: ## kill: def $xmm0 killed $xmm0 killed $zmm0
554
554
; AVX512BW-NEXT: vzeroupper
555
555
; AVX512BW-NEXT: retq
@@ -677,7 +677,7 @@ define <16 x i8> @test8(<16 x i32>%a, <16 x i32>%b, i32 %a1, i32 %b1) {
677
677
; KNL-NEXT: vpxor %xmm1, %xmm1, %xmm1
678
678
; KNL-NEXT: vpcmpgtd %zmm1, %zmm0, %k1
679
679
; KNL-NEXT: LBB17_3:
680
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
680
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
681
681
; KNL-NEXT: vpmovdb %zmm0, %xmm0
682
682
; KNL-NEXT: vzeroupper
683
683
; KNL-NEXT: retq
@@ -769,7 +769,7 @@ define <16 x i1> @test9(<16 x i1>%a, <16 x i1>%b, i32 %a1, i32 %b1) {
769
769
; KNL-NEXT: LBB18_3:
770
770
; KNL-NEXT: vpslld $31, %zmm0, %zmm0
771
771
; KNL-NEXT: vptestmd %zmm0, %zmm0, %k1
772
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
772
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
773
773
; KNL-NEXT: vpmovdb %zmm0, %xmm0
774
774
; KNL-NEXT: vzeroupper
775
775
; KNL-NEXT: retq
@@ -853,7 +853,7 @@ define <8 x i1> @test10(<8 x i1>%a, <8 x i1>%b, i32 %a1, i32 %b1) {
853
853
; KNL-NEXT: LBB19_3:
854
854
; KNL-NEXT: vpsllq $63, %zmm0, %zmm0
855
855
; KNL-NEXT: vptestmq %zmm0, %zmm0, %k1
856
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
856
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
857
857
; KNL-NEXT: vpmovdw %zmm0, %ymm0
858
858
; KNL-NEXT: ## kill: def $xmm0 killed $xmm0 killed $ymm0
859
859
; KNL-NEXT: vzeroupper
@@ -938,7 +938,7 @@ define <4 x i1> @test11(<4 x i1>%a, <4 x i1>%b, i32 %a1, i32 %b1) {
938
938
; KNL-NEXT: vpslld $31, %xmm0, %xmm0
939
939
; KNL-NEXT: LBB20_3:
940
940
; KNL-NEXT: vptestmd %zmm0, %zmm0, %k1
941
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
941
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
942
942
; KNL-NEXT: ## kill: def $xmm0 killed $xmm0 killed $zmm0
943
943
; KNL-NEXT: vzeroupper
944
944
; KNL-NEXT: retq
@@ -968,7 +968,7 @@ define <4 x i1> @test11(<4 x i1>%a, <4 x i1>%b, i32 %a1, i32 %b1) {
968
968
; AVX512BW-NEXT: vpslld $31, %xmm0, %xmm0
969
969
; AVX512BW-NEXT: LBB20_3:
970
970
; AVX512BW-NEXT: vptestmd %zmm0, %zmm0, %k1
971
- ; AVX512BW-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
971
+ ; AVX512BW-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
972
972
; AVX512BW-NEXT: ## kill: def $xmm0 killed $xmm0 killed $zmm0
973
973
; AVX512BW-NEXT: vzeroupper
974
974
; AVX512BW-NEXT: retq
@@ -1081,7 +1081,7 @@ define <16 x i1> @test15(i32 %x, i32 %y) {
1081
1081
; KNL-NEXT: movl $1, %ecx
1082
1082
; KNL-NEXT: cmovgl %eax, %ecx
1083
1083
; KNL-NEXT: kmovw %ecx, %k1
1084
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
1084
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
1085
1085
; KNL-NEXT: vpmovdb %zmm0, %xmm0
1086
1086
; KNL-NEXT: vzeroupper
1087
1087
; KNL-NEXT: retq
@@ -1158,14 +1158,14 @@ define <64 x i8> @test16(i64 %x) {
1158
1158
; KNL-NEXT: kshiftlw $15, %k4, %k4
1159
1159
; KNL-NEXT: kshiftrw $10, %k4, %k4
1160
1160
; KNL-NEXT: korw %k4, %k0, %k4
1161
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k3} {z}
1161
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k3} {z} = -1
1162
1162
; KNL-NEXT: vpmovdb %zmm0, %xmm0
1163
- ; KNL-NEXT: vpternlogd $255, % zmm1, %zmm1, %zmm1 {%k2} {z}
1163
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm1 {%k2} {z} = -1
1164
1164
; KNL-NEXT: vpmovdb %zmm1, %xmm1
1165
1165
; KNL-NEXT: vinserti128 $1, %xmm1, %ymm0, %ymm0
1166
- ; KNL-NEXT: vpternlogd $255, % zmm1, %zmm1, %zmm1 {%k4} {z}
1166
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm1 {%k4} {z} = -1
1167
1167
; KNL-NEXT: vpmovdb %zmm1, %xmm1
1168
- ; KNL-NEXT: vpternlogd $255, % zmm2, %zmm2, %zmm2 {%k1} {z}
1168
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm2 {%k1} {z} = -1
1169
1169
; KNL-NEXT: vpmovdb %zmm2, %xmm2
1170
1170
; KNL-NEXT: vinserti128 $1, %xmm2, %ymm1, %ymm1
1171
1171
; KNL-NEXT: vinserti64x4 $1, %ymm0, %zmm1, %zmm0
@@ -1274,14 +1274,14 @@ define <64 x i8> @test17(i64 %x, i32 %y, i32 %z) {
1274
1274
; KNL-NEXT: kshiftlw $15, %k4, %k4
1275
1275
; KNL-NEXT: kshiftrw $10, %k4, %k4
1276
1276
; KNL-NEXT: korw %k4, %k0, %k4
1277
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k3} {z}
1277
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k3} {z} = -1
1278
1278
; KNL-NEXT: vpmovdb %zmm0, %xmm0
1279
- ; KNL-NEXT: vpternlogd $255, % zmm1, %zmm1, %zmm1 {%k2} {z}
1279
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm1 {%k2} {z} = -1
1280
1280
; KNL-NEXT: vpmovdb %zmm1, %xmm1
1281
1281
; KNL-NEXT: vinserti128 $1, %xmm1, %ymm0, %ymm0
1282
- ; KNL-NEXT: vpternlogd $255, % zmm1, %zmm1, %zmm1 {%k4} {z}
1282
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm1 {%k4} {z} = -1
1283
1283
; KNL-NEXT: vpmovdb %zmm1, %xmm1
1284
- ; KNL-NEXT: vpternlogd $255, % zmm2, %zmm2, %zmm2 {%k1} {z}
1284
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm2 {%k1} {z} = -1
1285
1285
; KNL-NEXT: vpmovdb %zmm2, %xmm2
1286
1286
; KNL-NEXT: vinserti128 $1, %xmm2, %ymm1, %ymm1
1287
1287
; KNL-NEXT: vinserti64x4 $1, %ymm0, %zmm1, %zmm0
@@ -1390,7 +1390,7 @@ define <8 x i1> @test18(i8 %a, i16 %y) {
1390
1390
; KNL-NEXT: kshiftrw $9, %k0, %k0
1391
1391
; KNL-NEXT: kshiftlw $7, %k2, %k1
1392
1392
; KNL-NEXT: korw %k1, %k0, %k1
1393
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
1393
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
1394
1394
; KNL-NEXT: vpmovdw %zmm0, %ymm0
1395
1395
; KNL-NEXT: ## kill: def $xmm0 killed $xmm0 killed $ymm0
1396
1396
; KNL-NEXT: vzeroupper
@@ -2368,7 +2368,7 @@ define <8 x i64> @load_8i1(ptr %a) {
2368
2368
; KNL: ## %bb.0:
2369
2369
; KNL-NEXT: movzbl (%rdi), %eax
2370
2370
; KNL-NEXT: kmovw %eax, %k1
2371
- ; KNL-NEXT: vpternlogq $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
2371
+ ; KNL-NEXT: vpternlogq {{.*#+}} zmm0 {%k1} {z} = -1
2372
2372
; KNL-NEXT: retq
2373
2373
;
2374
2374
; SKX-LABEL: load_8i1:
@@ -2381,7 +2381,7 @@ define <8 x i64> @load_8i1(ptr %a) {
2381
2381
; AVX512BW: ## %bb.0:
2382
2382
; AVX512BW-NEXT: movzbl (%rdi), %eax
2383
2383
; AVX512BW-NEXT: kmovd %eax, %k1
2384
- ; AVX512BW-NEXT: vpternlogq $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
2384
+ ; AVX512BW-NEXT: vpternlogq {{.*#+}} zmm0 {%k1} {z} = -1
2385
2385
; AVX512BW-NEXT: retq
2386
2386
;
2387
2387
; AVX512DQ-LABEL: load_8i1:
@@ -2405,7 +2405,7 @@ define <16 x i32> @load_16i1(ptr %a) {
2405
2405
; KNL-LABEL: load_16i1:
2406
2406
; KNL: ## %bb.0:
2407
2407
; KNL-NEXT: kmovw (%rdi), %k1
2408
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
2408
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
2409
2409
; KNL-NEXT: retq
2410
2410
;
2411
2411
; SKX-LABEL: load_16i1:
@@ -2417,7 +2417,7 @@ define <16 x i32> @load_16i1(ptr %a) {
2417
2417
; AVX512BW-LABEL: load_16i1:
2418
2418
; AVX512BW: ## %bb.0:
2419
2419
; AVX512BW-NEXT: kmovw (%rdi), %k1
2420
- ; AVX512BW-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
2420
+ ; AVX512BW-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
2421
2421
; AVX512BW-NEXT: retq
2422
2422
;
2423
2423
; AVX512DQ-LABEL: load_16i1:
@@ -2442,7 +2442,7 @@ define <2 x i16> @load_2i1(ptr %a) {
2442
2442
; KNL: ## %bb.0:
2443
2443
; KNL-NEXT: movzbl (%rdi), %eax
2444
2444
; KNL-NEXT: kmovw %eax, %k1
2445
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
2445
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
2446
2446
; KNL-NEXT: vpmovdw %zmm0, %ymm0
2447
2447
; KNL-NEXT: ## kill: def $xmm0 killed $xmm0 killed $ymm0
2448
2448
; KNL-NEXT: vzeroupper
@@ -2488,7 +2488,7 @@ define <4 x i16> @load_4i1(ptr %a) {
2488
2488
; KNL: ## %bb.0:
2489
2489
; KNL-NEXT: movzbl (%rdi), %eax
2490
2490
; KNL-NEXT: kmovw %eax, %k1
2491
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
2491
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
2492
2492
; KNL-NEXT: vpmovdw %zmm0, %ymm0
2493
2493
; KNL-NEXT: ## kill: def $xmm0 killed $xmm0 killed $ymm0
2494
2494
; KNL-NEXT: vzeroupper
@@ -2534,9 +2534,9 @@ define <32 x i16> @load_32i1(ptr %a) {
2534
2534
; KNL: ## %bb.0:
2535
2535
; KNL-NEXT: kmovw (%rdi), %k1
2536
2536
; KNL-NEXT: kmovw 2(%rdi), %k2
2537
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k1} {z}
2537
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k1} {z} = -1
2538
2538
; KNL-NEXT: vpmovdw %zmm0, %ymm0
2539
- ; KNL-NEXT: vpternlogd $255, % zmm1, %zmm1, %zmm1 {%k2} {z}
2539
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm1 {%k2} {z} = -1
2540
2540
; KNL-NEXT: vpmovdw %zmm1, %ymm1
2541
2541
; KNL-NEXT: vinserti64x4 $1, %ymm1, %zmm0, %zmm0
2542
2542
; KNL-NEXT: retq
@@ -2582,14 +2582,14 @@ define <64 x i8> @load_64i1(ptr %a) {
2582
2582
; KNL-NEXT: kmovw 2(%rdi), %k2
2583
2583
; KNL-NEXT: kmovw 4(%rdi), %k3
2584
2584
; KNL-NEXT: kmovw 6(%rdi), %k4
2585
- ; KNL-NEXT: vpternlogd $255, % zmm0, %zmm0, %zmm0 {%k3} {z}
2585
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm0 {%k3} {z} = -1
2586
2586
; KNL-NEXT: vpmovdb %zmm0, %xmm0
2587
- ; KNL-NEXT: vpternlogd $255, % zmm1, %zmm1, %zmm1 {%k4} {z}
2587
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm1 {%k4} {z} = -1
2588
2588
; KNL-NEXT: vpmovdb %zmm1, %xmm1
2589
2589
; KNL-NEXT: vinserti128 $1, %xmm1, %ymm0, %ymm0
2590
- ; KNL-NEXT: vpternlogd $255, % zmm1, %zmm1, %zmm1 {%k1} {z}
2590
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm1 {%k1} {z} = -1
2591
2591
; KNL-NEXT: vpmovdb %zmm1, %xmm1
2592
- ; KNL-NEXT: vpternlogd $255, % zmm2, %zmm2, %zmm2 {%k2} {z}
2592
+ ; KNL-NEXT: vpternlogd {{.*#+}} zmm2 {%k2} {z} = -1
2593
2593
; KNL-NEXT: vpmovdb %zmm2, %xmm2
2594
2594
; KNL-NEXT: vinserti128 $1, %xmm2, %ymm1, %ymm1
2595
2595
; KNL-NEXT: vinserti64x4 $1, %ymm0, %zmm1, %zmm0
@@ -4750,7 +4750,7 @@ define void @ktest_6(<32 x i16> %w, <32 x i16> %x, <32 x i16> %y, <32 x i16> %z)
4750
4750
; KNL-NEXT: vpcmpeqw %ymm5, %ymm2, %ymm2
4751
4751
; KNL-NEXT: vpcmpeqw %ymm5, %ymm3, %ymm3
4752
4752
; KNL-NEXT: vinserti64x4 $1, %ymm2, %zmm3, %zmm2
4753
- ; KNL-NEXT: vpternlogq $200, %zmm1, % zmm0, % zmm2
4753
+ ; KNL-NEXT: vpternlogq {{.*#+}} zmm2 = zmm0 & ( zmm2 | zmm1)
4754
4754
; KNL-NEXT: vextracti64x4 $1, %zmm2, %ymm0
4755
4755
; KNL-NEXT: vpor %ymm0, %ymm2, %ymm0
4756
4756
; KNL-NEXT: vpmovsxwd %ymm0, %zmm0
@@ -4831,7 +4831,7 @@ define void @ktest_6(<32 x i16> %w, <32 x i16> %x, <32 x i16> %y, <32 x i16> %z)
4831
4831
; AVX512DQ-NEXT: vpcmpeqw %ymm5, %ymm2, %ymm2
4832
4832
; AVX512DQ-NEXT: vpcmpeqw %ymm5, %ymm3, %ymm3
4833
4833
; AVX512DQ-NEXT: vinserti64x4 $1, %ymm2, %zmm3, %zmm2
4834
- ; AVX512DQ-NEXT: vpternlogq $200, %zmm1, % zmm0, % zmm2
4834
+ ; AVX512DQ-NEXT: vpternlogq {{.*#+}} zmm2 = zmm0 & ( zmm2 | zmm1)
4835
4835
; AVX512DQ-NEXT: vextracti64x4 $1, %zmm2, %ymm0
4836
4836
; AVX512DQ-NEXT: vpor %ymm0, %ymm2, %ymm0
4837
4837
; AVX512DQ-NEXT: vpmovsxwd %ymm0, %zmm0
@@ -4910,7 +4910,7 @@ define void @ktest_7(<64 x i8> %w, <64 x i8> %x, <64 x i8> %y, <64 x i8> %z) {
4910
4910
; KNL-NEXT: vpcmpeqb %ymm5, %ymm2, %ymm2
4911
4911
; KNL-NEXT: vpcmpeqb %ymm5, %ymm3, %ymm3
4912
4912
; KNL-NEXT: vinserti64x4 $1, %ymm2, %zmm3, %zmm2
4913
- ; KNL-NEXT: vpternlogq $200, %zmm1, % zmm0, % zmm2
4913
+ ; KNL-NEXT: vpternlogq {{.*#+}} zmm2 = zmm0 & ( zmm2 | zmm1)
4914
4914
; KNL-NEXT: vextracti64x4 $1, %zmm2, %ymm0
4915
4915
; KNL-NEXT: vpor %ymm0, %ymm2, %ymm0
4916
4916
; KNL-NEXT: vpmovmskb %ymm0, %eax
@@ -4989,7 +4989,7 @@ define void @ktest_7(<64 x i8> %w, <64 x i8> %x, <64 x i8> %y, <64 x i8> %z) {
4989
4989
; AVX512DQ-NEXT: vpcmpeqb %ymm5, %ymm2, %ymm2
4990
4990
; AVX512DQ-NEXT: vpcmpeqb %ymm5, %ymm3, %ymm3
4991
4991
; AVX512DQ-NEXT: vinserti64x4 $1, %ymm2, %zmm3, %zmm2
4992
- ; AVX512DQ-NEXT: vpternlogq $200, %zmm1, % zmm0, % zmm2
4992
+ ; AVX512DQ-NEXT: vpternlogq {{.*#+}} zmm2 = zmm0 & ( zmm2 | zmm1)
4993
4993
; AVX512DQ-NEXT: vextracti64x4 $1, %zmm2, %ymm0
4994
4994
; AVX512DQ-NEXT: vpor %ymm0, %ymm2, %ymm0
4995
4995
; AVX512DQ-NEXT: vpmovmskb %ymm0, %eax
0 commit comments