9233989: ecx and edx were mixed up

2015-09-28 Thread Martin Nilsson (Opera Mini - AFK!) @ Pike (-) developers forum
Well, I didn't actually change the order. But I see that the code in cpulib outputs them differently depending on which assembler code is used, which is bad of course. Fixing that should make ia32 work with all compilers.

Re: 9233989: ecx and edx were mixed up

2015-09-28 Thread Chris Angelico
On Tue, Sep 29, 2015 at 12:40 AM, Martin Nilsson (Opera Mini - AFK!) @ Pike (-) developers forum <10...@lyskom.lysator.liu.se> wrote: > Well, I didn't actually change the order. But I see that the code in > cpulib outputs them differently depending on which assembler code is > used, which is bad

Re: 9233989: ecx and edx were mixed up

2015-09-28 Thread Martin Nilsson (Opera Mini - AFK!) @ Pike (-) developers forum
I'm not sure what they stand for (well, they are listed in the x86 processor specific output constraints in the gcc documentation). I simply checked that the output string is correct if called as ia32.c calls the code.

Re: 9233989: ecx and edx were mixed up

2015-09-28 Thread Chris Angelico
On Tue, Sep 29, 2015 at 2:00 AM, Martin Nilsson (Opera Mini - AFK!) @ Pike (-) developers forum <10...@lyskom.lysator.liu.se> wrote: > I'm not sure what they stand for (well, they are listed in the x86 > processor specific output constraints in the gcc documentation). I > simply checked that the

9233989: ecx and edx were mixed up

2015-09-27 Thread Chris Angelico
For operation 0, the text string is indeed returned in [EAX]/EBX/EDX/ECX. However, the string is used only in src/code/ia32.c for its detection of AMD vs Intel, so it's entirely possible this change won't break anything anywhere else. Might merit a comment and some odd code in that one file,