diff options
author | Zdenek Dvorak <ook@ucw.cz> | 2007-11-30 01:32:04 +0100 |
---|---|---|
committer | Zdenek Dvorak <rakdver@gcc.gnu.org> | 2007-11-30 00:32:04 +0000 |
commit | 13285d512dac6411da329c63f6a52b81e88df7a1 (patch) | |
tree | 573fc12944ab74427d5b1d5768b2a39ac6ed4847 /gcc/tree-scalar-evolution.h | |
parent | 54bded776c12100d755e2976fbd5f1b6733ea64b (diff) | |
download | gcc-13285d512dac6411da329c63f6a52b81e88df7a1.zip gcc-13285d512dac6411da329c63f6a52b81e88df7a1.tar.gz gcc-13285d512dac6411da329c63f6a52b81e88df7a1.tar.bz2 |
re PR tree-optimization/34244 (VRP/SCEV miscompiles Firefox)
PR tree-optimization/34244
* tree-vrp.c (adjust_range_with_scev): Clear scev cache.
(record_numbers_of_iterations): New function.
(execute_vrp): Cache the numbers of iterations of loops.
* tree-scalar-evolution.c (scev_reset_except_niters):
New function.
(scev_reset): Use scev_reset_except_niters.
* tree-scalar-evolution.h (scev_reset_except_niters): Declare.
* gcc.dg/tree-ssa/pr34244.c: New test.
From-SVN: r130527
Diffstat (limited to 'gcc/tree-scalar-evolution.h')
-rw-r--r-- | gcc/tree-scalar-evolution.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-scalar-evolution.h b/gcc/tree-scalar-evolution.h index a2ba584..c722579 100644 --- a/gcc/tree-scalar-evolution.h +++ b/gcc/tree-scalar-evolution.h @@ -27,6 +27,7 @@ extern tree get_loop_exit_condition (const struct loop *); extern void scev_initialize (void); extern void scev_reset (void); +extern void scev_reset_except_niters (void); extern void scev_finalize (void); extern tree analyze_scalar_evolution (struct loop *, tree); extern tree instantiate_parameters (struct loop *, tree); |