From: Eric Botcazou <ebotca...@adacore.com>
Date: Mon, 15 Oct 2012 10:00:02 +0200

>> > The only versions of the Solaris assembler I have access to only support
>> > v8plusX according to the man page.  Has that changed recently?
>> 
>> For the older stuff I mean doing something like "-m32 -xarch=v9X"
> 
> OK, this is for fbe, not for as.  I think that the latter is always available 
> on the machines, but I'm not sure for the former.  Rainer very likely knows.
> 
>> The current assembler in Solaris Studio (called 'fbe') calls this
>> stuff "sparc4" which I guess means "SPARC-T4 and later".
> 
> Ah, thanks.  I agree that using the same monikers is the right thing to do...
> 
>> I'm just calling it VIS4 in GCC so that we can export intrinsics of,
>> for example, the cryptographic instructions at some point using the
>> __VIS__ version CPP tests.
> 
> ...that's why I'm not sure we should invent VIS4 at this point.  How is this 
> done on the Solaris Studio side?  Couldn't we add a new architecture to the 
> compiler (-mcpu=sparc4, with -mcpu=niagara4 as first variant), and define 
> __sparc4__ for the preprocessor?

I've scanned the documentation and there is no indication of any preprocessor
predefines or anything like that.

And keep in mind that __VIS__ is our very own invention.

Sun's compilers never predefined this.

Their makefiles do for various targets in the MediaLib sources, but that's
a source tree and header file localized convention.

Sun also never provided intrinsics other than via assembler inlines in
their VIS header.  They were never compiler builtins like our's.  The
user had to define __VIS__ on the command line to get visibility of
the routines they wanted from Sun's VIS inline assembler header file.

Sun also does not provide, and is almost certainly not going to ever
provide crypto intrinsics.

Therefore there is no convention to follow and we can do whatever we want
here.

Reply via email to