diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2016-09-26 09:47:49 +1000 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2016-09-27 08:45:38 +1000 |
commit | e994c1c0becddc0d91fd4428f0d673bfac8941a3 (patch) | |
tree | d1d98efed86aa774a2c5349b3eca562a4ae7b9fd /.gitattributes | |
parent | 6df14e57a4980897d5517f002c04584b82e05b15 (diff) | |
download | scala-e994c1c0becddc0d91fd4428f0d673bfac8941a3.tar.gz scala-e994c1c0becddc0d91fd4428f0d673bfac8941a3.tar.bz2 scala-e994c1c0becddc0d91fd4428f0d673bfac8941a3.zip |
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.
Diffstat (limited to '.gitattributes')
0 files changed, 0 insertions, 0 deletions