[9] RFR(S): 8071312: compiler/arguments/CheckCompileThresholdScaling.java fails
David Chase
david.r.chase at oracle.com
Thu Jan 22 16:15:10 UTC 2015
Some of the explanation below ought to appear in the code in the form of a comment,
perhaps before this:
3484 if ((TieredCompilation && CompileThresholdScaling == 0)
3485 || (!TieredCompilation && (CompileThreshold == 0 || CompileThresholdScaling == 0.0))) {
3486 set_mode_flags(_int);
3487 }
And should the if above may be reorganized? So maybe something like (assuming I read it correctly):
// CompileThresholdScaling == 0.0 is same as -Xint ; enable interpreter, but like -Xint, leave other thresholds unaffected.
// and if [ describe next condition in if ] use of interpreter is also implied.
if ( CompileThresholdScaling == 0.0 || ( !TieredCompilation && CompileThreshold == 0 ) ) {
set_mode_flags(_int);
}
I think we should always err on the side of leaving too many breadcrumbs in our code, rather than too few.
David
On 2015-01-22, at 9:16 AM, Zoltán Majó <zoltan.majo at oracle.com> wrote:
> Solution:
>
> This patch changes the way the VM handles CompileThresholdScaling==0.0.
>
> By convention, CompileThresholdScaling==0.0 is equivalent to -Xint.
>
> Before, CompileThresholdScaling==0 set the value of all compilation thresholds to 0 *silently*. This behavior is inconsistent with the logic of -Xint, which leaves the values of the compilation thresholds unaffected.
>
> With this change, if CompileThresholdScaling==0, the -Xint flag is set but the value of compilation thresholds is left unchanged.
>
> I changed compiler/arguments/CheckCompileThresholdScaling.java test to reflect this behavior. Added test case for CompileThresholdScaling == 0 with tiered compilation disabled.
>
>
> Webrev: http://cr.openjdk.java.net/~zmajo/8071312/webrev.00/
>
> Testing: manual testing, JPRT (all standard JPRT tests + CheckCompileThresholdScaling)
>
> Thank you and best regards,
>
>
> Zoltan
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20150122/252aa482/signature-0001.asc>
More information about the hotspot-compiler-dev
mailing list