Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SD-233 synchronized blocks are JIT-friendly again #5417

Merged
merged 1 commit into from
Sep 27, 2016

Commits on Sep 26, 2016

  1. SD-233 synchronized blocks are JIT-friendly again

    GenBCode, the new backend in Scala 2.12, subtly changed
    the way that synchronized blocks are emitted.
    
    It used `java/lang/Throwable` as an explicitly named exception
    type, rather than implying the same by omitting this in bytecode.
    
    This appears to confuse HotSpot JIT, which reports a error
    parsing the bytecode into its IR which leaves the enclosing method
    stuck in interpreted mode.
    
    This commit passes a `null` descriptor to restore the old pattern
    (the same one used by javac.) I've checked that the JIT warnings
    are gone and that the method can be compiled again.
    retronym committed Sep 26, 2016
    Configuration menu
    Copy the full SHA
    e994c1c View commit details
    Browse the repository at this point in the history