Request for reviews (M): 7059034: Use movxtod/movdtox on T4
christian.thalinger at oracle.com
Thu Jul 7 03:24:43 PDT 2011
On Jul 7, 2011, at 1:04 AM, Vladimir Kozlov wrote:
> Fixed 7059034: Use movxtod/movdtox on T4
> Currently VM uses stack to move data between general and float registers on Sparc. Use new VIS3 mov instructions on T4 for such moves.
> I removed R_F30,R_F31 from dflt_low_reg since they used as temps (see line 412).
> Also fixed float<->integer conversion instructions since they used incorrect Width for float register encoding. For example, encoding failed for next instr ftoi(FloatRegisterImpl::D,F4,F1) and fitof(FloatRegisterImpl::D,F1,F8).
> Tested with CTW, nsk.
> I attached microbenchmark test to the bug report.
I see you did some spaces cleanup in sparc.ad. Could you also do that with the new code you add to src/cpu/sparc/vm/vm_version_sparc.cpp? E.g. if( x ) => if (x) and UseVIS=x => UseVIS = x.
Otherwise this looks good.
More information about the hotspot-compiler-dev