From patchwork Tue Apr 26 15:14:51 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Myers X-Patchwork-Id: 92933 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id AC851B6F07 for ; Wed, 27 Apr 2011 01:15:28 +1000 (EST) Received: (qmail 3952 invoked by alias); 26 Apr 2011 15:15:24 -0000 Received: (qmail 3933 invoked by uid 22791); 26 Apr 2011 15:15:21 -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; Tue, 26 Apr 2011 15:14:57 +0000 Received: (qmail 7257 invoked from network); 26 Apr 2011 15:14:52 -0000 Received: from unknown (HELO digraph.polyomino.org.uk) (joseph@127.0.0.2) by mail.codesourcery.com with ESMTPA; 26 Apr 2011 15:14:52 -0000 Received: from jsm28 (helo=localhost) by digraph.polyomino.org.uk with local-esmtp (Exim 4.72) (envelope-from ) id 1QEjyV-0003Kn-2j; Tue, 26 Apr 2011 15:14:51 +0000 Date: Tue, 26 Apr 2011 15:14:51 +0000 (UTC) From: "Joseph S. Myers" To: gcc-patches@gcc.gnu.org cc: nickc@redhat.com, law@redhat.com, aoliva@redhat.com Subject: Ping^3 Re: Target header etc. cleanup patch In-Reply-To: Message-ID: References: MIME-Version: 1.0 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Ping^3. Parts of this patch are still pending review: the parts for targets fr30, m32r, mn10300, rx, v850 (target maintainers CC:ed). This version applies cleanly to current trunk. 2011-04-26 Joseph Myers * config/fr30/fr30-protos.h (Mmode): Don't define. * config/fr30/fr30.h (inhibit_libc): Don't define. * config/m32r/m32r-protos.h (Mmode): Don't define. Expand definition where used. * config/mn10300/mn10300-protos.h (Mmode, Cstar, Rclas): Don't define. Expand definitions where used. * 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/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/m32r/m32r-protos.h =================================================================== --- gcc/config/m32r/m32r-protos.h (revision 172860) +++ 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/rx/rx-protos.h =================================================================== --- gcc/config/rx/rx-protos.h (revision 172860) +++ 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_legitimate_constant_p (enum machine_mode, 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 172860) +++ gcc/config/rx/rx.c (working copy) @@ -78,7 +78,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. */ @@ -809,7 +810,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; @@ -829,7 +830,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; @@ -866,14 +868,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/fr30/fr30.h =================================================================== --- gcc/config/fr30/fr30.h (revision 172860) +++ gcc/config/fr30/fr30.h (working copy) @@ -839,11 +839,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 172860) +++ 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/mn10300/mn10300-protos.h =================================================================== --- gcc/config/mn10300/mn10300-protos.h (revision 172860) +++ 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,28 +19,25 @@ 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_modes_tieable (Mmode, Mmode); -extern Cstar mn10300_output_add (rtx[3], bool); +extern bool mn10300_hard_regno_mode_ok (unsigned int, enum machine_mode); +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); @@ -50,7 +47,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/v850/v850.h =================================================================== --- gcc/config/v850/v850.h (revision 172860) +++ gcc/config/v850/v850.h (working copy) @@ -906,8 +906,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 172860) +++ 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 */