2009-04-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/tc-arm.c (arm_validate_fix): Define only for OBJ_COFF. (find_real_start): Likewise. * config/tc-arm.h (TC_VALIDATE_FIX): Likewise
This commit is contained in:
parent
1e2f1c5caa
commit
4343666d14
@ -1,3 +1,9 @@
|
|||||||
|
2009-04-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
|
||||||
|
|
||||||
|
* config/tc-arm.c (arm_validate_fix): Define only for OBJ_COFF.
|
||||||
|
(find_real_start): Likewise.
|
||||||
|
* config/tc-arm.h (TC_VALIDATE_FIX): Likewise
|
||||||
|
|
||||||
2009-04-01 Nathan Sidwell <nathan@codesourcery.com>
|
2009-04-01 Nathan Sidwell <nathan@codesourcery.com>
|
||||||
|
|
||||||
* config/tc-arm.c (do_nop): Generate v6k nops whenever possible.
|
* config/tc-arm.c (do_nop): Generate v6k nops whenever possible.
|
||||||
|
@ -2417,6 +2417,7 @@ mapping_state (enum mstate state)
|
|||||||
|
|
||||||
/* Find the real, Thumb encoded start of a Thumb function. */
|
/* Find the real, Thumb encoded start of a Thumb function. */
|
||||||
|
|
||||||
|
#ifdef OBJ_COFF
|
||||||
static symbolS *
|
static symbolS *
|
||||||
find_real_start (symbolS * symbolP)
|
find_real_start (symbolS * symbolP)
|
||||||
{
|
{
|
||||||
@ -2449,6 +2450,7 @@ find_real_start (symbolS * symbolP)
|
|||||||
|
|
||||||
return new_target;
|
return new_target;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static void
|
static void
|
||||||
opcode_select (int width)
|
opcode_select (int width)
|
||||||
@ -9082,6 +9084,7 @@ do_t_branch23 (void)
|
|||||||
inst.reloc.type = BFD_RELOC_THUMB_PCREL_BRANCH23;
|
inst.reloc.type = BFD_RELOC_THUMB_PCREL_BRANCH23;
|
||||||
inst.reloc.pc_rel = 1;
|
inst.reloc.pc_rel = 1;
|
||||||
|
|
||||||
|
#if defined(OBJ_COFF)
|
||||||
/* If the destination of the branch is a defined symbol which does not have
|
/* If the destination of the branch is a defined symbol which does not have
|
||||||
the THUMB_FUNC attribute, then we must be calling a function which has
|
the THUMB_FUNC attribute, then we must be calling a function which has
|
||||||
the (interfacearm) attribute. We look for the Thumb entry point to that
|
the (interfacearm) attribute. We look for the Thumb entry point to that
|
||||||
@ -9092,6 +9095,7 @@ do_t_branch23 (void)
|
|||||||
&& ! THUMB_IS_FUNC (inst.reloc.exp.X_add_symbol))
|
&& ! THUMB_IS_FUNC (inst.reloc.exp.X_add_symbol))
|
||||||
inst.reloc.exp.X_add_symbol =
|
inst.reloc.exp.X_add_symbol =
|
||||||
find_real_start (inst.reloc.exp.X_add_symbol);
|
find_real_start (inst.reloc.exp.X_add_symbol);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -19933,7 +19937,7 @@ cons_fix_new_arm (fragS * frag,
|
|||||||
fix_new_exp (frag, where, (int) size, exp, pcrel, type);
|
fix_new_exp (frag, where, (int) size, exp, pcrel, type);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined OBJ_COFF || defined OBJ_ELF
|
#if defined (OBJ_COFF)
|
||||||
void
|
void
|
||||||
arm_validate_fix (fixS * fixP)
|
arm_validate_fix (fixS * fixP)
|
||||||
{
|
{
|
||||||
|
@ -249,8 +249,10 @@ struct arm_segment_info_type
|
|||||||
# define tc_fix_adjustable(FIX) arm_fix_adjustable (FIX)
|
# define tc_fix_adjustable(FIX) arm_fix_adjustable (FIX)
|
||||||
/* Values passed to md_apply_fix don't include the symbol value. */
|
/* Values passed to md_apply_fix don't include the symbol value. */
|
||||||
# define MD_APPLY_SYM_VALUE(FIX) 0
|
# define MD_APPLY_SYM_VALUE(FIX) 0
|
||||||
# define TC_VALIDATE_FIX(FIX, SEGTYPE, LABEL) arm_validate_fix (FIX)
|
#endif
|
||||||
|
|
||||||
|
#ifdef OBJ_COFF
|
||||||
|
# define TC_VALIDATE_FIX(FIX, SEGTYPE, LABEL) arm_validate_fix (FIX)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define MD_PCREL_FROM_SECTION(F,S) md_pcrel_from_section(F,S)
|
#define MD_PCREL_FROM_SECTION(F,S) md_pcrel_from_section(F,S)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user