defaults.h (LEGITIMIZE_ADDRESS): Provide a default definition.
authorKazu Hirata <kazu@cs.umass.edu>
Sun, 7 Mar 2004 20:23:32 +0000 (20:23 +0000)
committerKazu Hirata <kazu@gcc.gnu.org>
Sun, 7 Mar 2004 20:23:32 +0000 (20:23 +0000)
* defaults.h (LEGITIMIZE_ADDRESS): Provide a default
definition.
* config/arc/arc.h, config/fr30/fr30.h, config/frv/frv.h,
config/h8300/h8300.h, config/ia64/ia64.h,
config/mcore/mcore.h, config/mmix/mmix.h,
config/ns32k/ns32k.h, config/pdp11/pdp11.h,
config/stormy16/stormy16.h, config/v850/v850.h,
config/vax/vax.h (LEGITIMIZE_ADDRESS): Remove.
* doc/tm.texi (LEGITIMIZE_ADDRESS): Mention the default
definition.

From-SVN: r79066

15 files changed:
gcc/ChangeLog
gcc/config/arc/arc.h
gcc/config/fr30/fr30.h
gcc/config/frv/frv.h
gcc/config/h8300/h8300.h
gcc/config/ia64/ia64.h
gcc/config/mcore/mcore.h
gcc/config/mmix/mmix.h
gcc/config/ns32k/ns32k.h
gcc/config/pdp11/pdp11.h
gcc/config/stormy16/stormy16.h
gcc/config/v850/v850.h
gcc/config/vax/vax.h
gcc/defaults.h
gcc/doc/tm.texi

index b0c115eb8a9d67a222a4b9d87fc8ad566108a504..62502e6e92f14d26406733617935e3639295fcf0 100644 (file)
@@ -1,3 +1,16 @@
+2004-03-07  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * defaults.h (LEGITIMIZE_ADDRESS): Provide a default
+       definition.
+       * config/arc/arc.h, config/fr30/fr30.h, config/frv/frv.h,
+       config/h8300/h8300.h, config/ia64/ia64.h,
+       config/mcore/mcore.h, config/mmix/mmix.h,
+       config/ns32k/ns32k.h, config/pdp11/pdp11.h,
+       config/stormy16/stormy16.h, config/v850/v850.h,
+       config/vax/vax.h (LEGITIMIZE_ADDRESS): Remove.
+       * doc/tm.texi (LEGITIMIZE_ADDRESS): Mention the default
+       definition.
+
 2004-03-07  Roger Sayle  <roger@eyesopen.com>
 
        * fold-const.c (fold) <IOR_EXPR>: Fold x | x as x.
index 48044403c9c76adc7ea42814da23608232ecfc13..18b8f6f9c292ec332b8e59939d3dab758e1ea74f 100644 (file)
@@ -906,21 +906,6 @@ do { \
     goto ADDR;                                         \
 }
 
-/* Try machine-dependent ways of modifying an illegitimate address
-   to be legitimate.  If we find one, return the new, valid address.
-   This macro is used in only one place: `memory_address' in explow.c.
-
-   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.  */
-
-#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
-
 /* Go to LABEL if ADDR (a legitimate address expression)
    has an effect that depends on the machine mode it is used for.  */
 #define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) \
index 0ab0e72c3302f0b6e51cb7a412961fb906f6672b..c7459f8320521bc1680f5861add0878bbaf2d5af 100644 (file)
@@ -988,27 +988,6 @@ do                                                                         \
    will reload one or both registers only if neither labeling works.  */
 #define REG_OK_FOR_INDEX_P(X) REG_OK_FOR_BASE_P (X)
 
