[MPlayer-dev-eng] cpuid vs 386 vs 486

Michael Niedermayer michaelni at gmx.at
Tue Feb 5 23:15:47 CET 2002


Hi

On Tuesday 05 February 2002 22:19, David Holm wrote:
> In cpudetect.c the mnemonic "pushf" is used to fetch the Eflag register
> although the amd tech docs recommend you use "pushfd". The intel manual
> says pushf/pushfd may be synonyms in your assembler, BUT this might not
> be true in which case pushf performs a 16bit push and pushfd performs a
> 32bit push. Since the Eflag is compared (xor:ed) against a 24bit value
> (0x200000) it seems illogical to use pushf here. I do not know how gas
> would translate pushf but it sounds like it is translated to a 16 bit
> and might cause an error.
> Try using the mnemonic pushfd and see if you still get sig ILL. For the
> sake of portability I think this should be conformed to the standard
> (pushfd) as not to cause problems on say solaris or any other system
> which might use a proprietary assembler which would translate pushf into
> a 16 bit push.

pushfd is intel syntax ...
pushfl is what u want

[...]
Michael



More information about the MPlayer-dev-eng mailing list