Request for reviews (S): 7071709: JSR 292: switchpoint invalidation should be pushed not pulled
John Rose
john.r.rose at oracle.com
Thu Aug 25 11:21:40 PDT 2011
That's nice and clean.
One question: What happens when a CallSite optimizes down to a ConstantCallSite? It looks like a useless dependency will get inserted.
Maybe the call to assert_call_site_target_value should be guarded by a check whether the field is marked final.
Also, get_field_by_offset should be called on the actual type of the ciCallSite, not env->CallSite_klass. Otherwise you might get NULL for the ciField, if the target fields are split out across different call site subclasses.
-- John
On Aug 25, 2011, at 6:54 AM, Christian Thalinger wrote:
> http://cr.openjdk.java.net/~twisti/7071709/
>
> 7071709: JSR 292: switchpoint invalidation should be pushed not pulled
> Reviewed-by:
>
> SwitchPoints use a MutableCallSite for its implementation. The fix is
> to treat the target field of constant CallSites as a compile time
> constant and add a dependence for invalidation of the optimization.
>
> src/share/vm/opto/memnode.cpp
> src/share/vm/opto/parse3.cpp
>
More information about the hotspot-compiler-dev
mailing list