aboutsummaryrefslogtreecommitdiff
path: root/gdb/x86-64-linux-tdep.c
AgeCommit message (Collapse)AuthorFilesLines
2003-10-31* x86-64-linux-tdep.c (x86_64_linux_sc_reg_offset): Don'tMark Kettenis1-2/+2
explicitly specify size of array. (x86_64_linux_init_abi): Use ARRAY_SIZE to initialize TDEP->sc_num_regs.
2003-09-28* i387-tdep.c (i387_supply_fsave, i387_supply_fxsave): AddMark Kettenis1-1/+1
regcache argument and reverse the order of the other two arguments. Remove local regcache variable. Determine architecture from REGCACHE. Update comments. * x86-64-tdep.c (x86_64_supply_fxsave): Add regcache argument and reverse the order of the other two arguments. Remove local regcache variable. Determine architecture from REGCACHE. Update comments. * i387-tdep.h (i387_supply_fsave, i387_supply_fxsave): Adjust prototypes. Update comments. * x86-64-tdep.c (x86_64_supply_fxsave): Adjust prototype. Adjust comment. * amd64fbsd-nat.c (supply_fpregset, fetch_inferior_registers): Update. * go32-nat.c (fetch_register, go32_fetch_registers): Update. * i386-interix-nat.c (supply_fpregset): Update. * i386-linux-nat.c (supply_fpregset, supply_fpxregset): Update. * i386-nto-tdep.c (i386nto_supply_fpregset): Update. * i386gnu-nat.c (fetch_fpregs, supply_fpregset): Update. * i386bsd-nat.c (supply_fpregset, fetch_inferior_registers): Update. * i386nbsd-tdep.c (fetch_core_registers, fetch_elfcore_registers): Update. * i386obsd-tdep.c (fetch_core_registers): Update. * i386v4-nat.c (supply_fpregset): Update. * x86-64-linux-nat.c (supply_fpregset): Update. * x86-64-linux-tdep.c (fetch_core_registers): Update.
2003-08-29* x86-64-linux-tdep.c (user_to_gdb_regmap): Remove USER_CS andMark Kettenis1-1/+1
USER_DS. We haven't given them a register number yet.
2003-08-23* x86-64-tdep.c (x86_64_supply_fxsave): Add `regnum' argument.Mark Kettenis1-1/+1
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-07-152003-07-15 Michal Ludvig <mludvig@suse.cz>Michal Ludvig1-0/+112
* 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-05-31* x86-64-tdep.c (X86_64_NUM_SAVED_REGS): Set to X86_64_NUM_GREGS.Mark Kettenis1-2/+34
(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* x86-64-tdep.h (x86_64_num_regs, x86_64_num_gregs): RemoveMark Kettenis1-120/+58
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-01-142003-01-13 Andrew Cagney <ac131313@redhat.com>Andrew Cagney1-1/+1
* 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-092003-01-09 Andrew Cagney <ac131313@redhat.com>Andrew Cagney1-1/+1
* 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-082003-01-08 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-4/+5
* 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-082003-01-07 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-3/+3
* 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-062003-01-06 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-0/+1
* x86-64-linux-tdep.c: Include "osabi.h". * Makefile.in (x86-64-linux-tdep.o): Update dependencies.
2003-01-022003-01-02 Andrew Cagney <ac131313@redhat.com>Andrew Cagney1-1/+1
* 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.
2002-12-21* x86-64-tdep.h (x86_64_init_abi): New prototype.Mark Kettenis1-0/+17
* 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-092002-12-08 Andrew Cagney <ac131313@redhat.com>Andrew Cagney1-5/+5
* 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-11-182002-11-18 Andrew Cagney <ac131313@redhat.com>Andrew Cagney1-4/+4
* 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-10-26* x86-64-tdep.c (x86_64_init_abi): Set init_extra_frame_info toMark Kettenis1-6/+0
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-24Reindented.Michal Ludvig1-35/+32
2002-10-242002-10-24 Michal Ludvig <mludvig@suse.cz>Michal Ludvig1-10/+73
* 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-09-032002-09-03 Michal Ludvig <mludvig@suse.cz>Michal Ludvig1-0/+1
* x86-64-linux-tdep.c: Include gdb_string.h * x86-64-linux-nat.c: Ditto.
2002-02-24s/Linux/.../Andrew Cagney1-7/+8
Fix PR gdb/378.
2001-09-25* x86-64-linux-tdep.c (LINUX_SIGINFO_SIZE): Add.Jiri Smid1-2/+4
(x86_64_linux_sigcontext_addr): Replace `sizeof (struct siginfo)' by LINUX_SIGINFO_SIZE.
2001-09-21* x86-64-linux-tdep.c (STRUCT_OFFSET): Removed.Mark Kettenis1-3/+0
2001-09-21* config/i386/x86-64linux.mh: New file.Jiri Smid1-0/+136
* 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.