summaryrefslogtreecommitdiff
path: root/gdb/i387-tdep.c
Commit message (Collapse)AuthorAgeFilesLines
* * i387-tdep.c (i387_register_to_value): Use get_frame_registerMark Kettenis2003-08-101-18/+10
| | | | instead of frame_read_register.
* * i387-tdep.c: Reorder includes, fix some whitespace issues andMark Kettenis2003-06-151-9/+10
| | | | replace out-of-date comment.
* * i386-tdep.c (i386_register_to_value, i386_value_to_register):Mark Kettenis2003-06-151-0/+52
| | | | | | | | | | | Move floating-point code to new function in i387-tdep.c. * i387-tdep.c (i387_register_to_value, i387_value_to_register): New functions containing code moved here from i386-tdep.c. * i387-tdep.h: Add opaque declaration for `struct type'. (i387_register_to_value, i387_value_to_register): New prototypes. * x86-64-tdep.c (x86_64_convert_register_p): New function. (x86_64_init_abi): Set convert_register_p, register_to_value and value_to_register here.
* 2003-06-14 Andrew Cagney <cagney@redhat.com>Andrew Cagney2003-06-151-105/+1
| | | | | | | | | | | | | | | | | * mips-tdep.c (mips_register_to_value): Make static. (mips_value_to_register): Make static. * i386-tdep.c (i386_fetch_pointer_argument): Make static. * ia64-tdep.c (ia64_register_raw_size): Make static. (ia64_register_virtual_size): Make static. (ia64_register_byte): Make static. * i387-tdep.c: Include "i387-tdep.h". (print_387_control_word): Delete function. (print_387_status_word): Delete function. (print_387_status_bits): Delete function. (print_387_control_bits): Delete function. * Makefile.in (i387-tdep.o): Update dependencies. * rdi-share/host.h (Fail): Declare. * remote-rdi.c (Fail): Update to match declaration.
* * i387-tdep.c (fxsave_offset): Add entries for %xmm8-%xmm15.kettenis_i386newframe-20030504-mergepointMark Kettenis2003-05-041-10/+25
| | | | (FXSAVE_ADDR, i387_supply_fxsave): Add support for %xmm8-%xmm15.
* 2003-04-11 Andrew Cagney <cagney@redhat.com>Andrew Cagney2003-04-111-19/+2
| | | | | | * i387-tdep.c: Update copyright. (i387_to_double): Delete function. (double_to_i387): Delete function.
* 2002-11-09 Klee Dienes <kdienes@apple.com>Klee Dienes2002-11-091-0/+12
| | | | | | | | | * i387-tdep.c (i387_supply_register): When called with NULL as a buffer, mark the register as not provided (to mirror the behavior of supply_register). (i387_supply_fxsave): Ditto. (i387_supply_fsave): Ditto (inherits the behavior from i387_supply_register).
* * i387-tdep.c (i387_fill_fxsave): Use FOOFF_REGNUM instead ofMark Kettenis2002-11-081-1/+1
| | | | FDOFF_REGNUM.
* * i387-tdep.c (i387_print_float_info): Call fputs_filtered insteadkseitz_interps-20021103-mergeMark Kettenis2002-11-031-1/+1
| | | | of puts_filtered.
* * i387-tdep.c (i387_print_float_info): Replace calls toMark Kettenis2002-11-031-18/+27
| | | | | | register_read and deprecated_read_register_gen with calls to frame_register_read, and make the necessary adjustments to the surrounding code.
* 2002-11-02 Andrew Cagney <cagney@redhat.com>Andrew Cagney2002-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * regcache.h (deprecated_read_register_gen): Rename read_register_gen. (deprecated_write_register_gen): Rename write_register_gen. * i387-tdep.c: Update. * x86-64-linux-nat.c: Update * wince.c: Update. * thread-db.c: Update. * win32-nat.c: Update. * mips-tdep.c: Update. * d10v-tdep.c: Update. * cris-tdep.c: Update. * remote-sim.c: Update. * remote-rdi.c: Update. * remote-rdp.c: Update. * frame.c: Update. * target.c: Update. * blockframe.c: Update. * x86-64-tdep.c: Update. * xstormy16-tdep.c: Update. * sh-tdep.c: Update. * s390-tdep.c: Update. * rs6000-tdep.c: Update. * sparc-tdep.c: Update. * i386-tdep.c: Update. * dwarf2cfi.c: Update. * regcache.c: Update.
* * Makefile.in (osabi.o, i387-tdep.o, i386-linux-nat.o, lin-lwp.o,Tom Tromey2002-08-271-0/+1
| | | | | | | | | | | | | | | ax-gdb.o, signals.o, jv-valprint.o, c-valprint.o, cp-abi.o): Update dependencies. * i387-tdep.c: Include gdb_string.h. * osabi.c: Likewise. * i386-linux-nat.c: Likewise. * lin-lwp.c: Likewise. * ax-gdb.c: Likewise. * signals/signals.c: Likewise. * jv-valprint.c: Likewise. * p-lang.c: Likewise. * c-valprint.c: Likewise. * cp-abi.c: Likewise.
* 2002-08-19 Pierre Muller <muller@ics.u-strasbg.fr>Pierre Muller2002-08-191-1/+1
| | | | * i387-tdep.c (i387_print_float_info): Fix typo in comment.
* 2002-08-15 Andrew Cagney <ac131313@redhat.com>Andrew Cagney2002-08-161-1/+1
| | | | | * i387-tdep.h (i387_print_float_info): Add `args' parameter. * i387-tdep.c (i387_print_float_info): Add `args' parameter.
* * i387-tdep.c (i387_print_float_info): Add comment about ignoringMark Kettenis2002-08-151-1/+4
| | | | FRAME.
* * i387-tdep.h (i387_print_float_info): New prototype.Mark Kettenis2002-08-151-77/+79
| | | | | | | | | | | | | * i387-tdep.c (print_i387_value, print_i387_ext, print_i387_status_word, print_i387_control_word): Add `struct ui_file *' argument and use it for output. (i387_print_float_info): Renamed from i387_float_info. Add `struct gdbarch *' and `struct ui_file *' arguments and use the latter for output. * i386-tdep.c: Include "i387-tdep.h". (i386_gdbarch_init): Set print_float_info. * config/i386/tm-i386.h (i387_float_info): Remove prototype. (FLOAT_INFO): Remove define.
* * i387-tdep.c (i387_supply_fxsave): Skip the SSE registers ifMark Kettenis2002-05-121-6/+12
| | | | | the're not supported by the current architecture. (i387_fill_fxsave): Likewise.
* * Makefile.in (ALLDEPFILES): Remove i387-nat.c.Jason Thorpe2002-05-111-0/+308
| | | | | | | | | | | | | | | | | | | | | | | | | | | (i387-nat.o): Delete dependency list. (go32-nat.o): Change i387-nat.h to i387-tdep.h. (x86-64-linux-nat.o): Likewise. * i387-nat.c: Delete file, moving contents to... * i387-tdep.c: ...here. * i387-nat.h: Rename... * i387-tdep.h: ...to this. * go32-nat.c: Include i387-tdep.h instead of i387-nat.h. * i386-linux-nat.c: Likewise. * i386bsd-nat.c: Likewise. * i386gnu-nat.c: Likewise. * i386nbsd-nat.c: Likewise. * i386v4-nat.c: Likewise. * x86-64-linux-nat.c: Likewise. * config/i386/fbsd.mh (NATDEPFILES): Remove i387-nat.o. * config/i386/go32.mh (NATDEPFILES): Likewise. * config/i386/i386gnu.mh (NATDEPFILES): Likewise. * config/i386/i386sol2.mh (NATDEPFILES): Likewise. * config/i386/i386v42mp.mh (NATDEPFILES): Likewise. * config/i386/linux.mh (NATDEPFILES): Likewise. * config/i386/nbsd.mh (NATDEPFILES): Likewise. * config/i386/nbsdelf.mh (NATDEPFILES): Likewise. * config/i386/obsd.mh (NATDEPFILES): Likewise. * config/i386/x86-64linux.mh (NATDEPFILES): Likewise.
* * i386-tdep.h (FPU_REG_RAW_SIZE): Define unconditionally.Mark Kettenis2001-11-121-2/+0
| | | | | | * i387-nat.c, i387-tdep.c: Unconditionally include "i386-tdep.h". * config/i386/tm-i386.h (FPU_REG_RAW_SIZE): Removed. (SIZEOF_FPU_REGS): Don't use FPU_REG_RAW_SIZE here.
* * i387-tdep.c (print_i387_value): Use extract_typed_floating toMark Kettenis2001-10-281-18/+5
| | | | convert RAW to a DOUBLEST instead of extract_floating.
* * i386-tdep.h: New file.Jiri Smid2001-09-211-0/+3
| | | | | * i387-nat.c: Include i386-tdep.h when multiarch. * i387-tdep.c: Ditto.
* * defs.h (HOST_FLOAT_FORMAT, HOST_DOUBLE_FORMAT)Andrew Cagney2001-08-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (HOST_FLOAT_FORMAT, HOST_DOUBLE_FORMAT) (HOST_LONG_DOUBLE_FORMAT, DOUBLEST) (floatformat_to_doublest, floatformat_from_doublest) (floatformat_is_negative, floatformat_is_nan) (floatformat_mantissa, store_floating) (extract_floating): Move declaration from here. * doublest.h: To here. New file. * utils.c (get_field, floatformat_to_doublest, put_field) (ldfrexp, floatformat_from_doublest, floatformat_is_negative) (floatformat_is_nan, floatformat_mantissa) (FLOATFORMAT_CHAR_BIT): Move from here. * doublest.c: To here. New file. * findvar.c (store_floating, extract_floating): Move from here. * doublest.c: To here. * Makefile.in (SFILES): Add doublest.c. (COMMON_OBS): Add doublest.o. (doublest.o): Specify dependencies. (doublest_h): Define. * config/m88k/tm-m88k.h: Include "doublest.h". * config/i960/tm-i960.h: Ditto. * config/i386/tm-symmetry.h: Ditto. * rs6000-tdep.c, valarith.c: Ditto. * valprint.c, stabsread.c, sh-tdep.c: Ditto. * ia64-tdep.c, i387-tdep.c, i386-tdep.c: Ditto. * values.c, arm-tdep.c, arm-linux-tdep.c: Ditto. * alpha-tdep.c, ax.h, expression.h: Ditto. * sh-tdep.c, parse.c, top.c, value.h: Ditto. * Makefile.in (arm-tdep.o): Add $(doublest_h). (i386-tdep.o, i387-tdep.o, ia64-tdep.o): Ditto. (rs6000-tdep.o, stabsread.o, valarith.o): Ditto. (values.o, valprint.o, arm-linux-tdep.o): Ditto. (alpha-tdep.o, ax_h, parse.o, top.o, value_h): Ditto. (parser_defs_h): Ditto. (expression_h): Add $(doublest_h) and $(symtab_h).
* I'm using the obvious fix rule to commit this.Michael Chastain2001-07-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Testing: I tested on native Red Hat Linux 7 using gcc 3.0. The "info float" command exercises print_i387_value. 2001-07-06 Michael Chastain <chastain@redhat.com> * i387-tdep.c (print_i387_value): Fix pointer glitch. === Index: i387-tdep.c =================================================================== RCS file: /cvs/src/src/gdb/i387-tdep.c,v retrieving revision 1.11 diff -c -1 -0 -p -r1.11 i387-tdep.c *** gdb/i387-tdep.c 2001/07/04 21:14:05 1.11 --- gdb/i387-tdep.c 2001/07/06 12:47:00 *************** print_i387_value (char *raw) *** 163,184 **** DOUBLEST value; int len = TARGET_LONG_DOUBLE_BIT / TARGET_CHAR_BIT; char *tmp = alloca (len); /* This code only works on targets where ... */ gdb_assert (TARGET_LONG_DOUBLE_FORMAT == &floatformat_i387_ext); /* Take care of the padding. FP reg is 80 bits. The same value in memory is 96 bits. */ gdb_assert (FPU_REG_RAW_SIZE < len); ! memcpy (&tmp, raw, FPU_REG_RAW_SIZE); ! memset (&tmp + FPU_REG_RAW_SIZE, 0, len - FPU_REG_RAW_SIZE); /* Extract the value as a DOUBLEST. */ /* Use extract_floating() rather than floatformat_to_doublest(). The latter is lossy in nature. Once GDB gets a host/target independent and non-lossy FP it will become possible to bypass extract_floating() and call floatformat*() directly. Note also the assumptions about TARGET_LONG_DOUBLE above. */ value = extract_floating (tmp, len); /* We try to print 19 digits. The last digit may or may not contain --- 163,184 ---- DOUBLEST value; int len = TARGET_LONG_DOUBLE_BIT / TARGET_CHAR_BIT; char *tmp = alloca (len); /* This code only works on targets where ... */ gdb_assert (TARGET_LONG_DOUBLE_FORMAT == &floatformat_i387_ext); /* Take care of the padding. FP reg is 80 bits. The same value in memory is 96 bits. */ gdb_assert (FPU_REG_RAW_SIZE < len); ! memcpy (tmp, raw, FPU_REG_RAW_SIZE); ! memset (tmp + FPU_REG_RAW_SIZE, 0, len - FPU_REG_RAW_SIZE); /* Extract the value as a DOUBLEST. */ /* Use extract_floating() rather than floatformat_to_doublest(). The latter is lossy in nature. Once GDB gets a host/target independent and non-lossy FP it will become possible to bypass extract_floating() and call floatformat*() directly. Note also the assumptions about TARGET_LONG_DOUBLE above. */ value = extract_floating (tmp, len); /* We try to print 19 digits. The last digit may or may not contain
* * i387-tdep.c (print_i387_value): Add extra space after final fullMark Kettenis2001-07-041-1/+1
| | | | stop in comment.
* * i387-tdep.c: Include "gdb_assert.h".Andrew Cagney2001-07-041-14/+18
| | | | | (print_i387_value): Use extract_floating to extract the FP value from a zero padded local buffer.
* * i387-tdep.c (print_i387_status_word): Fix printing of StackMark Kettenis2001-03-091-1/+1
| | | | fault flag. It is bit 6 of the x87 FPU status word, not bit 7.
* Update/correct copyright notices.Kevin Buettner2001-03-061-2/+2
|
* Create new file regcache.h. Update all uses.Andrew Cagney2001-03-011-1/+3
|
* Protoization.gdb-post-protoization-2000-07-29Kevin Buettner2000-07-301-14/+6
|
* PARAMS removal.gdb-post-params-removal-2000-05-28Kevin Buettner2000-05-281-4/+4
|
* * i387-tdep.c (print_i387_value): Cast &value to (char *) inMark Kettenis2000-05-211-1/+2
| | | | | pointer arithmetic. Fixes a bug which manifested itself on FreeBSD.
* 2000-04-12 Mark Kettenis <kettenis@gnu.org>Mark Kettenis2000-04-121-2/+15
| | | | | | * i387-tdep.c (print_i387_value): Avoid call to floatformat_to_doublest if long double type is the same on host and target.
* 2000-03-26 Mark Kettenis <kettenis@gnu.org>Mark Kettenis2000-03-261-49/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Provide `long double' support for most i386 targets. * config/i386/tm-i386.h (TARGET_LONG_DOUBLE_FORMAT): Define as &floatformat_i387_ext. (TARGET_LONG_DOUBLE_BITS): Define as 96. (REGISTER_VIRTUAL_TYPE): Change type for FPU registers to `builtin_type_long_double'. (REGISTER_CONVERT_TO_VIRTUAL): Call i386_register_convert_to_virtual. (REGISTER_CONVERT_TO_RAW): Call i386_register_convert_to_raw. (i387_to_double, double_to_i387): Remove prototypes. (i386_extract_return_value): Change prototype to match definition in i386-tdep.c. * config/i386/tm-i386mk.h (TARGET_LONG_DOUBLE_FORMAT): #undef. (TARGET_LONG_DOUBLE_BITS): #undef. * config/i386/tm-linux.h (TARGET_LONG_DOUBLE_BIT): Remove. [HAVE_LONG_DOUBLE && HOST_I386] (LD_I387): Remove. (i387_extract_floating, i387_store_floating): Remove prototypes. (TARGET_EXTRACT_FLOATING, TARGET_STORE_FLOATING): Remove. (REGISTER_CONVERT_TO_VIRTUAL, REGOISTER_CONVERT_TO_RAW): Remove. (REGISTER_VIRTUAL_TYPE): Remove. * i386-tdep.c (i386_register_convert_to_virtual): New function. (i386_register_convert_to_raw): New function. * i387-tdep.c [LD_I387] (i387_extract_floating): Remove. (i387_store_floating): Remove.
* import gdb-1999-12-07 snapshotJason Molenda1999-12-081-7/+252
|
* import gdb-1999-09-21Jason Molenda1999-09-221-139/+0
|
* import gdb-1999-09-13 snapshotJason Molenda1999-09-131-1/+1
|
* import gdb-1999-09-08 snapshotStan Shebs1999-09-091-46/+235
|
* import gdb-1999-07-07 post reformatJason Molenda1999-07-071-46/+77
|
* Initial revisionStan Shebs1999-04-161-0/+111