* tc-m68hc11.c (s_m68hc11_parse_pseudo_instruction):

New function to parse pseudo ops that are unreleated to
	existing pseudo ops.
This commit is contained in:
Sean Keys
2012-08-02 20:25:35 +00:00
parent 21a3750560
commit bdfd67fa6b

View File

@ -225,6 +225,9 @@ static void s_m68hc11_relax (int);
/* Pseudo op to control the ELF flags. */ /* Pseudo op to control the ELF flags. */
static void s_m68hc11_mode (int); static void s_m68hc11_mode (int);
/* Process directives specified via pseudo ops. */
static void s_m68hc11_parse_pseudo_instruction (int);
/* Mark the symbols with STO_M68HC12_FAR to indicate the functions /* Mark the symbols with STO_M68HC12_FAR to indicate the functions
are using 'rtc' for returning. It is necessary to use 'call' are using 'rtc' for returning. It is necessary to use 'call'
to invoke them. This is also used by the debugger to correctly to invoke them. This is also used by the debugger to correctly
@ -314,6 +317,9 @@ const pseudo_typeS md_pseudo_table[] =
/* .interrupt instruction. */ /* .interrupt instruction. */
{"interrupt", s_m68hc11_mark_symbol, STO_M68HC12_INTERRUPT}, {"interrupt", s_m68hc11_mark_symbol, STO_M68HC12_INTERRUPT},
/* .nobankwarning instruction. */
{"nobankwarning", s_m68hc11_parse_pseudo_instruction, E_M68HC11_NO_BANK_WARNING},
{0, 0, 0} {0, 0, 0}
}; };
@ -4491,3 +4497,17 @@ m68hc11_elf_final_processing (void)
elf_elfheader (stdoutput)->e_flags &= ~EF_M68HC11_ABI; elf_elfheader (stdoutput)->e_flags &= ~EF_M68HC11_ABI;
elf_elfheader (stdoutput)->e_flags |= elf_flags; elf_elfheader (stdoutput)->e_flags |= elf_flags;
} }
/* Process directives specified via pseudo ops */
static void
s_m68hc11_parse_pseudo_instruction (int pseudo_insn)
{
switch (pseudo_insn)
{
case E_M68HC11_NO_BANK_WARNING:
elf_flags |= E_M68HC11_NO_BANK_WARNING;
break;
default:
as_bad (_("Invalid directive"));
}
}