From 1afc5373043f7cc388ceed855be6f7d0f5dc24d1 Mon Sep 17 00:00:00 2001 From: Chao-ying Fu Date: Fri, 10 Apr 2009 18:20:22 +0000 Subject: tm.texi (Instruction Output): Document TARGET_ASM_FINAL_POSTSCAN_INSN. 2009-04-10 Chao-ying Fu * doc/tm.texi (Instruction Output): Document TARGET_ASM_FINAL_POSTSCAN_INSN. * target.h (final_postscan_insn): New field in asm_out. * target-def.h (TARGET_ASM_FINAL_POSTSCAN_INSN): New define. (TARGET_ASM_OUT): Add TARGET_ASM_FINAL_POSTSCAN_INSN. * final.c (final_scan_insn): Call targetm.asm_out.final_postscan_insn after outputting an asm macro and a normal instruction. * config/mips/mips.h (FINAL_PRESCAN_INSN): New define. * config/mips/mips-protos.h (mips_final_prescan_insn): Declare. * config/mips/mips.c (mips_at_reg_p): New for_each_rtx callback. (mips_final_prescan_insn, mips_final_postscan_insn): New functions. (TARGET_ASM_FINAL_POSTSCAN_INSN): New define. From-SVN: r145934 --- gcc/doc/tm.texi | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'gcc/doc/tm.texi') diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index 665b269..0396a70 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -8193,6 +8193,19 @@ writing conditional output routines in those patterns. If this macro is not defined, it is equivalent to a null statement. @end defmac +@deftypefn {Target Hook} void TARGET_ASM_FINAL_POSTSCAN_INSN (FILE *@var{FILE}, rtx @var{insn}, rtx *@var{opvec}, int @var{noperands}) +If defined, this target hook is a function which is executed just after the +output of assembler code for @var{insn}, to change the mode of the assembler +if necessary. + +Here the argument @var{opvec} is the vector containing the operands +extracted from @var{insn}, and @var{noperands} is the number of +elements of the vector which contain meaningful data for this insn. +The contents of this vector are what was used to convert the insn +template into assembler code, so you can change the assembler mode +by checking the contents of the vector. +@end deftypefn + @defmac PRINT_OPERAND (@var{stream}, @var{x}, @var{code}) A C compound statement to output to stdio stream @var{stream} the assembler syntax for an instruction operand @var{x}. @var{x} is an -- cgit v1.1