re PR middle-end/36206 (ice for legal code with -O3)
authorJan Sjodin <jan.sjodin@amd.com>
Tue, 20 May 2008 16:05:09 +0000 (16:05 +0000)
committerSebastian Pop <spop@gcc.gnu.org>
Tue, 20 May 2008 16:05:09 +0000 (16:05 +0000)
commit5b78fc3ed4960c5eda8ec76ab2e86548c51a6811
tree2902a57624deca0a3f73d473a68bf502bf697f42
parent498f1c824b2db85994e7cbd5f5b064061ef7e687
re PR middle-end/36206 (ice for legal code with -O3)

2008-05-20  Jan Sjodin  <jan.sjodin@amd.com>
    Sebastian Pop  <sebastian.pop@amd.com>

PR tree-optimization/36206
* tree-scalar-evolution.c: Remove enum INSERT_SUPERLOOP_CHRECS,
FOLD_CONVERSIONS.
(instantiate_scev_1): Rename flags to fold_conversions.
Do not check for INSERT_SUPERLOOP_CHRECS, keep SSA_NAMEs defined
outeside instantiation_loop.
* tree-chrec.h (evolution_function_is_affine_in_loop): New.
(evolution_function_is_affine_or_constant_p): Removed.
* tree-data-ref.c (dr_analyze_indices): Replace resolve_mixers with
instantiate_scev.
(analyze_siv_subscript): Pass in the loop nest number.
Call evolution_function_is_affine_in_loop instead of
evolution_function_is_affine_p.
(analyze_overlapping_iterations): Pass in the loop nest number.

* tree-chrec.h (chrec_fold_op): New.
* tree-data-ref.c (initialize_matrix_A): Traverse NOP_EXPR, PLUS_EXPR, and
other trees.

* testsuite/gfortran.dg/pr36206.f: New.

Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com>
From-SVN: r135663
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/pr36206.f [new file with mode: 0644]
gcc/tree-chrec.h
gcc/tree-data-ref.c
gcc/tree-scalar-evolution.c