diff options
author | Andrew Macleod <amacleod@redhat.com> | 2014-04-17 20:43:43 +0000 |
---|---|---|
committer | Andrew Macleod <amacleod@redhat.com> | 2014-04-17 20:43:43 +0000 |
commit | 2afa74a5d1c1029f6ee917e26d6217f3b3649811 (patch) | |
tree | 5f9c32a066a78df7072d3085395a19a9e416f989 | |
parent | d40278e52d91245931ea5d1cb7e8876c07fc7390 (diff) |
cleanup locations of some stuffre-arch
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/re-arch@209496 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/gimple-tree.c | 8 | ||||
-rw-r--r-- | gcc/gimple-tree.h | 32 | ||||
-rw-r--r-- | gcc/gimple-value-core.h | 2 | ||||
-rw-r--r-- | gcc/gimple-value.c | 23 | ||||
-rw-r--r-- | gcc/gimple-value.h | 235 | ||||
-rw-r--r-- | gcc/tree-ssa-ccp.c | 5 |
6 files changed, 148 insertions, 157 deletions
diff --git a/gcc/gimple-tree.c b/gcc/gimple-tree.c index a8c100d1820..17007696600 100644 --- a/gcc/gimple-tree.c +++ b/gcc/gimple-tree.c @@ -4,6 +4,14 @@ #include "gimple-tree.h" #include "gimple-expr.h" +Gimple::value_ptr boolean_true_node_ptr (&global_trees[TI_BOOLEAN_TRUE]); +Gimple::value_ptr boolean_false_node_ptr (&global_trees[TI_BOOLEAN_FALSE]); +Gimple::integer_cst_ptr integer_zero_node_ptr (&global_trees[TI_INTEGER_ZERO]); +Gimple::type_ptr void_type_node_ptr (&global_trees[TI_VOID_TYPE]); +Gimple::type_ptr boolean_type_node_ptr (&global_trees[TI_BOOLEAN_TYPE]); +Gimple::type_ptr char_type_node_ptr (&integer_types[itk_char]); +Gimple::type_ptr integer_type_node_ptr (&integer_types[itk_int]); + const char * gimple_tree_printable_name (tree decl, int verbosity) { diff --git a/gcc/gimple-tree.h b/gcc/gimple-tree.h index b338e604251..27ab98d2907 100644 --- a/gcc/gimple-tree.h +++ b/gcc/gimple-tree.h @@ -3,10 +3,29 @@ #include "gimple-value.h" +extern Gimple::value_ptr boolean_true_node_ptr; +extern Gimple::value_ptr boolean_false_node_ptr; +extern Gimple::type_ptr void_type_node_ptr; +extern Gimple::type_ptr char_type_node_ptr; +extern Gimple::type_ptr boolean_type_node_ptr; +extern Gimple::type_ptr integer_type_node_ptr; +extern Gimple::integer_cst_ptr integer_zero_node_ptr; + +#define gimple_boolean_true (*boolean_true_node_ptr) +#define gimple_boolean_false (*boolean_false_node_ptr) +#define gimple_void_type (*void_type_node_ptr) +#define gimple_char_type (*char_type_node_ptr) +#define gimple_boolean_type (*boolean_type_node_ptr) +#define gimple_integer_type (*integer_type_node_ptr) +#define gimple_integer_zero (*integer_zero_node_ptr) + + #define MAY_HAVE_DEBUG_STMTS (flag_var_tracking_assignments) +/* From gimple-tree.c. */ const char * gimple_tree_printable_name (tree, int); +/* From tree.h, but no 'tree' in the signature. */ extern void clean_symbol_name (char *p); extern tree build_call_expr_loc(location_t, tree, int, ...); /*builtins.c */ @@ -24,10 +43,10 @@ unshare_expr (Gimple::value v) return unshare_expr ((tree)v); } inline bool -integer_zero_p (Gimple::value v) +integer_zerop (Gimple::value v) { - extern int integer_zero_p (const_tree); - return integer_zero_p ((const_tree) v); + extern int integer_zerop (const_tree); + return integer_zerop ((const_tree) v); } inline bool @@ -142,13 +161,6 @@ inline void gimple_add_tmp_var (Gimple::var_decl var) // from tree.h - -inline Gimple::identifier -decl_assembler_name (Gimple::decl_with_viz d) -{ - return d->assembler_name (); -} - inline bool prototype_p (Gimple::function_or_method_type f) { diff --git a/gcc/gimple-value-core.h b/gcc/gimple-value-core.h index 20cbd04c48d..90d3f25aa98 100644 --- a/gcc/gimple-value-core.h +++ b/gcc/gimple-value-core.h @@ -146,6 +146,8 @@ class tree_desc { class type_desc : public tree_desc { + protected: + enum machine_mode vector_mode() const; public: Gimple::type type() const; type_list chain () const; diff --git a/gcc/gimple-value.c b/gcc/gimple-value.c index 94ffaa9aed9..6b46946a30c 100644 --- a/gcc/gimple-value.c +++ b/gcc/gimple-value.c @@ -25,16 +25,9 @@ along with GCC; see the file COPYING3. If not see #include "tm.h" #include "gimple-tree.h" #include "langhooks.h" +#include "stor-layout.h" -Gimple::value_ptr boolean_true_node_ptr (&global_trees[TI_BOOLEAN_TRUE]); -Gimple::value_ptr boolean_false_node_ptr (&global_trees[TI_BOOLEAN_FALSE]); -Gimple::integer_cst_ptr integer_zero_node_ptr (&global_trees[TI_INTEGER_ZERO]); -Gimple::type_ptr void_type_node_ptr (&global_trees[TI_VOID_TYPE]); -Gimple::type_ptr boolean_type_node_ptr (&global_trees[TI_BOOLEAN_TYPE]); -Gimple::type_ptr char_type_node_ptr (&integer_types[itk_char]); -Gimple::type_ptr integer_type_node_ptr (&integer_types[itk_int]); - location_t expr_location (Gimple::value v) { @@ -47,6 +40,7 @@ expr_location (Gimple::value v) void strip_nops (Gimple::value_ptr gv) { + extern tree tree_strip_nop_conversions (tree); *gv = tree_strip_nop_conversions (CONST_CAST_TREE ((tree)(*gv))); } @@ -77,6 +71,19 @@ decl_with_viz_desc::assembler_name() return node.decl_with_vis.assembler_name; } +Gimple::identifier +decl_desc::assembler_name() const +{ + decl_with_viz viz(&node); + return viz->assembler_name (); +} + +enum machine_mode +type_desc::vector_mode() const +{ + return vector_type_mode(&node); +} + } // namespace Gimple diff --git a/gcc/gimple-value.h b/gcc/gimple-value.h index f7dffbb7aaf..53248f9b72a 100644 --- a/gcc/gimple-value.h +++ b/gcc/gimple-value.h @@ -1,36 +1,12 @@ #ifndef GIMPLE_VALUE_H #define GIMPLE_VALUE_H -/* function_decls declared in tree.h that are needed. */ -extern int integer_zerop (const_tree expr); -extern tree tree_strip_nop_conversions (tree); - #include "gimple-value-core.h" #include "gimple-wrapper.h" -#include "stor-layout.h" /* For vector_type_mode. */ - -extern Gimple::value_ptr boolean_true_node_ptr; -extern Gimple::value_ptr boolean_false_node_ptr; -extern Gimple::type_ptr void_type_node_ptr; -extern Gimple::type_ptr char_type_node_ptr; -extern Gimple::type_ptr boolean_type_node_ptr; -extern Gimple::type_ptr integer_type_node_ptr; -extern Gimple::integer_cst_ptr integer_zero_node_ptr; - -#define gimple_boolean_true (*boolean_true_node_ptr) -#define gimple_boolean_false (*boolean_false_node_ptr) -#define gimple_void_type (*void_type_node_ptr) -#define gimple_char_type (*char_type_node_ptr) -#define gimple_boolean_type (*boolean_type_node_ptr) -#define gimple_integer_type (*integer_type_node_ptr) -#define gimple_integer_zero (*integer_zero_node_ptr) - -extern Gimple::identifier decl_assembler_name (Gimple::decl_with_viz d); namespace Gimple { -// class tree_desc - +/* Class tree_desc methods. */ inline enum tree_code tree_desc::code () const @@ -98,6 +74,41 @@ tree_desc::set_used(const bool f) } inline bool +tree_desc::static_p () const +{ + return node.base.static_flag; +} + +inline void +tree_desc::set_static_p (const bool f) +{ + node.base.static_flag = f; +} + +inline bool +tree_desc::side_effects () const +{ + return node.base.side_effects_flag; +} + +inline void +tree_desc::set_side_effects (const bool f) +{ + node.base.side_effects_flag = f; +} + +inline bool +tree_desc::constant () const +{ + return node.base.constant_flag; +} + +inline void +tree_desc::set_constant (const bool f) +{ + node.base.constant_flag = f; +} +inline bool tree_desc::test_node (void) const { return true; @@ -223,9 +234,6 @@ tree_desc::check_node (enum tree_code t1, enum tree_code t2, enum tree_code t3, #endif } - -// class block_desc - inline Gimple::value block_desc::supercontext () const { @@ -233,67 +241,11 @@ block_desc::supercontext () const } -// class type_desc - - inline Gimple::type type_desc::type() const { return Gimple::type (node.typed.type); } - -inline bool -label_decl_desc::forced_label () const -{ - return node.base.side_effects_flag; -} - -inline Gimple::value -value_list_desc::value () const -{ - return Gimple::value (node.list.value); -} - -inline Gimple::value_ptr -value_list_desc::ptrto_value () -{ - return Gimple::value_ptr (&(node.list.value)); -} - - -inline value_list -value_list_desc::chain () const -{ - return value_list (node.common.chain); -} - -inline Gimple::identifier -identifier_list_desc::value () const -{ - return Gimple::identifier (node.list.value); -} - -inline identifier_list -identifier_list_desc::chain () const -{ - return identifier_list (node.common.chain); -} - - - -inline Gimple::type -type_list_desc::value () const -{ - return Gimple::type (node.list.value); -} - -inline type_list -type_list_desc::chain () const -{ - return type_list (node.common.chain); -} - - inline bool type_desc::type_unsigned () const { return node.base.u.bits.unsigned_flag; } @@ -302,7 +254,7 @@ inline enum machine_mode type_desc::mode () const { if (code () == VECTOR_TYPE) - return vector_type_mode (&node); + return vector_mode (); else return node.type_common.mode; } @@ -722,41 +674,6 @@ decl_desc::set_external(const bool f) node.decl_common.decl_flag_1 = f; } -inline bool -tree_desc::static_p () const -{ - return node.base.static_flag; -} - -inline void -tree_desc::set_static_p (const bool f) -{ - node.base.static_flag = f; -} - -inline bool -tree_desc::side_effects () const -{ - return node.base.side_effects_flag; -} - -inline void -tree_desc::set_side_effects (const bool f) -{ - node.base.side_effects_flag = f; -} - -inline bool -tree_desc::constant () const -{ - return node.base.constant_flag; -} - -inline void -tree_desc::set_constant (const bool f) -{ - node.base.constant_flag = f; -} inline location_t decl_desc::source_location () const @@ -906,6 +823,14 @@ decl_desc::assembler_name_set_p() const && node.decl_with_vis.assembler_name != (tree)0); } +inline bool +decl_desc::decl_public() const +{ return node.base.public_flag; } + +inline bool +decl_desc::decl_asm_written() const +{ return node.base.asm_written_flag; } + inline bool decl_with_viz_desc::hard_register () const { @@ -930,14 +855,6 @@ decl_with_viz_desc::assembler_name_set_p() const return node.decl_with_vis.assembler_name != (tree)0; } -inline Gimple::identifier -decl_desc::assembler_name() const -{ - decl_with_viz viz(&node); - return decl_assembler_name (viz); -} - - /* inline bool @@ -949,15 +866,6 @@ decl_desc::decl_comdat() const { return DECL_WITH_VIS_CHECK (Tree)->decl_with_vis.comdat_flag; } */ -inline bool -decl_desc::decl_public() const -{ return node.base.public_flag; } - -inline bool -decl_desc::decl_asm_written() const -{ return node.base.asm_written_flag; } - - inline bool var_decl_desc::is_virtual_operand () const { @@ -987,6 +895,59 @@ function_decl_desc::builtin () const return builtin_class () != NOT_BUILT_IN; } +inline bool +label_decl_desc::forced_label () const +{ + return node.base.side_effects_flag; +} + +inline Gimple::value +value_list_desc::value () const +{ + return Gimple::value (node.list.value); +} + +inline Gimple::value_ptr +value_list_desc::ptrto_value () +{ + return Gimple::value_ptr (&(node.list.value)); +} + + +inline value_list +value_list_desc::chain () const +{ + return value_list (node.common.chain); +} + +inline Gimple::identifier +identifier_list_desc::value () const +{ + return Gimple::identifier (node.list.value); +} + +inline identifier_list +identifier_list_desc::chain () const +{ + return identifier_list (node.common.chain); +} + + + +inline Gimple::type +type_list_desc::value () const +{ + return Gimple::type (node.list.value); +} + +inline type_list +type_list_desc::chain () const +{ + return type_list (node.common.chain); +} + + + // // ssa_name // diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c index f894a961847..1083eb3ef7f 100644 --- a/gcc/tree-ssa-ccp.c +++ b/gcc/tree-ssa-ccp.c @@ -2484,8 +2484,9 @@ optimize_stdarg_builtin (gimple call) return NULL_GIMPLE; lhs = build_fold_indirect_ref_loc (loc, lhs); - rhs = build_call_expr_loc (loc, gimple_builtin_decl_explicit (BUILT_IN_NEXT_ARG), - 1, gimple_integer_zero); + rhs = build_call_expr_loc (loc, + gimple_builtin_decl_explicit (BUILT_IN_NEXT_ARG), + 1, gimple_integer_zero); rhs = fold_convert_loc (loc, lhs->type (), rhs); return create<Gimple::modify_expr> (lhs->type (), lhs, rhs); |