On 18/08/09 2:31 AM, "Jonathan Kinsey" <[email protected]> wrote:
> 
> 
> Are you sure?  The only link I could find about this says different:
> 
> http://www.network-theory.co.uk/docs/gccintro/gccintro_64.html
> 
> I suppose the only way to find out for sure is to test it, if someone can find
> a
> machine that doesn't support sse...
> 
> It does seem unlikely that two lots of code would get generated for every
> optimised part of code, but maybe there is some magic going on...
> 

Maybe we are answering two possible questions.. Max¹s question was a bit
ambiguous\

By default SSE instructions will fail with illegal operations when run on
unsuported hardware. So if you have SSE2 instructions and run them on an MMX
processor or a processor withoutt them it will crash dump.

However, my answer was using knowledge of the changes you made to the code.
If you have SSE autodetect (in the Gnubg code) on  and build with ­msse2 and
run the software on NON SSE2 systems it will fall back to Non SSE
instructions (That¹s what my tests indicate with builds I did). Same goes
for ­msse builds and running on systems that don¹t¹ have that capability.

I think we are ultimately talking the same thing. My opinion is we can do
two builds

1) CPU Autodetect on version built with ­msse2 and USE_SSE2
2) CPU Autodetect on version built with ­msse and USE_VECTORIZE

If someone has an MMX(SSE) system they use #2 for best performance.
If someone has an SSE2 only they use #1 for best performance.
If someone has no MMX or SSE2 support they can use either build
_______________________________________________
Bug-gnubg mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-gnubg

Reply via email to