[Ffmpeg-devel] gcc4 support & MMX fixups (from Debian)

Paweł Sikora pluto
Wed Feb 1 22:24:55 CET 2006


Dnia Wednesday, 1 of February 2006 21:59, M?ns Rullg?rd napisa?:

> > maybe we should typedef int int64_t; on x86-64? arrays where space
> > matters should be of the intXX_t type or similar anyway
>
> Did you by any chance mean #define int int64_t?  The typedef you
> suggest is illegal, and will break things.

I suggest we should use a size_t type for params like *_stride
to avoid (on x86-64) unneeded 32<->64 conversions.
this simple changes reduces transpose4x4 prologue from:

transpose4x4:
	leal	(%rdx,%rdx), %r9d
	leal	(%rcx,%rcx), %eax
	movslq	%edx,%r11
	movslq	%ecx,%r8
	movslq	%r9d,%r10
	addl	%edx, %r9d
	movslq	%eax,%rdx
	addl	%ecx, %eax
	movslq	%r9d,%r9
	cltq
	(...)

to:

transpose4x4:
	leaq	(%rdx,%rdx,2), %r8
	leaq	(%rcx,%rcx,2), %rax
	(...)

-- 
to_be || !to_be == 1, to_be | ~to_be == -1





More information about the ffmpeg-devel mailing list