+2017-11-02 Jeff Law <law@redhat.com>
+
+ * gimple-ssa-sprintf.c (sprintf_dom_walker): Remove
+ virtual keyword on FINAL OVERRIDE members.
+
+ * tree-ssa-propagate.h (ssa_propagation_engine): Group
+ virtuals together. Add virtual destructor.
+ (substitute_and_fold_engine): Similarly.
+
2017-11-02 Jan Hubicka <hubicka@ucw.cz>
* x86-tune.def (X86_TUNE_USE_INCDEC): Enable for Haswell+.
sprintf_dom_walker () : dom_walker (CDI_DOMINATORS) {}
~sprintf_dom_walker () {}
- virtual edge before_dom_children (basic_block) FINAL OVERRIDE;
+ edge before_dom_children (basic_block) FINAL OVERRIDE;
bool handle_gimple_call (gimple_stmt_iterator *);
struct call_info;
{
public:
- /* Main interface into the propagation engine. */
- void ssa_propagate (void);
+ virtual ~ssa_propagation_engine (void) { }
/* Virtual functions the clients must provide to visit statements
and phi nodes respectively. */
virtual enum ssa_prop_result visit_stmt (gimple *, edge *, tree *) = 0;
virtual enum ssa_prop_result visit_phi (gphi *) = 0;
+ /* Main interface into the propagation engine. */
+ void ssa_propagate (void);
+
private:
/* Internal implementation details. */
void simulate_stmt (gimple *stmt);
class substitute_and_fold_engine
{
public:
- bool substitute_and_fold (void);
- bool replace_uses_in (gimple *);
+ virtual ~substitute_and_fold_engine (void) { }
virtual bool fold_stmt (gimple_stmt_iterator *) { return false; }
virtual tree get_value (tree) { return NULL_TREE; }
+
+ bool substitute_and_fold (void);
+ bool replace_uses_in (gimple *);
bool replace_phi_args_in (gphi *);
};