RFR (S) 8149459: StringConcatFactory should be synced up with LambdaMetafactory
Hi, I would like to make StringConcatFactory more coherent with existing LambdaMetafactory: https://bugs.openjdk.java.net/browse/JDK-8149459 http://cr.openjdk.java.net/~shade/8149459/webrev.01/ Testing: jdk/test/java/String/concat jtreg, JPRT Cheers, -Aleksey
Hi Aleksey, if you have a dumper, you should append a value at the end of the generated class otherwise if you have more than one string concatenation, you will see only one class on the disk. regards, Rémi ----- Mail original -----
De: "Aleksey Shipilev" <aleksey.shipilev@oracle.com> À: "Java Core Libs" <core-libs-dev@openjdk.java.net> Envoyé: Mercredi 10 Février 2016 10:58:21 Objet: RFR (S) 8149459: StringConcatFactory should be synced up with LambdaMetafactory
Hi,
I would like to make StringConcatFactory more coherent with existing LambdaMetafactory: https://bugs.openjdk.java.net/browse/JDK-8149459 http://cr.openjdk.java.net/~shade/8149459/webrev.01/
Testing: jdk/test/java/String/concat jtreg, JPRT
Cheers, -Aleksey
See new webrev that adds a few more tests: http://cr.openjdk.java.net/~shade/8149459/webrev.02/ On 10.02.2016 14:25, Remi Forax wrote:
Hi Aleksey, if you have a dumper, you should append a value at the end of the generated class otherwise if you have more than one string concatenation, you will see only one class on the disk.
No, we are actually okay, because our class names are unique since Unsafe.defineAnonymousClass handles this: $ ls -lR dump/java.lang.String\$Concat/ dump/java.lang.String$Concat/2008017533.class dump/java.lang.String$Concat/665576141.class Cheers, -Aleksey
On 10 Feb 2016, at 13:51, Aleksey Shipilev <aleksey.shipilev@oracle.com> wrote:
See new webrev that adds a few more tests: http://cr.openjdk.java.net/~shade/8149459/webrev.02/
+1 Paul.
Looks good. Best regards, Vladimir Ivanov On 2/10/16 3:51 PM, Aleksey Shipilev wrote:
See new webrev that adds a few more tests: http://cr.openjdk.java.net/~shade/8149459/webrev.02/
On 10.02.2016 14:25, Remi Forax wrote:
Hi Aleksey, if you have a dumper, you should append a value at the end of the generated class otherwise if you have more than one string concatenation, you will see only one class on the disk.
No, we are actually okay, because our class names are unique since Unsafe.defineAnonymousClass handles this:
$ ls -lR dump/java.lang.String\$Concat/ dump/java.lang.String$Concat/2008017533.class dump/java.lang.String$Concat/665576141.class
Cheers, -Aleksey
Thanks guys, pushed. -Aleksey On 10.02.2016 16:19, Vladimir Ivanov wrote:
Looks good.
Best regards, Vladimir Ivanov
On 2/10/16 3:51 PM, Aleksey Shipilev wrote:
See new webrev that adds a few more tests: http://cr.openjdk.java.net/~shade/8149459/webrev.02/
On 10.02.2016 14:25, Remi Forax wrote:
Hi Aleksey, if you have a dumper, you should append a value at the end of the generated class otherwise if you have more than one string concatenation, you will see only one class on the disk.
No, we are actually okay, because our class names are unique since Unsafe.defineAnonymousClass handles this:
$ ls -lR dump/java.lang.String\$Concat/ dump/java.lang.String$Concat/2008017533.class dump/java.lang.String$Concat/665576141.class
Cheers, -Aleksey
I've miss the fact that you call getName() after defineAnonymousClass. So you're right that each class has a different name but calling the dumper after calling defineAnonymousClass is a mistake in my opinion because you are not able to debug verification errors that will be raised by defineAnonymousClass. cheers, Rémi ----- Mail original -----
De: "Aleksey Shipilev" <aleksey.shipilev@oracle.com> À: "Remi Forax" <forax@univ-mlv.fr> Cc: "Java Core Libs" <core-libs-dev@openjdk.java.net> Envoyé: Mercredi 10 Février 2016 13:51:35 Objet: Re: RFR (S) 8149459: StringConcatFactory should be synced up with LambdaMetafactory
See new webrev that adds a few more tests: http://cr.openjdk.java.net/~shade/8149459/webrev.02/
On 10.02.2016 14:25, Remi Forax wrote:
Hi Aleksey, if you have a dumper, you should append a value at the end of the generated class otherwise if you have more than one string concatenation, you will see only one class on the disk.
No, we are actually okay, because our class names are unique since Unsafe.defineAnonymousClass handles this:
$ ls -lR dump/java.lang.String\$Concat/ dump/java.lang.String$Concat/2008017533.class dump/java.lang.String$Concat/665576141.class
Cheers, -Aleksey
participants (5)
-
Aleksey Shipilev
-
forax@univ-mlv.fr
-
Paul Sandoz
-
Remi Forax
-
Vladimir Ivanov