[MPlayer-dev-eng] [PATCH] -fPIC support for libswscale

Michael Niedermayer michaelni at gmx.at
Sat Aug 12 18:43:47 CEST 2006


Hi


On Sat, Aug 12, 2006 at 11:20:53AM -0400, Jason Tackaberry wrote:
[...]
> > > -			: "%"REG_a, "%"REG_b, "%"REG_c, "%"REG_d, "%"REG_S, "%"REG_D
> > > +			: "%"REG_a, "%"REG_BP, "%"REG_c, "%"REG_d, "%"REG_S, "%"REG_D
> > 
> > ive a bad feeling about this change, i wont accpet this unless it is tested
> > on 2.95,3.4,4.something (test here means the specific piece above must be
> > executed and produce a binary identical picture)
> > the problem is gcc uses ebp to access "m" if -fomit-frame-pointer isnt used
> > (so yes the test MUST NOT use that of course)
> 
> Yeah, you're right, without -fomit-frame-pointer it doesn't like the
> fact that REG_BP gets clobbered.  I could push/pop it, but then I might
> as well push/pop ebx.  The problem is when I do this (whether it's with
> ebx or ebp) I get a segfault when dereferencing the register that has
> the location to mmx2FilterPos, and I'm not quite sure why.

"m" are accessed via esp (the stack pointer) if -fomit-frame-pointer
is used, push/pop put and remove stuff from the stack, to do that they
increase and decrease esp ...


> 
> Will you accept a patch that builds with -fno-PIC or -fPIC
> -fomit-frame-pointer but not -fPIC (without -fomit-frame-pointer)?  The
> problem is with -fPIC and not -fomit-frame-pointer we have too few free
> registers and would require far more mutilation of libswscale than
> anyone would be willing to accept.

ok

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

In the past you could go to a library and read, borrow or copy any book
Today you'd get arrested for mere telling someone where the library is



More information about the MPlayer-dev-eng mailing list