aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Macleod <amacleod@redhat.com>2015-12-17 21:32:25 +0000
committerAndrew Macleod <amacleod@redhat.com>2015-12-17 21:32:25 +0000
commit3699df9669b9b0bfb68ba402fa3623ad2db9eb49 (patch)
tree43ceea24fdd099bb0b30de13a3a7d7800a4eb494
parent7d25fbad2a93f90b8b4fc7a5100d876311e1f060 (diff)
patchup all the target type tables too for attributes
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/ttype-2015@231788 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/config/arm/arm.c12
-rw-r--r--gcc/config/avr/avr.c6
-rw-r--r--gcc/config/bfin/bfin.c8
-rw-r--r--gcc/config/darwin-protos.h2
-rw-r--r--gcc/config/darwin.c2
-rw-r--r--gcc/config/darwin.h4
-rw-r--r--gcc/config/m32c/m32c.c4
-rw-r--r--gcc/config/mep/mep.c20
-rw-r--r--gcc/config/rs6000/rs6000.c30
-rw-r--r--gcc/config/rs6000/rs6000.h2
-rw-r--r--gcc/config/s390/s390-builtins.h4
-rw-r--r--gcc/config/s390/s390.c10
-rw-r--r--gcc/config/sh/sh.c4
-rw-r--r--gcc/config/spu/spu.c8
-rw-r--r--gcc/config/stormy16/stormy16.c4
15 files changed, 60 insertions, 60 deletions
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index a7aac897714..04b3a6f1fe0 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -130,11 +130,11 @@ static unsigned long arm_compute_save_reg_mask (void);
static unsigned long arm_isr_value (tree);
static unsigned long arm_compute_func_type (void);
static tree arm_handle_fndecl_attribute (tree *, tree, tree, int, bool *);
-static tree arm_handle_pcs_attribute (tree *, tree, tree, int, bool *);
+static tree arm_handle_pcs_attribute (ttype **, tree, tree, int, bool *);
static tree arm_handle_isr_decl_attribute (tree *, tree, tree, int, bool *);
-static tree arm_handle_isr_type_attribute (tree *, tree, tree, int, bool *);
+static tree arm_handle_isr_type_attribute (ttype **, tree, tree, int, bool *);
#if TARGET_DLLIMPORT_DECL_ATTRIBUTES
-static tree arm_handle_notshared_attribute (tree *, tree, tree, int, bool *);
+static tree arm_handle_notshared_attribute (ttype **, tree, tree, int, bool *);
#endif
static void arm_output_function_epilogue (FILE *, HOST_WIDE_INT);
static void arm_output_function_prologue (FILE *, HOST_WIDE_INT);
@@ -6438,7 +6438,7 @@ arm_handle_isr_decl_attribute (tree *node, tree name, tree args, int flags,
}
static tree
-arm_handle_isr_type_attribute (tree *node, tree name, tree args, int flags,
+arm_handle_isr_type_attribute (ttype **node, tree name, tree args, int flags,
bool *no_add_attrs)
{
if (TREE_CODE (*node) == FUNCTION_TYPE
@@ -6485,7 +6485,7 @@ arm_handle_isr_type_attribute (tree *node, tree name, tree args, int flags,
/* Handle a "pcs" attribute; arguments as in struct
attribute_spec.handler. */
static tree
-arm_handle_pcs_attribute (tree *node ATTRIBUTE_UNUSED, tree name, tree args,
+arm_handle_pcs_attribute (ttype **node ATTRIBUTE_UNUSED, tree name, tree args,
int flags ATTRIBUTE_UNUSED, bool *no_add_attrs)
{
if (arm_pcs_from_attribute (args) == ARM_PCS_UNKNOWN)
@@ -6503,7 +6503,7 @@ arm_handle_pcs_attribute (tree *node ATTRIBUTE_UNUSED, tree name, tree args,
attribute. */
static tree
-arm_handle_notshared_attribute (tree *node,
+arm_handle_notshared_attribute (ttype **node,
tree name ATTRIBUTE_UNUSED,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c
index 871663a0e82..42f9a622e11 100644
--- a/gcc/config/avr/avr.c
+++ b/gcc/config/avr/avr.c
@@ -8907,7 +8907,7 @@ avr_class_likely_spilled_p (reg_class_t c)
instruction. */
static tree
-avr_ignore_type_attribute (tree *node ATTRIBUTE_UNUSED,
+avr_ignore_type_attribute (ttype **node ATTRIBUTE_UNUSED,
tree name ATTRIBUTE_UNUSED,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
@@ -8917,7 +8917,7 @@ avr_ignore_type_attribute (tree *node ATTRIBUTE_UNUSED,
}
static tree
-avr_warning_type_attribute (tree *node ATTRIBUTE_UNUSED, tree name,
+avr_warning_type_attribute (ttype **node ATTRIBUTE_UNUSED, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED, bool *no_add_attrs)
{
@@ -8985,7 +8985,7 @@ avr_handle_fndecl_attribute (tree *node, tree name,
}
static tree
-avr_handle_fntype_attribute (tree *node, tree name,
+avr_handle_fntype_attribute (ttype **node, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
bool *no_add_attrs)
diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c
index 5cd538c3202..62c5f79136e 100644
--- a/gcc/config/bfin/bfin.c
+++ b/gcc/config/bfin/bfin.c
@@ -4658,12 +4658,12 @@ bfin_reorg (void)
attributes; arguments as in struct attribute_spec.handler. */
static tree
-handle_int_type_attribute (tree *node, tree name,
+handle_int_type_attribute (ttype **node, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
bool *no_add_attrs)
{
- tree x = *node;
+ ttype *x = *node;
if (TREE_CODE (x) != FUNCTION_TYPE)
{
warning (OPT_Wattributes, "%qE attribute only applies to functions",
@@ -4682,7 +4682,7 @@ handle_int_decl_attribute (tree *node, tree name, tree args, int flags,
{
tree x = *node;
if (TREE_CODE (x) == FUNCTION_DECL)
- return handle_int_type_attribute (&TREE_TYPE(x), name, args, flags,
+ return handle_int_type_attribute (TREE_TTYPE_PTR(x), name, args, flags,
no_add_attrs);
warning (OPT_Wattributes, "%qE attribute only applies to functions", name);
@@ -4733,7 +4733,7 @@ bfin_comp_type_attributes (const_tree type1, const_tree type2)
struct attribute_spec.handler. */
static tree
-bfin_handle_longcall_attribute (tree *node, tree name,
+bfin_handle_longcall_attribute (ttype **node, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
bool *no_add_attrs)
diff --git a/gcc/config/darwin-protos.h b/gcc/config/darwin-protos.h
index 249b9c1de7a..1c5e7f13f50 100644
--- a/gcc/config/darwin-protos.h
+++ b/gcc/config/darwin-protos.h
@@ -82,7 +82,7 @@ extern void darwin_asm_lto_end (void);
extern void darwin_mark_decl_preserved (const char *);
-extern tree darwin_handle_kext_attribute (tree *, tree, tree, int, bool *);
+extern tree darwin_handle_kext_attribute (ttype **, tree, tree, int, bool *);
extern tree darwin_handle_weak_import_attribute (tree *node, tree name,
tree args, int flags,
bool * no_add_attrs);
diff --git a/gcc/config/darwin.c b/gcc/config/darwin.c
index 7e035fb8c19..a5ff9dfd4ef 100644
--- a/gcc/config/darwin.c
+++ b/gcc/config/darwin.c
@@ -1983,7 +1983,7 @@ darwin_unique_section (tree decl ATTRIBUTE_UNUSED, int reloc ATTRIBUTE_UNUSED)
class data members on the padding at the end of the base class. */
tree
-darwin_handle_kext_attribute (tree *node, tree name,
+darwin_handle_kext_attribute (ttype **node, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
bool *no_add_attrs)
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 0fd6b7807ff..ffb203c686e 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -709,8 +709,8 @@ extern GTY(()) section * darwin_sections[NUM_DARWIN_SECTIONS];
/* Extra attributes for Darwin. */
#define SUBTARGET_ATTRIBUTE_TABLE \
- /* { name, min_len, max_len, decl_req, type_req, fn_type_req, handler, \
- affects_type_identity } */ \
+ /* { name, min_len, max_len, decl_req, type_req, fn_type_req, decl_handler,\
+ type_handler, affects_type_identity } */ \
{ "apple_kext_compatibility", 0, 0, false, true, false, \
NULL, darwin_handle_kext_attribute, false }, \
{ "weak_import", 0, 0, true, false, false, \
diff --git a/gcc/config/m32c/m32c.c b/gcc/config/m32c/m32c.c
index 0c0d234315a..9513dfa99ad 100644
--- a/gcc/config/m32c/m32c.c
+++ b/gcc/config/m32c/m32c.c
@@ -59,7 +59,7 @@ typedef enum
static bool m32c_function_needs_enter (void);
static tree interrupt_decl_handler (tree *, tree, tree, int, bool *);
-static tree interrupt_type_handler (tree *, tree, tree, int, bool *);
+static tree interrupt_type_handler (ttype *, tree, tree, int, bool *);
static tree function_vector_handler (tree *, tree, tree, int, bool *);
static int interrupt_p (tree node);
static int bank_switch_p (tree node);
@@ -2893,7 +2893,7 @@ interrupt_decl_handler (tree * node ATTRIBUTE_UNUSED,
}
static tree
-interrupt_type_handler (tree * node ATTRIBUTE_UNUSED,
+interrupt_type_handler (ttype ** node ATTRIBUTE_UNUSED,
tree name ATTRIBUTE_UNUSED,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
diff --git a/gcc/config/mep/mep.c b/gcc/config/mep/mep.c
index bcc5bbf97ce..b94b17b715e 100644
--- a/gcc/config/mep/mep.c
+++ b/gcc/config/mep/mep.c
@@ -167,16 +167,16 @@ static bool mep_function_ok_for_sibcall (tree, tree);
static int unique_bit_in (HOST_WIDE_INT);
static int bit_size_for_clip (HOST_WIDE_INT);
static int bytesize (const_tree, machine_mode);
-static tree mep_validate_type_based_tiny (tree *, tree, tree, int, bool *);
+static tree mep_validate_type_based_tiny (ttype **, tree, tree, int, bool *);
static tree mep_validate_decl_based_tiny (tree *, tree, tree, int, bool *);
-static tree mep_validate_type_near_far (tree *, tree, tree, int, bool *);
+static tree mep_validate_type_near_far (ttype **, tree, tree, int, bool *);
static tree mep_validate_decl_near_far (tree *, tree, tree, int, bool *);
-static tree mep_validate_type_disinterrupt (tree *, tree, tree, int, bool *);
+static tree mep_validate_type_disinterrupt (ttype **, tree, tree, int, bool *);
static tree mep_validate_decl_disinterrupt (tree *, tree, tree, int, bool *);
-static tree mep_validate_type_warning(tree *, tree, tree, int, bool *);
+static tree mep_validate_type_warning(ttype **, tree, tree, int, bool *);
static tree mep_validate_interrupt (tree *, tree, tree, int, bool *);
static tree mep_validate_io_cb (tree *, tree, tree, int, bool *);
-static tree mep_validate_vliw (tree *, tree, tree, int, bool *);
+static tree mep_validate_vliw (ttype **, tree, tree, int, bool *);
static bool mep_function_attribute_inlinable_p (const_tree);
static bool mep_can_inline_p (tree, tree);
static bool mep_lookup_pragma_disinterrupt (const char *);
@@ -3782,7 +3782,7 @@ mep_asm_output_opcode (FILE *file, const char *ptr)
/* Handle attributes. */
static tree
-mep_validate_type_based_tiny (tree *node, tree name, tree args,
+mep_validate_type_based_tiny (ttype **node, tree name, tree args,
int flags ATTRIBUTE_UNUSED, bool *no_add)
{
if (TREE_CODE (*node) != POINTER_TYPE)
@@ -3854,7 +3854,7 @@ mep_multiple_address_regions (tree list, bool check_section_attr)
: TYPE_ATTRIBUTES (TREE_TYPE (decl))
static tree
-mep_validate_type_near_far (tree *node, tree name, tree args,
+mep_validate_type_near_far (ttype **node, tree name, tree args,
int flags ATTRIBUTE_UNUSED, bool *no_add)
{
if (TREE_CODE (*node) != METHOD_TYPE && TREE_CODE (*node) != POINTER_TYPE)
@@ -3907,7 +3907,7 @@ mep_validate_decl_near_far (tree *node, tree name, tree args,
}
static tree
-mep_validate_type_disinterrupt (tree *node, tree name,
+mep_validate_type_disinterrupt (ttype **node, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED, bool *no_add)
{
@@ -3933,7 +3933,7 @@ mep_validate_decl_disinterrupt (tree *node, tree name,
}
static tree
-mep_validate_type_warning (tree *node ATTRIBUTE_UNUSED, tree name,
+mep_validate_type_warning (ttype **node ATTRIBUTE_UNUSED, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED, bool *no_add)
{
@@ -4002,7 +4002,7 @@ mep_validate_io_cb (tree *node, tree name, tree args,
}
static tree
-mep_validate_vliw (tree *node, tree name, tree args ATTRIBUTE_UNUSED,
+mep_validate_vliw (ttype **node, tree name, tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED, bool *no_add)
{
if (TREE_CODE (*node) != FUNCTION_TYPE
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 2c2a20b85e0..199f6fbdac0 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -203,7 +203,7 @@ enum reg_class rs6000_regno_regclass[FIRST_PSEUDO_REGISTER];
static int dbg_cost_ctrl;
/* Built in types. */
-tree rs6000_builtin_types[RS6000_BTI_MAX];
+ttype *rs6000_builtin_types[RS6000_BTI_MAX];
tree rs6000_builtin_decls[RS6000_BUILTIN_COUNT];
/* Flag to say the TOC is initialized */
@@ -242,7 +242,7 @@ enum reg_class rs6000_constraints[RS6000_CONSTRAINT_MAX];
int rs6000_vector_align[NUM_MACHINE_MODES];
/* Map selected modes to types for builtins. */
-static GTY(()) tree builtin_mode_to_type[MAX_MACHINE_MODE][2];
+static GTY(()) ttype *builtin_mode_to_type[MAX_MACHINE_MODE][2];
/* What modes to automatically generate reciprocal divide estimate (fre) and
reciprocal sqrt (frsqrte) for. */
@@ -1084,11 +1084,11 @@ static bool rs6000_debug_legitimate_address_p (machine_mode, rtx, bool);
static bool spe_func_has_64bit_regs_p (void);
static struct machine_function * rs6000_init_machine_status (void);
static int rs6000_ra_ever_killed (void);
-static tree rs6000_handle_longcall_attribute (tree *, tree, tree, int, bool *);
-static tree rs6000_handle_altivec_attribute (tree *, tree, tree, int, bool *);
+static tree rs6000_handle_longcall_attribute (ttype **, tree, tree, int, bool *);
+static tree rs6000_handle_altivec_attribute (ttype **, tree, tree, int, bool *);
static tree rs6000_handle_struct_decl_attribute (tree *, tree, tree, int,
bool *);
-static tree rs6000_handle_struct_type_attribute (tree *, tree, tree, int,
+static tree rs6000_handle_struct_type_attribute (ttype **, tree, tree, int,
bool *);
static tree rs6000_builtin_vectorized_libmass (tree, tree, tree);
static void rs6000_emit_set_long_const (rtx, HOST_WIDE_INT);
@@ -14531,12 +14531,12 @@ rs6000_init_builtins (void)
defaults. */
if (TARGET_FLOAT128)
{
- ibm128_float_type_node = make_node (REAL_TYPE);
+ ibm128_float_type_node = make_type_node (REAL_TYPE);
TYPE_PRECISION (ibm128_float_type_node) = 128;
layout_type (ibm128_float_type_node);
SET_TYPE_MODE (ibm128_float_type_node, IFmode);
- ieee128_float_type_node = make_node (REAL_TYPE);
+ ieee128_float_type_node = make_type_node (REAL_TYPE);
TYPE_PRECISION (ieee128_float_type_node) = 128;
layout_type (ieee128_float_type_node);
SET_TYPE_MODE (ieee128_float_type_node, KFmode);
@@ -29930,13 +29930,13 @@ rs6000_attribute_takes_identifier_p (const_tree attr_id)
given declaration. */
static tree
-rs6000_handle_altivec_attribute (tree *node,
+rs6000_handle_altivec_attribute (ttype **node,
tree name ATTRIBUTE_UNUSED,
tree args,
int flags ATTRIBUTE_UNUSED,
bool *no_add_attrs)
{
- tree type = *node, result = NULL_TREE;
+ ttype *type = *node, *result = NULL;
machine_mode mode;
int unsigned_p;
char altivec_type
@@ -29949,7 +29949,7 @@ rs6000_handle_altivec_attribute (tree *node,
|| TREE_CODE (type) == FUNCTION_TYPE
|| TREE_CODE (type) == METHOD_TYPE
|| TREE_CODE (type) == ARRAY_TYPE)
- type = TREE_TYPE (type);
+ type = TREE_TTYPE (type);
mode = TYPE_MODE (type);
@@ -30094,7 +30094,7 @@ rs6000_mangle_type (const_tree type)
struct attribute_spec.handler. */
static tree
-rs6000_handle_longcall_attribute (tree *node, tree name,
+rs6000_handle_longcall_attribute (ttype **node, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
bool *no_add_attrs)
@@ -30160,12 +30160,12 @@ rs6000_longcall_ref (rtx call_ref)
struct attribute_spec.handler. */
static tree
-rs6000_handle_struct_type_attribute (tree *node, tree name,
+rs6000_handle_struct_type_attribute (ttype **node, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
bool *no_add_attrs)
{
- tree *type = node;
+ ttype **type = node;
if (!(type && (TREE_CODE (*type) == RECORD_TYPE
|| TREE_CODE (*type) == UNION_TYPE)))
@@ -30192,8 +30192,8 @@ rs6000_handle_struct_decl_attribute (tree *node, tree name, tree args,
int flags, bool *no_add_attrs)
{
if (TREE_CODE (*node) == TYPE_DECL)
- return rs6000_handle_struct_type_attribute (&TREE_TYPE (*node), name, args,
- flags, no_add_attrs);
+ return rs6000_handle_struct_type_attribute (TREE_TTYPE_PTR (*node), name,
+ args, flags, no_add_attrs);
warning (OPT_Wattributes, "%qE attribute ignored", name);
*no_add_attrs = true;
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index 02da097227b..95235066475 100644
--- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h
@@ -2801,7 +2801,7 @@ enum rs6000_builtin_type_index
#define ieee128_float_type_node (rs6000_builtin_types[RS6000_BTI_ieee128_float])
#define ibm128_float_type_node (rs6000_builtin_types[RS6000_BTI_ibm128_float])
-extern GTY(()) tree rs6000_builtin_types[RS6000_BTI_MAX];
+extern GTY(()) ttype *rs6000_builtin_types[RS6000_BTI_MAX];
extern GTY(()) tree rs6000_builtin_decls[RS6000_BUILTIN_COUNT];
#define TARGET_SUPPORTS_WIDE_INT 1
diff --git a/gcc/config/s390/s390-builtins.h b/gcc/config/s390/s390-builtins.h
index f8f010ddad6..e0fab7290cc 100644
--- a/gcc/config/s390/s390-builtins.h
+++ b/gcc/config/s390/s390-builtins.h
@@ -88,8 +88,8 @@ enum s390_builtin_ov_type_index
#define MAX_OV_OPERANDS 6
-extern tree s390_builtin_types[BT_MAX];
-extern tree s390_builtin_fn_types[BT_FN_MAX];
+extern ttype *s390_builtin_types[BT_MAX];
+extern ttype *s390_builtin_fn_types[BT_FN_MAX];
/* Builtins. */
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index 785fb3c080a..fa639d38d95 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -586,8 +586,8 @@ opflags_overloaded_builtin_var[S390_OVERLOADED_BUILTIN_VAR_MAX + 1] =
0
};
-tree s390_builtin_types[BT_MAX];
-tree s390_builtin_fn_types[BT_FN_MAX];
+ttype *s390_builtin_types[BT_MAX];
+ttype *s390_builtin_fn_types[BT_FN_MAX];
tree s390_builtin_decls[S390_BUILTIN_MAX +
S390_OVERLOADED_BUILTIN_MAX +
S390_OVERLOADED_BUILTIN_VAR_MAX];
@@ -611,7 +611,7 @@ s390_init_builtins (void)
tree returns_twice_attr = tree_cons (get_identifier ("returns_twice"),
NULL, NULL);
tree noreturn_attr = tree_cons (get_identifier ("noreturn"), NULL, NULL);
- tree c_uint64_type_node;
+ ttype *c_uint64_type_node;
unsigned int bflags_mask = (BFLAGS_MASK_INIT);
bflags_mask |= (TARGET_VX) ? B_VX : 0;
@@ -1016,7 +1016,7 @@ s390_handle_vectorbool_attribute (ttype **node, tree name ATTRIBUTE_UNUSED,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED, bool *no_add_attrs)
{
- ttype *type = *node, *result = NULL_TYPE;
+ ttype *type = *node, *result = NULL;
machine_mode mode;
while (POINTER_TYPE_P (type)
@@ -1049,7 +1049,7 @@ static const struct attribute_spec s390_attribute_table[] = {
{ "s390_vector_bool", 0, 0, false, true, false, NULL,
s390_handle_vectorbool_attribute, true },
/* End element. */
- { NULL, 0, 0, false, false, false, NULL, false }
+ { NULL, 0, 0, false, false, false, NULL, NULL, false }
};
/* Return the alignment for LABEL. We default to the -falign-labels
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 33faea2e390..7afffb8e83f 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -210,7 +210,7 @@ static tree sh2a_handle_function_vector_handler_attribute (tree *, tree,
tree, int, bool *);
static tree sh_handle_sp_switch_attribute (tree *, tree, tree, int, bool *);
static tree sh_handle_trap_exit_attribute (tree *, tree, tree, int, bool *);
-static tree sh_handle_renesas_attribute (tree *, tree, tree, int, bool *);
+static tree sh_handle_renesas_attribute (ttype **, tree, tree, int, bool *);
static void sh_print_operand (FILE *, rtx, int);
static void sh_print_operand_address (FILE *, rtx);
static bool sh_print_operand_punct_valid_p (unsigned char code);
@@ -9942,7 +9942,7 @@ sh_handle_trap_exit_attribute (tree *node, tree name, tree args,
}
static tree
-sh_handle_renesas_attribute (tree *node ATTRIBUTE_UNUSED,
+sh_handle_renesas_attribute (ttype **node ATTRIBUTE_UNUSED,
tree name ATTRIBUTE_UNUSED,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
diff --git a/gcc/config/spu/spu.c b/gcc/config/spu/spu.c
index 10f9e5a793a..b824e1f7703 100644
--- a/gcc/config/spu/spu.c
+++ b/gcc/config/spu/spu.c
@@ -124,7 +124,7 @@ enum spu_builtin_type_index
#define unsigned_V4SI_type_node (spu_builtin_types[SPU_BTI_UV4SI])
#define unsigned_V2DI_type_node (spu_builtin_types[SPU_BTI_UV2DI])
-static GTY(()) tree spu_builtin_types[SPU_BTI_MAX];
+static GTY(()) ttype *spu_builtin_types[SPU_BTI_MAX];
struct spu_builtin_range
{
@@ -3687,18 +3687,18 @@ spu_handle_fndecl_attribute (tree * node,
/* Handle the "vector" attribute. */
static tree
-spu_handle_vector_attribute (tree* node, tree name,
+spu_handle_vector_attribute (ttype ** node, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED, bool * no_add_attrs)
{
- tree type = *node, result = NULL_TREE;
+ ttype *type = *node, *result = NULL;
machine_mode mode;
int unsigned_p;
while (POINTER_TYPE_P (type)
|| TREE_CODE (type) == FUNCTION_TYPE
|| TREE_CODE (type) == METHOD_TYPE || TREE_CODE (type) == ARRAY_TYPE)
- type = TREE_TYPE (type);
+ type = TREE_TTYPE (type);
mode = TYPE_MODE (type);
diff --git a/gcc/config/stormy16/stormy16.c b/gcc/config/stormy16/stormy16.c
index 26cc2c0a57f..66672f55b53 100644
--- a/gcc/config/stormy16/stormy16.c
+++ b/gcc/config/stormy16/stormy16.c
@@ -2179,7 +2179,7 @@ xstormy16_interrupt_function_p (void)
#define TARGET_ATTRIBUTE_TABLE xstormy16_attribute_table
static tree xstormy16_handle_interrupt_attribute
- (tree *, tree, tree, int, bool *);
+ (ttype **, tree, tree, int, bool *);
static tree xstormy16_handle_below100_attribute
(tree *, tree, tree, int, bool *);
@@ -2200,7 +2200,7 @@ static const struct attribute_spec xstormy16_attribute_table[] =
arguments as in struct attribute_spec.handler. */
static tree
-xstormy16_handle_interrupt_attribute (tree *node, tree name,
+xstormy16_handle_interrupt_attribute (ttype **node, tree name,
tree args ATTRIBUTE_UNUSED,
int flags ATTRIBUTE_UNUSED,
bool *no_add_attrs)