diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1997-05-18 08:58:39 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1997-05-18 08:58:39 -0400 |
commit | 02385fc5632dcd8666f9fb323e7d13d10c5bf735 (patch) | |
tree | 38e94e3ebd7c757c8e627e27a028fd540f19c994 | |
parent | 6e848450718f16cd67bb8677205034c22a130cbb (diff) | |
download | gcc-02385fc5632dcd8666f9fb323e7d13d10c5bf735.zip gcc-02385fc5632dcd8666f9fb323e7d13d10c5bf735.tar.gz gcc-02385fc5632dcd8666f9fb323e7d13d10c5bf735.tar.bz2 |
(EXTRA_CONSTRAINT): New macro.
From-SVN: r14089
-rw-r--r-- | gcc/config/m68k/m68k.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h index 91708f4..7481dc7 100644 --- a/gcc/config/m68k/m68k.h +++ b/gcc/config/m68k/m68k.h @@ -738,6 +738,19 @@ extern enum reg_class regno_reg_class[]; (C) == 'H' ? (TARGET_FPA && standard_sun_fpa_constant_p (VALUE)) : 0) #endif /* defined SUPPORT_SUN_FPA */ +/* A C expression that defines the optional machine-dependent constraint + letters that can be used to segregate specific types of operands, + usually memory references, for the target machine. It should return 1 if + VALUE corresponds to the operand type represented by the constraint letter + C. If C is not defined as an extra constraint, the value returned should + be 0 regardless of VALUE. */ + +/* For the m68k, `Q' means address register indirect addressing mode. */ + +#define EXTRA_CONSTRAINT(OP, C) \ + ((C) == 'Q' ? (GET_CODE (OP) == MEM && GET_CODE (XEXP (OP, 0)) == REG) : \ + 0 ) + /* Given an rtx X being reloaded into a reg required to be in class CLASS, return the class of reg to actually use. In general this is just CLASS; but on some machines |