aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>1996-08-31 18:36:19 +0000
committerJeff Law <law@redhat.com>1996-08-31 18:36:19 +0000
commit2d56269edf0223b27cddd4ab1736819b5d66762c (patch)
treed3ee7a1100c383c229ade4d3cb1652146035a4a5 /gas/config
parentb2194164780e094bb550ff70746ef27e9c36e2c9 (diff)
downloadgdb-2d56269edf0223b27cddd4ab1736819b5d66762c.zip
gdb-2d56269edf0223b27cddd4ab1736819b5d66762c.tar.gz
gdb-2d56269edf0223b27cddd4ab1736819b5d66762c.tar.bz2
* config/tc-v850.c (md_apply_fix3): Do simple byte, short and
word fixups too. Fixes "difference between forward references".
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-v850.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/gas/config/tc-v850.c b/gas/config/tc-v850.c
index 8024993..1471f3c 100644
--- a/gas/config/tc-v850.c
+++ b/gas/config/tc-v850.c
@@ -915,6 +915,17 @@ md_apply_fix3 (fixp, valuep, seg)
return 1;
}
}
+ else if (fixp->fx_done)
+ {
+ /* We still have to insert the value into memory! */
+ where = fixp->fx_frag->fr_literal + fixp->fx_where;
+ if (fixp->fx_size == 1)
+ *where = value & 0xff;
+ if (fixp->fx_size == 2)
+ bfd_putl16(value & 0xffff, (unsigned char *) where);
+ if (fixp->fx_size == 4)
+ bfd_putl32(value, (unsigned char *) where);
+ }
fixp->fx_addnumber = value;
return 1;