diff options
author | Richard Biener <rguenther@suse.de> | 2017-11-28 14:58:11 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2017-11-28 14:58:11 +0000 |
commit | 4aa458f2ac11aef044a08fcb32dc2c2401cf6561 (patch) | |
tree | 4de8c7b0b37f10808fb3874b112408d5dc6787ce /gcc/tree-vrp.h | |
parent | 73ff3db2f452c816fce0c14c6c40bc7df56ebf9f (diff) | |
download | gcc-4aa458f2ac11aef044a08fcb32dc2c2401cf6561.zip gcc-4aa458f2ac11aef044a08fcb32dc2c2401cf6561.tar.gz gcc-4aa458f2ac11aef044a08fcb32dc2c2401cf6561.tar.bz2 |
re PR tree-optimization/80776 (-Wformat-overflow false positive for %d on integer bounded by __builtin_unreachable)
2017-11-28 Richard Biener <rguenther@suse.de>
PR tree-optimization/80776
* gimple-ssa-evrp-analyze.h (evrp_range_analyzer::set_ssa_range_info):
Declare.
* gimple-ssa-evrp-analyze.c (evrp_range_analyzer::set_ssa_range_info):
New function.
(evrp_range_analyzer::record_ranges_from_incoming_edges):
If the incoming edge is an effective fallthru because the other
edge only reaches a __builtin_unreachable () then record ranges
derived from the controlling condition in SSA info.
(evrp_range_analyzer::record_ranges_from_phis): Use set_ssa_range_info.
(evrp_range_analyzer::record_ranges_from_stmt): Likewise.
* gcc.dg/pr80776-1.c: New testcase.
* gcc.dg/pr80776-2.c: Likewise.
From-SVN: r255201
Diffstat (limited to 'gcc/tree-vrp.h')
-rw-r--r-- | gcc/tree-vrp.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-vrp.h b/gcc/tree-vrp.h index a0f72db..5dafaf1 100644 --- a/gcc/tree-vrp.h +++ b/gcc/tree-vrp.h @@ -116,6 +116,7 @@ extern bool overflow_comparison_p (tree_code, tree, tree, bool, tree *); extern bool range_int_cst_singleton_p (value_range *); extern int value_inside_range (tree, tree, tree); extern tree get_single_symbol (tree, bool *, tree *); +extern void maybe_set_nonzero_bits (edge, tree); struct switch_update { |