public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Richard Guenther <richard.guenther@gmail.com>
To: "Joseph S. Myers" <joseph@codesourcery.com>
Cc: gcc-patches@gcc.gnu.org
Subject: Re: Ping^2 Re: Target header etc. cleanup patch
Date: Thu, 21 Apr 2011 09:31:00 -0000	[thread overview]
Message-ID: <BANLkTik8Dw5cR0o+UPKt0KzpYUo6JZibTw@mail.gmail.com> (raw)
In-Reply-To: <Pine.LNX.4.64.1104202106020.29659@digraph.polyomino.org.uk>

On Wed, Apr 20, 2011 at 11:09 PM, Joseph S. Myers
<joseph@codesourcery.com> wrote:
> Ping^2.  This patch
> <http://gcc.gnu.org/ml/gcc-patches/2011-04/msg00130.html> is still pending
> review.  This version applies cleanly to current trunk.

The s/struct rtx_def */rtx/ changes are all ok (in fact I'd say they are
obvious).

Richard.

> 2011-04-20  Joseph Myers  <joseph@codesourcery.com>
>
>        * 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 172767)
> +++ 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 172767)
> +++ 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
>    <http://www.gnu.org/licenses/>.  */
>
> -#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 172767)
> +++ 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 172767)
> +++ 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
> @@ -3310,7 +3311,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 172767)
> +++ 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
>    <http://www.gnu.org/licenses/>.  */
>
> -/* 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 172767)
> +++ 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 172767)
> +++ 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 172767)
> +++ 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/sh/sh-protos.h
> ===================================================================
> --- gcc/config/sh/sh-protos.h   (revision 172767)
> +++ 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 172767)
> +++ gcc/config/sh/sh.h  (working copy)
> @@ -2305,8 +2305,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 172767)
> +++ 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 172767)
> +++ 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 172767)
> +++ gcc/config/fr30/fr30.h      (working copy)
> @@ -845,11 +845,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 172767)
> +++ 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 172767)
> +++ 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 172767)
> +++ 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 172767)
> +++ 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
>    <http://www.gnu.org/licenses/>.  */
>
> -#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 172767)
> +++ 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.
>
> @@ -72,7 +72,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);
>
>  #ifdef ARGS_SIZE_RTX
>  /* expr.h defines ARGS_SIZE_RTX and `enum direction' */
> Index: gcc/config/pa/pa.h
> ===================================================================
> --- gcc/config/pa/pa.h  (revision 172767)
> +++ 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 172767)
> +++ 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 172767)
> +++ 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 172767)
> +++ 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 172767)
> +++ 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 172767)
> +++ 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
>

  parent reply	other threads:[~2011-04-21  9:10 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-02 17:06 Joseph S. Myers
2011-04-02 17:16 ` Paul Koning
2011-04-04 10:33 ` Joseph S. Myers
2011-04-08 18:46 ` Ping " Joseph S. Myers
2011-04-08 19:14   ` Mike Stump
2011-04-20 21:26   ` Ping^2 " Joseph S. Myers
2011-04-20 22:05     ` DJ Delorie
2011-04-21  4:27     ` Paul Koning
2011-04-21  9:31     ` Richard Guenther [this message]
2011-04-21 11:37       ` Joseph S. Myers
2011-04-21 11:50         ` Kai Tietz
2011-04-22  4:59         ` Jie Zhang
2011-04-26 17:40           ` Christopher Faylor
2011-05-04  3:15         ` Alexandre Oliva
2011-04-26 15:48     ` Ping^3 " Joseph S. Myers
2011-04-26 16:32       ` Nick Clifton
2011-04-26 16:48         ` Joseph S. Myers
2011-05-02 15:22       ` Ping^4 " Joseph S. Myers
2011-05-02 15:27         ` Richard Guenther
2011-05-02 18:22           ` Bernd Schmidt
2011-05-03  8:16         ` Nick Clifton
2011-04-12  1:08 ` Hans-Peter Nilsson
2011-04-12 12:08   ` Joseph S. Myers
2011-04-12 12:14     ` Andreas Schwab

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BANLkTik8Dw5cR0o+UPKt0KzpYUo6JZibTw@mail.gmail.com \
    --to=richard.guenther@gmail.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=joseph@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).