summaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authorRoland Levillain <rpl@google.com>2014-09-16 14:48:16 +0100
committerRoland Levillain <rpl@google.com>2014-09-17 18:19:46 +0100
commitccc07a9579c554443cd03a306ca9b4f943fd2a93 (patch)
tree3514cb48520ecd6cf4bb93129bed5cd97f24cb43 /build
parent926d8e99aa69151a271180299df68963688010d8 (diff)
downloadart-ccc07a9579c554443cd03a306ca9b4f943fd2a93.tar.gz
art-ccc07a9579c554443cd03a306ca9b4f943fd2a93.tar.bz2
art-ccc07a9579c554443cd03a306ca9b4f943fd2a93.zip
Add CFG and SSA form checkers in the optimizing compiler.
Checks performed on control-flow graphs: - Ensure that the predecessors and successors of a basic block are consistent within a control-flow graph. - Ensure basic blocks end with a branch instruction. - Detect phi functions listed in non-phi instruction lists and vice versa. - Ensure a block's instructions (and phi functions) are associated with this very block. Checks performed on SSA form graphs: - Ensure an instruction dominates all its uses. - Ensure there are no critical edges. Change-Id: I1c12b4a61ecf608682152c897980ababa7eca847
Diffstat (limited to 'build')
-rw-r--r--build/Android.gtest.mk1
1 files changed, 1 insertions, 0 deletions
diff --git a/build/Android.gtest.mk b/build/Android.gtest.mk
index 4ecda918ed..e2ba86747b 100644
--- a/build/Android.gtest.mk
+++ b/build/Android.gtest.mk
@@ -142,6 +142,7 @@ COMPILER_GTEST_COMMON_SRC_FILES := \
compiler/optimizing/codegen_test.cc \
compiler/optimizing/dominator_test.cc \
compiler/optimizing/find_loops_test.cc \
+ compiler/optimizing/graph_checker_test.cc \
compiler/optimizing/graph_test.cc \
compiler/optimizing/linearize_test.cc \
compiler/optimizing/liveness_test.cc \