RFR: 8162865 Implementation of SPARC lzcnt
    Vladimir Kozlov 
    vladimir.kozlov at oracle.com
       
    Tue Nov 22 20:04:09 UTC 2016
    
    
  
Hi Trevor
Do you have performance numbers?
UseVIS is too wide flag to control only these instructions generation.
To be consistent with x86 code please add 
UseCountLeadingZerosInstruction flag to globals_sparc.hpp and its 
setting in vm_version_sparc.cpp (based on has_vis3()) similar to what is 
done for x86.
May be name new instructions *ZerosIvis instead of *ZerosI1 to be clear 
that VIS is used.
Indention in the new test is all over place. Please, fix.
Thanks,
Vladimir
On 11/15/16 3:57 AM, Trevor Watson wrote:
> I have implemented the code to use the lzcnt instruction for both
> integer and long countLeadingZeros() methods on SPARC platforms
> supporting the vis3 instruction set.
>
> Current "bmi" tests for the above are updated so that they run on both
> SPARC and x86 platforms.
>
> I've also implemented a test to ensure that Integer.countLeadingZeros()
> and Long.countLeadingZeros() return the correct values when C2 runs.
> This test is currently under the intrinsics "bmi" tests for want of
> somewhere better (they do apply to both SPARC and x86 though).
>
> http://cr.openjdk.java.net/~alanbur/8162865/
>
> Thanks,
> Trevor
    
    
More information about the hotspot-dev
mailing list