Request for reviews (M): 7018378: JSR 292: _bound_int_mh produces wrong result on 64-bit SPARC
Vladimir Kozlov
vladimir.kozlov at oracle.com
Thu Feb 10 10:00:17 PST 2011
Looks good.
Vladimir
Christian Thalinger wrote:
> http://cr.openjdk.java.net/~twisti/7018378/webrev.01/
>
> 7018378: JSR 292: _bound_int_mh produces wrong result on 64-bit SPARC
> Reviewed-by:
>
> The bug is in the implementation of SPARC's _bound_int_direct_mh. The
> current code reads a 64-bit integer value with ldx and tries to
> sign-extend it properly for st_long. But that sign-extension code is
> wrong.
>
> The fix is to replace the existing code with a ld_long/st_long
> sequence.
>
> Additionally this change adds a store_sized_value method which is used
> along with load_sized_value in the _bound_*_mh adapters for SPARC and
> x86.
>
> I also fixed a similar bug in _adapter_opt_i2l to move the right bits
> to the right registers for st_long.
More information about the hotspot-compiler-dev
mailing list