; GENERIC-LABEL: slto4f32:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vcvtqq2ps %ymm0, %xmm0 # sched: [4:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: slto4f32:
; GENERIC-LABEL: ulto4f32:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vcvtuqq2ps %ymm0, %xmm0 # sched: [4:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: ulto4f32:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vcvttps2dq %zmm0, %zmm0 # sched: [3:1.00]
; GENERIC-NEXT: vpmovdb %zmm0, %xmm0 # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: f32to16uc:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vcvttpd2dq %zmm0, %ymm0 # sched: [3:1.00]
; GENERIC-NEXT: vpmovdw %ymm0, %xmm0 # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: f64to8us:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vcvttpd2dq %zmm0, %ymm0 # sched: [3:1.00]
; GENERIC-NEXT: vpmovdw %ymm0, %xmm0 # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: f64to8uc:
; GENERIC-LABEL: f64to4ui:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vcvttpd2udq %ymm0, %xmm0 # sched: [3:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: f64to4ui:
; GENERIC-LABEL: f64to4si:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vcvttpd2dq %ymm0, %xmm0 # sched: [4:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: f64to4si:
; GENERIC-LABEL: f64to4f32:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vcvtpd2ps %ymm0, %xmm0 # sched: [4:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: f64to4f32:
; GENERIC-NEXT: vpslld $31, %xmm1, %xmm1 # sched: [1:1.00]
; GENERIC-NEXT: vptestmd %xmm1, %xmm1, %k1 # sched: [1:1.00]
; GENERIC-NEXT: vcvtpd2ps %ymm0, %xmm0 {%k1} {z} # sched: [3:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: f64to4f32_mask:
; GENERIC-NEXT: vptestmd %zmm0, %zmm0, %k0 # sched: [1:1.00]
; GENERIC-NEXT: kmovd %k0, %eax # sched: [1:0.33]
; GENERIC-NEXT: # kill: def %ax killed %ax killed %eax
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: trunc_16i32_to_16i1:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vpcmpgtd %ymm0, %ymm1, %k0 # sched: [3:1.00]
; GENERIC-NEXT: vpmovm2w %k0, %xmm0 # sched: [1:0.33]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: sext_8i1_8i16:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vpmovsxbq (%rdi), %zmm0 # sched: [5:1.00]
; GENERIC-NEXT: vmovdqa64 %zmm0, (%rsi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: extload_v8i64:
; GENERIC-LABEL: mov_test18:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovaps %zmm0, (%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: mov_test18:
; GENERIC-LABEL: mov_test19:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovups %zmm0, (%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: mov_test19:
; GENERIC-LABEL: mov_test20:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovaps %zmm0, (%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: mov_test20:
; GENERIC-LABEL: mov_test22:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovups %zmm0, (%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: mov_test22:
; GENERIC-LABEL: mov_test24:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovaps %zmm0, (%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: mov_test24:
; GENERIC-LABEL: mov_test26:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovaps %zmm0, (%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: mov_test26:
; GENERIC-LABEL: mov_test28:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovups %zmm0, (%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: mov_test28:
; GENERIC-LABEL: mov_test30:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovups %zmm0, (%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: mov_test30:
; GENERIC-NEXT: kshiftrw $15, %k0, %k0 # sched: [1:1.00]
; GENERIC-NEXT: kmovd %k0, %eax # sched: [1:0.33]
; GENERIC-NEXT: andl $1, %eax # sched: [1:0.33]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: zext_test1:
; GENERIC-NEXT: kmovd %k0, %eax # sched: [1:0.33]
; GENERIC-NEXT: andl $1, %eax # sched: [1:0.33]
; GENERIC-NEXT: # kill: def %ax killed %ax killed %eax
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: zext_test2:
; GENERIC-NEXT: kmovd %k0, %eax # sched: [1:0.33]
; GENERIC-NEXT: andb $1, %al # sched: [1:0.33]
; GENERIC-NEXT: # kill: def %al killed %al killed %eax
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: zext_test3:
; GENERIC-NEXT: vpcmpgtq %ymm3, %ymm2, %k1 # sched: [3:1.00]
; GENERIC-NEXT: kandnw %k0, %k1, %k0 # sched: [1:1.00]
; GENERIC-NEXT: vpmovm2d %k0, %xmm0 # sched: [1:0.33]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: test4:
; GENERIC-NEXT: # %bb.2:
; GENERIC-NEXT: vpcmpltud %zmm2, %zmm1, %k0 # sched: [3:1.00]
; GENERIC-NEXT: vpmovm2b %k0, %xmm0 # sched: [1:0.33]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
; GENERIC-NEXT: .LBB386_1:
; GENERIC-NEXT: vpcmpgtd %zmm2, %zmm0, %k0 # sched: [3:1.00]
; GENERIC-NEXT: vpmovm2b %k0, %xmm0 # sched: [1:0.33]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: vcmp_test8:
; GENERIC-NEXT: je .LBB410_2 # sched: [1:1.00]
; GENERIC-NEXT: # %bb.1: # %L1
; GENERIC-NEXT: vmovapd %zmm0, (%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
; GENERIC-NEXT: .LBB410_2: # %L2
; GENERIC-NEXT: vmovapd %zmm0, 8(%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: ktest_1:
; GENERIC-NEXT: # %bb.1: # %L1
; GENERIC-NEXT: vmovaps %zmm0, (%rdi) # sched: [1:1.00]
; GENERIC-NEXT: vmovaps %zmm1, 64(%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
; GENERIC-NEXT: .LBB411_2: # %L2
; GENERIC-NEXT: vmovaps %zmm0, 4(%rdi) # sched: [1:1.00]
; GENERIC-NEXT: vmovaps %zmm1, 68(%rdi) # sched: [1:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: ktest_2:
; GENERIC-NEXT: vpsllw $7, %ymm0, %ymm0 # sched: [1:1.00]
; GENERIC-NEXT: vpmovb2m %ymm0, %k0 # sched: [1:0.33]
; GENERIC-NEXT: kmovd %k0, (%rdi)
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: store_32i1:
; GENERIC-NEXT: vpsllw $15, %zmm0, %zmm0 # sched: [3:1.00]
; GENERIC-NEXT: vpmovw2m %zmm0, %k0 # sched: [1:0.33]
; GENERIC-NEXT: kmovd %k0, (%rdi)
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: store_32i1_1:
; GENERIC-NEXT: vpsllw $7, %zmm0, %zmm0 # sched: [3:1.00]
; GENERIC-NEXT: vpmovb2m %zmm0, %k0 # sched: [1:0.33]
; GENERIC-NEXT: kmovq %k0, (%rdi)
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: store_64i1:
; GENERIC-NEXT: vpcmpeqd %zmm1, %zmm0, %k0 # sched: [3:1.00]
; GENERIC-NEXT: kmovb %k0, %eax # sched: [1:0.33]
; GENERIC-NEXT: addl %eax, %eax # sched: [1:0.33]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: test_bitcast_v8i1_zext:
; GENERIC-NEXT: vpcmpeqd %zmm1, %zmm0, %k0 # sched: [3:1.00]
; GENERIC-NEXT: kmovw %k0, %eax # sched: [1:0.33]
; GENERIC-NEXT: addl %eax, %eax # sched: [1:0.33]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SKX-LABEL: test_bitcast_v16i1_zext: