Commit 16207ddd by Jeff Law Committed by Jeff Law

vr-values.h (VR_INITIALIZER): Move #define here.

	* vr-values.h (VR_INITIALIZER): Move #define here.
	* gimple-ssa-evrp.c: New file with contents extracted from tree-vrp.c
	* Makefile.in (OBJS): Add tree-evrp.o
	* tree-vrp.h (assert_info): Move structure definition here.
	(set_value_range_to_varying): Prototype.
	(vrp_operand_equal_p, range_includes_zero_p): Likewise.
	(infer_value_range, register_edge_assert_for): Likewise.
	(stmt_interesting_for_vrp): Likewise.
	* tree-vrp.c: Move all methods for evrp class into tree-evrp.c.
	(set_value_range_to_varying): No longer static.
	(vrp_operand_equal_p, range_includes_zero_p): Likewise.
	(infer_value_range, register_edge_assert_for): Likewise.

From-SVN: r254639
parent 54df5885
2017-11-10 Jeff Law <law@redhat.com>
* vr-values.h (VR_INITIALIZER): Move #define here.
* gimple-ssa-evrp.c: New file with contents extracted from tree-vrp.c
* Makefile.in (OBJS): Add tree-evrp.o
* tree-vrp.h (assert_info): Move structure definition here.
(set_value_range_to_varying): Prototype.
(vrp_operand_equal_p, range_includes_zero_p): Likewise.
(infer_value_range, register_edge_assert_for): Likewise.
(stmt_interesting_for_vrp): Likewise.
* tree-vrp.c: Move all methods for evrp class into tree-evrp.c.
(set_value_range_to_varying): No longer static.
(vrp_operand_equal_p, range_includes_zero_p): Likewise.
(infer_value_range, register_edge_assert_for): Likewise.
2017-11-10 Jan Hubicka <hubicka@ucw.cz>
* auto-profile.c (afdo_indirect_call): Drop frequency.
......@@ -1301,6 +1301,7 @@ OBJS = \
gimple-low.o \
gimple-pretty-print.o \
gimple-ssa-backprop.o \
gimple-ssa-evrp.o \
gimple-ssa-isolate-paths.o \
gimple-ssa-nonnull-compare.o \
gimple-ssa-split-paths.o \
......
......@@ -60,4 +60,28 @@ extern void extract_range_from_unary_expr (value_range *vr,
value_range *vr0_,
tree op0_type);
extern bool vrp_operand_equal_p (const_tree, const_tree);
struct assert_info
{
/* Predicate code for the ASSERT_EXPR. Must be COMPARISON_CLASS_P. */
enum tree_code comp_code;
/* Name to register the assert for. */
tree name;
/* Value being compared against. */
tree val;
/* Expression to compare. */
tree expr;
};
extern void register_edge_assert_for (tree, edge, enum tree_code,
tree, tree, vec<assert_info> &);
extern bool stmt_interesting_for_vrp (gimple *);
extern void set_value_range_to_varying (value_range *);
extern int range_includes_zero_p (tree, tree);
extern bool infer_value_range (gimple *, tree, tree_code *, tree *);
#endif /* GCC_TREE_VRP_H */
......@@ -116,4 +116,6 @@ class vr_values
bool simplify_stmt_using_ranges (gimple_stmt_iterator *);
};
#define VR_INITIALIZER { VR_UNDEFINED, NULL_TREE, NULL_TREE, NULL }
#endif /* GCC_VR_VALUES_H */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment