]> git.ipfire.org Git - thirdparty/gcc.git/commit
cfgloopanal.c (variable_initial_value, [...]): Record the fact that initial value...
authorZdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
Wed, 5 Nov 2003 18:10:44 +0000 (19:10 +0100)
committerZdenek Dvorak <rakdver@gcc.gnu.org>
Wed, 5 Nov 2003 18:10:44 +0000 (18:10 +0000)
commit142d1f57d6c4a40bcf07a243bf71465bf72b1012
tree2803ac7a2623225480a95038c4747be2ab3b5082
parentaf09332e6d6c7f4970b62d1549f5cf0192b7a718
cfgloopanal.c (variable_initial_value, [...]): Record the fact that initial value is extended from inner mode.

* cfgloopanal.c (variable_initial_value, variable_initial_values,
simple_loop_exit_p): Record the fact that initial value is extended
from inner mode.
(count_strange_loop_iterations, count_loop_iterations): Handle
ivs that iterate in a narrower mode. Fix handling of overflows.
Improve handling of NE conditions.
(inverse, fits_in_mode_p): New static functions.
(simple_increment): Detect variables that iterate in a narrower mode.
* cfgloop.h (struct loop_desc): Fields inner_mode and extend added.

From-SVN: r73275
gcc/ChangeLog
gcc/cfgloop.h
gcc/cfgloopanal.c