On Wed, 17 Apr 2024 22:48:16 GMT, Dean Long <dl...@openjdk.org> wrote:

>> Before [JDK-8307190](https://bugs.openjdk.org/browse/JDK-8307190), 
>> [JDK-8309673](https://bugs.openjdk.org/browse/JDK-8309673), and 
>> [JDK-8301995](https://bugs.openjdk.org/browse/JDK-8301995), invokedynamic 
>> operands needed to be rewritten to encoded values to better distinguish indy 
>> entries from other cp cache entries. The above changes now distinguish 
>> between entries with `to_cp_index()` using the bytecode, which is now 
>> propagated by the callers.
>> 
>> The encoding flips the bits of the index so the encoded index is always 
>> negative, leading to access errors if there is no matching decode call. 
>> These calls are removed with some methods adjusted to distinguish between 
>> indices with the bytecode. Verified with tier 1-5 tests. The changes show no 
>> issues when tested against libgraal.
>
> Did you consider minimizing changes by leaving 
> decode_invokedynamic_index/encode_invokedynamic_index calls in place, but 
> having the implementations not change the value?

Thanks for the reviews @dean-long @gilles-duboscq @coleenp and @plummercj!

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

PR Comment: https://git.openjdk.org/jdk/pull/18819#issuecomment-2072603376

Reply via email to