diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/doc/tm.texi | 12 | ||||
-rw-r--r-- | gcc/doc/tm.texi.in | 12 | ||||
-rw-r--r-- | gcc/hooks.c | 8 | ||||
-rw-r--r-- | gcc/hooks.h | 1 | ||||
-rw-r--r-- | gcc/target.def | 2 | ||||
-rw-r--r-- | gcc/targhooks.c | 15 | ||||
-rw-r--r-- | gcc/targhooks.h | 2 |
8 files changed, 22 insertions, 42 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0649bbe5389..16ef45abb0c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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... diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index 7143f0f1c92..90cef1c5f38 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -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} diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in index 67838269dff..187122eea81 100644 --- a/gcc/doc/tm.texi.in +++ b/gcc/doc/tm.texi.in @@ -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} diff --git a/gcc/hooks.c b/gcc/hooks.c index 1ba44f9c7bb..ae59c333d61 100644 --- a/gcc/hooks.c +++ b/gcc/hooks.c @@ -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, diff --git a/gcc/hooks.h b/gcc/hooks.h index 54ace243f76..2e10d1fd682 100644 --- a/gcc/hooks.h +++ b/gcc/hooks.h @@ -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); diff --git a/gcc/target.def b/gcc/target.def index 48a8e6d4a13..c3bec0e0391 100644 --- a/gcc/target.def +++ b/gcc/target.def @@ -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 diff --git a/gcc/targhooks.c b/gcc/targhooks.c index 8ad517fd5ce..81fd12f7b78 100644 --- a/gcc/targhooks.c +++ b/gcc/targhooks.c @@ -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. diff --git a/gcc/targhooks.h b/gcc/targhooks.h index 552407b21db..f19fb506bf5 100644 --- a/gcc/targhooks.h +++ b/gcc/targhooks.h @@ -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); |