aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2005-12-08 09:59:40 +0000
committerAlan Modra <amodra@gmail.com>2005-12-08 09:59:40 +0000
commit6e50d963b00bbf8b95fe00354fd2c683971b43ba (patch)
tree702166cf2ec07323503b2ef89b7b69a7839c706c
parente424ecc89d5c60395ac795dc5dd8f482dee51d5d (diff)
downloadgdb-6e50d963b00bbf8b95fe00354fd2c683971b43ba.zip
gdb-6e50d963b00bbf8b95fe00354fd2c683971b43ba.tar.gz
gdb-6e50d963b00bbf8b95fe00354fd2c683971b43ba.tar.bz2
* i386-dis.c (dofloat): Handle %rip-relative floating point addressing.
-rw-r--r--opcodes/ChangeLog10
-rw-r--r--opcodes/i386-dis.c4
2 files changed, 11 insertions, 3 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index cbd3eca..25cf001 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,7 @@
+2005-12-08 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * i386-dis.c (dofloat): Handle %rip-relative floating point addressing.
+
2005-12-07 Hans-Peter Nilsson <hp@axis.com>
* cris-opc.c (cris_opcodes) <"move" "s,P">: Define using
@@ -42,9 +46,9 @@
* Makefile.am (CFILES): Add cgen-bitset.c.
(ALL_MACHINES): Add cgen-bitset.lo.
(cgen-bitset.lo): New target.
- * cgen-opc.c (cgen_bitset_create, cgen_bitset_init, cgen_bitset_clear)
- (cgen_bitset_add, cgen_bitset_set, cgen_bitset_contains)
- (cgen_bitset_compare, cgen_bitset_intersect_p, cgen_bitset_copy)
+ * cgen-opc.c (cgen_bitset_create, cgen_bitset_init, cgen_bitset_clear)
+ (cgen_bitset_add, cgen_bitset_set, cgen_bitset_contains)
+ (cgen_bitset_compare, cgen_bitset_intersect_p, cgen_bitset_copy)
(cgen_bitset_union): Moved from here ...
* cgen-bitset.c: ... to here. New file.
* Makefile.in: Regenerated.
diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c
index 5adf4af..de70fab 100644
--- a/opcodes/i386-dis.c
+++ b/opcodes/i386-dis.c
@@ -2689,6 +2689,7 @@ dofloat (int sizeflag)
putop (float_mem[fp_indx], sizeflag);
obufp = op1out;
+ op_ad = 2;
OP_E (float_mem_mode[fp_indx], sizeflag);
return;
}
@@ -2710,9 +2711,12 @@ dofloat (int sizeflag)
putop (dp->name, sizeflag);
obufp = op1out;
+ op_ad = 2;
if (dp->op1)
(*dp->op1) (dp->bytemode1, sizeflag);
+
obufp = op2out;
+ op_ad = 1;
if (dp->op2)
(*dp->op2) (dp->bytemode2, sizeflag);
}