[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Use MMX or SSE for Apple II



"Linards Ticmanis" <ticmanis@gmx.de> wrote in message 
news:455541f3$0$18838$9b4e6d93@newsspool4.arcor-online.net...
> Shawn B. wrote:
>
>> Also, the 64-bit C/C++ compilers don't allow
>> inlined assembly instructions and so the entire routine will have to be 
>> done
>> in asembly and linked in seperately.
>
> *The* 64-bit compilers? All of them?

    Shawn is correct since I have read newsgroups at comp.lang.asm.x86 1-2 
years ago.  It may be some reasons why inline asm is removed from C/C++ 
Compiler when it is in 64 bit mode.  It may be incompatible issue between 
Pentium, Itanium, and x86-64.  You can still use inline asm for x86-32 when 
C/C++ Compiler is in 32 bit mode.
    It can be error prone when you write assembly language and attempt to 
optimize it manually is a waste of time.  You have to program C/C++ code 
first and use C/C++ Compiler's option to optimize C/C++ code.  Then test it 
to count clock cycle of x86 measurement in seconds.  If it does not satisfy 
you, then you attempt to change your algorithm before it is the last option 
to use assembly language.  Itanium assembly language can be very complicated 
than x86-32.
    Using MMX / SSE is very worth to work on x86-32, x86-64, and Itanium, 
but unfortunately, not all SSE instructions have the same machine codes.  It 
requires you to compile C/C++ code using MMX / SSE codes on x86-32.  Then, 
you have to recompile it for x86-64 and Itanium to work.

Bryan Parkoff