This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Cleanup references to GO_IF_LEGITIMATE_ADDRESS (obvious)


This patch, finally, cleans up leftover references to
GO_IF_LEGITIMATE_ADDRESS, as well as an ancient leftover in the
pdp11 backend.

I'm not committing this until everything else is approved.  It's
been tested with cc1-building together with other patches.

This ends my spring cleaning, hoping that it can be *committed*
in spring as well. :-)

Paolo

2009-04-23  Paolo Bonzini  <bonzini@gnu.org>

	* config/frv/frv.h: Clean up references to GO_IF_LEGITIMATE_ADDRESS.
	* config/frv/frv.c: Likewise.
	* config/s390/s390.c: Likewise.
	* config/sparc/sparc.h: Likewise.
	* config/i386/i386.h: Likewise.
	* config/i386/i386.c: Likewise.
	* config/crx/crx.c: Likewise.
	* config/m68hc11/m68hc11.h: Likewise.
	* config/iq2000/iq2000.c: Likewise.
	* config/mn10300/mn10300.h: Likewise.
	* config/mn10300/mn10300.c: Likewise.
	* config/m68k/m68k.c: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* config/rs6000/xcoff.h: Likewise.
	* config/rs6000/linux64.h: Likewise.
	* config/rs6000/sysv4.h: Likewise.
	* config/score/score3.c: Likewise.
	* config/score/score7.c: Likewise.
	* config/score/score.c: Likewise.
	* config/arm/arm.md: Likewise.
	* config/mips/mips.c: Likewise.
	* config/mips/mips.md: Likewise.
	* config/bfin/bfin.h: Likewise.
	* config/pa/pa.c: Likewise.
	* config/pa/constraints.md: Likewise.

	* config/pdp11/pdp11-protos.h (legitimate_address_p): Delete.
	* config/pdp11/pdp11.c (legitimate_address_p): Delete.
	* config/pdp11/pdp11.h: Use memory_address_p instead.

