Commit 2d3993ce authored by Justin Ruggles's avatar Justin Ruggles

x86: h264 qpel: use the correct number of utilized xmm regs in cglobal

Fixes xmm register clobbering on win64.
parent e96d90ee
...@@ -157,7 +157,7 @@ QPEL8_H_LOWPASS_OP put ...@@ -157,7 +157,7 @@ QPEL8_H_LOWPASS_OP put
QPEL8_H_LOWPASS_OP avg QPEL8_H_LOWPASS_OP avg
%macro QPEL8_H_LOWPASS_OP_XMM 1 %macro QPEL8_H_LOWPASS_OP_XMM 1
cglobal %1_h264_qpel8_h_lowpass, 4,5,7 ; dst, src, dstStride, srcStride cglobal %1_h264_qpel8_h_lowpass, 4,5,8 ; dst, src, dstStride, srcStride
movsxdifnidn r2, r2d movsxdifnidn r2, r2d
movsxdifnidn r3, r3d movsxdifnidn r3, r3d
mov r4d, 8 mov r4d, 8
...@@ -312,7 +312,7 @@ QPEL8_H_LOWPASS_L2_OP avg ...@@ -312,7 +312,7 @@ QPEL8_H_LOWPASS_L2_OP avg
%macro QPEL8_H_LOWPASS_L2_OP_XMM 1 %macro QPEL8_H_LOWPASS_L2_OP_XMM 1
cglobal %1_h264_qpel8_h_lowpass_l2, 5,6,7 ; dst, src, src2, dstStride, src2Stride cglobal %1_h264_qpel8_h_lowpass_l2, 5,6,8 ; dst, src, src2, dstStride, src2Stride
movsxdifnidn r3, r3d movsxdifnidn r3, r3d
movsxdifnidn r4, r4d movsxdifnidn r4, r4d
mov r5d, 8 mov r5d, 8
...@@ -415,13 +415,13 @@ QPEL4_V_LOWPASS_OP avg ...@@ -415,13 +415,13 @@ QPEL4_V_LOWPASS_OP avg
%macro QPEL8OR16_V_LOWPASS_OP 1 %macro QPEL8OR16_V_LOWPASS_OP 1
%if cpuflag(sse2) %if cpuflag(sse2)
cglobal %1_h264_qpel8or16_v_lowpass, 5,5,7 ; dst, src, dstStride, srcStride, h cglobal %1_h264_qpel8or16_v_lowpass, 5,5,8 ; dst, src, dstStride, srcStride, h
movsxdifnidn r2, r2d movsxdifnidn r2, r2d
movsxdifnidn r3, r3d movsxdifnidn r3, r3d
sub r1, r3 sub r1, r3
sub r1, r3 sub r1, r3
%else %else
cglobal %1_h264_qpel8or16_v_lowpass_op, 5,5,7 ; dst, src, dstStride, srcStride, h cglobal %1_h264_qpel8or16_v_lowpass_op, 5,5,8 ; dst, src, dstStride, srcStride, h
movsxdifnidn r2, r2d movsxdifnidn r2, r2d
movsxdifnidn r3, r3d movsxdifnidn r3, r3d
%endif %endif
...@@ -543,7 +543,7 @@ QPEL4_HV1_LOWPASS_OP put ...@@ -543,7 +543,7 @@ QPEL4_HV1_LOWPASS_OP put
QPEL4_HV1_LOWPASS_OP avg QPEL4_HV1_LOWPASS_OP avg
%macro QPEL8OR16_HV1_LOWPASS_OP 1 %macro QPEL8OR16_HV1_LOWPASS_OP 1
cglobal %1_h264_qpel8or16_hv1_lowpass_op, 4,4,7 ; src, tmp, srcStride, size cglobal %1_h264_qpel8or16_hv1_lowpass_op, 4,4,8 ; src, tmp, srcStride, size
movsxdifnidn r2, r2d movsxdifnidn r2, r2d
pxor m7, m7 pxor m7, m7
movh m0, [r0] movh m0, [r0]
...@@ -635,7 +635,7 @@ QPEL8OR16_HV2_LOWPASS_OP put ...@@ -635,7 +635,7 @@ QPEL8OR16_HV2_LOWPASS_OP put
QPEL8OR16_HV2_LOWPASS_OP avg QPEL8OR16_HV2_LOWPASS_OP avg
%macro QPEL8OR16_HV2_LOWPASS_OP_XMM 1 %macro QPEL8OR16_HV2_LOWPASS_OP_XMM 1
cglobal %1_h264_qpel8or16_hv2_lowpass, 5,5,7 ; dst, tmp, dstStride, tmpStride, size cglobal %1_h264_qpel8or16_hv2_lowpass, 5,5,8 ; dst, tmp, dstStride, tmpStride, size
movsxdifnidn r2, r2d movsxdifnidn r2, r2d
movsxdifnidn r3, r3d movsxdifnidn r3, r3d
cmp r4d, 16 cmp r4d, 16
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment