RFR (S) 8150102: C1 should fold arraylength for constant/trusted arrays

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Thu Feb 18 08:08:39 UTC 2016

Looks good.

On 2/18/16 2:05 AM, Aleksey Shipilev wrote:
> Hi,
> Please review a small tuneup in C1 arraylength folding:
>    https://bugs.openjdk.java.net/browse/JDK-8150102
>    http://cr.openjdk.java.net/~shade/8150102/webrev.00
> After this patch, C1 successfully folds the general arraylength
> accesses. In the end, this lets to fold String.length() for constant
> Strings:
>    http://cr.openjdk.java.net/~shade/8150102/FoldArrayLength.java
> I am actually wondering if as_LoadField path is ever hit in
> applications, because the targeted microbenchmark for static final array
> had improved with new as_Constant path.
I don't think it happens. GraphBuilder::access_field already folds loads 
into constants.

Best regards,
Vladimir Ivanov

More information about the hotspot-compiler-dev mailing list