[MPlayer-dev-eng] [PATCH] missing regs in clobber list

Reimar Döffinger Reimar.Doeffinger at stud.uni-karlsruhe.de
Sun Dec 26 12:53:05 CET 2004


Hi,

> > > I think the c_longcount_tsc fragment should have eax in the clobber list as
> > > well as edx.
> 
> > The "a"(z) assigns the z variable to the eax register so it is
> > "clobbered" implicitly. At least that is how I remmeber it.
> 
> No, "a"(z) just tells the compiler to put z in eax, but it might use that
> knowledge later when computing values derived from z (including the value of z
> itself).

Yes, of course, the same happens when you do e.g. z*=2 ;-). But z isn't used anywhere later in this function so that it is modified is an non-issue.

> Hmm, you're right.  This could be a gcc bug, or else gcc defines "clobber" as
> "totally disallow" (which has its uses).
> 
> This one works, using ebx from the start:

Although I find it a useless thing to do I don't want to make things
more difficult for people that insist on using PIC...

Greetings,
Reimar Döffinger




More information about the MPlayer-dev-eng mailing list