Index: gcc/config/frv/frv.h
===================================================================
--- gcc/config/frv/frv.h	(branch legitimate-address-p)
+++ gcc/config/frv/frv.h	(working copy)
@@ -2022,7 +2022,7 @@ __asm__("\n"								\
 
 /* A number, the maximum number of registers that can appear in a valid memory
    address.  Note that it is up to you to specify a value equal to the maximum
-   number that `GO_IF_LEGITIMATE_ADDRESS' would ever accept.  */
+   number that `TARGET_LEGITIMATE_ADDRESS_P' would ever accept.  */
 #define MAX_REGS_PER_ADDRESS 2
 
 /* A C expression that is nonzero if X (assumed to be a `reg' RTX) is valid for
Index: gcc/config/frv/frv.c
===================================================================
--- gcc/config/frv/frv.c	(branch legitimate-address-p)
+++ gcc/config/frv/frv.c	(working copy)
@@ -3299,12 +3299,6 @@ frv_regno_ok_for_base_p (int regno, int 
    conditional to define the strict variant in that case and the non-strict
    variant otherwise.
 
-   Subroutines to check for acceptable registers for various purposes (one for
-   base registers, one for index registers, and so on) are typically among the
-   subroutines used to define `GO_IF_LEGITIMATE_ADDRESS'.  Then only these
-   subroutine macros need have two variants; the higher levels of macros may be
-   the same whether strict or not.
-
    Normally, constant addresses which are the sum of a `symbol_ref' and an
    integer are stored inside a `const' RTX to mark them as constant.
    Therefore, there is no need to recognize such sums specifically as
@@ -3315,22 +3309,6 @@ frv_regno_ok_for_base_p (int regno, int 
    are not marked with `const'.  It assumes that a naked `plus' indicates
    indexing.  If so, then you *must* reject such naked constant sums as
    illegitimate addresses, so that none of them will be given to
-   `PRINT_OPERAND_ADDRESS'.
-
-   On some machines, whether a symbolic address is legitimate depends on the
-   section that the address refers to.  On these machines, define the macro
-   `ENCODE_SECTION_INFO' to store the information into the `symbol_ref', and
-   then check for it here.  When you see a `const', you will have to look
-   inside it to find the `symbol_ref' in order to determine the section.
-
-   The best way to modify the name string is by adding text to the beginning,
-   with suitable punctuation to prevent any ambiguity.  Allocate the new name
-   in `saveable_obstack'.  You will have to modify `ASM_OUTPUT_LABELREF' to
-   remove and decode the added text and output the name accordingly, and define
-   `(* targetm.strip_name_encoding)' to access the original name string.
-
-   You can check the information stored here into the `symbol_ref' in the
-   definitions of the macros `GO_IF_LEGITIMATE_ADDRESS' and
    `PRINT_OPERAND_ADDRESS'.  */
 
 int
@@ -3456,7 +3434,7 @@ frv_legitimate_address_p_1 (enum machine
 
   if (TARGET_DEBUG_ADDR)
     {
-      fprintf (stderr, "\n========== GO_IF_LEGITIMATE_ADDRESS, mode = %s, result = %d, addresses are %sstrict%s\n",
+      fprintf (stderr, "\n========== legitimate_address_p, mode = %s, result = %d, addresses are %sstrict%s\n",
 	       GET_MODE_NAME (mode), ret, (strict_p) ? "" : "not ",
 	       (condexec_p) ? ", inside conditional code" : "");
       debug_rtx (x);
Index: gcc/config/s390/s390.c
===================================================================
--- gcc/config/s390/s390.c	(branch legitimate-address-p)
+++ gcc/config/s390/s390.c	(working copy)
@@ -3204,7 +3204,7 @@ s390_load_address (rtx dst, rtx src)
       differentiate them from global data objects.  The returned
       address is the PIC reg + an unspec constant.
 
-   GO_IF_LEGITIMATE_ADDRESS rejects symbolic references unless the PIC
+   TARGET_LEGITIMIZE_ADDRESS_P rejects symbolic references unless the PIC
    reg also appears in the address.  */
 
 rtx
Index: gcc/config/sparc/sparc.h
===================================================================
--- gcc/config/sparc/sparc.h	(branch legitimate-address-p)
+++ gcc/config/sparc/sparc.h	(working copy)
@@ -1851,15 +1851,9 @@ do {									\
 #define USE_AS_OFFSETABLE_LO10 0
 #endif
 
-/* GO_IF_LEGITIMATE_ADDRESS recognizes an RTL expression
-   that is a valid memory address for an instruction.
-   The MODE argument is the machine mode for the MEM expression
-   that wants to use this address.
-
-   On SPARC, the actual legitimate addresses must be REG+REG or REG+SMALLINT
-   ordinarily.  This changes a bit when generating PIC.
-
-   If you change this, execute "rm explow.o recog.o reload.o".  */
+/* On SPARC, the actual legitimate addresses must be REG+REG or REG+SMALLINT
+   ordinarily.  This changes a bit when generating PIC.  The details are
+   in sparc.c's implementation of TARGET_LEGITIMATE_ADDRESS_P.  */
 
 #define SYMBOLIC_CONST(X) symbolic_operand (X, VOIDmode)
 
Index: gcc/config/i386/i386.h
===================================================================
--- gcc/config/i386/i386.h	(branch legitimate-address-p)
+++ gcc/config/i386/i386.h	(working copy)
@@ -1777,12 +1777,12 @@ typedef struct ix86_args {
 #define REG_OK_FOR_BASE_P(X)   REG_OK_FOR_BASE_STRICT_P (X)
 #endif
 
-/* GO_IF_LEGITIMATE_ADDRESS recognizes an RTL expression
+/* TARGET_LEGITIMATE_ADDRESS_P recognizes an RTL expression
    that is a valid memory address for an instruction.
    The MODE argument is the machine mode for the MEM expression
    that wants to use this address.
 
-   The other macros defined here are used only in GO_IF_LEGITIMATE_ADDRESS,
+   The other macros defined here are used only in TARGET_LEGITIMATE_ADDRESS_P,
    except for CONSTANT_ADDRESS_P which is usually machine-independent.
 
    See legitimize_pic_address in i386.c for details as to what
Index: gcc/config/i386/i386.c
===================================================================
--- gcc/config/i386/i386.c	(branch legitimate-address-p)
+++ gcc/config/i386/i386.c	(working copy)
@@ -9112,9 +9112,9 @@ legitimate_pic_address_disp_p (rtx disp)
   return 0;
 }
 
-/* GO_IF_LEGITIMATE_ADDRESS recognizes an RTL expression that is a valid
-   memory address for an instruction.  The MODE argument is the machine mode
-   for the MEM expression that wants to use this address.
+/* Recognizes RTL expressions that are valid memory addresses for an
+   instruction.  The MODE argument is the machine mode for the MEM
+   expression that wants to use this address.
 
    It only recognizes address in canonical form.  LEGITIMIZE_ADDRESS should
    convert common non-canonical forms to canonical form so that they will
@@ -9381,7 +9381,7 @@ ix86_GOT_alias_set (void)
       differentiate them from global data objects.  The returned
       address is the PIC reg + an unspec constant.
 
-   GO_IF_LEGITIMATE_ADDRESS rejects symbolic references unless the PIC
+   TARGET_LEGITIMATE_ADDRESS_P rejects symbolic references unless the PIC
    reg also appears in the address.  */
 
 static rtx
@@ -9865,9 +9865,6 @@ legitimize_dllimport_symbol (rtx symbol,
    OLDX is the address as it was before break_out_memory_refs was called.
    In some cases it is useful to look at this to decide what needs to be done.
 
-   MODE and WIN are passed so that this macro can use
-   GO_IF_LEGITIMATE_ADDRESS.
-
    It is always safe for this macro to do nothing.  It exists to recognize
    opportunities to optimize the output.
 
Index: gcc/config/crx/crx.c
===================================================================
--- gcc/config/crx/crx.c	(branch legitimate-address-p)
+++ gcc/config/crx/crx.c	(working copy)
@@ -549,7 +549,7 @@ crx_function_arg_regno_p (int n)
 /* ADDRESSING MODES */
 /* ---------------- */
 
-/* Implements the macro GO_IF_LEGITIMATE_ADDRESS defined in crx.h.
+/* Implements the hook for TARGET_LEGITIMATE_ADDRESS_P defined in crx.h.
  * The following addressing modes are supported on CRX:
  *
  * Relocations		--> const | symbol_ref | label_ref
Index: gcc/config/m68hc11/m68hc11.h
===================================================================
--- gcc/config/m68hc11/m68hc11.h	(branch legitimate-address-p)
+++ gcc/config/m68hc11/m68hc11.h	(working copy)
@@ -1138,7 +1138,7 @@ extern unsigned char m68hc11_reg_valid_f
 /* Maximum number of registers that can appear in a valid memory address */
 #define MAX_REGS_PER_ADDRESS	2
 
-/* GO_IF_LEGITIMATE_ADDRESS recognizes an RTL expression that is a
+/* TARGET_LEGITIMATE_ADDRESS_P recognizes an RTL expression that is a
    valid memory address for an instruction. The MODE argument is the
    machine mode for the MEM expression that wants to use this address.  */
 
Index: gcc/config/iq2000/iq2000.c
===================================================================
--- gcc/config/iq2000/iq2000.c	(branch legitimate-address-p)
+++ gcc/config/iq2000/iq2000.c	(working copy)
@@ -265,7 +265,7 @@ iq2000_legitimate_address_p (enum machin
 {
   if (TARGET_DEBUG_A_MODE)
     {
-      GO_PRINTF2 ("\n========== GO_IF_LEGITIMATE_ADDRESS, %sstrict\n",
+      GO_PRINTF2 ("\n========== legitimate_address_p, %sstrict\n",
 		  strict ? "" : "not ");
       GO_DEBUG_RTX (xinsn);
     }
Index: gcc/config/mn10300/mn10300.h
===================================================================
--- gcc/config/mn10300/mn10300.h	(branch legitimate-address-p)
+++ gcc/config/mn10300/mn10300.h	(working copy)
@@ -656,16 +656,7 @@ struct cum_arg {int nbytes; };
 
 #define HAVE_POST_INCREMENT (TARGET_AM33)
 
-/* GO_IF_LEGITIMATE_ADDRESS recognizes an RTL expression
-   that is a valid memory address for an instruction.
-   The MODE argument is the machine mode for the MEM expression
-   that wants to use this address.
-
-   The other macros defined here are used only in GO_IF_LEGITIMATE_ADDRESS,
-   except for CONSTANT_ADDRESS_P which is actually
-   machine-independent.
-
-   On the mn10300, the value in the address register must be
+/* On the mn10300, the value in the address register must be
    in the same memory space/segment as the effective address.
 
    This is problematical for reload since it does not understand
Index: gcc/config/mn10300/mn10300.c
===================================================================
--- gcc/config/mn10300/mn10300.c	(branch legitimate-address-p)
+++ gcc/config/mn10300/mn10300.c	(working copy)
@@ -1790,9 +1790,6 @@ symbolic_operand (register rtx op, enum 
    OLDX is the address as it was before break_out_memory_refs was called.
    In some cases it is useful to look at this to decide what needs to be done.
 
-   MODE and WIN are passed so that this macro can use
-   GO_IF_LEGITIMATE_ADDRESS.
-
    Normally it is always safe for this macro to do nothing.  It exists to
    recognize opportunities to optimize the output.
 
Index: gcc/config/m68k/m68k.c
===================================================================
--- gcc/config/m68k/m68k.c	(branch legitimate-address-p)
+++ gcc/config/m68k/m68k.c	(working copy)
@@ -4273,7 +4273,7 @@ strict_low_part_peephole_ok (enum machin
    simple fact that the m68k does not allow a pc-relative addressing
    mode as a destination.  gcc does not distinguish between source and
    destination addresses.  Hence, if we claim that pc-relative address
-   modes are valid, e.g. GO_IF_LEGITIMATE_ADDRESS accepts them, then we
+   modes are valid, e.g. TARGET_LEGITIMATE_ADDRESS_P accepts them, then we
    end up with invalid code.  To get around this problem, we left
    pc-relative modes as invalid addresses, and then added special
    predicates and constraints to accept them.
Index: gcc/config/rs6000/rs6000.c
===================================================================
--- gcc/config/rs6000/rs6000.c	(branch legitimate-address-p)
+++ gcc/config/rs6000/rs6000.c	(working copy)
@@ -3797,8 +3797,6 @@ legitimate_lo_sum_address_p (enum machin
    called.  In some cases it is useful to look at this to decide what
    needs to be done.
 
-   MODE is passed so that this function can use GO_IF_LEGITIMATE_ADDRESS.
-
    It is always safe for this function to do nothing.  It exists to
    recognize opportunities to optimize the output.
 
@@ -4393,7 +4391,7 @@ rs6000_legitimize_reload_address (rtx x,
   return x;
 }
 
-/* GO_IF_LEGITIMATE_ADDRESS recognizes an RTL expression
+/* TARGET_LEGITIMATE_ADDRESS_P recognizes an RTL expression
    that is a valid memory address for an instruction.
    The MODE argument is the machine mode for the MEM expression
    that wants to use this address.
Index: gcc/config/rs6000/xcoff.h
===================================================================
--- gcc/config/rs6000/xcoff.h	(branch legitimate-address-p)
+++ gcc/config/rs6000/xcoff.h	(working copy)
@@ -70,10 +70,9 @@
    or a CONST containing one of them.  If -mfp-in-toc (the default),
    we also do this for floating-point constants.  We actually can only
    do this if the FP formats of the target and host machines are the
-   same, but we can't check that since not every file that uses
-   GO_IF_LEGITIMATE_ADDRESS_P includes real.h.  We also do this when
-   we can write the entry into the TOC and the entry is not larger
-   than a TOC entry.  */
+   same, but we can't check that since not every file that uses these
+   target macros includes real.h.  We also do this when we can write the
+   entry into the TOC and the entry is not larger than a TOC entry.  */
 
 #define ASM_OUTPUT_SPECIAL_POOL_ENTRY_P(X, MODE)			\
   (TARGET_TOC								\
Index: gcc/config/rs6000/linux64.h
===================================================================
--- gcc/config/rs6000/linux64.h	(branch legitimate-address-p)
+++ gcc/config/rs6000/linux64.h	(working copy)
@@ -462,9 +462,8 @@ extern int dot_symbols;
    we also do this for floating-point constants.  We actually can only
    do this if the FP formats of the target and host machines are the
    same, but we can't check that since not every file that uses
-   GO_IF_LEGITIMATE_ADDRESS_P includes real.h.  We also do this when
-   we can write the entry into the TOC and the entry is not larger
-   than a TOC entry.  */
+   the macros includes real.h.  We also do this when we can write the
+   entry into the TOC and the entry is not larger than a TOC entry.  */
 
 #undef  ASM_OUTPUT_SPECIAL_POOL_ENTRY_P
 #define ASM_OUTPUT_SPECIAL_POOL_ENTRY_P(X, MODE)			\
Index: gcc/config/rs6000/sysv4.h
===================================================================
--- gcc/config/rs6000/sysv4.h	(branch legitimate-address-p)
+++ gcc/config/rs6000/sysv4.h	(working copy)
@@ -381,8 +381,8 @@ do {									\
    containing one of them.  If -mfp-in-toc (the default), we also do
    this for floating-point constants.  We actually can only do this
    if the FP formats of the target and host machines are the same, but
-   we can't check that since not every file that uses
-   GO_IF_LEGITIMATE_ADDRESS_P includes real.h.
+   we can't check that since not every file that uses these target macros
+   includes real.h.
 
    Unlike AIX, we don't key off of -mminimal-toc, but instead do not
    allow floating point constants in the TOC if -mrelocatable.  */
Index: gcc/config/score/score3.c
===================================================================
--- gcc/config/score/score3.c	(branch legitimate-address-p)
+++ gcc/config/score/score3.c	(working copy)
@@ -913,7 +913,7 @@ score3_regno_mode_ok_for_base_p (int reg
   return GP_REG_P (regno);
 }
 
-/* Implement GO_IF_LEGITIMATE_ADDRESS macro.  */
+/* Implement TARGET_LEGITIMATE_ADDRESS_P macro.  */
 bool
 score3_legitimate_address_p (enum machine_mode mode, rtx x, bool strict)
 {
Index: gcc/config/score/score7.c
===================================================================
--- gcc/config/score/score7.c	(branch legitimate-address-p)
+++ gcc/config/score/score7.c	(working copy)
@@ -904,7 +904,7 @@ score7_regno_mode_ok_for_base_p (int reg
   return GP_REG_P (regno);
 }
 
-/* Implement GO_IF_LEGITIMATE_ADDRESS macro.  */
+/* Implement TARGET_LEGITIMATE_ADDRESS_P macro.  */
 bool
 score7_legitimate_address_p (enum machine_mode mode, rtx x, bool strict)
 {
Index: gcc/config/score/score.c
===================================================================
--- gcc/config/score/score.c	(branch legitimate-address-p)
+++ gcc/config/score/score.c	(working copy)
@@ -534,7 +534,7 @@ score_regno_mode_ok_for_base_p (int regn
   gcc_unreachable ();
 }
 
-/* Implement GO_IF_LEGITIMATE_ADDRESS macro.  */
+/* Implement TARGET_LEGITIMIZE_ADDRESS_P.  */
 bool
 score_legitimate_address_p (enum machine_mode mode, rtx x, bool strict)
 {
Index: gcc/config/arm/arm.md
===================================================================
--- gcc/config/arm/arm.md	(branch legitimate-address-p)
+++ gcc/config/arm/arm.md	(working copy)
@@ -5476,8 +5476,8 @@
 
           /* ??? We shouldn't really get invalid addresses here, but this can
 	     happen if we are passed a SP (never OK for HImode/QImode) or 
-	     virtual register (rejected by GO_IF_LEGITIMATE_ADDRESS for 
-	     HImode/QImode) relative address.  */
+	     virtual register (also rejected as illegitimate for HImode/QImode)
+	     relative address.  */
           /* ??? This should perhaps be fixed elsewhere, for instance, in
 	     fixup_stack_1, by checking for other kinds of invalid addresses,
 	     e.g. a bare reference to a virtual register.  This may confuse the
@@ -5708,8 +5708,8 @@
 	{
           /* ??? We shouldn't really get invalid addresses here, but this can
 	     happen if we are passed a SP (never OK for HImode/QImode) or
-	     virtual register (rejected by GO_IF_LEGITIMATE_ADDRESS for
-	     HImode/QImode) relative address.  */
+	     virtual register (also rejected as illegitimate for HImode/QImode)
+	     relative address.  */
           /* ??? This should perhaps be fixed elsewhere, for instance, in
 	     fixup_stack_1, by checking for other kinds of invalid addresses,
 	     e.g. a bare reference to a virtual register.  This may confuse the
Index: gcc/config/mips/mips.c
===================================================================
--- gcc/config/mips/mips.c	(branch legitimate-address-p)
+++ gcc/config/mips/mips.c	(working copy)
@@ -2084,7 +2084,7 @@ mips_stack_address_p (rtx x, enum machin
 
 /* Return true if ADDR matches the pattern for the LWXS load scaled indexed
    address instruction.  Note that such addresses are not considered
-   legitimate in the GO_IF_LEGITIMATE_ADDRESS sense, because their use
+   legitimate in the TARGET_LEGITIMATE_ADDRESS_P sense, because their use
    is so restricted.  */
 
 static bool
Index: gcc/config/mips/mips.md
===================================================================
--- gcc/config/mips/mips.md	(branch legitimate-address-p)
+++ gcc/config/mips/mips.md	(working copy)
@@ -4096,7 +4096,7 @@
 ;; instructions will still work correctly.
 
 ;; ??? Perhaps it would be better to support these instructions by
-;; modifying GO_IF_LEGITIMATE_ADDRESS and friends.  However, since
+;; modifying TARGET_LEGITIMATE_ADDRESS_P and friends.  However, since
 ;; these instructions can only be used to load and store floating
 ;; point registers, that would probably cause trouble in reload.
 
Index: gcc/config/bfin/bfin.h
===================================================================
--- gcc/config/bfin/bfin.h	(branch legitimate-address-p)
+++ gcc/config/bfin/bfin.h	(working copy)
@@ -908,7 +908,7 @@ typedef struct {
 
 /*   A number, the maximum number of registers that can appear in a
      valid memory address.  Note that it is up to you to specify a
-     value equal to the maximum number that `GO_IF_LEGITIMATE_ADDRESS'
+     value equal to the maximum number that `TARGET_LEGITIMATE_ADDRESS_P'
      would ever accept. */
 #define MAX_REGS_PER_ADDRESS 1
 
Index: gcc/config/pa/pa.c
===================================================================
--- gcc/config/pa/pa.c	(branch legitimate-address-p)
+++ gcc/config/pa/pa.c	(working copy)
@@ -876,9 +876,6 @@ legitimize_tls_address (rtx addr)
    OLDX is the address as it was before break_out_memory_refs was called.
    In some cases it is useful to look at this to decide what needs to be done.
 
-   MODE and WIN are passed so that this macro can use
-   GO_IF_LEGITIMATE_ADDRESS.
-
    It is always safe for this macro to do nothing.  It exists to recognize
    opportunities to optimize the output.
 
Index: gcc/config/pa/constraints.md
===================================================================
--- gcc/config/pa/constraints.md	(branch legitimate-address-p)
+++ gcc/config/pa/constraints.md	(working copy)
@@ -131,7 +131,7 @@
 					  ? SFmode : DFmode),
 					 XEXP (op, 0))")))
 
-;; We could allow short displacements but GO_IF_LEGITIMATE_ADDRESS
+;; We could allow short displacements but TARGET_LEGITIMATE_ADDRESS_P
 ;; can't tell when a long displacement is valid.
 (define_constraint "W"
   "A register indirect memory operand."
Index: gcc/config/pdp11/pdp11-protos.h
===================================================================
--- gcc/config/pdp11/pdp11-protos.h	(branch legitimate-address-p)
+++ gcc/config/pdp11/pdp11-protos.h	(working copy)
@@ -26,7 +26,6 @@ extern int expand_shift_operand (rtx, en
 extern int immediate15_operand (rtx, enum machine_mode);
 extern int simple_memory_operand (rtx, enum machine_mode);
 
-extern int legitimate_address_p (enum machine_mode, rtx);
 extern int legitimate_const_double_p (rtx);
 extern void notice_update_cc_on_set (rtx, rtx);
 extern void output_addr_const_pdp11 (FILE *, rtx);
Index: gcc/config/pdp11/pdp11.c
===================================================================
--- gcc/config/pdp11/pdp11.c	(branch legitimate-address-p)
+++ gcc/config/pdp11/pdp11.c	(working copy)
@@ -1624,20 +1624,6 @@ output_block_move(rtx *operands)
     return "";
 }
 
-int
-legitimate_address_p (enum machine_mode mode, rtx address)
-{
-/* #define REG_OK_STRICT */
-    GO_IF_LEGITIMATE_ADDRESS(mode, address, win);
-    
-    return 0;
-    
-  win:
-    return 1;
-
-/* #undef REG_OK_STRICT */
-}
-
 /* This function checks whether a real value can be encoded as
    a literal, i.e., addressing mode 27.  In that mode, real values
    are one word values, so the remaining 48 bits have to be zero.  */
Index: gcc/config/pdp11/pdp11.h
===================================================================
--- gcc/config/pdp11/pdp11.h	(branch legitimate-address-p)
+++ gcc/config/pdp11/pdp11.h	(working copy)
@@ -379,7 +379,7 @@ enum reg_class { NO_REGS, MUL_REGS, GENE
 
 #define EXTRA_CONSTRAINT(OP,CODE)					\
   ((GET_CODE (OP) != MEM) ? 0						\
-   : !legitimate_address_p (GET_MODE (OP), XEXP (OP, 0)) ? 0		\
+   : !memory_address_p (GET_MODE (OP), XEXP (OP, 0)) ? 0		\
    : ((CODE) == 'Q')	  ? !simple_memory_operand (OP, GET_MODE (OP))	\
    : ((CODE) == 'R')	  ? simple_memory_operand (OP, GET_MODE (OP))	\
    : 0)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]