diff options
author | Neil Booth <neil@daikokuya.demon.co.uk> | 2001-07-09 06:10:09 +0000 |
---|---|---|
committer | Neil Booth <neil@gcc.gnu.org> | 2001-07-09 06:10:09 +0000 |
commit | 17b53c33a29e8a50032a3d7b915cf1a7c0519670 (patch) | |
tree | 051781609cfb357e6e76424bb7bc1e771707544b /gcc/doc | |
parent | b41df7f63cca6fda7f1c50780025018282a08504 (diff) | |
download | gcc-17b53c33a29e8a50032a3d7b915cf1a7c0519670.zip gcc-17b53c33a29e8a50032a3d7b915cf1a7c0519670.tar.gz gcc-17b53c33a29e8a50032a3d7b915cf1a7c0519670.tar.bz2 |
final.c (output_addr_const): Use target opening and closing parentheses.
* final.c (output_addr_const): Use target opening and
closing parentheses.
* target-def.h: Define TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN
defaults, add to TARGET_ASM_OUT.
* target.h (struct gcc_target): Add open_paren and close_paren.
* doc/md.texi: Update.
* doc/tm.texi: Document TARGET_ASM_FUNCTION_END_PROLOGUE,
TARGET_ASM_FUNCTION_BEGIN_EPILOGUE, TARGET_ASM_OPEN_PAREN and
TARGET_ASM_CLOSE_PAREN.
config:
* i386/i386.c (TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN):
Override.
* pdp11/pdp11.c (TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN):
Override.
* 1750a/1750a.h (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): Remove.
* a29k/a29k.h: Similarly.
* alpha/alpha.h: Similarly.
* arc/arc.h: Similarly.
* arm/aof.h: Similarly.
* arm/aout.h: Similarly.
* avr/avr.h: Similarly.
* c4x/c4x.h: Similarly.
* clipper/clipper.h: Similarly.
* convex/convex.h: Similarly.
* d30v/d30v.h: Similarly.
* dsp16xx/dsp16xx.h: Similarly.
* elxsi/elxsi.h: Similarly.
* fr30/fr30.h: Similarly.
* h8300/h8300.h: Similarly.
* i370/i370.h: Similarly.
* i386/i386.h: Similarly.
* i860/i860.h: Similarly.
* i960/i960.h: Similarly.
* ia64/ia64.h: Similarly.
* m32r/m32r.h: Similarly.
* m68hc11/m68hc11.h: Similarly.
* m68k/m68k.h: Similarly.
* m88k/m88k.h: Similarly.
* mcore/mcore.h: Similarly.
* mips/mips.h: Similarly.
* mn10200/mn10200.h: Similarly.
* mn10300/mn10300.h: Similarly.
* ns32k/ns32k.h: Similarly.
* pa/pa.h: Similarly.
* pdp11/pdp11.h: Similarly.
* pj/pj.h: Similarly.
* romp/romp.h: Similarly.
* rs6000/rs6000.h: Similarly.
* sh/sh.h: Similarly.
* sparc/sparc.h: Similarly.
* v850/v850.h: Similarly.
* vax/vax.h: Similarly.
* we32k/we32k.h: Similarly.
From-SVN: r43856
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/md.texi | 6 | ||||
-rw-r--r-- | gcc/doc/tm.texi | 34 |
2 files changed, 24 insertions, 16 deletions
diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi index 06c8e3f..f1073aa 100644 --- a/gcc/doc/md.texi +++ b/gcc/doc/md.texi @@ -2900,25 +2900,27 @@ is to be used, and simple moves to @code{EH_RETURN_STACKADJ_RTX} and @code{EH_RETURN_HANDLER_RTX} are not sufficient. @cindex @code{prologue} instruction pattern +@anchor{prologue instruction pattern} @item @samp{prologue} This pattern, if defined, emits RTL for entry to a function. The function entry is responsible for setting up the stack frame, initializing the frame pointer register, saving callee saved registers, etc. Using a prologue pattern is generally preferred over defining -@code{FUNCTION_PROLOGUE} to emit assembly code for the prologue. +@code{TARGET_ASM_FUNCTION_PROLOGUE} to emit assembly code for the prologue. The @code{prologue} pattern is particularly useful for targets which perform instruction scheduling. @cindex @code{epilogue} instruction pattern +@anchor{epilogue instruction pattern} @item @samp{epilogue} This pattern, if defined, emits RTL for exit from a function. The function exit is responsible for deallocating the stack frame, restoring callee saved registers and emitting the return instruction. Using an epilogue pattern is generally preferred over defining -@code{FUNCTION_EPILOGUE} to emit assembly code for the prologue. +@code{TARGET_ASM_FUNCTION_EPILOGUE} to emit assembly code for the epilogue. The @code{epilogue} pattern is particularly useful for targets which perform instruction scheduling or which have delay slots for their return instruction. diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index 37b84d7..1677ffd 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -3766,6 +3766,20 @@ or by a debugger, there is no reason why the stack layout used by GCC need agree with that used by other compilers for a machine. @end deftypefn +@deftypefn {Target Hook} void TARGET_ASM_FUNCTION_END_PROLOGUE (FILE *@var{file}) +If defined, a function that outputs assembler code at the end of a +prologue. This should be used when the function prologue is being +emitted as RTL, and you have some extra assembler that needs to be +emitted. @xref{prologue instruction pattern}. +@end deftypefn + +@deftypefn {Target Hook} void TARGET_ASM_FUNCTION_BEGIN_EPILOGUE (FILE *@var{file}) +If defined, a function that outputs assembler code at the start of an +epilogue. This should be used when the function epilogue is being +emitted as RTL, and you have some extra assembler that needs to be +emitted. @xref{epilogue instruction pattern}. +@end deftypefn + @deftypefn {Target Hook} void TARGET_ASM_FUNCTION_EPILOGUE (FILE *@var{file}, HOST_WIDE_INT @var{size}) If defined, a function that outputs the assembler code for exit from a function. The epilogue is responsible for restoring the saved @@ -5965,22 +5979,14 @@ used as a logical line separator by the assembler. If you do not define this macro, the default is that only the character @samp{;} is treated as a logical line separator. - - -@findex ASM_OPEN_PAREN -@findex ASM_CLOSE_PAREN -@item ASM_OPEN_PAREN -@itemx ASM_CLOSE_PAREN -These macros are defined as C string constants, describing the syntax -in the assembler for grouping arithmetic expressions. The following -definitions are correct for most assemblers: - -@example -#define ASM_OPEN_PAREN "(" -#define ASM_CLOSE_PAREN ")" -@end example @end table +@deftypevar {Target Hook} {const char *} TARGET_ASM_OPEN_PAREN +@deftypevar {Target Hook} {const char *} TARGET_ASM_CLOSE_PAREN +These target hooks are C string constants, describing the syntax in the +assembler for grouping arithmetic expressions. If not overridden, they +default to normal parentheses, which is correct for most assemblers. + These macros are provided by @file{real.h} for writing the definitions of @code{ASM_OUTPUT_DOUBLE} and the like: |