summaryrefslogtreecommitdiffstats
path: root/jack/tests
diff options
context:
space:
mode:
authorJean-Marie Henaff <jmhenaff@google.com>2014-12-04 17:00:47 +0100
committerJean-Marie Henaff <jmhenaff@google.com>2014-12-04 17:00:47 +0100
commit1b7ad32cc33344201bb9de7a39ce91e531fac817 (patch)
treeb6ef2a11593249ec07d03daeacd1a61922c45487 /jack/tests
parentc1ddf0d7194136ff3acacd16cad0dc7722bd6feb (diff)
downloadtoolchain_jack-1b7ad32cc33344201bb9de7a39ce91e531fac817.tar.gz
toolchain_jack-1b7ad32cc33344201bb9de7a39ce91e531fac817.tar.bz2
toolchain_jack-1b7ad32cc33344201bb9de7a39ce91e531fac817.zip
Add dependency on test targets to ensure things are rebuilt
Bug: 18617376 Change-Id: I0d13830b99dded1d494d725433b28458d1bbcacc
Diffstat (limited to 'jack/tests')
-rw-r--r--jack/tests/com/android/jack/analysis/dfa/reachingdefs/ReachingDefsTest.java77
-rw-r--r--jack/tests/com/android/jack/analysis/dfa/reachingdefs/Test001ReachingDefinitionsChecker.java47
2 files changed, 47 insertions, 77 deletions
diff --git a/jack/tests/com/android/jack/analysis/dfa/reachingdefs/ReachingDefsTest.java b/jack/tests/com/android/jack/analysis/dfa/reachingdefs/ReachingDefsTest.java
deleted file mode 100644
index e2d5aaf4..00000000
--- a/jack/tests/com/android/jack/analysis/dfa/reachingdefs/ReachingDefsTest.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.jack.analysis.dfa.reachingdefs;
-
-import com.android.jack.Main;
-import com.android.jack.analysis.DefinitionMarker;
-import com.android.jack.cfg.BasicBlock;
-import com.android.jack.cfg.ControlFlowGraph;
-import com.android.jack.cfg.SwitchBasicBlock;
-import com.android.jack.ir.ast.JAsgOperation;
-import com.android.jack.ir.ast.JIntLiteral;
-import com.android.jack.ir.ast.JMethod;
-import com.android.jack.ir.ast.JVariableRef;
-import com.android.sched.util.codec.ImplementationName;
-
-import junit.framework.Assert;
-
-import org.junit.BeforeClass;
-
-import javax.annotation.Nonnull;
-
-/**
- * JUnit test for reaching definitions.
- */
-public class ReachingDefsTest {
-
- @BeforeClass
- public static void setUpClass() {
- Main.class.getClassLoader().setDefaultAssertionStatus(true);
- }
-
- @ImplementationName(iface = ReachingDefinitionsChecker.class, name = "test001Checker")
- public static class Test001ReachingDefinitionsChecker implements ReachingDefinitionsChecker {
-
- @Override
- public void check(@Nonnull JMethod method) {
- ControlFlowGraph cfg = method.getMarker(ControlFlowGraph.class);
- assert cfg != null;
-
- for (BasicBlock bb : cfg.getNodes()) {
- if (bb instanceof SwitchBasicBlock) {
- Assert.assertEquals(4, bb.getSuccessors().size());
- for (BasicBlock succ : bb.getSuccessors()) {
- ReachingDefsMarker rdm = succ.getMarker(ReachingDefsMarker.class);
- assert rdm != null;
- boolean foundResultDef = false;
- for (DefinitionMarker dm : rdm.getReachingDefs()) {
- if (dm.hasValue()) {
- JAsgOperation asg = (JAsgOperation) dm.getDefinition();
- if (asg.getLhs() instanceof JVariableRef
- && ((JVariableRef) asg.getLhs()).getTarget().getName().equals("result")
- && asg.getRhs() instanceof JIntLiteral) {
- foundResultDef = true;
- }
- }
- }
- Assert.assertTrue(foundResultDef);
- }
- }
- }
- }
- }
-}
diff --git a/jack/tests/com/android/jack/analysis/dfa/reachingdefs/Test001ReachingDefinitionsChecker.java b/jack/tests/com/android/jack/analysis/dfa/reachingdefs/Test001ReachingDefinitionsChecker.java
new file mode 100644
index 00000000..4bf2d95a
--- /dev/null
+++ b/jack/tests/com/android/jack/analysis/dfa/reachingdefs/Test001ReachingDefinitionsChecker.java
@@ -0,0 +1,47 @@
+package com.android.jack.analysis.dfa.reachingdefs;
+
+import com.android.jack.analysis.DefinitionMarker;
+import com.android.jack.cfg.BasicBlock;
+import com.android.jack.cfg.ControlFlowGraph;
+import com.android.jack.cfg.SwitchBasicBlock;
+import com.android.jack.ir.ast.JAsgOperation;
+import com.android.jack.ir.ast.JIntLiteral;
+import com.android.jack.ir.ast.JMethod;
+import com.android.jack.ir.ast.JVariableRef;
+import com.android.sched.util.codec.ImplementationName;
+
+import junit.framework.Assert;
+
+import javax.annotation.Nonnull;
+
+@ImplementationName(iface = ReachingDefinitionsChecker.class, name = "test001Checker")
+public class Test001ReachingDefinitionsChecker implements ReachingDefinitionsChecker {
+
+ @Override
+ public void check(@Nonnull JMethod method) {
+ ControlFlowGraph cfg = method.getMarker(ControlFlowGraph.class);
+ assert cfg != null;
+
+ for (BasicBlock bb : cfg.getNodes()) {
+ if (bb instanceof SwitchBasicBlock) {
+ Assert.assertEquals(4, bb.getSuccessors().size());
+ for (BasicBlock succ : bb.getSuccessors()) {
+ ReachingDefsMarker rdm = succ.getMarker(ReachingDefsMarker.class);
+ assert rdm != null;
+ boolean foundResultDef = false;
+ for (DefinitionMarker dm : rdm.getReachingDefs()) {
+ if (dm.hasValue()) {
+ JAsgOperation asg = (JAsgOperation) dm.getDefinition();
+ if (asg.getLhs() instanceof JVariableRef
+ && ((JVariableRef) asg.getLhs()).getTarget().getName().equals("result")
+ && asg.getRhs() instanceof JIntLiteral) {
+ foundResultDef = true;
+ }
+ }
+ }
+ Assert.assertTrue(foundResultDef);
+ }
+ }
+ }
+ }
+} \ No newline at end of file