Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2006-12-19 07:02:57


Glenn Schrader wrote:

> The cas instruction is supported on the sparc v8plus and v9. Support
> for
> just sparc v8 is inadequate. In that case you need to use the swap
> instruction and some looping to do something similar to a cas. Another
> wrinkle is that just removing the defined(__sparcv8) from the above
> condition doesn't quite do the right thing with gcc. From what I can
> tell gcc is setting __sparcv8 even if -mcpu=v9 is specified. I have a
> v9 processor but I'm running 32 bit solaris so could gcc be basing the
> __sparcv8/v9 defines on the OS rather than the cpu type? The biggest
> difference between the v8 and v9 cpus is 64bit support.

The problem is that some versions of GCC are setting the v9 macro only in
64-bit builds (probably because of existing code that makes this assumption)
and I'm not sure what we can do about that. Is __sparcv8plus defined for
you? It's the right macro in principle, but I suspect that it's not being
used because it doesn't work.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk