On Tue, 22 Oct 2024 15:32:45 GMT, Ioi Lam wrote:
>> My proposal was to use it in this file (iterator.inline.hpp) and not
>> iterator.hpp. I see no need to route this through the .cpp file.
>
> iterator.inline.hpp is included by many cpp file (580 out of 1409 .o files in
> hotspot), so I don't w
On Tue, 22 Oct 2024 07:06:11 GMT, Stefan Karlsson wrote:
>> I changed the code to `assert(is_pending_aot_linked_class(k), "sanity")`.
>> Since iterator.hpp is widely used, I avoid including
>> aotLinkedClassBulkLoader.hpp in this header, and route the call through
>> iterator.cpp.
>
> My propo
On Mon, 21 Oct 2024 20:31:59 GMT, Ioi Lam wrote:
>> src/hotspot/share/memory/iterator.inline.hpp line 57:
>>
>>> 55: ClaimMetadataVisitingOopIterateClosure::do_cld(cld);
>>> 56: } else {
>>> 57: assert_is_pending_aot_linked_class(k);
>>
>> Would there be a drawback to just adding
>>
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Wed, 16 Oct 2024 22:56:06 GMT, Ashutosh Mehra wrote:
>> Ioi Lam has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Fixed typo in last commit; fixed header inclusion order
>
> src/hotspot/share/cds/heapShared.cpp line 675:
>
>> 673:
On Tue, 15 Oct 2024 15:12:44 GMT, Dan Heidinga wrote:
>> Ioi Lam has updated the pull request with a new target base due to a merge
>> or a rebase. The pull request now contains 29 commits:
>>
>> - @DanHeidinga comments -- added ConcurrentHashMap::runtimeSetup() to init
>> NCPU to runtime val
On Mon, 14 Oct 2024 15:54:15 GMT, Dan Heidinga wrote:
>> Ioi Lam has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Fixed JDK-8341988: jstack launched with AOT cache created with
>> -XX:+AOTClassLinking crashes
>
> src/hotspot/share/cds/ar
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On 15 Oct 2024, at 12:35, Ioi Lam wrote:
> On Tue, 15 Oct 2024 19:08:20 GMT, Dan Heidinga wrote:
>
>>> 597:
>>> 598: /** Number of CPUS, to place bounds on some sizings */
>>> 599: static @Stable int NCPU;
>>
>> I would prefer to not mark this `@Stable` at this time as it would have
>> d
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Wed, 16 Oct 2024 23:16:00 GMT, Ashutosh Mehra wrote:
>> Ioi Lam has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Fixed typo in last commit; fixed header inclusion order
>
> src/hotspot/share/cds/dumpTimeClassInfo.hpp line 45:
>
>> 43:
On Fri, 18 Oct 2024 05:39:32 GMT, Chen Liang wrote:
>> `Class::reflectionFactory` is a large table that must be cleared, or else we
>> will bring unwanted (unsupported) objects into the cache.
>>
>> During runtime, `reflectionFactory` will be initialized on demand, so
>> there's no need to exp
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Mon, 21 Oct 2024 21:56:11 GMT, Ioi Lam wrote:
>>> I read through it fairly thoroughly. I made a lot of suggestions. Rather
>>> than edit comments into lots of spots in this PR, I made the following
>>> patch file.
>>> [aot-indy-21143-commentary.diff.txt](https://github.com/user-attachments/
On Fri, 18 Oct 2024 02:19:31 GMT, David Holmes wrote:
> ```
> +bool InstanceKlass::is_enum_subclass(bool direct_only) const {
> + InstanceKlass* s = java_super();
> + return (s == vmClasses::Enum_klass() ||
> + (s != null && s->java_super() == vmClasses::Enum_klass()));
> +}
> ```
>
>
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Mon, 21 Oct 2024 07:03:59 GMT, Stefan Karlsson wrote:
>> Ioi Lam has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Added
>> ClaimMetadataVisitingOopIterateClosure::assert_is_pending_aot_linked_class()
>
> src/hotspot/share/memory/itera
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Fri, 18 Oct 2024 20:09:15 GMT, Ioi Lam wrote:
>> I filed [JDK-8342429](https://bugs.openjdk.org/browse/JDK-8342429) "Cache
>> classes in loaded state" to address this properly.
>
> I added an assert to limit the cases where the GCs can see null
> ClassLoaderData from a klass
> [3f09464](htt
On Fri, 18 Oct 2024 20:09:04 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Fri, 18 Oct 2024 17:47:00 GMT, Dan Heidinga wrote:
>> This is correct for the LMF, but I think we are using weak hidden classes in
>> string concatenation.
>
> I just confirmed - the `InlineHiddenClassStrategy` in
> j.l.i.StringConcatFactory uses weak hidden classes. It looks like there are
On Wed, 16 Oct 2024 15:58:28 GMT, Ioi Lam wrote:
>> Here's the call stack if I remove the "if" check on line 49. It can be
>> reproduced with
>> test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/BulkLoaderTest.java
>> from the PR repo.
>>
>>
>> 10 javaSignalHandler (sig=11, info=0x74
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Fri, 18 Oct 2024 15:33:09 GMT, Chen Liang wrote:
>> I looked at the InnerClassLambdaMetaFactory and it only generates
>> MHs.Lookup.ClassOption::STRONG classes that live as long as their
>> corresponding loaders. Given that, do we want an assert here that we are
>> only dealing with strong
On Fri, 18 Oct 2024 14:56:23 GMT, Dan Heidinga wrote:
>> (I've replied to this comment. I can see it in the mailing list but it seems
>> to be lost on this page, so I'll add it again)
>>
>> We only resolve indys for the boot/platform/app class loaders, so there's no
>> need to support class un
On Fri, 18 Oct 2024 04:24:31 GMT, Ioi Lam wrote:
>> We only resolve indys for the boot/platform/app class loaders, so there's no
>> need to support class unloading. I've added a comment and tightened up the
>> code with asserts. See version
>> [382446d](https://github.com/openjdk/jdk/pull/2114
On Fri, 18 Oct 2024 04:09:00 GMT, Ioi Lam wrote:
>> src/hotspot/share/cds/metaspaceShared.cpp line 873:
>>
>>> 871: Symbol* method_sig = vmSymbols::void_method_signature();
>>> 872: JavaCalls::call_static(&result, vmClasses::Class_klass(),
>>> 873: method
On Wed, 16 Oct 2024 01:26:41 GMT, Ioi Lam wrote:
>> src/hotspot/share/cds/aotLinkedClassBulkLoader.cpp line 235:
>>
>>> 233: }
>>> 234:
>>> 235: // TODO -- is this really correct? Do we need a special
>>> ClassLoaderData for each hidden class?
>>
>> There are multiple kinds of hidden classes:
On Tue, 15 Oct 2024 15:19:36 GMT, Dan Heidinga wrote:
>> Ioi Lam has updated the pull request with a new target base due to a merge
>> or a rebase. The pull request now contains 29 commits:
>>
>> - @DanHeidinga comments -- added ConcurrentHashMap::runtimeSetup() to init
>> NCPU to runtime val
On Fri, 18 Oct 2024 04:08:37 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Tue, 15 Oct 2024 17:03:40 GMT, Dan Heidinga wrote:
>> Ioi Lam has updated the pull request with a new target base due to a merge
>> or a rebase. The pull request now contains 29 commits:
>>
>> - @DanHeidinga comments -- added ConcurrentHashMap::runtimeSetup() to init
>> NCPU to runtime val
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Thu, 17 Oct 2024 08:36:53 GMT, John R Rose wrote:
> I read through it fairly thoroughly. I made a lot of suggestions. Rather than
> edit comments into lots of spots in this PR, I made the following patch file.
> [aot-indy-21143-commentary.diff.txt](https://github.com/user-attachments/files/1
On Thu, 17 Oct 2024 04:19:27 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Wed, 16 Oct 2024 05:13:13 GMT, Chen Liang wrote:
>> Ioi Lam has updated the pull request with a new target base due to a merge
>> or a rebase. The pull request now contains 31 commits:
>>
>> - @DanHeidinga comments -- added comments and asserts related to
>> ClassLoaderData used by archive
On Tue, 15 Oct 2024 19:42:51 GMT, Chen Liang wrote:
> I recommend adding javadoc or block comments indicating that `runtimeSetup`,
> `resetArchivedStates`, etc. are called by VM CDS code so people don't
> accidentally rename this and have unintended impact.
Done.
> src/java.base/share/classes
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Wed, 16 Oct 2024 02:42:52 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Wed, 16 Oct 2024 02:42:52 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Wed, 16 Oct 2024 03:29:56 GMT, Ioi Lam wrote:
>> src/hotspot/share/memory/iterator.inline.hpp line 53:
>>
>>> 51: // class has not yet been loaded by CDS.
>>> 52: cld->oops_do(this, _claim);
>>> 53: }
>>
>> Could you show the stack trace for this? I want to understand better why we
On Wed, 16 Oct 2024 01:26:45 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Tue, 15 Oct 2024 19:38:43 GMT, Stefan Karlsson wrote:
>> Ioi Lam has updated the pull request with a new target base due to a merge
>> or a rebase. The pull request now contains 29 commits:
>>
>> - @DanHeidinga comments -- added ConcurrentHashMap::runtimeSetup() to init
>> NCPU to runtime
On Tue, 15 Oct 2024 19:40:15 GMT, Stefan Karlsson wrote:
>> Ioi Lam has updated the pull request with a new target base due to a merge
>> or a rebase. The pull request now contains 29 commits:
>>
>> - @DanHeidinga comments -- added ConcurrentHashMap::runtimeSetup() to init
>> NCPU to runtime
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Mon, 14 Oct 2024 15:52:07 GMT, Dan Heidinga wrote:
>> Ioi Lam has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Fixed JDK-8341988: jstack launched with AOT cache created with
>> -XX:+AOTClassLinking crashes
>
> src/hotspot/share/cds/ao
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Tue, 15 Oct 2024 05:21:53 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Tue, 15 Oct 2024 05:21:53 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Tue, 15 Oct 2024 05:21:53 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Tue, 15 Oct 2024 19:08:20 GMT, Dan Heidinga wrote:
>> Ioi Lam has updated the pull request with a new target base due to a merge
>> or a rebase. The pull request now contains 29 commits:
>>
>> - @DanHeidinga comments -- added ConcurrentHashMap::runtimeSetup() to init
>> NCPU to runtime val
On Tue, 15 Oct 2024 05:21:53 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
On Sun, 13 Oct 2024 21:07:51 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lamb
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On 8 Oct 2024, at 14:47, Ioi Lam wrote:
> On Wed, 25 Sep 2024 17:14:54 GMT, Chen Liang wrote:
>
>>> 402: MethodType primordialMT = new MethodType(rtype, ptypes);
>>> 403: if (AOTHolder.archivedMethodTypes != null) {
>>> 404: MethodType mt =
>>> AOTHolder.archivedMetho
On Wed, 9 Oct 2024 03:49:49 GMT, ExE Boss wrote:
>> We haven't done much testing with the other SCF BSMs, so I think it's better
>> to do that in a follow-up REF.
>
> [`StringConcatFactory::makeConcat(…)`] is definitely deterministic, as it
> simply delegates to [`StringConcatFactory::makeCon
On Tue, 1 Oct 2024 07:53:23 GMT, Ioi Lam wrote:
>> src/hotspot/share/cds/aotConstantPoolResolver.cpp line 476:
>>
>>> 474: if (bsm_klass->equals("java/lang/invoke/StringConcatFactory") &&
>>> 475: bsm_name->equals("makeConcatWithConstants")) {
>>> 476: return true;
>>
>> I think all
On Wed, 9 Oct 2024 00:43:25 GMT, Ioi Lam wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`Lambd
On Tue, 8 Oct 2024 11:01:45 GMT, Andrew Dinn wrote:
>> Ioi Lam has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> @adinn comments
>
> src/hotspot/share/cds/archiveBuilder.cpp line 234:
>
>> 232: _klasses->append(klass);
>> 233:
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMetafactory::metafactory`) and
> string concat (`Stri
On Mon, 7 Oct 2024 16:09:30 GMT, Andrew Dinn wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`L
On Mon, 23 Sep 2024 18:45:49 GMT, Ioi Lam wrote:
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMet
On Wed, 25 Sep 2024 17:14:54 GMT, Chen Liang wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressions (`L
On Mon, 23 Sep 2024 18:45:49 GMT, Ioi Lam wrote:
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMet
On Mon, 23 Sep 2024 18:45:49 GMT, Ioi Lam wrote:
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMet
On Mon, 23 Sep 2024 18:45:49 GMT, Ioi Lam wrote:
> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>
> This PR implements the AOT-linking of invokedynamic callsites:
> - We only link lambda expressions (`LambdaMet
On Thu, 26 Sep 2024 17:29:38 GMT, Aleksey Shipilev wrote:
>> This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
>> Linking](https://bugs.openjdk.org/browse/JDK-8315737).
>>
>> This PR implements the AOT-linking of invokedynamic callsites:
>> - We only link lambda expressio
This is the 7th and final PR for [JEP 483: Ahead-of-Time Class Loading &
Linking](https://bugs.openjdk.org/browse/JDK-8315737).
This PR implements the AOT-linking of invokedynamic callsites:
- We only link lambda expressions (`LambdaMetafactory::metafactory`) and string
concat (`StringConcatFact
70 matches
Mail list logo