aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorFred Fish <fnf@specifix.com>1997-07-15 02:53:47 +0000
committerFred Fish <fnf@specifix.com>1997-07-15 02:53:47 +0000
commit8ae66b94c6d3ade3bbd4fb87ecb3cf8c784e9621 (patch)
tree18657ed377001ce7a0252c48b6cb8661a8247c3d /gas
parentf14465c3a713e7f877b872c66bd1936b57d685a3 (diff)
downloadgdb-8ae66b94c6d3ade3bbd4fb87ecb3cf8c784e9621.zip
gdb-8ae66b94c6d3ade3bbd4fb87ecb3cf8c784e9621.tar.gz
gdb-8ae66b94c6d3ade3bbd4fb87ecb3cf8c784e9621.tar.bz2
* config/tc-tic80.c (build_insn): Fix endianness problem with
O_big operands. PR 12765
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog7
-rw-r--r--gas/config/tc-tic80.c16
2 files changed, 13 insertions, 10 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index a55b34f..df21cb1 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+start-sanitize-tic80
+Mon Jul 14 19:30:55 1997 Fred Fish <fnf@cygnus.com>
+
+ * config/tc-tic80.c (build_insn): Fix endianness problem with
+ O_big operands.
+
+end-sanitize-tic80
Sun Jul 13 20:43:46 1997 Ian Lance Taylor <ian@cygnus.com>
* config/tc-mips.c (check_absolute_expr): Change warning to
diff --git a/gas/config/tc-tic80.c b/gas/config/tc-tic80.c
index f5b4e79..d173bad 100644
--- a/gas/config/tc-tic80.c
+++ b/gas/config/tc-tic80.c
@@ -677,16 +677,12 @@ build_insn (opcode, opers)
case O_big:
extended++;
{
- union {
- unsigned long l;
- LITTLENUM_TYPE words[10];
- } u;
- gen_to_words (u.words, 2, 8L); /* FIXME: magic numbers */
- /* FIXME: More magic, swap the littlenums */
- u.words[2] = u.words[0];
- u.words[0] = u.words [1];
- u.words[1] = u.words [2];
- insn[1] = u.l;
+ int precision = 2;
+ long exponent_bits = 8L;
+ LITTLENUM_TYPE words[2];
+ /* Value is still in generic_floating_point_number */
+ gen_to_words (words, precision, exponent_bits);
+ insn[1] = (words[0] << 16) | words[1];
}
break;
case O_illegal: