mn10300: Auto-clobber the flags in asms.

From-SVN: r168725
This commit is contained in:
Richard Henderson 2011-01-12 09:59:31 -08:00 committed by Richard Henderson
parent 126b148370
commit a49b692a27
2 changed files with 20 additions and 0 deletions

View File

@ -1,5 +1,8 @@
2011-01-12 Richard Henderson <rth@redhat.com>
* config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
(TARGET_MD_ASM_CLOBBERS): New.
* config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
(TARGET_DELEGITIMIZE_ADDRESS): New.

View File

@ -2716,6 +2716,20 @@ mn10300_conditional_register_usage (void)
fixed_regs[PIC_OFFSET_TABLE_REGNUM] =
call_used_regs[PIC_OFFSET_TABLE_REGNUM] = 1;
}
/* Worker function for TARGET_MD_ASM_CLOBBERS.
We do this in the mn10300 backend to maintain source compatibility
with the old cc0-based compiler. */
static tree
mn10300_md_asm_clobbers (tree outputs ATTRIBUTE_UNUSED,
tree inputs ATTRIBUTE_UNUSED,
tree clobbers)
{
clobbers = tree_cons (NULL_TREE, build_string (5, "EPSW"),
clobbers);
return clobbers;
}
/* Initialize the GCC target structure. */
@ -2809,4 +2823,7 @@ mn10300_conditional_register_usage (void)
#undef TARGET_CONDITIONAL_REGISTER_USAGE
#define TARGET_CONDITIONAL_REGISTER_USAGE mn10300_conditional_register_usage
#undef TARGET_MD_ASM_CLOBBERS
#define TARGET_MD_ASM_CLOBBERS mn10300_md_asm_clobbers
struct gcc_target targetm = TARGET_INITIALIZER;