* mips-tdep.c (mips_pc_is_mips16): Reverse the order of checks

performed to determine whether an address refers to standard
	MIPS or MIPS16 code.
	(mips16_next_pc): Use mips_pc_is_mips16 instead of
	is_mips16_addr.
This commit is contained in:
Maciej W. Rozycki 2011-12-06 23:19:43 +00:00
parent 5027555691
commit 91912e4d08
2 changed files with 14 additions and 9 deletions

View File

@ -1,3 +1,11 @@
2011-12-06 Maciej W. Rozycki <macro@codesourcery.com>
* mips-tdep.c (mips_pc_is_mips16): Reverse the order of checks
performed to determine whether an address refers to standard
MIPS or MIPS16 code.
(mips16_next_pc): Use mips_pc_is_mips16 instead of
is_mips16_addr.
2011-12-06 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (breakpoint_restore_shadows): Rename to ...

View File

@ -989,18 +989,15 @@ mips_pc_is_mips16 (CORE_ADDR memaddr)
{
struct minimal_symbol *sym;
/* If bit 0 of the address is set, assume this is a MIPS16 address. */
if (is_mips16_addr (memaddr))
return 1;
/* A flag indicating that this is a MIPS16 function is stored by elfread.c in
the high bit of the info field. Use this to decide if the function is
MIPS16 or normal MIPS. */
/* A flag indicating that this is a MIPS16 function is stored by
elfread.c in the high bit of the info field. Use this to decide
if the function is MIPS16 or normal MIPS. Otherwise if bit 0 of
the address is set, assume this is a MIPS16 address. */
sym = lookup_minimal_symbol_by_pc (memaddr);
if (sym)
return msymbol_is_special (sym);
else
return 0;
return is_mips16_addr (memaddr);
}
/* MIPS believes that the PC has a sign extended value. Perhaps the
@ -1579,7 +1576,7 @@ mips16_next_pc (struct frame_info *frame, CORE_ADDR pc)
static CORE_ADDR
mips_next_pc (struct frame_info *frame, CORE_ADDR pc)
{
if (is_mips16_addr (pc))
if (mips_pc_is_mips16 (pc))
return mips16_next_pc (frame, pc);
else
return mips32_next_pc (frame, pc);