Mark Kettenis
0485f6ad30
* x86-64-tdep.c (x86_64_supply_fxsave): Add `regnum' argument.
...
Update comments.
* x86-64-tdep.h (x86_64_supply_fxsave): Adjust prototype. Update
comments.
* x86-64-linux-tdep.c (fetch_core_registers): Adjust call to
x86_64_supply_fxsave.
* x86-64-linux-nat.c (supply_fpregset): Adjust call to
x86_64_supply_fxsave.
* amd64fbsd-nat.c (supply_fpregset): Adjust call to
x86_64_supply_fxsave.
2003-08-23 13:58:18 +00:00
Michal Ludvig
eba29c8cbb
2003-07-15 Michal Ludvig <mludvig@suse.cz>
...
* x86-64-linux-nat.c (regmap): Removed.
(supply_gregset, fill_gregset): Call
x86_64_linux_(fill,supply)_gregset functions.
* x86-64-linux-tdep.c (USER_*): New defines.
(user_to_gdb_regmap, x86_64_core_fns): New structure.
(x86_64_linux_supply_gregset, x86_64_linux_fill_gregset):
New functions.
(fetch_core_registers): Ditto.
(_initialize_x86_64_linux_tdep): Call add_core_fns().
* x86-64-linux-tdep.h: New file.
* config/i386/x86-64linux.mh (NATDEPFILES): Remove corelow.o
and core-regset.o.
* config/i386/x86-64linux.mt (TDEPFILES): Add corelow.o.
2003-07-15 11:33:59 +00:00
Mark Kettenis
2b5e07495d
* x86-64-tdep.c (X86_64_NUM_SAVED_REGS): Set to X86_64_NUM_GREGS.
...
(x86_64_sigtramp_frame_cache): Use `sc_reg_offset' to find saved
registers.
* x86-64-linux-tdep.c (x86_64_linux_sc_reg_offset): New variable.
(x86_64_linux_init_abi): Initialize TDEP->sc_reg_offset and
TDEP->sc_num_regs instead of TDEP->sc_pc_offset and
TDEP->sc_sp_offset.
2003-05-31 16:11:47 +00:00
Mark Kettenis
c4f35dd8e1
* x86-64-tdep.h (x86_64_num_regs, x86_64_num_gregs): Remove
...
variable declarations.
(x86_64_register_number, x86_64_register_name): Remove prototypes.
(x86_64_linux_frame_saved_pc, x86_64_linux+saved_pc_after_call,
x86_64_linux_in_sigtramp, x86_64_linux_frame_chain,
x86_64_init_frame_pc, x86_64_init_frame_pc,
x86_64_function_has_prologue): Remove prototypes.
(X86_64_NUM_GREGS): New define.
(x86_64_supply_fxsave, x86_64_fill_fxsave): New prototypes.
* x86-64-tdep.c: Don't include "dwarf2cfi.h". Include
"dummy_frame.h", "frame.h", "frame-base.h", "frame-unwind.h".
(RAX_REGNUM, RDX_REGNUM, RDI_REGNUM, EFLAGS_REGNUM, ST0_REGNUM,
XMM1_REGNUM): Remove defines.
(X86_64_RAX_REGNUM, X86_64_RDX_REGNUM, X86_64_RDI_REGNUM,
X86_64_RBP_REGNUM, X86_64_RSP_REGNUM, X86_64_RIP_REGNUM,
X86_64_EFLAGS_REGNUM, X86_64_ST0_REGNUM, X86_64_XMM0_REGNUM,
X86_64_XMM1_REGNUM): New defines.
(struct x86_64_register_info): Renamed from `struct
register_info'. Remove `size' member.
(x86_64_register_info_table): Remove variable.
(x86_64_register_info): New variable.
(X86_64_NUM_REGS): New define.
(X86_64_NUM_GREGS): Remove define.
(x86_64_num_regs, x86_64_num_gregs): Remove variables.
(x86_64_dwarf2gdb_regno_map, x86_64_dwarf2gdb_regno_map_length):
Remove variables.
(x86_54_dwarf2_reg_to_regnum): Remove function.
(x86_64_dwarf_regmap, x86_64_dwarf_regmap_len): New variables.
(x86_64_dwarf_reg_to_regnum): New function.
(x86_64_register_name): Rewrite.
(x86_64_register_raw_size): Remove function.
(x86_64_register_byte_table): Remove variable.
(x86_64_register_byte): Remove function.
(x86_64_register_virtual_type): Remove function.
(x86_64_register_type): New function.
(x86_64_register_convertible, x86_64_register_convert_to_virtual,
x86_64_register_convert_to_raw): Remove functions.
(x86_64_push_return_address, x86_64_pop_frame): Remove functon.
(x86_64_use_struct_convention): Make static. Adjust for renamed
defines.
(x86_64_frame_init_saved_regs): Remove function.
(x86_64_push_arguments): Make static. Change to accept a regcache
as argument.
(x86_64_store_return_value, x86_64_extract_return_value): Make
static. Rewrite based on i386 counterparts.
(x86_64_push_dummy_call): New function.
(X86_64_NUM_SAVED_REGS): New define.
(x86_64_register_number): Remove function.
(x86_64_store_struct_return): Remove function.
(x86_64_frameless_function_invocation,
x86_64_function_has_prologue): Remove functions.
(PROLOG_BUFSIZE): Remove define.
(struct x86_64_frame_cache): New structure.
(x86_64_alloc_frame_cache, x86_64_analyze_prologue,
x86_64_frame_cache, x86_64_frame_this_id,
x86_64_frame_prev_register, x86_64_frame_p,
x86_64_sigtramp_frame_cache, x86_64_sigtramp_frame_this_id,
x86_64_sigtramp_frame_prev_register, x86_sigtramp_frame_p): New
functions.
(x86_64_frame_unwind, x86_64_sigtramp_frame_unwind): New
variables.
(x86_64_skip_prologue): Rewrite in terms of
x86_64_analyze_prologue.
(x86_64_frame_base_address): New function.
(x86_64_frame_base): New variable.
(x86_64_save_dummy_frame_tos, x86_64_unwind_dummy_id): Rewrite.
(x86_64_init_abi): Set register_type and push_dummy_call. Don't
set deprecated_fp_regnum, deprecated_register_size,
deprecated_register_bytes, register_raw_size, register_byte,
register_virtual_type, register_convertiable,
register_convert_to_virtual, convert_to_raw,
deprecated_get_saved_register, deprecated_target_read_fp,
deprecated_push_arguments, deprecated_push_return_address,
deprecated_pop_frame, deprecated_store_struct_return,
deprecated_frame_init_saved_regs, deprecated_frame_chain,
frameless_function_invocation, deprecated_frame_saved_pc,
deprecated_saved_pc_after_call, frame_num_args, pc_in_sigtramp,
dwarf2_build_frame_info, deprecated_init_extra_frame_info,
deprecated_init_frame_pc and virtual_frame_pointer. Call
frame_unwind_append_predicate to register x86_64_sigtramp_frame_p
and x86_64_frame_p. Call frame_base_set_default to register
x86_64_frame_base.
(I387_FISEG_REGNUM, I387_FOSEG_REGNUM): New defines.
(x86_64_supply_fxsave, x86_64_fill_fxsave): New functions.
(_initialize_x86_64_tdep): Remove function.
* x86-64-linux-tdep.c: Don't include "dwarf2cfi.h".
(LINUX_SIGINFO_SIZE, LINUX_UCONTEXT_SIGCONTEXT_OFFSET,
LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_FP_OFFSET): Don't
define.
(X86_64_LINUX_UCONTEXT_SIGCONTEXT_OFFSET): Define.
(x86_64_linux_sigcontext_addr): Rewrite.
(x86_64_linux_sigtramp_saved_pc, x86_64_linux_saved_pc_after_call,
x86_64_linux_frame_saved_pc): Remove functions.
(x86_64_linux_pc_in_sigtramp): Renamed from
x86_64_linux_in_sigtramp. Try harder to recognize a signal
trampoline.
(x86_64_linux_frame_chain, x86_64_init_frame_pc):
Remove_functions.
(x86_64_linux_init_abi): Set pc_in_sigtramp. Initialize
TDEP->sigcontext_addr, TDEP->sc_pc_offset and TDEP->sc_sp_offset.
* x86-64-linux-nat.c: Sync with i386-linux-tdep.c.
(x86_64_regmap): Rename to regmap.
(GETREGS_SUPPLIES): Use X86_64_NUM_GREGS instead of
x86_64_num_gregs.
(supply_gregset, fill_gregset): Likewise. Use regmap instead of
x86_64_regmap.
(x86_64_fxsave_offset): Remove function.
(supply_fpregset): Simply call x86_64_supply_fxsave.
(fill_fpregset): Simply call x86_64_fill_fxsave.
(fetch_inferior_registers, store_inferior_registers): Avoid
asignment in if-statement.
(LINUX_SYSCALL_LEN, LINUX_SYSCALL_REGNUM, SYS_Sigreturn,
SYS_rt_sigreturn, LINUX_SIGCONTEXT_EFLAGS_OFFSET,
LINUX_UCONTEXT_SIGCONTEXT_OFFSET): Remove defines.
(fetch_core_registers): Remove function.
(linux_elf_core_fns): Remove.
(offsetoff): Don't define.
(_initialize_x86_64_linux_nat, kernel_u_size): Remove functions.
* config/i386/x86-64linux.mt (TDEPFILES): Add i386-linux-tdep.o.
* config/i386/x86-64linux.mh (NATDEPFILES): Remove core-aout.o,
add core-regset.o.
* config/i386/nm-x86-64linux.h: Use NM_X86_64_LINUX_H for
protection against multiple includes instead of NM_X86_64_h. Add
various comments. Include "config/nm-linux.h". Don't include
<signal.h>.
(REGISTER_U_ADDR, KERNEL_U_SIZE, U_REGS_OFFSET, KERN_U_ADDR,
GET_THREAD_SIGNALS): Remove defines.
(x86_64_register_u_addr, kernel_u_size,
lin_thread_get_thread_signals): Remove prototypes.
(PTRACE_ARG3_TYPE, PTRACE_XFER_TYPE): Define to `long'.
[HAVE_LINK_H]: Don't include "solib.h".
[HAVE_LINK_H] (SVR4_SHARED_LIBS): Remove define.
* config/i386/tm-x86-64linux.h: Fix comments.
* Makefile.in (x86-64-linux-nat.o, x86_64-linux-tdep.o,
x86-64-tdep.o): Update dependencies.
2003-05-31 08:15:38 +00:00
Andrew Cagney
1bac305b72
2003-01-13 Andrew Cagney <ac131313@redhat.com>
...
* ax-gdb.c, c-valprint.c, charset.c, corefile.c: Update copyright.
* demangle.c, disasm.c, dwarf2cfi.c, dwarfread.c: Update copyright.
* elfread.c, eval.c, expprint.c, expression.h: Update copyright.
* f-typeprint.c, findvar.c, gcore.c, gdb_mbuild.sh: Update copyright.
* gdbtypes.h, gnu-v2-abi.c, inferior.h, inftarg.c: Update copyright.
* language.c, language.h, m32r-tdep.c: Update copyright.
* mn10200-tdep.c, scm-lang.c, scm-lang.h: Update copyright.
* somsolib.c, somsolib.h, symfile.c, symtab.h: Update copyright.
* thread-db.c, typeprint.c, utils.c, valarith.c: Update copyright.
* values.c, win32-nat.c, x86-64-linux-nat.c: Update copyright.
* x86-64-linux-tdep.c, z8k-tdep.c: Update copyright.
* cli/cli-decode.h, config/h8500/tm-h8500.h: Update copyright.
Index: mi/ChangeLog
2003-01-13 Andrew Cagney <ac131313@redhat.com>
* mi-cmd-env.c: Update copyright.
2003-01-14 00:49:06 +00:00
Andrew Cagney
bde581776e
2003-01-09 Andrew Cagney <ac131313@redhat.com>
...
* somsolib.h: Fix function indentation.
* disasm.c, buildsym.c, buildsym.h: Eliminate PTR.
* gnu-v2-abi.c, f-typeprint.c, x86-64-linux-tdep.c: Eliminate STREQ.
* demangle.c, ax-gdb.c, c-valprint.c: Eliminate STREQ.
* alpha-osf1-tdep.c, corefile.c: Eliminate STREQ.
* somsolib.c, inftarg.c: Remove assignment in if conditional.
2003-01-09 18:30:32 +00:00
Andrew Cagney
11c02a10e2
2003-01-08 Andrew Cagney <cagney@redhat.com>
...
* alpha-tdep.c: Use get_next_frame.
* arm-tdep.c, avr-tdep.c, cris-tdep.c, d10v-tdep.c: Ditto.
* dwarf2cfi.c, h8300-tdep.c, i386-tdep.c, ia64-tdep.c: Ditto.
* m68hc11-tdep.c, m68k-tdep.c, mcore-tdep.c: Ditto.
* mips-tdep.c, mn10200-tdep.c, mn10300-tdep.c: Ditto.
* ns32k-tdep.c, s390-tdep.c, sh-tdep.c, sparc-tdep.c: Ditto.
* v850-tdep.c, vax-tdep.c, x86-64-linux-tdep.c: Ditto.
* xstormy16-tdep.c: Ditto.
2003-01-08 15:56:38 +00:00
Andrew Cagney
1e2330ba1f
2003-01-07 Andrew Cagney <cagney@redhat.com>
...
* alpha-tdep.c: Use get_frame_base.
* arm-tdep.c, avr-tdep.c, cris-tdep.c, d10v-tdep.c: Ditto.
* h8300-tdep.c, i386-tdep.c, ia64-tdep.c, m68hc11-tdep.c: Ditto.
* m68k-tdep.c, mcore-tdep.c, mips-tdep.c, mn10200-tdep.c: Ditto.
* mn10300-tdep.c, ns32k-tdep.c, s390-tdep.c, sh-tdep.c: Ditto.
* sparc-tdep.c, v850-tdep.c, vax-tdep.c: Ditto.
* x86-64-linux-tdep.c, xstormy16-tdep.c: Ditto.
* config/h8500/tm-h8500.h, config/mn10200/tm-mn10200.h: Ditto.
* config/sparc/tm-sparc.h: Ditto.
2003-01-08 01:53:38 +00:00
Andrew Cagney
84dc46cbdb
2003-01-06 Andrew Cagney <cagney@redhat.com>
...
* x86-64-linux-tdep.c: Include "osabi.h".
* Makefile.in (x86-64-linux-tdep.o): Update dependencies.
2003-01-06 20:45:30 +00:00
Andrew Cagney
50abf9e57b
2003-01-02 Andrew Cagney <ac131313@redhat.com>
...
* arm-tdep.c: Use get_frame_pc and deprecated_update_frame_pc_hack
frame accessor methods.
* alpha-tdep.c, avr-tdep.c, cris-tdep.c, d10v-tdep.c: Ditto.
* dwarf2cfi.c, h8300-tdep.c, i386-tdep.c, ia64-tdep.c: Ditto.
* m68hc11-tdep.c, m68k-tdep.c, mcore-tdep.c, mips-tdep.c: Ditto.
* mn10200-tdep.c, mn10300-tdep.c, ns32k-tdep.c: Ditto.
* s390-tdep.c, sh-tdep.c, sparc-tdep.c, v850-tdep.c: Ditto.
* vax-tdep.c, x86-64-linux-tdep.c, xstormy16-tdep.c: Ditto.
* z8k-tdep.c: Ditto.
2003-01-02 22:20:47 +00:00
Mark Kettenis
2213a65dbc
* x86-64-tdep.h (x86_64_init_abi): New prototype.
...
* x86-64-tdep.c (i386_fp_regnum_p): Remove function.
(x86_64_init_abi): Make non-static. Set number of pseudo
registers to 0.
(x86_64_gdbarch_init): Remove function.
(_initialize_x86_64_tdep): Renove register_gdbarch_init call.
Remove code dealing with dissambly.
* x86-64-linux-tdep.c (x86_64_linux_init_abi): New function.
(_initialize_x86_64_linux_tdep): New function.
* config/i386/x86-64linux.mt (TDEPFILES): Add i386-tdep.o and
i386-tdep.o.
2002-12-21 21:09:58 +00:00
Andrew Cagney
97f4695394
2002-12-08 Andrew Cagney <ac131313@redhat.com>
...
* gdbarch.sh (INIT_FRAME_PC_FIRST, INIT_FRAME_PC_DEFAULT): Convert
to pure functions.
* gdbarch.h, gdbarch.c: Re-generate.
* frame.c (get_prev_frame): Explictly assign prev's pc with value
returned by INIT_FRAME_PC_FIRST and INIT_EXTRA_FRAME_INFO.
* arch-utils.h (init_frame_pc_default, init_frame_pc_noop): Change
declaration to a function returning a CORE_ADDR.
* x86-64-tdep.h (x86_64_init_frame_pc): Ditto.
* arch-utils.c (init_frame_pc_noop): Return the PC value.
(init_frame_pc_default): Ditto.
* x86-64-linux-tdep.c (x86_64_init_frame_pc): Ditto.
* s390-tdep.c (s390_init_frame_pc_first): Ditto.
* mips-tdep.c (mips_init_frame_pc_first): Ditto.
* dwarf2cfi.h (cfi_init_frame_pc): Ditto.
* dwarf2cfi.c (cfi_init_frame_pc): Ditto.
* alpha-tdep.c (alpha_init_frame_pc_first): Ditto.
* i386-interix-tdep.c (i386_interix_init_abi): Set init_frame_pc
to init_frame_pc_noop.
(i386_interix_init_frame_pc): Delete function.
* z8k-tdep.c (init_frame_pc): Delete function.
* config/z8k/tm-z8k.h (INIT_FRAME_PC): Define as init_frame_pc_noop.
(INIT_FRAME_PC_FIRST): Ditto.
* config/mn10200/tm-mn10200.h (INIT_FRAME_PC): Ditto.
(INIT_FRAME_PC_FIRST): Ditto.
* config/sparc/tm-sparc.h (INIT_FRAME_PC): Ditto.
* config/rs6000/tm-rs6000.h (INIT_FRAME_PC): Redefine as
init_frame_pc_noop.
(INIT_FRAME_PC_FIRST): Convert to an expression.
* config/sparc/tm-sparc.h (INIT_FRAME_PC_FIRST): Ditto.
2002-12-09 02:04:17 +00:00
Andrew Cagney
5a203e4405
2002-11-18 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (enum frame_type): Define.
(get_frame_type): Declare.
(struct frame_info): Add field `type'. Delete field
signal_handler_caller.
(deprecated_set_frame_signal_handler_caller): Declare.
* frame.c (get_frame_type): New function.
(deprecated_set_frame_type): New function.
(create_new_frame): Set the frame's type.
(get_prev_frame): Similar.
* sparc-tdep.c: Use get_frame_type instead of signal_handler_caller.
* s390-tdep.c: Ditto.
* m68klinux-nat.c: Ditto.
* ns32k-tdep.c: Ditto.
* x86-64-linux-tdep.c: Ditto.
* vax-tdep.c: Ditto.
* rs6000-tdep.c: Ditto.
* ppc-linux-tdep.c: Ditto.
* i386-interix-tdep.c: Ditto.
* mips-tdep.c: Ditto.
* m68k-tdep.c: Ditto.
* hppa-tdep.c: Ditto.
* ia64-tdep.c: Ditto.
* cris-tdep.c: Ditto.
* arm-tdep.c: Ditto.
* alpha-tdep.c: Ditto.
* i386-tdep.c: Ditto.
* stack.c: Ditto.
* ada-lang.c: Ditto.
* blockframe.c: Update.
* i386-interix-tdep.c (i386_interix_back_one_frame): Use
deprecated_set_frame_type instead of signal_handler_caller.
* ppc-linux-tdep.c (ppc_linux_init_extra_frame_info): Ditto.
* rs6000-tdep.c (rs6000_init_extra_frame_info): Ditto.
* breakpoint.h: Delete FIXME suggesting get_frame_type.
Index: tui/ChangeLog
2002-11-18 Andrew Cagney <ac131313@redhat.com>
* tuiStack.c (tuiShowFrameInfo): Use get_frame_type instead of
signal_handler_caller.
2002-11-18 22:19:33 +00:00
Mark Kettenis
e3033f1585
* x86-64-tdep.c (x86_64_init_abi): Set init_extra_frame_info to
...
cfi_init_extra_frame_info.
* x86-64-tdep.h (x86_64_init_extra_frame_info): Remove prototype.
* x86-64-linux-tdep.c (x86_64_init_extra_frame_info): Remove function.
2002-10-26 17:04:37 +00:00
Michal Ludvig
b64bbf8c48
Reindented.
2002-10-24 01:37:40 +00:00
Michal Ludvig
baed091b2b
2002-10-24 Michal Ludvig <mludvig@suse.cz>
...
* dwarf2cfi.c (struct context)
(struct context_reg): Moved to dwarf2cfi.h
(context_alloc, frame_state_alloc, context_cpy):
Made extern instead of static, removed prototypes.
* dwarf2cfi.h (struct context)
(struct context_reg): New, moved from dwarf2cfi.c
(context_alloc, frame_state_alloc, context_cpy):
New prototypes.
* x86-64-linux-tdep.c (x86_64_linux_sigtramp_saved_pc):
Changed from static to extern.
(LINUX_SIGINFO_SIZE, LINUX_SIGCONTEXT_PC_OFFSET)
(LINUX_SIGCONTEXT_FP_OFFSET)
(LINUX_UCONTEXT_SIGCONTEXT_OFFSET): Adjusted.
(x86_64_linux_in_sigtramp, x86_64_linux_frame_chain)
(x86_64_init_frame_pc, x86_64_init_extra_frame_info): New.
* x86-64-tdep.c (x86_64_gdbarch_init): Several
set_gdbarch_*() calls now use x86-64 specific functions
instead of DWARF2 CFI ones.
* x86-64-tdep.h (x86_64_linux_in_sigtramp)
(x86_64_linux_frame_chain, x86_64_init_frame_pc)
(x86_64_init_extra_frame_info): New prototypes.
2002-10-24 01:27:43 +00:00
Michal Ludvig
30d524915d
2002-09-03 Michal Ludvig <mludvig@suse.cz>
...
* x86-64-linux-tdep.c: Include gdb_string.h
* x86-64-linux-nat.c: Ditto.
2002-09-03 13:06:33 +00:00
Andrew Cagney
a4b6fc86fa
s/Linux/.../
...
Fix PR gdb/378.
2002-02-24 22:14:33 +00:00
Jiri Smid
c74ae012f5
* x86-64-linux-tdep.c (LINUX_SIGINFO_SIZE): Add.
...
(x86_64_linux_sigcontext_addr): Replace `sizeof (struct siginfo)'
by LINUX_SIGINFO_SIZE.
2001-09-25 10:37:17 +00:00
Mark Kettenis
1dbeeb7b3b
* x86-64-linux-tdep.c (STRUCT_OFFSET): Removed.
2001-09-21 22:57:29 +00:00
Jiri Smid
53e95fcfec
* config/i386/x86-64linux.mh: New file.
...
* config/i386/x86-64linux.mt: New file.
* config/i386/nm-x86_64.h: New file.
* x86-64-linux-tdep.c: New file.
* x86-64-linux-nat.c: New file.
* x86-64-tdep.c: New file.
* x86-64-tdep.h: New file.
* config/djgpp/fnchange.lst: Add entries for x86_64-linux-tdep.c
and x86_64-linux-nat.c
* Makefile.in: Add x86_64-linux-tdep.o, x86_64-tdep.o,
x86_64-linux-tdep.o, x86_64-nat.o, update dependencies.
2001-09-21 12:19:15 +00:00