Add a new asm hook to print the end of a variable definition.
* target.def (decl_end): New hook. * varasm.c (assemble_variable_contents, assemble_constant_contents): Use it. * doc/tm.texi.in (TARGET_ASM_DECL_END): Add. * doc/tm.texi: Regenerate. From-SVN: r217196
This commit is contained in:
parent
4ad4ebfeae
commit
dc2af904c9
|
@ -1,3 +1,11 @@
|
|||
2014-11-06 Bernd Schmidt <bernds@codesourcery.com>
|
||||
|
||||
* target.def (decl_end): New hook.
|
||||
* varasm.c (assemble_variable_contents, assemble_constant_contents):
|
||||
Use it.
|
||||
* doc/tm.texi.in (TARGET_ASM_DECL_END): Add.
|
||||
* doc/tm.texi: Regenerate.
|
||||
|
||||
2014-11-06 Renlin Li <renlin.li@arm.com>
|
||||
|
||||
* config/aarch64/aarch64.c (aarch64_architecture_version): New.
|
||||
|
|
|
@ -7421,6 +7421,11 @@ The default implementation of this hook will use the
|
|||
when the relevant string is @code{NULL}.
|
||||
@end deftypefn
|
||||
|
||||
@deftypefn {Target Hook} void TARGET_ASM_DECL_END (void)
|
||||
Define this hook if the target assembler requires a special marker to
|
||||
terminate an initialized variable declaration.
|
||||
@end deftypefn
|
||||
|
||||
@deftypefn {Target Hook} bool TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA (FILE *@var{file}, rtx @var{x})
|
||||
A target hook to recognize @var{rtx} patterns that @code{output_addr_const}
|
||||
can't deal with, and output assembly code to @var{file} corresponding to
|
||||
|
|
|
@ -5193,6 +5193,8 @@ It must not be modified by command-line option processing.
|
|||
|
||||
@hook TARGET_ASM_INTEGER
|
||||
|
||||
@hook TARGET_ASM_DECL_END
|
||||
|
||||
@hook TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA
|
||||
|
||||
@defmac ASM_OUTPUT_ASCII (@var{stream}, @var{ptr}, @var{len})
|
||||
|
|
|
@ -127,6 +127,15 @@ when the relevant string is @code{NULL}.",
|
|||
bool, (rtx x, unsigned int size, int aligned_p),
|
||||
default_assemble_integer)
|
||||
|
||||
/* Notify the backend that we have completed emitting the data for a
|
||||
decl. */
|
||||
DEFHOOK
|
||||
(decl_end,
|
||||
"Define this hook if the target assembler requires a special marker to\n\
|
||||
terminate an initialized variable declaration.",
|
||||
void, (void),
|
||||
hook_void_void)
|
||||
|
||||
/* Output code that will globalize a label. */
|
||||
DEFHOOK
|
||||
(globalize_label,
|
||||
|
|
|
@ -2041,6 +2041,7 @@ assemble_variable_contents (tree decl, const char *name,
|
|||
else
|
||||
/* Leave space for it. */
|
||||
assemble_zeros (tree_to_uhwi (DECL_SIZE_UNIT (decl)));
|
||||
targetm.asm_out.decl_end ();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3347,6 +3348,8 @@ assemble_constant_contents (tree exp, const char *label, unsigned int align)
|
|||
|
||||
/* Output the value of EXP. */
|
||||
output_constant (exp, size, align);
|
||||
|
||||
targetm.asm_out.decl_end ();
|
||||
}
|
||||
|
||||
/* We must output the constant data referred to by SYMBOL; do so. */
|
||||
|
|
Loading…
Reference in New Issue