[FFmpeg-devel] [PATCH] fix for roundup issue 2127

Daniel Kang daniel.d.kang
Sat Jan 1 19:33:47 CET 2011


On Sat, Jan 1, 2011 at 11:15 AM, Reimar D?ffinger
<Reimar.Doeffinger at gmx.de>wrote:

> Besides avoiding to top-post, the two strides should probably be marked
> early-clobber (&), I can't see why they are in the clobber list, and I also
> don't see why you add casts to the function calls. Well, for the last one
> there is at least no point _currently_, we should add casts just because it
> is possible to change the type so you need them, because in that case a lot
> of code needs to be reviewed very closely anyway.


Sorry for the top posting. This is my first time using a mailing list.

I cast to x86_reg because addressing does not work in 64-bit otherwise.
I get the errors:

libavcodec/x86/dsputil_mmx.h: Assembler messages:
libavcodec/x86/dsputil_mmx.h:100: Error: `(%rdi,%r10d)' is not a valid
base/index expression libavcodec/x86/dsputil_mmx.h:101: Error:
`(%rdi,%r10d,2)' is not a valid base/index expression
libavcodec/x86/dsputil_mmx.h:103: Error: `(%rdi,%r10d)' is not a valid
base/index expression libavcodec/x86/dsputil_mmx.h:111: Error:
`(%r9,%ecx)' is not a valid base/index expression
libavcodec/x86/dsputil_mmx.h:112: Error: `(%r9,%ecx,2)' is not a valid
base/index expression libavcodec/x86/dsputil_mmx.h:115: Error:
`(%r9,%ecx)' is not a valid base/index expression
libavcodec/x86/dsputil_mmx.h:100: Error: `(%rcx,%r9d)' is not a valid
base/index expression libavcodec/x86/dsputil_mmx.h:101: Error:
`(%rcx,%r9d,2)' is not a valid base/index expression
libavcodec/x86/dsputil_mmx.h:103: Error: `(%rcx,%r9d)' is not a valid
base/index expression libavcodec/x86/dsputil_mmx.h:111: Error:
`(%r10,%r8d)' is not a valid base/index expression
libavcodec/x86/dsputil_mmx.h:112: Error: `(%r10,%r8d,2)' is not a valid
base/index expression libavcodec/x86/dsputil_mmx.h:115: Error:
`(%r10,%r8d)' is not a valid base/index expression make: ***
[libavcodec/x86/dsputil_mmx.o] Error 1

when I don't cast to x86_reg. In x86_64, addressing must occur with
64-bit registers, and not the 32-bit equivalents.

I have updated the patch with your comments.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fix.diff
Type: application/octet-stream
Size: 3444 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20110101/17d67de2/attachment.obj>



More information about the ffmpeg-devel mailing list