system.h (OUTPUT_ADDR_CONST_EXTRA): Poison.

* system.h (OUTPUT_ADDR_CONST_EXTRA): Poison.
	* doc/tm.texi.in (OUTPUT_ADDR_CONST_EXTRA): Remove documentation.
	* doc/tm.texi: Regenerate.
	* target.def (output_addr_const_extra): Use
	hook_bool_FILEptr_rtx_false.
	* targhooks.c (default_asm_output_addr_const_extra): Remove.
	* targhooks.h (default_asm_output_addr_const_extra): Remove.
	* hooks.c (hook_bool_FILEptr_rtx_false): New functions.
	* hooks.h (hook_bool_FILEptr_rtx_false): Declare.

From-SVN: r179630
This commit is contained in:
Anatoly Sokolov 2011-10-06 23:25:53 +04:00 committed by Anatoly Sokolov
parent ce72a9a305
commit e12671331b
8 changed files with 22 additions and 42 deletions

View File

@ -1,3 +1,15 @@
2011-10-06 Anatoly Sokolov <aesok@post.ru>
* system.h (OUTPUT_ADDR_CONST_EXTRA): Poison.
* doc/tm.texi.in (OUTPUT_ADDR_CONST_EXTRA): Remove documentation.
* doc/tm.texi: Regenerate.
* target.def (output_addr_const_extra): Use
hook_bool_FILEptr_rtx_false.
* targhooks.c (default_asm_output_addr_const_extra): Remove.
* targhooks.h (default_asm_output_addr_const_extra): Remove.
* hooks.c (hook_bool_FILEptr_rtx_false): New functions.
* hooks.h (hook_bool_FILEptr_rtx_false): Declare.
2011-10-06 David S. Miller <davem@davemloft.net>
* config/sparc/sparc.md (popcount<mode>2, clz<mode>2): Split up into...

View File

@ -7530,18 +7530,6 @@ itself, by calling, for example, @code{output_operand_lossage}, it may just
return @code{true}.
@end deftypefn
@defmac OUTPUT_ADDR_CONST_EXTRA (@var{stream}, @var{x}, @var{fail})
A C statement to recognize @var{rtx} patterns that
@code{output_addr_const} can't deal with, and output assembly code to
@var{stream} corresponding to the pattern @var{x}. This may be used to
allow machine-dependent @code{UNSPEC}s to appear within constants.
If @code{OUTPUT_ADDR_CONST_EXTRA} fails to recognize a pattern, it must
@code{goto fail}, so that a standard error message is printed. If it
prints an error message itself, by calling, for example,
@code{output_operand_lossage}, it may just complete normally.
@end defmac
@defmac ASM_OUTPUT_ASCII (@var{stream}, @var{ptr}, @var{len})
A C statement to output to the stdio stream @var{stream} an assembler
instruction to assemble a string constant containing the @var{len}

View File

@ -7446,18 +7446,6 @@ itself, by calling, for example, @code{output_operand_lossage}, it may just
return @code{true}.
@end deftypefn
@defmac OUTPUT_ADDR_CONST_EXTRA (@var{stream}, @var{x}, @var{fail})
A C statement to recognize @var{rtx} patterns that
@code{output_addr_const} can't deal with, and output assembly code to
@var{stream} corresponding to the pattern @var{x}. This may be used to
allow machine-dependent @code{UNSPEC}s to appear within constants.
If @code{OUTPUT_ADDR_CONST_EXTRA} fails to recognize a pattern, it must
@code{goto fail}, so that a standard error message is printed. If it
prints an error message itself, by calling, for example,
@code{output_operand_lossage}, it may just complete normally.
@end defmac
@defmac ASM_OUTPUT_ASCII (@var{stream}, @var{ptr}, @var{len})
A C statement to output to the stdio stream @var{stream} an assembler
instruction to assemble a string constant containing the @var{len}

View File

@ -132,6 +132,14 @@ hook_void_FILEptr_constcharptr (FILE *a ATTRIBUTE_UNUSED, const char *b ATTRIBUT
{
}
/* Generic hook that takes (FILE *, rtx) and returns false. */
bool
hook_bool_FILEptr_rtx_false (FILE *a ATTRIBUTE_UNUSED,
rtx b ATTRIBUTE_UNUSED)
{
return false;
}
/* Used for the TARGET_ASM_CAN_OUTPUT_MI_THUNK hook. */
bool
hook_bool_const_tree_hwi_hwi_const_tree_false (const_tree a ATTRIBUTE_UNUSED,

View File

@ -63,6 +63,7 @@ extern void hook_void_void (void);
extern void hook_void_constcharptr (const char *);
extern void hook_void_rtx_int (rtx, int);
extern void hook_void_FILEptr_constcharptr (FILE *, const char *);
extern bool hook_bool_FILEptr_rtx_false (FILE *, rtx);
extern void hook_void_tree (tree);
extern void hook_void_tree_treeptr (tree, tree *);
extern void hook_void_int_int (int, int);

View File

@ -456,7 +456,7 @@ DEFHOOK
(output_addr_const_extra,
"",
bool, (FILE *file, rtx x),
default_asm_output_addr_const_extra)
hook_bool_FILEptr_rtx_false)
/* ??? The TARGET_PRINT_OPERAND* hooks are part of the asm_out struct,
even though that is not reflected in the macro name to override their

View File

@ -371,21 +371,6 @@ default_mangle_assembler_name (const char *name ATTRIBUTE_UNUSED)
return get_identifier (stripped);
}
/* The default implementation of TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA. */
bool
default_asm_output_addr_const_extra (FILE *file ATTRIBUTE_UNUSED,
rtx x ATTRIBUTE_UNUSED)
{
#ifdef OUTPUT_ADDR_CONST_EXTRA
OUTPUT_ADDR_CONST_EXTRA (file, x, fail);
return true;
fail:
#endif
return false;
}
/* True if MODE is valid for the target. By "valid", we mean able to
be manipulated in non-trivial ways. In particular, this means all
the arithmetic is supported.

View File

@ -67,8 +67,6 @@ extern void default_print_operand_address (FILE *, rtx);
extern bool default_print_operand_punct_valid_p (unsigned char);
extern tree default_mangle_assembler_name (const char *);
extern bool default_asm_output_addr_const_extra (FILE *, rtx);
extern bool default_scalar_mode_supported_p (enum machine_mode);
extern bool targhook_words_big_endian (void);
extern bool targhook_float_words_big_endian (void);