On Tue, 28 Mar 2023 19:50:36 GMT, Matias Saavedra Silva <matsa...@openjdk.org> 
wrote:

>> The current structure used to store the resolution information for 
>> invokedynamic, ConstantPoolCacheEntry, is difficult to interpret due to its 
>> ambigious fields f1 and f2. This structure can hold information for fields, 
>> methods, and invokedynamics and each of its fields can hold different types 
>> of values depending on the entry. 
>> 
>> This enhancement proposes a new structure to exclusively contain 
>> invokedynamic information in a manner that is easy to interpret and easy to 
>> extend.  Resolved invokedynamic entries will be stored in an array in the 
>> constant pool cache and the operand of the invokedynamic bytecode will be 
>> rewritten to be the index into this array.
>> 
>> Any areas that previously accessed invokedynamic data from 
>> ConstantPoolCacheEntry will be replaced with accesses to this new array and 
>> structure. Verified with tier1-9 tests.
>> 
>> The PPC port was provided by @reinrich, RISCV was provided by @DingliZhang 
>> and @zifeihan, and S390x by @offamitkumar.
>> 
>> This change supports the following platforms: x86, aarch64, PPC, RISCV, and 
>> S390x
>
> Matias Saavedra Silva has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   s390x NULL to nullptr

> This obviously breaks arm, since its implementation is missing. I opened 
> https://bugs.openjdk.org/browse/JDK-8305387 to track this. This is 
> unfortunate since it holds work on arm in other areas, in my case for #10907.
> 
> > This change supports the following platforms: x86, aarch64, PPC, RISCV, and 
> > S390x
> 
> I wonder about the explicit exclusion of arm. Every other CPU seems to be 
> taken care of, even those Oracle does not maintain. Just curious, was there a 
> special reason for excluding arm?

There is no special reason ARM32 was excluded other than the fact no porter has 
picked it up yet. Fortunately I was able to get in contact with porters for the 
other platforms, but nobody took on the ARM port until now. Thank you for 
opening the issue!

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

PR Comment: https://git.openjdk.org/jdk/pull/12778#issuecomment-1492144686

Reply via email to