diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2022-07-25 15:58:04 +0200 |
---|---|---|
committer | Aldy Hernandez <aldyh@redhat.com> | 2022-07-25 17:31:27 +0200 |
commit | ca1e4b26c19351077db1d8e6ff1cb97f05bca79f (patch) | |
tree | 88a5e08d85d51282a80b574680b3e939bf8ce341 /gcc/gimple-range.cc | |
parent | 4c6567b4090d9363f90b5c68e238e7d0964b6e89 (diff) | |
download | gcc-ca1e4b26c19351077db1d8e6ff1cb97f05bca79f.zip gcc-ca1e4b26c19351077db1d8e6ff1cb97f05bca79f.tar.gz gcc-ca1e4b26c19351077db1d8e6ff1cb97f05bca79f.tar.bz2 |
[PR middle-end/106432] Gracefully handle unsupported type in range_on_edge
A cleaner approach to fix this PR has been suggested by Andrew, which
is to just return false on range_on_edge for unsupported range types.
Tested on x86-64 Linux.
PR middle-end/106432
gcc/ChangeLog:
* gimple-range.cc (gimple_ranger::range_on_edge): Return false
when the result range type is unsupported.
Diffstat (limited to 'gcc/gimple-range.cc')
-rw-r--r-- | gcc/gimple-range.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/gimple-range.cc b/gcc/gimple-range.cc index 7ac4830..eb347ee 100644 --- a/gcc/gimple-range.cc +++ b/gcc/gimple-range.cc @@ -201,7 +201,9 @@ bool gimple_ranger::range_on_edge (vrange &r, edge e, tree name) { Value_Range edge_range (TREE_TYPE (name)); - gcc_checking_assert (r.supports_type_p (TREE_TYPE (name))); + + if (!r.supports_type_p (TREE_TYPE (name))) + return false; // Do not process values along abnormal edges. if (e->flags & EDGE_ABNORMAL) |