On 18/09/2015 16:17, Aleksey Shipilev wrote:
Hi,

I recently sent the review request to compiler-dev@ [1], but got no
response. Resending at corelibs-dev@ to gain more exposure.

Please review the submitted "Indify String Concat" JEP. It seems
complete to me: with working implementation, testing, and general
understanding of an issue. Start here:
   https://bugs.openjdk.java.net/browse/JDK-8085796

General feedback, comments, concerns, testing is appreciated.

The main concerns that come to mind reading through this is potential startup overhead and potential recursive initialization/bootstrapping issues where the BSM might need to do string concatenation. However, you've covered those points quite well in the Risks and Assumptions section.

On startup overhead then it might be amortized by the initialization of the module system as you suggest. It might be something else. We don't want to discourage use of lambda expressions or method reference so the first use of LF or whatever the initialization cost is will need to be worked on anyway.

I see the proposal is to exempt java.base. It probably could be finer grained than all of java.base but tricky to determine that subset. Even if all of java.base is exempt then I think there are initialization issues that need to be looked at. Peter Levart had a proposed patch for at least one of this issues at one point but there might be others [1]. One other thing is that JEP 261 proposes the -Xoverride option (maybe it might be renamed to -Xpatch) for patching/override classes in java.base. Anyone using that to override classes used early in the startup would need to be careful to use the right javac option.

One other other on exemptions is that it might need to be javac too, at least for the JDK build where the newly built compiler runs with the boot JDK to compile everything else. I can't quite tell from a first read if the proposal is that javac emit indy by default, if not then this may be a non-issue.

-Alan.

[1] http://mail.openjdk.java.net/pipermail/mlvm-dev/2015-March/006387.html

Reply via email to