OSDN Git Service

Added polynomial induction variables analysis. With tests.
authorAart Bik <ajcbik@google.com>
Tue, 6 Dec 2016 18:05:30 +0000 (10:05 -0800)
committerAart Bik <ajcbik@google.com>
Fri, 9 Dec 2016 16:42:18 +0000 (08:42 -0800)
commitdf7822ecf033cecf48d950f3ae34f7043c8df738
treef392a69377e1e281bcd85d811b656c6d14280ab4
parent6746874b84a44ab8dff18457eec546a1ebb22e93
Added polynomial induction variables analysis. With tests.

Rationale:
Information on polynomial sequences is nice to further enhance
BCE and last-value assignment. In this case, this CL enables more
loop optimizations for benchpress' Sum (80 x speedup). Also
changed rem-based geometric induction to wrap-around induction.

Test: test-art-host

Change-Id: Ie4d2659edefb814edda2c971c1f70ba400c31111
13 files changed:
compiler/optimizing/induction_var_analysis.cc
compiler/optimizing/induction_var_analysis.h
compiler/optimizing/induction_var_analysis_test.cc
compiler/optimizing/induction_var_range.cc
compiler/optimizing/induction_var_range.h
compiler/optimizing/induction_var_range_test.cc
compiler/optimizing/loop_optimization.cc
compiler/optimizing/loop_optimization.h
test/530-checker-loops4/src/Main.java
test/530-checker-loops5/expected.txt [new file with mode: 0644]
test/530-checker-loops5/info.txt [new file with mode: 0644]
test/530-checker-loops5/src/Main.java [new file with mode: 0644]
test/618-checker-induction/src/Main.java