trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: March 2012

Re: [trinity-devel] mlt - assembler error have_mmx.S: Assembler messages: Error: operand type mismatch for `push'

From: "David C. Rankin" <drankinatty@...>
Date: Fri, 30 Mar 2012 09:57:37 -0500
On 03/30/2012 09:36 AM, Nix wrote:
>>> You are good. Thank you. So the source needs a rewrite for x86_64 to
>>> >>  eliminate the push/pop. That will be set in the lower priority column.
>> >  Actually a --disable--mmx option is documented on configure.
>> >  And for the rewrite, replacing e?x by r?x in assembler files won't be
>> >  enough, some other code also has to be changed to accommodate the
>> >  different calling conventions (function arguments on linux-x86 are on
>> >  the stack, but the first ones on linux-amd64 are in the 64-bit
>> >  registers). Perhaps using inline assembly would allow having only one
>> >  version of the assembly code.
> More generally, if you're rewriting it for x86-64 anyway, keeping it MMX
> seems pretty much pointless. Just go all the way to SSE, or better that
> SSE2: you'll cut off almost no hardware and be much more useful in
> future. (AVX is probably a step too far: a lot of toolchains don't
> support it yet, and I don't know anyone with AVX hardware.)

Sheesh :)

   You guys are way ahead of me on this one :)

   I know what you are talking about, and where to find the sections in my old 
c++ book, but that is the extent of my current knowledge of the issue. I'll 
capture this information and put it in a bug report, but I can't get to 
working on it until after I get the rest of the major packages patched for 
libpng15 (koffice, digikam, etc..) (and then there is that week or so before 
April 15 (16th this year) that is lost to uncle sam)

   I'll post he bug number and if anyone stumbles across any patch information 
while poking around on the web, please add it to the bug report for reference. 
Thanks :)

-- 
David C. Rankin, J.D.,P.E.