-/* A C compound statement that attempts to replace X with a valid memory
-   address for an operand of mode MODE.  WIN will be a C statement label
-   elsewhere in the code; the macro definition may use
-
-        GO_IF_LEGITIMATE_ADDRESS (MODE, X, WIN);
-
-   to avoid further processing if the address has become legitimate.
-
-   X will always be the result of a call to `break_out_memory_refs', and OLDX
-   will be the operand that was given to that function to produce X.
-
-   The code generated by this macro should not alter the substructure of X.  If
-   it transforms X into a more legitimate form, it should assign X (which will
-   always be a C variable) a new value.
-
-   It is not necessary for this macro to come up with a legitimate address.
-   The compiler has standard ways of doing so in all cases.  In fact, it is
-   safe for this macro to do nothing.  But often a machine-dependent strategy
-   can generate better code.  */
-#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
-
 /* A C statement or compound statement with a conditional `goto LABEL;'
    executed if memory address X (an RTX) can have different meanings depending
    on the machine mode of the memory reference it is used for or if the address
index cfcab0ea35086386e4de49ece63e08b2599db4b3..d1f308282fa770e73f59b58d3d2c5a6d30b0b723 100644 (file)
@@ -2410,8 +2410,6 @@ __asm__("\n"                                                              \
    will reload one or both registers only if neither labeling works.  */
 #define REG_OK_FOR_INDEX_P(X) REG_OK_FOR_BASE_P (X)
 
-#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
-
 #define FIND_BASE_TERM frv_find_base_term
 
 /* A C statement or compound statement with a conditional `goto LABEL;'
index aad99ec2c453af39bbc75404e67153e7268347ba..67fe01f7becdd88ecbe0ddc869e9816fa03a671b 100644 (file)
@@ -886,23 +886,6 @@ struct cum_arg
   while (0)
 #endif
 \f
-/* Try machine-dependent ways of modifying an illegitimate address
-   to be legitimate.  If we find one, return the new, valid address.
-   This macro is used in only one place: `memory_address' in explow.c.
-
-   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.
-
-   For the H8/300, don't do anything.  */
-
-#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)  {}
-
 /* Go to LABEL if ADDR (a legitimate address expression)
    has an effect that depends on the machine mode it is used for.
 
index c52c7516ac1cd21b3445abebabf40e5fe1deae44..69a2954fa561cc9b0e60aaa79514318c5d5a9821 100644 (file)
@@ -1630,13 +1630,6 @@ do {                                                                     \
 
 #define REG_OK_FOR_INDEX_P(X) REG_OK_FOR_BASE_P (X)
 
-/* A C compound statement that attempts to replace X with a valid memory
-   address for an operand of mode MODE.
-
-   This must be present, but there is nothing useful to be done here.  */
-
-#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
-
 /* A C statement or compound statement with a conditional `goto LABEL;'
    executed if memory address X (an RTX) can have different meanings depending
    on the machine mode of the memory reference it is used for or if the address
index a344a28ced38b3c8253ebb96b402e02b6866cfdf..95805d17f4e2df8d8fc65a0eafd33363cb26d0bf 100644 (file)
@@ -806,7 +806,6 @@ extern const enum reg_class reg_class_from_letter[];
    On the MCore, allow anything but a double.  */
 #define LEGITIMATE_CONSTANT_P(X) (GET_CODE(X) != CONST_DOUBLE)
 
-#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
 /* The macros REG_OK_FOR..._P assume that the arg is a REG rtx
    and check its validity for a certain class.
    We have two alternate definitions for each of them.
index 4cb3075adbe065feea1d883ce4259d4b9e568da3..b4df95d8d46ab7eaaf14d435fd887ad380613481 100644 (file)
@@ -835,8 +835,6 @@ typedef struct { int regs; int lib; } CUMULATIVE_ARGS;
 
 #define REG_OK_FOR_INDEX_P(X) REG_OK_FOR_BASE_P (X)
 
-#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
-
 #define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL)
 
 #define LEGITIMATE_CONSTANT_P(X) \
index b4b1455b859273c896dc42e20755d58b4eb02890..f42fde02c3997563e5eabf181cd4ca92b167da5b 100644 (file)
@@ -1057,23 +1057,6 @@ __transfer_from_trampoline ()            \
     }                                                                  \
 }
 
-/* Try machine-dependent ways of modifying an illegitimate address
-   to be legitimate.  If we find one, return the new, valid address.
-   This macro is used in only one place: `memory_address' in explow.c.
-
-   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.
-
-   For the ns32k, we do nothing */
-
-#define LEGITIMIZE_ADDRESS(X,OLDX,MODE,WIN)   {}
-
 /* Nonzero if the constant value X is a legitimate general operand
    when generating PIC code.  It is given that flag_pic is on and
    that X satisfies CONSTANT_P or is a CONST_DOUBLE.  */
