summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/Global.scala
diff options
context:
space:
mode:
authorMiguel Garcia <miguelalfredo.garcia@epfl.ch>2012-05-08 14:27:50 +0200
committerMiguel Garcia <miguelalfredo.garcia@epfl.ch>2012-05-08 14:27:50 +0200
commit454c2a0c775c92be7f2a741bb6ab17b55f1eddb1 (patch)
tree852994175861613952748ecfe08e90bac205cb75 /src/compiler/scala/tools/nsc/Global.scala
parentf9943432a6ce13c770927c4ffc184887daa101f2 (diff)
downloadscala-454c2a0c775c92be7f2a741bb6ab17b55f1eddb1.tar.gz
scala-454c2a0c775c92be7f2a741bb6ab17b55f1eddb1.tar.bz2
scala-454c2a0c775c92be7f2a741bb6ab17b55f1eddb1.zip
GenASM activated via -target:jvm-1.6 or -target:jvm-1.5-asm
Diffstat (limited to 'src/compiler/scala/tools/nsc/Global.scala')
-rw-r--r--src/compiler/scala/tools/nsc/Global.scala11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/Global.scala b/src/compiler/scala/tools/nsc/Global.scala
index dfab703843..27eee82911 100644
--- a/src/compiler/scala/tools/nsc/Global.scala
+++ b/src/compiler/scala/tools/nsc/Global.scala
@@ -25,7 +25,7 @@ import typechecker._
import transform._
import backend.icode.{ ICodes, GenICode, ICodeCheckers }
import backend.{ ScalaPrimitives, Platform, MSILPlatform, JavaPlatform }
-import backend.jvm.GenJVM
+import backend.jvm.{GenJVM, GenASM}
import backend.opt.{ Inliners, InlineExceptionHandlers, ClosureElimination, DeadCodeElimination }
import backend.icode.analysis._
import language.postfixOps
@@ -617,13 +617,20 @@ class Global(var currentSettings: Settings, var reporter: Reporter) extends Symb
val runsRightAfter = None
} with DeadCodeElimination
- // phaseName = "jvm"
+ // phaseName = "jvm", FJBG-based version
object genJVM extends {
val global: Global.this.type = Global.this
val runsAfter = List("dce")
val runsRightAfter = None
} with GenJVM
+ // phaseName = "jvm", ASM-based version
+ object genASM extends {
+ val global: Global.this.type = Global.this
+ val runsAfter = List("dce")
+ val runsRightAfter = None
+ } with GenASM
+
// This phase is optional: only added if settings.make option is given.
// phaseName = "dependencyAnalysis"
object dependencyAnalysis extends {