Request for review (M): 6812587: Use auxv to determine SPARC hardware features on Solaris

Tom Rodriguez Thomas.Rodriguez at Sun.COM
Wed Mar 4 11:16:50 PST 2009


Have you verified that this returns answers that are largely  
consistent with the old results?  Do we know whether AT_HWCAP is valid  
and/or correctly set in earlier releases?  The getisax code seems kind  
of oddly coded.  The extra auxv_t seems useless since it's just set to  
AT_NULL and never read.  I'd prefer if the result of the read were  
checked against statb.st_size.  Shouldn't we use the real getisax if  
it's available?

On Mar 3, 2009, at 3:18 PM, Christian Thalinger wrote:

> http://cr.openjdk.java.net/~twisti/6812587/webrev.00/
>
> One thing I noticed when changing this code is, on a system that  
> prints:
>
> $ isainfo -x
> sparcv9: asi_blk_init
> sparc: asi_blk_init v8plus div32 mul32
>
> HotSpot prints:
>
> CPU:total 32 has_v8, has_v9, has_vis1, is_sun4v, is_niagara1

I believe niagara 1 has some VIS support but it's not complete and  
some of what's there isn't fast enough to be useful.  We probably  
shouldn't be claiming that it has it.

> (note the vis1 flag).
>
> I don't know very much about different SPARC generations and what  
> these
> processors support, but it seems the definition of generic_v9_m is  
> wrong
> (it sets vis1_instructions_m).  Am I wrong?

Prior to Niagara it was true but it no longer is.  Using getisax to  
figure this out is much better.

tom

>
>
> -- Christian
>




More information about the hotspot-dev mailing list