Preliminary RFR (L): 8001107: @Stable annotation for constant folding of lazily evaluated variables

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Fri Jul 19 15:19:51 PDT 2013


http://cr.openjdk.java.net/~vlivanov/8001107/
1455 lines changed: 1366 ins; 34 del; 55 mod;

8001107: @Stable annotation for constant folding of lazily evaluated 
variables

Excerpt from Javadoc:
[@Stable annotation is] Internal marker for some fields in the JSR 292 
implementation. A field may be annotated as stable if all of its 
component variables changes value at most once. A field's value counts 
as its component value. If the field is typed as an array, then all the 
non-null components of the array, of depth up to the rank of the field's 
array type, also count as component values. By extension, any variable 
(either array or field) which has annotated as stable is called a stable 
variable, and its non-null or non-zero
value is called a stable value.

Testing: unit test, JPRT, VM testbase, nashorn, octane

Contributed-by: jrose, vlivanov

I marked review request as preliminary, because I think it may be too 
late to get it into 8. It'll be targeted for 8update then.

Thanks!

Best regards,
Vladimir Ivanov


More information about the hotspot-compiler-dev mailing list