diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2016-05-23 10:17:15 +1000 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2016-05-23 10:17:15 +1000 |
commit | 2e40aa5871859b9ab6bdc03d56a81746fa90b1e5 (patch) | |
tree | 44db43073e3d974fc5ced61de278abd45b8e1227 /test/junit/scala/tools/nsc/backend/jvm/opt/CompactLocalVariablesTest.scala | |
parent | a79b9b7220c87ba21b374eda25702c7bc446dc29 (diff) | |
parent | e26835c01254ecb4d9b4fa3a8bbe9c835f808a38 (diff) | |
download | scala-2e40aa5871859b9ab6bdc03d56a81746fa90b1e5.tar.gz scala-2e40aa5871859b9ab6bdc03d56a81746fa90b1e5.tar.bz2 scala-2e40aa5871859b9ab6bdc03d56a81746fa90b1e5.zip |
Merge pull request #5180 from lrytz/junit-pass
Clean up JUnit tests, make sure they pass without bootstrap [ci: last-only]
Diffstat (limited to 'test/junit/scala/tools/nsc/backend/jvm/opt/CompactLocalVariablesTest.scala')
-rw-r--r-- | test/junit/scala/tools/nsc/backend/jvm/opt/CompactLocalVariablesTest.scala | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/test/junit/scala/tools/nsc/backend/jvm/opt/CompactLocalVariablesTest.scala b/test/junit/scala/tools/nsc/backend/jvm/opt/CompactLocalVariablesTest.scala index ac1b759fe2..c3748a05bd 100644 --- a/test/junit/scala/tools/nsc/backend/jvm/opt/CompactLocalVariablesTest.scala +++ b/test/junit/scala/tools/nsc/backend/jvm/opt/CompactLocalVariablesTest.scala @@ -2,23 +2,21 @@ package scala.tools.nsc package backend.jvm package opt +import org.junit.Assert._ +import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.JUnit4 -import org.junit.Test -import scala.tools.asm.Opcodes._ -import org.junit.Assert._ -import CodeGenTools._ -import scala.tools.partest.ASMConverters -import ASMConverters._ +import scala.tools.partest.ASMConverters._ +import scala.tools.testing.BytecodeTesting._ +import scala.tools.testing.ClearAfterClass @RunWith(classOf[JUnit4]) -class CompactLocalVariablesTest { - +class CompactLocalVariablesTest extends ClearAfterClass { // recurse-unreachable-jumps is required for eliminating catch blocks, in the first dce round they // are still live.only after eliminating the empty handler the catch blocks become unreachable. - val methodOptCompiler = newCompiler(extraArgs = "-Yopt:unreachable-code,compact-locals") - val noCompactVarsCompiler = newCompiler(extraArgs = "-Yopt:unreachable-code") + val methodOptCompiler = cached("methodOptCompiler", () => newCompiler(extraArgs = "-Yopt:unreachable-code,compact-locals")) + val noCompactVarsCompiler = cached("noCompactVarsCompiler", () => newCompiler(extraArgs = "-Yopt:unreachable-code")) @Test def compactUnused(): Unit = { @@ -58,8 +56,8 @@ class CompactLocalVariablesTest { |} |""".stripMargin - val List(noCompact) = compileMethods(noCompactVarsCompiler)(code) - val List(withCompact) = compileMethods(methodOptCompiler)(code) + val noCompact = noCompactVarsCompiler.compileAsmMethod(code) + val withCompact = methodOptCompiler.compileAsmMethod(code) // code is the same, except for local var indices assertTrue(noCompact.instructions.size == withCompact.instructions.size) |