aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple-range.cc
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2022-07-04 17:32:07 +0200
committerAldy Hernandez <aldyh@redhat.com>2022-07-04 20:43:14 +0200
commitce8dbe7d834b9264d7a5cd74d3ce6c750d28b3af (patch)
treefb4da914116702e19d96324158147373de69facc /gcc/gimple-range.cc
parentac4c8f53b0f735be17aa020796602de2299da1c5 (diff)
downloadgcc-ce8dbe7d834b9264d7a5cd74d3ce6c750d28b3af.zip
gcc-ce8dbe7d834b9264d7a5cd74d3ce6c750d28b3af.tar.gz
gcc-ce8dbe7d834b9264d7a5cd74d3ce6c750d28b3af.tar.bz2
Misc conversions to vrange.
The following converts a handful of places that were irange centric. Tested on x86-64 Linux. gcc/ChangeLog: * gimple-range-fold.cc (fold_using_range::range_of_ssa_name_with_loop_info): Restrict the call to SCEV for irange supported types. (fold_using_range::range_of_builtin_int_call): Convert to vrange. * gimple-range.cc (gimple_ranger::prefill_stmt_dependencies): Same. * tree-ssa-dom.cc (cprop_operand): Same.
Diffstat (limited to 'gcc/gimple-range.cc')
-rw-r--r--gcc/gimple-range.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/gcc/gimple-range.cc b/gcc/gimple-range.cc
index f3a4655..3a9f0b0 100644
--- a/gcc/gimple-range.cc
+++ b/gcc/gimple-range.cc
@@ -422,12 +422,17 @@ gimple_ranger::prefill_stmt_dependencies (tree ssa)
{
gcc_checking_assert (range_op_handler (stmt));
tree op = gimple_range_operand2 (stmt);
- Value_Range r (TREE_TYPE (name));
if (op)
- prefill_name (r, op);
+ {
+ Value_Range r (TREE_TYPE (op));
+ prefill_name (r, op);
+ }
op = gimple_range_operand1 (stmt);
if (op)
- prefill_name (r, op);
+ {
+ Value_Range r (TREE_TYPE (op));
+ prefill_name (r, op);
+ }
}
}
if (idx)