7153771: array bound check elimination for c1

When possible optimize out array bound checks, inserting predicates when needed.

Reviewed-by: never, kvn, twisti
This commit is contained in:
Thomas Wuerthinger 2013-03-21 09:27:54 +01:00 committed by Roland Westrelin
parent 2f4ecb86a2
commit 06ef4cddf7
40 changed files with 2861 additions and 153 deletions

View file

@ -119,6 +119,24 @@
develop(bool, UseGlobalValueNumbering, true, \
"Use Global Value Numbering (separate phase)") \
\
product(bool, UseLoopInvariantCodeMotion, true, \
"Simple loop invariant code motion for short loops during GVN") \
\
develop(bool, TracePredicateFailedTraps, false, \
"trace runtime traps caused by predicate failure") \
\
develop(bool, StressLoopInvariantCodeMotion, false, \
"stress loop invariant code motion") \
\
develop(bool, TraceRangeCheckElimination, false, \
"Trace Range Check Elimination") \
\
develop(bool, AssertRangeCheckElimination, false, \
"Assert Range Check Elimination") \
\
develop(bool, StressRangeCheckElimination, false, \
"stress Range Check Elimination") \
\
develop(bool, PrintValueNumbering, false, \
"Print Value Numbering") \
\