(md_apply_fix3): Only use the insertion routine if one exists.
Ignore any error messages it may produce, just allow it to perform the insertion.
This commit is contained in:
parent
181124bc7c
commit
a0ef61f7a0
2 changed files with 11 additions and 3 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2005-05-18 Nick Clifton <nickc@redhat.com>
|
||||||
|
|
||||||
|
* config/tc-v850.c (md_apply_fix3): Only use the insertion routine
|
||||||
|
if one exists. Ignore any error messages it may produce, just
|
||||||
|
allow it to perform the insertion.
|
||||||
|
|
||||||
2005-05-17 Zack Weinberg <zack@codesourcery.com>
|
2005-05-17 Zack Weinberg <zack@codesourcery.com>
|
||||||
|
|
||||||
* hash.c (hash_lookup): Add len parameter. All callers changed.
|
* hash.c (hash_lookup): Add len parameter. All callers changed.
|
||||||
|
|
|
@ -2321,8 +2321,10 @@ md_apply_fix3 (fixS *fixP, valueT *valueP, segT seg ATTRIBUTE_UNUSED)
|
||||||
/* We still have to insert the value into memory! */
|
/* We still have to insert the value into memory! */
|
||||||
where = fixP->fx_frag->fr_literal + fixP->fx_where;
|
where = fixP->fx_frag->fr_literal + fixP->fx_where;
|
||||||
|
|
||||||
if (fixP->tc_fix_data != NULL)
|
if (fixP->tc_fix_data != NULL
|
||||||
|
&& ((struct v850_operand *) fixP->tc_fix_data)->insert != NULL)
|
||||||
{
|
{
|
||||||
|
const char * message = NULL;
|
||||||
struct v850_operand * operand = (struct v850_operand *) fixP->tc_fix_data;
|
struct v850_operand * operand = (struct v850_operand *) fixP->tc_fix_data;
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
|
|
||||||
|
@ -2339,8 +2341,8 @@ md_apply_fix3 (fixS *fixP, valueT *valueP, segT seg ATTRIBUTE_UNUSED)
|
||||||
|
|
||||||
/* Use the operand's insertion procedure, if present, in order to
|
/* Use the operand's insertion procedure, if present, in order to
|
||||||
make sure that the value is correctly stored in the insn. */
|
make sure that the value is correctly stored in the insn. */
|
||||||
insn = v850_insert_operand (insn, operand, (offsetT) value,
|
insn = operand->insert (insn, (offsetT) value, message);
|
||||||
fixP->fx_file, fixP->fx_line, NULL);
|
/* Ignore message even if it is set. */
|
||||||
|
|
||||||
bfd_putl32 ((bfd_vma) insn, (unsigned char *) where);
|
bfd_putl32 ((bfd_vma) insn, (unsigned char *) where);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue