[FFmpeg-cvslog] x86/dirac: fix asm on win64
Michael Niedermayer
git at videolan.org
Mon Jan 14 23:33:33 CET 2013
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Mon Jan 14 23:26:33 2013 +0100| [9cb3c1a4d9dbf28d032f5af8fde85993f8148a54] | committer: Michael Niedermayer
x86/dirac: fix asm on win64
This could also be fixed by changing the argument type if
someone prefers that and wants to change it ...
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9cb3c1a4d9dbf28d032f5af8fde85993f8148a54
---
libavcodec/x86/diracdsp_yasm.asm | 4 ++++
libavcodec/x86/dwt_yasm.asm | 15 +++++++++++++++
2 files changed, 19 insertions(+)
diff --git a/libavcodec/x86/diracdsp_yasm.asm b/libavcodec/x86/diracdsp_yasm.asm
index d12fc64..3e9765b 100644
--- a/libavcodec/x86/diracdsp_yasm.asm
+++ b/libavcodec/x86/diracdsp_yasm.asm
@@ -136,6 +136,8 @@ cglobal put_signed_rect_clamped_%1, 5,9,3, dst, dst_stride, src, src_stride, w,
and wd, ~(mmsize-1)
%if ARCH_X86_64
+ movsxd dst_strideq, dst_strided
+ movsxd src_strideq, src_strided
mov r7d, r5m
mov r8d, wd
%define wspill r8d
@@ -177,6 +179,8 @@ cglobal add_rect_clamped_%1, 7,9,3, dst, src, stride, idwt, idwt_stride, w, h
and wd, ~(mmsize-1)
%if ARCH_X86_64
+ movsxd strideq, strided
+ movsxd idwt_strideq, idwt_strided
mov r8d, wd
%define wspill r8d
%else
diff --git a/libavcodec/x86/dwt_yasm.asm b/libavcodec/x86/dwt_yasm.asm
index f6280d1..5253abc 100644
--- a/libavcodec/x86/dwt_yasm.asm
+++ b/libavcodec/x86/dwt_yasm.asm
@@ -64,6 +64,9 @@ section .text
; int width)
cglobal vertical_compose53iL0_%1, 4,4,1, b0, b1, b2, width
mova m2, [pw_2]
+%if ARCH_X86_64
+ mov widthd, widthd
+%endif
.loop:
sub widthq, mmsize/2
mova m1, [b0q+2*widthq]
@@ -77,6 +80,9 @@ cglobal vertical_compose53iL0_%1, 4,4,1, b0, b1, b2, width
; int width)
cglobal vertical_compose_dirac53iH0_%1, 4,4,1, b0, b1, b2, width
mova m1, [pw_1]
+%if ARCH_X86_64
+ mov widthd, widthd
+%endif
.loop:
sub widthq, mmsize/2
mova m0, [b0q+2*widthq]
@@ -93,6 +99,9 @@ cglobal vertical_compose_dirac53iH0_%1, 4,4,1, b0, b1, b2, width
cglobal vertical_compose_dd97iH0_%1, 6,6,5, b0, b1, b2, b3, b4, width
mova m3, [pw_8]
mova m4, [pw_1991]
+%if ARCH_X86_64
+ mov widthd, widthd
+%endif
.loop:
sub widthq, mmsize/2
mova m0, [b0q+2*widthq]
@@ -107,6 +116,9 @@ cglobal vertical_compose_dd97iH0_%1, 6,6,5, b0, b1, b2, b3, b4, width
cglobal vertical_compose_dd137iL0_%1, 6,6,6, b0, b1, b2, b3, b4, width
mova m3, [pw_16]
mova m4, [pw_1991]
+%if ARCH_X86_64
+ mov widthd, widthd
+%endif
.loop:
sub widthq, mmsize/2
mova m0, [b0q+2*widthq]
@@ -131,6 +143,9 @@ cglobal vertical_compose_dd137iL0_%1, 6,6,6, b0, b1, b2, b3, b4, width
; void vertical_compose_haar(IDWTELEM *b0, IDWTELEM *b1, int width)
cglobal vertical_compose_haar_%1, 3,4,3, b0, b1, width
mova m3, [pw_1]
+%if ARCH_X86_64
+ mov widthd, widthd
+%endif
.loop:
sub widthq, mmsize/2
mova m1, [b1q+2*widthq]
More information about the ffmpeg-cvslog
mailing list