diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2014-02-09 19:01:35 +0100 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2014-02-09 22:09:42 +0100 |
commit | 7957f63caa7c50593e428a46e991708c6465f354 (patch) | |
tree | bc4465c5387426e34bec7ae93d5c6a331a0c323d /src/compiler | |
parent | 6f05acaa43d8aa036e26f68937e71dbae60bb5b4 (diff) | |
download | scala-7957f63caa7c50593e428a46e991708c6465f354.tar.gz scala-7957f63caa7c50593e428a46e991708c6465f354.tar.bz2 scala-7957f63caa7c50593e428a46e991708c6465f354.zip |
Optimation: use AnyRefMap in GenASM javaName caches
These are a hotspot in the backend.
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala b/src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala index eb40e1dbde..b03519ce7d 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala @@ -171,10 +171,10 @@ abstract class GenASM extends SubComponent with BytecodeWriters with GenJVMASM { var pickledBytes = 0 // statistics - val javaNameCache = perRunCaches.newMap[Symbol, Name]() + val javaNameCache = perRunCaches.newAnyRefMap[Symbol, Name]() // unlike javaNameCache, reverseJavaName contains entries only for class symbols and their internal names. - val reverseJavaName = perRunCaches.newMap[String, Symbol]() + val reverseJavaName = perRunCaches.newAnyRefMap[String, Symbol]() private def mkFlags(args: Int*) = args.foldLeft(0)(_ | _) private def hasPublicBitSet(flags: Int) = (flags & asm.Opcodes.ACC_PUBLIC) != 0 |