String concatenation tweaks

Aleksey Shipilev aleksey.shipilev at oracle.com
Thu Jun 4 09:21:49 UTC 2015


On 06/02/2015 05:39 AM, John Rose wrote:
> On Jun 1, 2015, at 7:52 AM, Aleksey Shipilev <aleksey.shipilev at oracle.com> wrote:
> Void is the convention used by MH.invoke and it works here too. The only ref of that type is null. 

Good, thanks! Using Void.class now.

>> (Note to self: current prototype collapses the types *after* checking
>> with cache, need to fix that possible class leak, thanks!
> 
> Yep. A late asType call will fix things up. We can optimize the pattern more if needed. 

Plus, we need to adjust the MethodType accordingly, since it is a key in
our cache. Done as well.

I have submitted a draft JEP for this:
  https://bugs.openjdk.java.net/browse/JDK-8085796

Please take a look, and we will submit it.

The patches, notes, benchmarks are moved under the appropriate bug ID:
  http://cr.openjdk.java.net/~shade/8085796/

The patches now have a complete support in javac (implemented the "s +=
<string> concat part as well), passes jtreg and other smoke tests [*],
plus newly developed regression tests. I think this gives us enough
confidence with going forward.

Thanks,
-Aleksey

[*] There are few regression tests that start to fail with the change:
one seems Indify-specific, and another is a javac-specific regression
test. Current patches work that around, and we will probably have to fix
these properly before integration.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://mail.openjdk.java.net/pipermail/compiler-dev/attachments/20150604/27b12568/signature.asc>


More information about the compiler-dev mailing list