From 377d9792759129b52e9fa1f5fff1e56c9cade399 Mon Sep 17 00:00:00 2001 From: Andrew Macleod Date: Fri, 18 Oct 2013 12:39:34 +0000 Subject: [PATCH] tree-cfg.h: Rename from tree-flow.h. * tree-cfg.h: Rename from tree-flow.h. Remove #includes. * tree-ssa.h: Relocate required #includes from tree-cfg.h. * tree-ssa-operands.h: Remove prototype. * tree-ssa-operands.c (virtual_operand_p): Move to gimple.c. * gimple.c (virtual_operand_p): Relocate from gimple.c. * gimple.h: Add prototype. * gimple-ssa.h: Include tree-ssa-operands.h. * tree-dump.c: Add tree-cfg.h to include list. * tree-ssa-alias.c: Add ipa-reference.h to include list. * config/alpha/alpha.c: Include gimple-ssa.h instead of tree-flow.h. * config/i386/i386.c: Don't include tree-flow.h. * config/rs6000/rs6000.c: Likewise. * lto/lto.c: Remove tree-flow.h from include list. * testsuite/g++.dg/plugin/header_plugin.c: Don't include tree-flow.h. From-SVN: r203817 --- gcc/ChangeLog | 15 +++++++++++++ gcc/config/alpha/alpha.c | 3 +-- gcc/config/i386/i386.c | 1 - gcc/config/rs6000/rs6000.c | 1 - gcc/gimple-ssa.h | 5 ++--- gcc/gimple.c | 21 +++++++++++++++++- gcc/gimple.h | 2 ++ gcc/lto/ChangeLog | 4 ++++ gcc/lto/lto.c | 1 - gcc/testsuite/ChangeLog | 10 ++++++--- gcc/testsuite/g++.dg/plugin/header_plugin.c | 1 - gcc/{tree-flow.h => tree-cfg.h} | 24 ++++----------------- gcc/tree-dump.c | 2 +- gcc/tree-ssa-alias.c | 1 + gcc/tree-ssa-operands.c | 18 ---------------- gcc/tree-ssa-operands.h | 1 - gcc/tree-ssa.h | 13 ++++++++--- 17 files changed, 67 insertions(+), 56 deletions(-) rename gcc/{tree-flow.h => tree-cfg.h} (89%) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 082dc54e766..71298916e3b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,18 @@ +2013-10-18 Andrew MacLeod + + * tree-cfg.h: Rename from tree-flow.h. Remove #includes. + * tree-ssa.h: Relocate required #includes from tree-cfg.h. + * tree-ssa-operands.h: Remove prototype. + * tree-ssa-operands.c (virtual_operand_p): Move to gimple.c. + * gimple.c (virtual_operand_p): Relocate from gimple.c. + * gimple.h: Add prototype. + * gimple-ssa.h: Include tree-ssa-operands.h. + * tree-dump.c: Add tree-cfg.h to include list. + * tree-ssa-alias.c: Add ipa-reference.h to include list. + * config/alpha/alpha.c: Include gimple-ssa.h instead of tree-flow.h. + * config/i386/i386.c: Don't include tree-flow.h. + * config/rs6000/rs6000.c: Likewise. + 2013-10-18 Jan-Benedict Glaw * config/frv/frv.c (frv_init_cumulative_args): Fix wrong cast. diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c index 63b8c8b1348..e39fc7731e6 100644 --- a/gcc/config/alpha/alpha.c +++ b/gcc/config/alpha/alpha.c @@ -49,7 +49,7 @@ along with GCC; see the file COPYING3. If not see #include "langhooks.h" #include "splay-tree.h" #include "gimple.h" -#include "tree-flow.h" +#include "gimple-ssa.h" #include "tree-ssanames.h" #include "tree-stdarg.h" #include "tm-constrs.h" @@ -57,7 +57,6 @@ along with GCC; see the file COPYING3. If not see #include "libfuncs.h" #include "opts.h" #include "params.h" -#include "gimple-ssa.h" /* Specify which cpu to schedule for. */ enum processor_type alpha_tune; diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index c2ad5b68ec9..b8c3c1d7128 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -61,7 +61,6 @@ along with GCC; see the file COPYING3. If not see #include "diagnostic.h" #include "dumpfile.h" #include "tree-pass.h" -#include "tree-flow.h" #include "context.h" #include "pass_manager.h" diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index e61e1e80e5a..4daebf26a30 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -52,7 +52,6 @@ #include "cfgloop.h" #include "sched-int.h" #include "gimple.h" -#include "tree-flow.h" #include "intl.h" #include "params.h" #include "tm-constrs.h" diff --git a/gcc/gimple-ssa.h b/gcc/gimple-ssa.h index f764efc64b2..23aa099ba51 100644 --- a/gcc/gimple-ssa.h +++ b/gcc/gimple-ssa.h @@ -21,6 +21,8 @@ along with GCC; see the file COPYING3. If not see #ifndef GCC_GIMPLE_SSA_H #define GCC_GIMPLE_SSA_H +#include "tree-ssa-operands.h" + /* This structure is used to map a gimple statement to a label, or list of labels to represent transaction restart. */ @@ -92,9 +94,6 @@ gimple_in_ssa_p (const struct function *fun) return fun && fun->gimple_df && fun->gimple_df->in_ssa_p; } -/* Inline functions for manipulating various data structures defined in - tree-flow.h. See tree-flow.h for documentation. */ - /* Artificial variable used for the virtual operand FUD chain. */ static inline tree gimple_vop (const struct function *fun) diff --git a/gcc/gimple.c b/gcc/gimple.c index 573dbb1fc5b..3ddceb95cf3 100644 --- a/gcc/gimple.c +++ b/gcc/gimple.c @@ -30,12 +30,12 @@ along with GCC; see the file COPYING3. If not see #include "basic-block.h" #include "gimple.h" #include "diagnostic.h" -#include "tree-flow.h" #include "value-prof.h" #include "flags.h" #include "alias.h" #include "demangle.h" #include "langhooks.h" +#include "bitmap.h" /* All the tuples have their operand vector (if present) at the very bottom @@ -2776,6 +2776,25 @@ is_gimple_id (tree t) || TREE_CODE (t) == STRING_CST); } +/* Return true if OP, an SSA name or a DECL is a virtual operand. */ + +bool +virtual_operand_p (tree op) +{ + if (TREE_CODE (op) == SSA_NAME) + { + op = SSA_NAME_VAR (op); + if (!op) + return false; + } + + if (TREE_CODE (op) == VAR_DECL) + return VAR_DECL_IS_VIRTUAL_OPERAND (op); + + return false; +} + + /* Return true if T is a non-aggregate register variable. */ bool diff --git a/gcc/gimple.h b/gcc/gimple.h index ea7858e4524..d8528acade5 100644 --- a/gcc/gimple.h +++ b/gcc/gimple.h @@ -847,6 +847,8 @@ unsigned get_gimple_rhs_num_ops (enum tree_code); gimple gimple_alloc_stat (enum gimple_code, unsigned MEM_STAT_DECL); const char *gimple_decl_printable_name (tree, int); +/* Returns true iff T is a virtual ssa name decl. */ +extern bool virtual_operand_p (tree); /* Returns true iff T is a scalar register variable. */ extern bool is_gimple_reg (tree); /* Returns true iff T is any sort of variable. */ diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog index ab0b9a909de..0bc08627d89 100644 --- a/gcc/lto/ChangeLog +++ b/gcc/lto/ChangeLog @@ -1,3 +1,7 @@ +2013-10-18 Andrew MacLeod + + * lto.c: Remove tree-flow.h from include list. + 2013-10-15 Richard Biener * lto.c (hash_canonical_type): Split out from ... diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c index d9c36dcc5d6..bca1dd12032 100644 --- a/gcc/lto/lto.c +++ b/gcc/lto/lto.c @@ -24,7 +24,6 @@ along with GCC; see the file COPYING3. If not see #include "opts.h" #include "toplev.h" #include "tree.h" -#include "tree-flow.h" #include "diagnostic-core.h" #include "tm.h" #include "cgraph.h" diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 765d194d90f..f92ac71eefe 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,9 +1,13 @@ +2013-10-18 Andrew MacLeod + + * g++.dg/plugin/header_plugin.c: Don't include tree-flow.h. + 2013-10-18 Hans-Peter Nilsson * gcc.dg/tree-ssa/gen-vect-11.c: Use dynamic vector cost model. - gcc.dg/tree-ssa/gen-vect-11a.c: Likewise. - gcc.dg/tree-ssa/gen-vect-2.c: Likewise. - gcc.dg/tree-ssa/gen-vect-25.c: Likewise. + * gcc.dg/tree-ssa/gen-vect-11a.c: Likewise. + * gcc.dg/tree-ssa/gen-vect-2.c: Likewise. + * gcc.dg/tree-ssa/gen-vect-25.c: Likewise. 2013-10-17 Charles Bayis diff --git a/gcc/testsuite/g++.dg/plugin/header_plugin.c b/gcc/testsuite/g++.dg/plugin/header_plugin.c index a464827dee9..a024194e19f 100644 --- a/gcc/testsuite/g++.dg/plugin/header_plugin.c +++ b/gcc/testsuite/g++.dg/plugin/header_plugin.c @@ -17,7 +17,6 @@ #include "c-family/c-pretty-print.h" #include "tree-iterator.h" #include "plugin.h" -#include "tree-flow.h" #include "langhooks.h" #include "cp/cxx-pretty-print.h" #include "cp/name-lookup.h" diff --git a/gcc/tree-flow.h b/gcc/tree-cfg.h similarity index 89% rename from gcc/tree-flow.h rename to gcc/tree-cfg.h index d849c2944bc..d6a5d8fce0d 100644 --- a/gcc/tree-flow.h +++ b/gcc/tree-cfg.h @@ -18,24 +18,8 @@ You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see . */ -#ifndef _TREE_FLOW_H -#define _TREE_FLOW_H 1 - -#include "bitmap.h" -#include "sbitmap.h" -#include "basic-block.h" -#include "hashtab.h" -#include "gimple.h" -#include "tree-ssa-operands.h" -#include "cgraph.h" -#include "ipa-reference.h" -#include "tree-ssa-alias.h" -#include "tree-cfgcleanup.h" -#include "tree-dfa.h" -#include "tree-pretty-print.h" -#include "gimple-low.h" -#include "tree-into-ssa.h" -#include "tree-ssa-loop.h" +#ifndef _TREE_CFG_H +#define _TREE_CFG_H /* Location to track pending stmt for edge insertion. */ #define PENDING_STMT(e) ((e)->insns.g) @@ -95,7 +79,7 @@ extern void debug_verbose (struct loop *ptr); extern void debug_loops (int); extern void debug_loop (struct loop *, int); extern void debug_loop_num (unsigned, int); -void remove_edge_and_dominated_blocks (edge); +extern void remove_edge_and_dominated_blocks (edge); extern bool gimple_purge_dead_eh_edges (basic_block); extern bool gimple_purge_all_dead_eh_edges (const_bitmap); extern bool gimple_purge_dead_abnormal_call_edges (basic_block); @@ -109,4 +93,4 @@ extern tree gimplify_build1 (gimple_stmt_iterator *, enum tree_code, extern void extract_true_false_edges_from_block (basic_block, edge *, edge *); extern unsigned int execute_fixup_cfg (void); -#endif /* _TREE_FLOW_H */ +#endif /* _TREE_CFG_H */ diff --git a/gcc/tree-dump.c b/gcc/tree-dump.c index 6b16caa9469..17db244da64 100644 --- a/gcc/tree-dump.c +++ b/gcc/tree-dump.c @@ -29,7 +29,7 @@ along with GCC; see the file COPYING3. If not see #include "langhooks.h" #include "tree-iterator.h" #include "tree-pretty-print.h" -#include "tree-flow.h" +#include "tree-cfg.h" static unsigned int queue (dump_info_p, const_tree, int); static void dump_index (dump_info_p, unsigned int); diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c index 3cce3315ba2..605377e6feb 100644 --- a/gcc/tree-ssa-alias.c +++ b/gcc/tree-ssa-alias.c @@ -42,6 +42,7 @@ along with GCC; see the file COPYING3. If not see #include "pointer-set.h" #include "alloc-pool.h" #include "tree-ssa-alias.h" +#include "ipa-reference.h" /* Broad overview of how alias analysis on gimple works: diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c index 603f7975bcb..f397bb94f0a 100644 --- a/gcc/tree-ssa-operands.c +++ b/gcc/tree-ssa-operands.c @@ -1287,24 +1287,6 @@ debug_immediate_uses_for (tree var) } -/* Return true if OP, an SSA name or a DECL is a virtual operand. */ - -bool -virtual_operand_p (tree op) -{ - if (TREE_CODE (op) == SSA_NAME) - { - op = SSA_NAME_VAR (op); - if (!op) - return false; - } - - if (TREE_CODE (op) == VAR_DECL) - return VAR_DECL_IS_VIRTUAL_OPERAND (op); - - return false; -} - /* Unlink STMTs virtual definition from the IL by propagating its use. */ void diff --git a/gcc/tree-ssa-operands.h b/gcc/tree-ssa-operands.h index b3a4a920e88..759b155a3e7 100644 --- a/gcc/tree-ssa-operands.h +++ b/gcc/tree-ssa-operands.h @@ -103,7 +103,6 @@ extern void dump_immediate_uses (FILE *file); extern void debug_immediate_uses (void); extern void debug_immediate_uses_for (tree var); -extern bool virtual_operand_p (tree); extern void unlink_stmt_vdef (gimple); /* Return the tree pointed-to by USE. */ diff --git a/gcc/tree-ssa.h b/gcc/tree-ssa.h index 7371ceb2678..8c26fd1a2fe 100644 --- a/gcc/tree-ssa.h +++ b/gcc/tree-ssa.h @@ -20,16 +20,23 @@ along with GCC; see the file COPYING3. If not see #ifndef GCC_TREE_SSA_H #define GCC_TREE_SSA_H +#include "bitmap.h" +#include "sbitmap.h" #include "gimple.h" -#include "tree-ssa-operands.h" -#include "tree-phinodes.h" #include "gimple-ssa.h" +#include "cgraph.h" +#include "tree-cfgcleanup.h" +#include "tree-cfg.h" +#include "tree-phinodes.h" #include "ssa-iterators.h" #include "tree-ssanames.h" #include "tree-ssa-dom.h" -#include "tree-flow.h" #include "tree-ssa-threadedge.h" #include "tree-ssa-address.h" +#include "tree-ssa-loop.h" +#include "tree-into-ssa.h" +#include "gimple-low.h" +#include "tree-dfa.h" /* Mapping for redirected edges. */ struct _edge_var_map { -- 2.30.2