index 60198431cf1f2d6d2b3efd86493f1e1c223accaa..568a0adacb92e132a5b680864addb1bc313fcc05 100644 (file)
@@ -846,22 +846,6 @@ extern int may_call_alloca;
 }
 
 \f
-/* Try machine-dependent ways of modifying an illegitimate address
-   to be legitimate.  If we find one, return the new, valid address.
-   This macro is used in only one place: `memory_address' in explow.c.
-
-   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.  */
-
-#define LEGITIMIZE_ADDRESS(X,OLDX,MODE,WIN)    {}
-
-
 /* Go to LABEL if ADDR (a legitimate address expression)
    has an effect that depends on the machine mode it is used for.
    On the pdp this is for predec/postinc */
index 09584adca4cc6ccc0f1864b102b17258d9d67ece..be69dcb3304ae413c08bc73688980a66055ed8d9 100644 (file)
@@ -594,8 +594,6 @@ do {                                                        \
 
 #define REG_OK_FOR_INDEX_P(X) REG_OK_FOR_BASE_P (X)
 
-#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
-
 /* On this chip, this is true if the address is valid with an offset
    of 0 but not of 6, because in that case it cannot be used as an
    address for DImode or DFmode, or if the address is a post-increment
index 74a080c83cb1879ff83458f2f13732ace0afa66d..6f3282184d7aee6c3d4ad6674179a663f7e25c1c 100644 (file)
@@ -976,21 +976,6 @@ do {                                                                       \
 } while (0)
 
 \f
-/* Try machine-dependent ways of modifying an illegitimate address
-   to be legitimate.  If we find one, return the new, valid address.
-   This macro is used in only one place: `memory_address' in explow.c.
-
-   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.  */
-
-#define LEGITIMIZE_ADDRESS(X,OLDX,MODE,WIN)  {}
-
 /* Go to LABEL if ADDR (a legitimate address expression)
    has an effect that depends on the machine mode it is used for.  */
 
index 3bc04b9f24bb181d352c458743710580798c8c8b..1cfcd51f8718e3cdad0d45b4cf5dc2fc9c4d4fec 100644 (file)
@@ -758,23 +758,6 @@ enum reg_class { NO_REGS, ALL_REGS, LIM_REG_CLASSES };
            goto ADDR;                                                  \
          GO_IF_REG_PLUS_INDEX (XEXP (X, 0), MODE, ADDR); } } }
 \f
-/* Try machine-dependent ways of modifying an illegitimate address
-   to be legitimate.  If we find one, return the new, valid address.
-   This macro is used in only one place: `memory_address' in explow.c.
-
-   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.
-
-   For the VAX, nothing needs to be done.  */
-
-#define LEGITIMIZE_ADDRESS(X,OLDX,MODE,WIN)  {}
-
 /* Go to LABEL if ADDR (a legitimate address expression)
    has an effect that depends on the machine mode it is used for.
    On the VAX, the predecrement and postincrement address depend thus
index 927e98a5fa1d2ed02cdb11690104f36ed031da8b..7d34e3cd30b4c70b9a265102980abf7b75584abf 100644 (file)
@@ -703,4 +703,8 @@ You Lose!  You must define PREFERRED_DEBUGGING_TYPE!
 #define SHIFT_COUNT_TRUNCATED 0
 #endif
 
+#ifndef LEGITIMIZE_ADDRESS
+#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
+#endif
+
 #endif  /* ! GCC_DEFAULTS_H */
index 1bf6defe6ed7f455e4552b0b89ec361e351aa72c..f464bea2eaec30634464b53003079eee68dfd335 100644 (file)
@@ -4914,7 +4914,7 @@ should assign @var{x} (which will always be a C variable) a new value.
 
 It is not necessary for this macro to come up with a legitimate
 address.  The compiler has standard ways of doing so in all cases.  In
-fact, it is safe for this macro to do nothing.  But often a
+fact, it is safe to omit this macro.  But often a
 machine-dependent strategy can generate better code.
 @end defmac