On Mon, 29 Jun 2026 22:19:39 GMT, April Ivy <[email protected]> wrote:

> As noted in https://bugs.openjdk.org/browse/JDK-8386802, `Util.entryList` and 
> `Util.moduleEntryList` copy their input lists using indexed access. This is 
> fine for `RandomAccess` lists but can be inefficient for 
> sequentially-accessed implementations.
> 
> This patch keeps the existing indexed path for `RandomAccess` lists and falls 
> back to iteration otherwise. Regression coverage is added for 
> non-`RandomAccess` inputs.
> 
> Testing:
> - `make CONF_CHECK=ignore java.base-java images`
> - `make CONF_CHECK=ignore test-only 
> TEST="test/jdk/jdk/classfile/UtilTest.java"`
> - `make CONF_CHECK=ignore test-only TEST="test/jdk/jdk/classfile"`
> - `make CONF_CHECK=ignore test-only TEST="test/jdk:tier1" 
> JTREG="VERBOSE=summary"`
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

Let's just keep the iterator loop and remove the `get` loop for clarity.

test/jdk/jdk/classfile/UtilTest.java line 166:

> 164:     }
> 165: 
> 166:     private static final class GetCountingList<T> extends 
> AbstractList<T> {

I don't think we need to verify the functionality here; I marked this as 
noreg-perf meaning this is some minor performance tuning that does not need 
extra regression tests (because there is no regression in the first place)

You can just rollback all the test changes.

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

PR Comment: https://git.openjdk.org/jdk/pull/31719#issuecomment-4839339635
PR Review Comment: https://git.openjdk.org/jdk/pull/31719#discussion_r3495811680

Reply via email to