; GENERIC: # %bb.0:
; GENERIC-NEXT: vextractf128 $1, %ymm0, %xmm0 # sched: [1:1.00]
; GENERIC-NEXT: vextractf128 $1, %ymm1, (%rdi) # sched: [5:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SANDY-LABEL: test_extractf128:
; SANDY: # %bb.0:
; SANDY-NEXT: vextractf128 $1, %ymm0, %xmm0 # sched: [1:1.00]
; SANDY-NEXT: vextractf128 $1, %ymm1, (%rdi) # sched: [5:1.00]
-; SANDY-NEXT: vzeroupper
+; SANDY-NEXT: vzeroupper # sched: [100:0.33]
; SANDY-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_extractf128:
; GENERIC-LABEL: test_movmskpd:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovmskpd %ymm0, %eax # sched: [2:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SANDY-LABEL: test_movmskpd:
; SANDY: # %bb.0:
; SANDY-NEXT: vmovmskpd %ymm0, %eax # sched: [2:1.00]
-; SANDY-NEXT: vzeroupper
+; SANDY-NEXT: vzeroupper # sched: [100:0.33]
; SANDY-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_movmskpd:
; GENERIC-LABEL: test_movmskps:
; GENERIC: # %bb.0:
; GENERIC-NEXT: vmovmskps %ymm0, %eax # sched: [2:1.00]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SANDY-LABEL: test_movmskps:
; SANDY: # %bb.0:
; SANDY-NEXT: vmovmskps %ymm0, %eax # sched: [2:1.00]
-; SANDY-NEXT: vzeroupper
+; SANDY-NEXT: vzeroupper # sched: [100:0.33]
; SANDY-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_movmskps:
; GENERIC-NEXT: #APP
; GENERIC-NEXT: vmovntdq %ymm0, (%rdi) # sched: [5:1.00]
; GENERIC-NEXT: #NO_APP
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SANDY-LABEL: test_movntdq:
; SANDY-NEXT: #APP
; SANDY-NEXT: vmovntdq %ymm0, (%rdi) # sched: [5:1.00]
; SANDY-NEXT: #NO_APP
-; SANDY-NEXT: vzeroupper
+; SANDY-NEXT: vzeroupper # sched: [100:0.33]
; SANDY-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_movntdq:
; GENERIC-NEXT: setb %al # sched: [1:0.50]
; GENERIC-NEXT: vtestpd (%rdi), %ymm0 # sched: [8:1.00]
; GENERIC-NEXT: adcl $0, %eax # sched: [2:0.67]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SANDY-LABEL: test_testpd_ymm:
; SANDY-NEXT: setb %al # sched: [1:0.50]
; SANDY-NEXT: vtestpd (%rdi), %ymm0 # sched: [8:1.00]
; SANDY-NEXT: adcl $0, %eax # sched: [2:0.67]
-; SANDY-NEXT: vzeroupper
+; SANDY-NEXT: vzeroupper # sched: [100:0.33]
; SANDY-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_testpd_ymm:
; GENERIC-NEXT: setb %al # sched: [1:0.50]
; GENERIC-NEXT: vtestps (%rdi), %ymm0 # sched: [8:1.00]
; GENERIC-NEXT: adcl $0, %eax # sched: [2:0.67]
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SANDY-LABEL: test_testps_ymm:
; SANDY-NEXT: setb %al # sched: [1:0.50]
; SANDY-NEXT: vtestps (%rdi), %ymm0 # sched: [8:1.00]
; SANDY-NEXT: adcl $0, %eax # sched: [2:0.67]
-; SANDY-NEXT: vzeroupper
+; SANDY-NEXT: vzeroupper # sched: [100:0.33]
; SANDY-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_testps_ymm:
define void @test_zeroall() {
; GENERIC-LABEL: test_zeroall:
; GENERIC: # %bb.0:
-; GENERIC-NEXT: vzeroall
+; GENERIC-NEXT: vzeroall # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SANDY-LABEL: test_zeroall:
; SANDY: # %bb.0:
-; SANDY-NEXT: vzeroall
+; SANDY-NEXT: vzeroall # sched: [100:0.33]
; SANDY-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_zeroall:
define void @test_zeroupper() {
; GENERIC-LABEL: test_zeroupper:
; GENERIC: # %bb.0:
-; GENERIC-NEXT: vzeroupper
+; GENERIC-NEXT: vzeroupper # sched: [100:0.33]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; SANDY-LABEL: test_zeroupper:
; SANDY: # %bb.0:
-; SANDY-NEXT: vzeroupper
+; SANDY-NEXT: vzeroupper # sched: [100:0.33]
; SANDY-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_zeroupper:
define <2 x i64> @test_extrq(<2 x i64> %a0, <16 x i8> %a1) {
; GENERIC-LABEL: test_extrq:
; GENERIC: # %bb.0:
-; GENERIC-NEXT: extrq %xmm1, %xmm0
+; GENERIC-NEXT: extrq %xmm1, %xmm0 # sched: [3:1.00]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; BTVER2-LABEL: test_extrq:
define <2 x i64> @test_extrqi(<2 x i64> %a0) {
; GENERIC-LABEL: test_extrqi:
; GENERIC: # %bb.0:
-; GENERIC-NEXT: extrq $2, $3, %xmm0
+; GENERIC-NEXT: extrq $2, $3, %xmm0 # sched: [3:1.00]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; BTVER2-LABEL: test_extrqi:
define <2 x i64> @test_insertq(<2 x i64> %a0, <2 x i64> %a1) {
; GENERIC-LABEL: test_insertq:
; GENERIC: # %bb.0:
-; GENERIC-NEXT: insertq %xmm1, %xmm0
+; GENERIC-NEXT: insertq %xmm1, %xmm0 # sched: [3:1.00]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; BTVER2-LABEL: test_insertq:
define <2 x i64> @test_insertqi(<2 x i64> %a0, <2 x i64> %a1) {
; GENERIC-LABEL: test_insertqi:
; GENERIC: # %bb.0:
-; GENERIC-NEXT: insertq $6, $5, %xmm1, %xmm0
+; GENERIC-NEXT: insertq $6, $5, %xmm1, %xmm0 # sched: [3:1.00]
; GENERIC-NEXT: retq # sched: [1:1.00]
;
; BTVER2-LABEL: test_insertqi: