aboutsummaryrefslogtreecommitdiff
path: root/gcc/lra-constraints.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2013-09-18 12:31:45 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2013-09-18 12:31:45 +0000
commit0547c9b695fcbcd477f7e455c2bf376ce1ec23d1 (patch)
tree59f32ef2e3ced559a50a2fd3d65803a14184d085 /gcc/lra-constraints.c
parent837bf5116d3d468479f45456b1492dd8ccf49299 (diff)
downloadgcc-0547c9b695fcbcd477f7e455c2bf376ce1ec23d1.zip
gcc-0547c9b695fcbcd477f7e455c2bf376ce1ec23d1.tar.gz
gcc-0547c9b695fcbcd477f7e455c2bf376ce1ec23d1.tar.bz2
re PR tree-optimization/58417 (Incorrect optimization in SCEV const-prop)
2013-09-18 Richard Biener <rguenther@suse.de> PR tree-optimization/58417 * tree-chrec.c (chrec_fold_plus_1): Assert that we do not have chrecs with symbols defined in the loop as operands. (chrec_fold_multiply): Likewise. * tree-scalar-evolution.c (interpret_rhs_expr): Instantiate parameters before folding binary operations. (struct instantiate_cache_entry_hasher): Remove. (struct instantiate_cache_type): Use a pointer-map. (instantiate_cache_type::instantiate_cache_type): New function. (instantiate_cache_type::get): Likewise. (instantiate_cache_type::set): Likewise. (instantiate_cache_type::~instantiate_cache_type): Adjust. (get_instantiated_value_entry): Likewise. (global_cache): New global. (instantiate_scev_r, instantiate_scev_poly, instantiate_scev_binary, instantiate_array_ref, instantiate_scev_convert, instantiate_scev_3, instantiate_scev_2, instantiate_scev_1): Do not pass along cache. (instantiate_scev_name): Adjust. (instantiate_scev): Construct global instead of local cache. (resolve_mixers): Likewise. * gcc.dg/torture/pr58417.c: New testcase. From-SVN: r202700
Diffstat (limited to 'gcc/lra-constraints.c')
0 files changed, 0 insertions, 0 deletions