review for 7121073: secondary_super_cache memory slice has incorrect bounds in flatten_alias_type
vladimir.kozlov at oracle.com
Thu Dec 15 12:57:10 PST 2011
Tom Rodriguez wrote:
> On Dec 15, 2011, at 12:44 PM, Vladimir Kozlov wrote:
>> Can you updated related comments? Otherwise looks good.
> How about this:
> // If we are referencing a field within a Klass, we need
> // to assume the worst case of an Object. Both exact and
> // inexact types must flatten to the same alias class so
> // use NotNull as the PTR.
>> Tom Rodriguez wrote:
>>> 7 lines changed: 2 ins; 0 del; 5 mod; 3239 unchg
>>> 7121073: secondary_super_cache memory slice has incorrect bounds in flatten_alias_type
>>> To ensure that memory operations for type checks are properly ordered,
>>> several fields are smeared together into the same alias slice. The
>>> existing logic is sloppy and includes a slightly larger chunk of
>>> memory than intended. Currently this is fine but changes to the shape
>>> of Klass can invalidate it. The fix is to properly test the
>>> boundaries. Additionally I changed the logic for setting the PTR to
>>> use NotNull instead of Constant to be consisten with all the following
>>> logic which uses NotNull. Tested with full CTW.
More information about the hotspot-compiler-dev