RFR: 8295486: Inconsistent constant field values observed during compilation [v2]

Vladimir Ivanov vlivanov at openjdk.org
Tue Jan 10 18:41:58 UTC 2023


On Tue, 10 Jan 2023 18:36:46 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:

>> Tobias Hartmann has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Caching of stable values
>
> src/hotspot/share/ci/ciEnv.hpp line 487:
> 
>> 485:   };
>> 486: 
>> 487:   GrowableArray<StableValue>* _stable_values; // Cache of stable values
> 
> Aren't `ciInstance` and `ciArray` provide a better place to cache field/element values (logic can be encapsulated in `ciInstance::field_value()` and `ciArray::element_value()`)?

And it would seamlessly cover all possible cases, like static final fields (which can be concurrently updated through Reflection API or Unsafe).

-------------

PR: https://git.openjdk.org/jdk/pull/11861


More information about the hotspot-compiler-dev mailing list