RFR: 8195123: Very large regressions in Octane benchmarks using 10-b39

Hannes Wallnöfer hannes.wallnoefer at oracle.com
Wed Jan 17 15:36:48 UTC 2018


Please review: 

Bug: https://bugs.openjdk.java.net/browse/JDK-8195123
Webrev: http://cr.openjdk.java.net/~hannesw/8195123/webrev.00/

This undoes the recent fix for JDK-8193567 (Attila, in case you’re reading, I should have taken your doubts more serously) and replaces it with a different fix.

Instead of disabling optimistic types within comparison nodes, the new fix  avoids the shortcuts for null and undefined comparison if the compared expression contains an optimistic expression. Previously we only checked whether the expression itself was optimistic or contained the expression that triggered the current rest-of compilation. It’s easy to see why we must avoid it also for nested optimistic expressions, as they can trigger deoptimization as well. 

In my testing, this fixes the performance regression.

Hannes


More information about the nashorn-dev mailing list