diff options
author | Joel Brobecker <brobecker@gnat.com> | 2011-01-13 16:22:48 +0000 |
---|---|---|
committer | Joel Brobecker <brobecker@gnat.com> | 2011-01-13 16:22:48 +0000 |
commit | 7458e66756c1515ff07193a097c2cdc71837012c (patch) | |
tree | 60ae40934a45503a3e9d7c81c53fa6db5dda7402 /gdb | |
parent | e235872c418d19049f81133fa045c939f2f54728 (diff) | |
download | gdb-7458e66756c1515ff07193a097c2cdc71837012c.zip gdb-7458e66756c1515ff07193a097c2cdc71837012c.tar.gz gdb-7458e66756c1515ff07193a097c2cdc71837012c.tar.bz2 |
[ia64] Add a big-endian version of the ia64-ext floatformat
ia64-tdep.c defines a floatformats_ia64_ext that should contain
both the little-endian and the big-endian version of the float
format used in the ia64 registers (an 82bit float format).
Right now, both entries point to the same little-endian definition.
A big-endian definition is now necessary for the ia64-hpux port.
gdb/ChangeLog:
* ia64-tdep.c (floatformat_ia64_ext_little): Renames
floatformat_ia64_ext.
(floatformat_ia64_ext_big): New static const.
(floatformats_ia64_ext): Set first entry to &floatformat_ia64_ext_big.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/ia64-tdep.c | 14 |
2 files changed, 17 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 4e2d120..c548a19 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2011-01-13 Joel Brobecker <brobecker@adacore.com> + + * ia64-tdep.c (floatformat_ia64_ext_little): Renames + floatformat_ia64_ext. + (floatformat_ia64_ext_big): New static const. + (floatformats_ia64_ext): Set first entry to &floatformat_ia64_ext_big. + 2011-01-12 Tom Tromey <tromey@redhat.com> * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Fix error diff --git a/gdb/ia64-tdep.c b/gdb/ia64-tdep.c index 3e31a96..81d42b6 100644 --- a/gdb/ia64-tdep.c +++ b/gdb/ia64-tdep.c @@ -290,16 +290,22 @@ floatformat_valid (const struct floatformat *fmt, const void *from) return 1; } -static const struct floatformat floatformat_ia64_ext = +static const struct floatformat floatformat_ia64_ext_little = { floatformat_little, 82, 0, 1, 17, 65535, 0x1ffff, 18, 64, - floatformat_intbit_yes, "floatformat_ia64_ext", floatformat_valid, NULL + floatformat_intbit_yes, "floatformat_ia64_ext_little", floatformat_valid, NULL +}; + +static const struct floatformat floatformat_ia64_ext_big = +{ + floatformat_big, 82, 46, 47, 17, 65535, 0x1ffff, 64, 64, + floatformat_intbit_yes, "floatformat_ia64_ext_big", floatformat_valid }; static const struct floatformat *floatformats_ia64_ext[2] = { - &floatformat_ia64_ext, - &floatformat_ia64_ext + &floatformat_ia64_ext_big, + &floatformat_ia64_ext_little }; static struct type * |