> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
On Mon, 8 Jan 2024 15:28:50 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
On Sun, 7 Jan 2024 18:24:02 GMT, Chen Liang wrote:
> Also `StackMapDecoder::initFrameFromLocals(ClassEntry, ...)` can benefit from
> 2 changes:
>
> 1. Iterate MTD by index instead of creating copies
I'll add this fix to the performance improvements PR, thanks!
> 2. Pass ClassEntry from reader
On Fri, 5 Jan 2024 23:55:53 GMT, Mandy Chung wrote:
> > Profiling of the benchmarks revealed several slowdowns:
> > ```
> > * many expensive conversions from `Class` to `ClassDesc` to
> > `ClassEntry`, or even more expensive `MethodTypeDesc`
> >
> > * building proxy class from scratch from symb
On Fri, 5 Jan 2024 21:03:28 GMT, Mandy Chung wrote:
>> Adam Sotona has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> StackCounter fix
>
> src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java line 148:
>
>> 146: ge
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
On Fri, 5 Jan 2024 21:23:02 GMT, Mandy Chung wrote:
>> Adam Sotona has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> StackCounter fix
>
> src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java line 739:
>
>> 737: va
On Fri, 5 Jan 2024 20:50:16 GMT, Mandy Chung wrote:
>> Adam Sotona has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> StackCounter fix
>
> src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java line 135:
>
>> 133: var cc
On Fri, 5 Jan 2024 20:45:22 GMT, Mandy Chung wrote:
>> Adam Sotona has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> StackCounter fix
>
> src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java line 112:
>
>> 110: private st
On Sun, 7 Jan 2024 18:16:05 GMT, Chen Liang wrote:
>> Original code has been significant in profiler.
>>
>>
>> MethodTypeDesc desc = MethodTypeDesc.of(toClassDesc(returnType),
>>
>> Arrays.stream(parameterTypes).map(ProxyGenerator::toClassDesc).toArray(ClassDesc[]::new));
>
On Fri, 5 Jan 2024 20:43:00 GMT, Mandy Chung wrote:
>> Adam Sotona has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> StackCounter fix
>
> src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java line 28:
>
>> 26: package java.lan
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
On Wed, 3 Jan 2024 12:36:26 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
On Sun, 7 Jan 2024 18:18:32 GMT, Chen Liang wrote:
>> Adam Sotona has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> StackCounter fix
>
> src/java.base/share/classes/jdk/internal/classfile/impl/StackCounter.java
> line 306:
>
>> 304:
On Wed, 3 Jan 2024 12:25:29 GMT, Adam Sotona wrote:
>> src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java line 737:
>>
>>> 735: private void generateMethod(ClassBuilder clb, ClassEntry
>>> className) {
>>> 736: var cp = clb.constantPool();
>>> 737:
On Wed, 3 Jan 2024 12:36:26 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
On Thu, 21 Dec 2023 01:33:29 GMT, Adam Sotona wrote:
> Profiling of the benchmarks revealed several slowdowns:
>
> * many expensive conversions from `Class` to `ClassDesc` to
> `ClassEntry`, or even more expensive `MethodTypeDesc`
>
> * building proxy class from scratch from symbols al
On Wed, 3 Jan 2024 12:36:26 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
On Sun, 24 Dec 2023 03:14:44 GMT, Chen Liang wrote:
>> Adam Sotona has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> minor StackCounter fix
>
> src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java line 737:
>
>> 735:
On Sun, 24 Dec 2023 04:07:07 GMT, Chen Liang wrote:
>> This code is part of the **ClassFile API**’s internals, and so it doesn’t
>> have access to `ProxyGenerator`’s cached `MethodTypeDesc`s, only the
>> underlying `Utf8Entry`, so it’d need to be parsed.
>
> I see that now Class return type and
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
On Sat, 23 Dec 2023 15:24:55 GMT, ExE Boss wrote:
>> src/java.base/share/classes/jdk/internal/classfile/impl/StackCounter.java
>> line 49:
>>
>>> 47: dcb,
>>> 48: dcb.methodInfo.methodName(),
>>> 49: dcb.methodInfo.methodType(),
>>
>> Can you enl
On Thu, 21 Dec 2023 13:32:12 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
On Thu, 21 Dec 2023 12:49:02 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
On Sat, 23 Dec 2023 12:40:33 GMT, Chen Liang wrote:
>> Adam Sotona has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> minor StackCounter fix
>
> src/java.base/share/classes/jdk/internal/classfile/impl/StackCounter.java
> line 49:
>
>> 47:
On Thu, 21 Dec 2023 13:32:12 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
On Thu, 21 Dec 2023 12:01:25 GMT, Sergey Tsypanov wrote:
>> Adam Sotona has updated the pull request incrementally with two additional
>> commits since the last revision:
>>
>> - performance improvements
>> - SplitConstantPool performance fix
>
> src/java.base/share/classes/jdk/internal/class
On Thu, 21 Dec 2023 01:12:07 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
On Thu, 21 Dec 2023 01:12:07 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
On Thu, 21 Dec 2023 01:12:07 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
On Wed, 20 Dec 2023 20:08:08 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions
On Tue, 19 Dec 2023 20:45:58 GMT, Mandy Chung wrote:
> Can you include a summary of the performance comparison before and after the
> patch per the
> [comment](https://github.com/openjdk/jdk/pull/10991#pullrequestreview-1333426016)
> in #10991.
I've found significant performance regressions w
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcome.
>
> Please review.
>
> Thank you,
> Adam
Adam Sot
On Fri, 15 Dec 2023 12:54:27 GMT, Adam Sotona wrote:
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcom
On Sat, 16 Dec 2023 19:49:12 GMT, ExE Boss wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes.
>>
>> This patch converts it to use Classfile API.
>>
>> It is continuation of https://github.com/openjdk/jdk/pull/10991
>>
>> Any comments and suggestions ar
On Fri, 15 Dec 2023 12:54:27 GMT, Adam Sotona wrote:
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
>
> This patch converts it to use Classfile API.
>
> It is continuation of https://github.com/openjdk/jdk/pull/10991
>
> Any comments and suggestions are welcom
java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes.
This patch converts it to use Classfile API.
It is continuation of https://github.com/openjdk/jdk/pull/10991
Any comments and suggestions are welcome.
Please review.
Thank you,
Adam
-
Commit messages:
On Mon, 27 Mar 2023 16:43:17 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes and this patch converts it to use Classfile API.
>>
>> Please review.
>>
>> Thank you,
>> Adam
>
> Adam Sotona has updated the pull request incrementally wit
On Mon, 27 Mar 2023 16:43:17 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes and this patch converts it to use Classfile API.
>>
>> Please review.
>>
>> Thank you,
>> Adam
>
> Adam Sotona has updated the pull request incrementally wit
On Mon, 27 Mar 2023 15:07:42 GMT, Adam Sotona wrote:
>> src/java.base/share/classes/jdk/internal/classfile/impl/StackMapGenerator.java
>> line 256:
>>
>>> 254:
>>> 255: private Frame getFrame(int offset) {
>>> 256: for (var f : frames) {
>>
>> How large is the frames list expected
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes
> and this patch converts it to use Classfile API.
>
> Please review.
>
> Thank you,
> Adam
Adam Sotona has updated the pull request incrementally with one additional
commit since the last revision:
StackMapGene
On Mon, 27 Mar 2023 13:17:35 GMT, Chen Liang wrote:
>> Adam Sotona has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> SplitConstantPool performance improvement
>
> src/java.base/share/classes/jdk/internal/classfile/impl/StackMapGenerator.ja
On Mon, 27 Mar 2023 11:26:15 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes and this patch converts it to use Classfile API.
>>
>> Please review.
>>
>> Thank you,
>> Adam
>
> Adam Sotona has updated the pull request incrementally wit
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes
> and this patch converts it to use Classfile API.
>
> Please review.
>
> Thank you,
> Adam
Adam Sotona has updated the pull request incrementally with one additional
commit since the last revision:
SplitConstan
On Wed, 22 Mar 2023 17:46:37 GMT, Chen Liang wrote:
>> Adam Sotona has updated the pull request with a new target base due to a
>> merge or a rebase. The pull request now contains 201 commits:
>>
>> - Merge branch 'master' into JDK-8294961
>>
>># Conflicts:
>># src/java.base/share/
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes
> and this patch converts it to use Classfile API.
>
> Please review.
>
> Thank you,
> Adam
Adam Sotona has updated the pull request incrementally with one additional
commit since the last revision:
cleanup of N
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes
> and this patch converts it to use Classfile API.
>
> Please review.
>
> Thank you,
> Adam
Adam Sotona has updated the pull request incrementally with one additional
commit since the last revision:
Apply sugges
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes
> and this patch converts it to use Classfile API.
>
> Please review.
>
> Thank you,
> Adam
Adam Sotona has updated the pull request incrementally with one additional
commit since the last revision:
StackMapGene
On Wed, 22 Mar 2023 17:37:07 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes and this patch converts it to use Classfile API.
>>
>> Please review.
>>
>> Thank you,
>> Adam
>
> Adam Sotona has updated the pull request with a new target
On Wed, 22 Mar 2023 17:37:07 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes and this patch converts it to use Classfile API.
>>
>> Please review.
>>
>> Thank you,
>> Adam
>
> Adam Sotona has updated the pull request with a new target
On Wed, 22 Mar 2023 17:37:07 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes and this patch converts it to use Classfile API.
>>
>> Please review.
>>
>> Thank you,
>> Adam
>
> Adam Sotona has updated the pull request with a new target
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes
> and this patch converts it to use Classfile API.
>
> Please review.
>
> Thank you,
> Adam
Adam Sotona has updated the pull request with a new target base due to a merge
or a rebase. The pull request now contains
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes
> and this patch converts it to use Classfile API.
>
> Please review.
>
> Thank you,
> Adam
Adam Sotona has updated the pull request incrementally with two additional
commits since the last revision:
- ClassEntry
On Thu, 9 Mar 2023 17:53:05 GMT, Mandy Chung wrote:
>> Adam Sotona has updated the pull request with a new target base due to a
>> merge or a rebase. The pull request now contains 195 commits:
>>
>> - Merge branch 'master' into JDK-8294961-proxy
>> - Merge branch 'JDK-8294982' into JDK-829496
On Thu, 16 Mar 2023 15:20:27 GMT, Chen Liang wrote:
>> Possible extensions of `ClassHierarchyResolver` factories, or maybe even
>> extensions of the default resolver are on the table and I just planned to
>> open this discussion.
>>
>> Here is specific case where original code passes `ClassLoa
On Thu, 16 Mar 2023 13:21:38 GMT, Adam Sotona wrote:
>> src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java line 426:
>>
>>> 424: */
>>> 425: localCache.computeIfAbsent(classDesc, cd -> {
>>> 426: try {
>>
>> This probably can b
On Thu, 9 Mar 2023 14:41:47 GMT, Chen Liang wrote:
>> Isn't the "unrelated process such as generating lambda forms" critical for
>> the `ProxyGenerator` functionality?
>
> More accurately, I mean the overhead generated by this:
> https://github.com/openjdk/jdk/blob/1e9942aa112edca33f964db127df6
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes
> and this patch converts it to use Classfile API.
>
> Please review.
>
> Thank you,
> Adam
Adam Sotona has updated the pull request incrementally with one additional
commit since the last revision:
improved met
On Sat, 11 Mar 2023 13:45:23 GMT, Chen Liang wrote:
>> Adam Sotona has updated the pull request with a new target base due to a
>> merge or a rebase. The pull request now contains 196 commits:
>>
>> - Merge branch 'master' into JDK-8294961-proxy
>> - Merge branch 'master' into JDK-8294961-pro
> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy classes
> and this patch converts it to use Classfile API.
>
> Please review.
>
> Thank you,
> Adam
Adam Sotona has updated the pull request incrementally with one additional
commit since the last revision:
Apply sugges
On Fri, 10 Mar 2023 08:48:14 GMT, Adam Sotona wrote:
>> java.base java.lang.reflect.ProxyGenerator uses ASM to generate proxy
>> classes and this patch converts it to use Classfile API.
>>
>> Please review.
>>
>> Thank you,
>> Adam
>
> Adam Sotona has updated the pull request with a new target
67 matches
Mail list logo