From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12277 invoked by alias); 4 Apr 2011 10:33:07 -0000 Received: (qmail 12268 invoked by uid 22791); 4 Apr 2011 10:33:04 -0000 X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (38.113.113.100) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 04 Apr 2011 10:32:14 +0000 Received: (qmail 24546 invoked from network); 4 Apr 2011 10:32:13 -0000 Received: from unknown (HELO digraph.polyomino.org.uk) (joseph@127.0.0.2) by mail.codesourcery.com with ESMTPA; 4 Apr 2011 10:32:13 -0000 Received: from jsm28 (helo=localhost) by digraph.polyomino.org.uk with local-esmtp (Exim 4.72) (envelope-from ) id 1Q6h4t-0005Pl-Ge for gcc-patches@gcc.gnu.org; Mon, 04 Apr 2011 10:32:11 +0000 Date: Mon, 04 Apr 2011 10:33:00 -0000 From: "Joseph S. Myers" To: gcc-patches@gcc.gnu.org Subject: Re: Target header etc. cleanup patch In-Reply-To: Message-ID: References: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2011-04/txt/msg00199.txt.bz2 Here's a version of the patch updated for current trunk, since the pdp11 IRA_COVER_CLASSES removal has now been committed separately. OK to commit? 2011-04-04 Joseph Myers * config/alpha/alpha.c (struct machine_function): Use rtx, not struct rtx_def *. * config/bfin/bfin-protos.h (Mmode): Don't define. Expand definition where used. * config/bfin/bfin.h (bfin_cc_rtx, bfin_rets_rtx): Use rtx, not struct rtx_def *. * config/cris/cris-protos.h (STDIO_INCLUDED): Don't define. * config/fr30/fr30-protos.h (Mmode): Don't define. * config/fr30/fr30.h (inhibit_libc): Don't define. * config/h8300/h8300.h (struct cum_arg): Use rtx, not struct rtx_def *. * config/i386/cygming.h (union tree_node, TREE): Don't define or undefine. (FILE): Don't undefine. * config/iq2000/iq2000.h (struct iq2000_args): Use rtx, not struct rtx_def *. * config/m32c/m32c-protos.h (MM, UINT): Don't define. Expand definitions where used. * config/m32r/m32r-protos.h (Mmode): Don't define. Expand definition where used. * config/microblaze/microblaze.h (struct microblaze_args): Use rtx, not struct rtx_def *. * config/mn10300/mn10300-protos.h (Mmode, Cstar, Rclas): Don't define. Expand definitions where used. * config/pa/pa-protos.h (return_addr_rtx): Use rtx, not struct rtx_def *. * config/pa/pa.h (hppa_pic_save_rtx): Use rtx, not struct rtx_def *. * config/pdp11/pdp11.h (cc0_reg_rtx): Use rtx, not struct rtx_def *. * config/rx/rx-protos.h (Mmode, Fargs, Rcode): Don't define. Expand definitions where used. * config/rx/rx.c (rx_is_legitimate_address, rx_function_arg_size, rx_function_arg, rx_function_arg_advance, rx_function_arg_boundary): Expand definitions of those macros. * config/sh/sh-protos.h (sfunc_uses_reg, get_fpscr_rtx): Use rtx, not struct rtx_def *. * config/sh/sh.h (sh_compare_op0, sh_compare_op1): Use rtx, not struct rtx_def *. * config/spu/spu-protos.h (spu_float_const): Use rtx, not struct rtx_def *. * config/spu/spu.c (spu_float_const): Use rtx, not struct rtx_def *. * config/v850/v850-protos.h (Mmode): Don't define. Expand definition where used. * config/v850/v850.h (GHS_default_section_names, GHS_current_section_names): Use tree, not union tree_node *. Index: gcc/config/alpha/alpha.c =================================================================== --- gcc/config/alpha/alpha.c (revision 171932) +++ gcc/config/alpha/alpha.c (working copy) @@ -4606,7 +4606,7 @@ struct GTY(()) machine_function const char *some_ld_name; /* For TARGET_LD_BUGGY_LDGP. */ - struct rtx_def *gp_save_rtx; + rtx gp_save_rtx; /* For VMS condition handlers. */ bool uses_condition_handler; Index: gcc/config/m32c/m32c-protos.h =================================================================== --- gcc/config/m32c/m32c-protos.h (revision 171932) +++ gcc/config/m32c/m32c-protos.h (working copy) @@ -1,5 +1,5 @@ /* Target Prototypes for R8C/M16C/M32C - Copyright (C) 2005, 2007, 2008, 2010 + Copyright (C) 2005, 2007, 2008, 2010, 2011 Free Software Foundation, Inc. Contributed by Red Hat. @@ -19,12 +19,9 @@ along with GCC; see the file COPYING3. If not see . */ -#define MM enum machine_mode -#define UINT unsigned int - void m32c_conditional_register_usage (void); int m32c_const_ok_for_constraint_p (HOST_WIDE_INT, char, const char *); -UINT m32c_dwarf_frame_regnum (int); +unsigned int m32c_dwarf_frame_regnum (int); int m32c_eh_return_data_regno (int); void m32c_emit_epilogue (void); void m32c_emit_prologue (void); @@ -47,8 +44,8 @@ int m32c_trampoline_size (void); #ifdef RTX_CODE -int m32c_cannot_change_mode_class (MM, MM, int); -int m32c_class_max_nregs (int, MM); +int m32c_cannot_change_mode_class (enum machine_mode, enum machine_mode, int); +int m32c_class_max_nregs (int, enum machine_mode); rtx m32c_eh_return_stackadj_rtx (void); void m32c_emit_eh_epilogue (rtx); int m32c_expand_cmpstr (rtx *); @@ -60,20 +57,20 @@ void m32c_expand_neg_mulpsi3 (rtx *); int m32c_expand_setmemhi (rtx *); int m32c_extra_constraint_p (rtx, char, const char *); int m32c_extra_constraint_p2 (rtx, char, const char *); -int m32c_hard_regno_nregs (int, MM); -int m32c_hard_regno_ok (int, MM); +int m32c_hard_regno_nregs (int, enum machine_mode); +int m32c_hard_regno_ok (int, enum machine_mode); bool m32c_illegal_subreg_p (rtx); -bool m32c_immd_dbl_mov (rtx *, MM); +bool m32c_immd_dbl_mov (rtx *, enum machine_mode); rtx m32c_incoming_return_addr_rtx (void); int m32c_legitimate_constant_p (rtx); -int m32c_legitimize_reload_address (rtx *, MM, int, int, int); -int m32c_limit_reload_class (MM, int); -int m32c_modes_tieable_p (MM, MM); -bool m32c_mov_ok (rtx *, MM); +int m32c_legitimize_reload_address (rtx *, enum machine_mode, int, int, int); +int m32c_limit_reload_class (enum machine_mode, int); +int m32c_modes_tieable_p (enum machine_mode, enum machine_mode); +bool m32c_mov_ok (rtx *, enum machine_mode); char * m32c_output_compare (rtx, rtx *); int m32c_preferred_output_reload_class (rtx, int); int m32c_preferred_reload_class (rtx, int); -int m32c_prepare_move (rtx *, MM); +int m32c_prepare_move (rtx *, enum machine_mode); int m32c_prepare_shift (rtx *, int, int); void m32c_print_operand (FILE *, rtx, int); void m32c_print_operand_address (FILE *, rtx); @@ -81,8 +78,8 @@ int m32c_reg_ok_for_base_p (rtx, int); enum reg_class m32c_regno_reg_class (int); rtx m32c_return_addr_rtx (int); const char *m32c_scc_pattern (rtx *, RTX_CODE); -int m32c_secondary_reload_class (int, MM, rtx); -int m32c_split_move (rtx *, MM, int); +int m32c_secondary_reload_class (int, enum machine_mode, rtx); +int m32c_split_move (rtx *, enum machine_mode, int); int m32c_split_psi_p (rtx *); int current_function_special_page_vector (rtx); @@ -98,6 +95,3 @@ void m32c_output_aligned_common (FILE *, int, int, int); #endif - -#undef MM -#undef UINT Index: gcc/config/spu/spu-protos.h =================================================================== --- gcc/config/spu/spu-protos.h (revision 171932) +++ gcc/config/spu/spu-protos.h (working copy) @@ -1,4 +1,4 @@ -/* Copyright (C) 2006, 2007, 2008, 2009, 2010 +/* Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. This file is free software; you can redistribute it and/or modify it under @@ -42,8 +42,8 @@ extern rtx hwint_to_const_double (enum m extern rtx spu_const (enum machine_mode mode, HOST_WIDE_INT val); extern rtx spu_const_from_ints (enum machine_mode mode, int a, int b, int c, int d); -extern struct rtx_def *spu_float_const (const char *string, - enum machine_mode mode); +extern rtx spu_float_const (const char *string, + enum machine_mode mode); extern int immediate_load_p (rtx op, enum machine_mode mode); extern int logical_immediate_p (rtx op, enum machine_mode mode); extern int iohl_immediate_p (rtx op, enum machine_mode mode); Index: gcc/config/spu/spu.c =================================================================== --- gcc/config/spu/spu.c (revision 171932) +++ gcc/config/spu/spu.c (working copy) @@ -1,4 +1,5 @@ -/* Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +/* Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 + Free Software Foundation, Inc. This file is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free @@ -3309,7 +3310,7 @@ spu_sched_adjust_cost (rtx insn, rtx lin } /* Create a CONST_DOUBLE from a string. */ -struct rtx_def * +rtx spu_float_const (const char *string, enum machine_mode mode) { REAL_VALUE_TYPE value; Index: gcc/config/m32r/m32r-protos.h =================================================================== --- gcc/config/m32r/m32r-protos.h (revision 171932) +++ gcc/config/m32r/m32r-protos.h (working copy) @@ -1,5 +1,6 @@ /* Prototypes for m32r.c functions used in the md file & elsewhere. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, + 2011 Free Software Foundation, Inc. This file is part of GCC. @@ -18,9 +19,8 @@ along with GCC; see the file COPYING3. If not see . */ -/* Function prototypes that cannot exist in v850.h due to dependency +/* Function prototypes that cannot exist in m32r.h due to dependency complications. */ -#define Mmode enum machine_mode extern void m32r_init (void); extern void m32r_init_expanders (void); @@ -51,16 +51,14 @@ extern rtx m32r_return_addr (int); extern rtx m32r_function_symbol (const char *); #ifdef HAVE_MACHINE_MODES -extern int call_operand (rtx, Mmode); -extern int small_data_operand (rtx, Mmode); -extern int addr24_operand (rtx, Mmode); -extern int addr32_operand (rtx, Mmode); -extern int call26_operand (rtx, Mmode); -extern int memreg_operand (rtx, Mmode); -extern int small_insn_p (rtx, Mmode); +extern int call_operand (rtx, enum machine_mode); +extern int small_data_operand (rtx, enum machine_mode); +extern int addr24_operand (rtx, enum machine_mode); +extern int addr32_operand (rtx, enum machine_mode); +extern int call26_operand (rtx, enum machine_mode); +extern int memreg_operand (rtx, enum machine_mode); +extern int small_insn_p (rtx, enum machine_mode); #endif /* HAVE_MACHINE_MODES */ #endif /* RTX_CODE */ - -#undef Mmode Index: gcc/config/i386/cygming.h =================================================================== --- gcc/config/i386/cygming.h (revision 171932) +++ gcc/config/i386/cygming.h (working copy) @@ -1,7 +1,7 @@ /* Operating system specific defines to be used when targeting GCC for hosting on Windows32, using a Unix style C library and tools. Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, - 2004, 2005, 2007, 2008, 2009, 2010 + 2004, 2005, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. This file is part of GCC. @@ -176,9 +176,6 @@ along with GCC; see the file COPYING3. #undef LONG_TYPE_SIZE #define LONG_TYPE_SIZE 32 -union tree_node; -#define TREE union tree_node * - #define drectve_section() \ (fprintf (asm_out_file, "\t.section .drectve\n"), \ in_section = NULL) @@ -472,9 +469,3 @@ do { \ /* Static stack checking is supported by means of probes. */ #define STACK_CHECK_STATIC_BUILTIN 1 - -#undef TREE - -#ifndef BUFSIZ -# undef FILE -#endif Index: gcc/config/rx/rx-protos.h =================================================================== --- gcc/config/rx/rx-protos.h (revision 171932) +++ gcc/config/rx/rx-protos.h (working copy) @@ -21,11 +21,6 @@ #ifndef GCC_RX_PROTOS_H #define GCC_RX_PROTOS_H -/* A few abbreviations to make the prototypes shorter. */ -#define Mmode enum machine_mode -#define Fargs CUMULATIVE_ARGS -#define Rcode enum rtx_code - extern int rx_align_for_label (void); extern void rx_expand_prologue (void); extern int rx_initial_elimination_offset (int, int); @@ -37,11 +32,13 @@ extern void rx_emit_stack_pu extern void rx_expand_epilogue (bool); extern char * rx_gen_move_template (rtx *, bool); extern bool rx_is_legitimate_constant (rtx); -extern bool rx_is_restricted_memory_address (rtx, Mmode); -extern bool rx_match_ccmode (rtx, Mmode); +extern bool rx_is_restricted_memory_address (rtx, + enum machine_mode); +extern bool rx_match_ccmode (rtx, enum machine_mode); extern void rx_notice_update_cc (rtx body, rtx insn); -extern void rx_split_cbranch (Mmode, Rcode, rtx, rtx, rtx); -extern Mmode rx_select_cc_mode (Rcode, rtx, rtx); +extern void rx_split_cbranch (enum machine_mode, enum rtx_code, + rtx, rtx, rtx); +extern enum machine_mode rx_select_cc_mode (enum rtx_code, rtx, rtx); #endif #endif /* GCC_RX_PROTOS_H */ Index: gcc/config/rx/rx.c =================================================================== --- gcc/config/rx/rx.c (revision 171932) +++ gcc/config/rx/rx.c (working copy) @@ -80,7 +80,8 @@ rx_small_data_operand (rtx op) } static bool -rx_is_legitimate_address (Mmode mode, rtx x, bool strict ATTRIBUTE_UNUSED) +rx_is_legitimate_address (enum machine_mode mode, rtx x, + bool strict ATTRIBUTE_UNUSED) { if (RTX_OK_FOR_BASE (x, strict)) /* Register Indirect. */ @@ -811,7 +812,7 @@ rx_round_up (unsigned int value, unsigne occupied by an argument of type TYPE and mode MODE. */ static unsigned int -rx_function_arg_size (Mmode mode, const_tree type) +rx_function_arg_size (enum machine_mode mode, const_tree type) { unsigned int num_bytes; @@ -831,7 +832,8 @@ rx_function_arg_size (Mmode mode, const_ variable parameter list. */ static rtx -rx_function_arg (Fargs * cum, Mmode mode, const_tree type, bool named) +rx_function_arg (CUMULATIVE_ARGS * cum, enum machine_mode mode, + const_tree type, bool named) { unsigned int next_reg; unsigned int bytes_so_far = *cum; @@ -868,14 +870,14 @@ rx_function_arg (Fargs * cum, Mmode mode } static void -rx_function_arg_advance (Fargs * cum, Mmode mode, const_tree type, - bool named ATTRIBUTE_UNUSED) +rx_function_arg_advance (CUMULATIVE_ARGS * cum, enum machine_mode mode, + const_tree type, bool named ATTRIBUTE_UNUSED) { *cum += rx_function_arg_size (mode, type); } static unsigned int -rx_function_arg_boundary (Mmode mode ATTRIBUTE_UNUSED, +rx_function_arg_boundary (enum machine_mode mode ATTRIBUTE_UNUSED, const_tree type ATTRIBUTE_UNUSED) { return 32; Index: gcc/config/sh/sh-protos.h =================================================================== --- gcc/config/sh/sh-protos.h (revision 171932) +++ gcc/config/sh/sh-protos.h (working copy) @@ -51,7 +51,7 @@ extern const char *output_movedouble (rt extern const char *output_movepcrel (rtx, rtx[], enum machine_mode); extern const char *output_far_jump (rtx, rtx); -extern struct rtx_def *sfunc_uses_reg (rtx); +extern rtx sfunc_uses_reg (rtx); extern int barrier_align (rtx); extern int sh_loop_align (rtx); extern int fp_zero_operand (rtx); @@ -126,7 +126,7 @@ extern bool sh_vector_mode_supported_p ( extern const char *output_jump_label_table (void); extern int sh_handle_pragma (int (*)(void), void (*)(int), const char *); -extern struct rtx_def *get_fpscr_rtx (void); +extern rtx get_fpscr_rtx (void); extern int sh_media_register_for_return (void); extern void sh_expand_prologue (void); extern void sh_expand_epilogue (bool); Index: gcc/config/sh/sh.h =================================================================== --- gcc/config/sh/sh.h (revision 171932) +++ gcc/config/sh/sh.h (working copy) @@ -2321,8 +2321,8 @@ struct sh_args { final_prescan_insn ((INSN), (OPVEC), (NOPERANDS)) -extern struct rtx_def *sh_compare_op0; -extern struct rtx_def *sh_compare_op1; +extern rtx sh_compare_op0; +extern rtx sh_compare_op1; /* Which processor to schedule for. The elements of the enumeration must match exactly the cpu attribute in the sh.md file. */ Index: gcc/config/pdp11/pdp11.h =================================================================== --- gcc/config/pdp11/pdp11.h (revision 171932) +++ gcc/config/pdp11/pdp11.h (working copy) @@ -508,7 +508,7 @@ extern int may_call_alloca; /* Tell emit-rtl.c how to initialize special values on a per-function base. */ -extern struct rtx_def *cc0_reg_rtx; +extern rtx cc0_reg_rtx; #define CC_STATUS_MDEP rtx Index: gcc/config/microblaze/microblaze.h =================================================================== --- gcc/config/microblaze/microblaze.h (revision 171932) +++ gcc/config/microblaze/microblaze.h (working copy) @@ -473,7 +473,7 @@ typedef struct microblaze_args /* Adjustments made to args pass in regs. */ /* ??? The size is doubled to work around a bug in the code that sets the adjustments in function_arg. */ - struct rtx_def *adjust[MAX_ARGS_IN_REGISTERS * 2]; + rtx adjust[MAX_ARGS_IN_REGISTERS * 2]; } CUMULATIVE_ARGS; #define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,FNDECL,N_NAMED_ARGS) \ Index: gcc/config/fr30/fr30.h =================================================================== --- gcc/config/fr30/fr30.h (revision 171932) +++ gcc/config/fr30/fr30.h (working copy) @@ -852,11 +852,6 @@ fprintf (STREAM, "\t.word .L%d\n", VALUE `QImode'. */ #define FUNCTION_MODE QImode -/* If cross-compiling, don't require stdio.h etc to build libgcc.a. */ -#if defined CROSS_DIRECTORY_STRUCTURE && ! defined inhibit_libc -#define inhibit_libc -#endif - /*}}}*/ /* Local Variables: */ Index: gcc/config/fr30/fr30-protos.h =================================================================== --- gcc/config/fr30/fr30-protos.h (revision 171932) +++ gcc/config/fr30/fr30-protos.h (working copy) @@ -1,5 +1,5 @@ /* Prototypes for fr30.c functions used in the md file & elsewhere. - Copyright (C) 1999, 2000, 2002, 2004, 2007, 2010 + Copyright (C) 1999, 2000, 2002, 2004, 2007, 2010, 2011 Free Software Foundation, Inc. This file is part of GCC. @@ -28,8 +28,6 @@ extern void fr30_print_operand (FILE *, extern void fr30_print_operand_address (FILE *, rtx); extern rtx fr30_move_double (rtx *); #ifdef HAVE_MACHINE_MODES -#define Mmode enum machine_mode extern int fr30_const_double_is_zero (rtx); -#undef Mmode #endif /* HAVE_MACHINE_MODES */ #endif /* RTX_CODE */ Index: gcc/config/cris/cris-protos.h =================================================================== --- gcc/config/cris/cris-protos.h (revision 171932) +++ gcc/config/cris/cris-protos.h (working copy) @@ -1,5 +1,6 @@ /* Definitions for GCC. Part of the machine description for CRIS. - Copyright (C) 1998, 1999, 2000, 2001, 2004, 2005, 2006, 2007, 2009, 2010 + Copyright (C) 1998, 1999, 2000, 2001, 2004, 2005, 2006, 2007, 2009, 2010, + 2011 Free Software Foundation, Inc. Contributed by Axis Communications. @@ -21,10 +22,6 @@ along with GCC; see the file COPYING3. /* Prototypes for the CRIS port. */ -#if defined(FILE) || defined(stdin) || defined(stdout) || defined(getc) || defined(putc) -#define STDIO_INCLUDED -#endif - extern bool cris_simple_epilogue (void); #ifdef RTX_CODE extern const char *cris_op_str (rtx); Index: gcc/config/iq2000/iq2000.h =================================================================== --- gcc/config/iq2000/iq2000.h (revision 171932) +++ gcc/config/iq2000/iq2000.h (working copy) @@ -314,7 +314,7 @@ typedef struct iq2000_args int fp_code; /* Mode of FP arguments. */ unsigned int num_adjusts; /* Number of adjustments made. */ /* Adjustments made to args pass in regs. */ - struct rtx_def * adjust[MAX_ARGS_IN_REGISTERS * 2]; + rtx adjust[MAX_ARGS_IN_REGISTERS * 2]; } CUMULATIVE_ARGS; /* Initialize a variable CUM of type CUMULATIVE_ARGS Index: gcc/config/mn10300/mn10300-protos.h =================================================================== --- gcc/config/mn10300/mn10300-protos.h (revision 171932) +++ gcc/config/mn10300/mn10300-protos.h (working copy) @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. Matsushita MN10300 series - Copyright (C) 2000, 2003, 2004, 2005, 2007, 2009, 2010 + Copyright (C) 2000, 2003, 2004, 2005, 2007, 2009, 2010, 2011 Free Software Foundation, Inc. Contributed by Jeff Law (law@cygnus.com). @@ -19,29 +19,26 @@ along with GCC; see the file COPYING3. If not see . */ -#define Mmode enum machine_mode -#define Cstar const char * -#define Rclas enum reg_class - #ifdef RTX_CODE extern rtx mn10300_legitimize_pic_address (rtx, rtx); extern int mn10300_legitimate_pic_operand_p (rtx); -extern rtx mn10300_legitimize_reload_address (rtx, Mmode, int, int, int); +extern rtx mn10300_legitimize_reload_address (rtx, enum machine_mode, + int, int, int); extern bool mn10300_function_value_regno_p (const unsigned int); extern int mn10300_get_live_callee_saved_regs (void); -extern bool mn10300_hard_regno_mode_ok (unsigned int, Mmode); +extern bool mn10300_hard_regno_mode_ok (unsigned int, enum machine_mode); extern bool mn10300_legitimate_constant_p (rtx); -extern bool mn10300_modes_tieable (Mmode, Mmode); -extern Cstar mn10300_output_add (rtx[3], bool); +extern bool mn10300_modes_tieable (enum machine_mode, enum machine_mode); +extern const char *mn10300_output_add (rtx[3], bool); extern void mn10300_print_operand (FILE *, rtx, int); extern void mn10300_print_operand_address (FILE *, rtx); extern void mn10300_print_reg_list (FILE *, int); -extern Mmode mn10300_select_cc_mode (enum rtx_code, rtx, rtx); -extern int mn10300_store_multiple_operation (rtx, Mmode); -extern int mn10300_symbolic_operand (rtx, Mmode); -extern void mn10300_split_cbranch (Mmode, rtx, rtx); +extern enum machine_mode mn10300_select_cc_mode (enum rtx_code, rtx, rtx); +extern int mn10300_store_multiple_operation (rtx, enum machine_mode); +extern int mn10300_symbolic_operand (rtx, enum machine_mode); +extern void mn10300_split_cbranch (enum machine_mode, rtx, rtx); extern int mn10300_split_and_operand_count (rtx); -extern bool mn10300_match_ccmode (rtx, Mmode); +extern bool mn10300_match_ccmode (rtx, enum machine_mode); #endif /* RTX_CODE */ extern bool mn10300_regno_in_class_p (unsigned, int, bool); @@ -51,7 +48,3 @@ extern void mn10300_expand_prologue (vo extern void mn10300_expand_epilogue (void); extern int mn10300_initial_offset (int, int); extern int mn10300_frame_size (void); - -#undef Mmode -#undef Cstar -#undef Rclas Index: gcc/config/pa/pa-protos.h =================================================================== --- gcc/config/pa/pa-protos.h (revision 171932) +++ gcc/config/pa/pa-protos.h (working copy) @@ -1,5 +1,5 @@ /* Prototypes for pa.c functions used in the md file & elsewhere. - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2010 + Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2010, 2011 Free Software Foundation, Inc. @@ -109,7 +109,7 @@ extern int attr_length_save_restore_dltp /* Declare functions defined in pa.c and used in templates. */ -extern struct rtx_def *return_addr_rtx (int, rtx); +extern rtx return_addr_rtx (int, rtx); extern int fp_reg_operand (rtx, enum machine_mode); extern int arith_double_operand (rtx, enum machine_mode); Index: gcc/config/pa/pa.h =================================================================== --- gcc/config/pa/pa.h (revision 171932) +++ gcc/config/pa/pa.h (working copy) @@ -351,7 +351,7 @@ typedef struct GTY(()) machine_function /* Function to return the rtx used to save the pic offset table register across function calls. */ -extern struct rtx_def *hppa_pic_save_rtx (void); +extern rtx hppa_pic_save_rtx (void); #define DEFAULT_PCC_STRUCT_RETURN 0 Index: gcc/config/h8300/h8300.h =================================================================== --- gcc/config/h8300/h8300.h (revision 171932) +++ gcc/config/h8300/h8300.h (working copy) @@ -463,7 +463,7 @@ enum reg_class { struct cum_arg { int nbytes; - struct rtx_def *libcall; + rtx libcall; }; /* Initialize a variable CUM of type CUMULATIVE_ARGS Index: gcc/config/v850/v850.h =================================================================== --- gcc/config/v850/v850.h (revision 171932) +++ gcc/config/v850/v850.h (working copy) @@ -917,8 +917,8 @@ typedef struct data_area_stack_element extern data_area_stack_element * data_area_stack; /* Names of the various data areas used on the v850. */ -extern union tree_node * GHS_default_section_names [(int) COUNT_OF_GHS_SECTION_KINDS]; -extern union tree_node * GHS_current_section_names [(int) COUNT_OF_GHS_SECTION_KINDS]; +extern tree GHS_default_section_names [(int) COUNT_OF_GHS_SECTION_KINDS]; +extern tree GHS_current_section_names [(int) COUNT_OF_GHS_SECTION_KINDS]; /* The assembler op to start the file. */ Index: gcc/config/v850/v850-protos.h =================================================================== --- gcc/config/v850/v850-protos.h (revision 171932) +++ gcc/config/v850/v850-protos.h (working copy) @@ -23,8 +23,6 @@ #ifndef GCC_V850_PROTOS_H #define GCC_V850_PROTOS_H -#define Mmode enum machine_mode - extern void expand_prologue (void); extern void expand_epilogue (void); extern int v850_handle_pragma (int (*)(void), void (*)(int), char *); @@ -41,12 +39,14 @@ extern char * construct_restore_jr #ifdef HAVE_MACHINE_MODES extern char * construct_dispose_instruction (rtx); extern char * construct_prepare_instruction (rtx); -extern int ep_memory_operand (rtx, Mmode, int); -extern int v850_float_z_comparison_operator (rtx, Mmode); -extern int v850_float_nz_comparison_operator (rtx, Mmode); -extern rtx v850_gen_compare (enum rtx_code, Mmode, rtx, rtx); -extern Mmode v850_gen_float_compare (enum rtx_code, Mmode, rtx, rtx); -extern Mmode v850_select_cc_mode (RTX_CODE, rtx, rtx); +extern int ep_memory_operand (rtx, enum machine_mode, int); +extern int v850_float_z_comparison_operator (rtx, enum machine_mode); +extern int v850_float_nz_comparison_operator (rtx, enum machine_mode); +extern rtx v850_gen_compare (enum rtx_code, enum machine_mode, + rtx, rtx); +extern enum machine_mode v850_gen_float_compare (enum rtx_code, + enum machine_mode, rtx, rtx); +extern enum machine_mode v850_select_cc_mode (RTX_CODE, rtx, rtx); #endif #endif /* RTX_CODE */ @@ -67,6 +67,4 @@ extern void ghs_pragma_endtda (stru extern void ghs_pragma_endsda (struct cpp_reader *); extern void ghs_pragma_endzda (struct cpp_reader *); -#undef Mmode - #endif /* ! GCC_V850_PROTOS_H */ Index: gcc/config/bfin/bfin-protos.h =================================================================== --- gcc/config/bfin/bfin-protos.h (revision 171932) +++ gcc/config/bfin/bfin-protos.h (working copy) @@ -1,5 +1,6 @@ /* Prototypes for Blackfin functions used in the md file & elsewhere. - Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2005, 2007, 2008, 2009, 2010, 2011 + Free Software Foundation, Inc. This file is part of GNU CC. @@ -63,8 +64,6 @@ #define ENABLE_WA_05000074 \ (bfin_workarounds & WA_05000074) -#define Mmode enum machine_mode - extern bool function_arg_regno_p (int); extern const char *output_load_immediate (rtx *); @@ -74,14 +73,14 @@ extern char *bfin_asm_short (void); extern int log2constp (unsigned HOST_WIDE_INT); extern bool bfin_legitimate_constant_p (rtx); -extern int hard_regno_mode_ok (int, Mmode); +extern int hard_regno_mode_ok (int, enum machine_mode); extern void init_cumulative_args (CUMULATIVE_ARGS *, tree, rtx); extern HOST_WIDE_INT bfin_initial_elimination_offset (int, int); -extern int effective_address_32bit_p (rtx, Mmode); +extern int effective_address_32bit_p (rtx, enum machine_mode); extern int symbolic_reference_mentioned_p (rtx); -extern rtx bfin_gen_compare (rtx, Mmode); -extern bool expand_move (rtx *, Mmode); +extern rtx bfin_gen_compare (rtx, enum machine_mode); +extern bool expand_move (rtx *, enum machine_mode); extern void bfin_expand_call (rtx, rtx, rtx, rtx, int); extern bool bfin_longcall_p (rtx, int); extern bool bfin_dsp_memref_p (rtx); @@ -90,9 +89,11 @@ extern bool bfin_expand_movmem (rtx, rtx extern int bfin_register_move_cost (enum machine_mode, enum reg_class, enum reg_class); extern int bfin_memory_move_cost (enum machine_mode, enum reg_class, int in); -extern enum reg_class secondary_input_reload_class (enum reg_class, Mmode, +extern enum reg_class secondary_input_reload_class (enum reg_class, + enum machine_mode, rtx); -extern enum reg_class secondary_output_reload_class (enum reg_class, Mmode, +extern enum reg_class secondary_output_reload_class (enum reg_class, + enum machine_mode, rtx); extern char *section_asm_op_1 (SECT_ENUM_T); extern char *section_asm_op (SECT_ENUM_T); @@ -100,23 +101,22 @@ extern void print_operand (FILE *, rtx, extern void print_address_operand (FILE *, rtx); extern void split_di (rtx [], int, rtx [], rtx []); extern int split_load_immediate (rtx []); -extern void emit_pic_move (rtx *, Mmode); +extern void emit_pic_move (rtx *, enum machine_mode); extern void asm_conditional_branch (rtx, rtx *, int, int); -extern rtx bfin_gen_compare (rtx, Mmode); +extern rtx bfin_gen_compare (rtx, enum machine_mode); extern unsigned bfin_local_alignment (tree, unsigned); extern rtx bfin_va_arg (tree, tree); extern void bfin_expand_prologue (void); extern void bfin_expand_epilogue (int, int, bool); -extern int push_multiple_operation (rtx, Mmode); -extern int pop_multiple_operation (rtx, Mmode); +extern int push_multiple_operation (rtx, enum machine_mode); +extern int pop_multiple_operation (rtx, enum machine_mode); extern void output_push_multiple (rtx, rtx *); extern void output_pop_multiple (rtx, rtx *); extern int bfin_hard_regno_rename_ok (unsigned int, unsigned int); extern rtx bfin_return_addr_rtx (int); extern void bfin_hardware_loop (void); -#undef Mmode #endif Index: gcc/config/bfin/bfin.h =================================================================== --- gcc/config/bfin/bfin.h (revision 171932) +++ gcc/config/bfin/bfin.h (working copy) @@ -1144,7 +1144,7 @@ do { \ #define ASM_OUTPUT_REG_PUSH(FILE, REGNO) fprintf (FILE, "[SP--] = %s;\n", reg_names[REGNO]) #define ASM_OUTPUT_REG_POP(FILE, REGNO) fprintf (FILE, "%s = [SP++];\n", reg_names[REGNO]) -extern struct rtx_def *bfin_cc_rtx, *bfin_rets_rtx; +extern rtx bfin_cc_rtx, bfin_rets_rtx; /* This works for GAS and some other assemblers. */ #define SET_ASM_OP ".set " -- Joseph S. Myers joseph@codesourcery.com