Mark Kettenis [Sat, 9 Nov 2002 21:31:12 +0000 (21:31 +0000)]
* i386-linux-nat.c (ORIG_EAX): Define to -1 if not already
defined.
(regmap): Extend to cover all registers.
(PT_READ_U, PT_WRITE_U, PTRACE_XFER_TYPE,
OLD_CANNOT_FETCH_REGISTERS, OLD_CANNOT_STORE_REGISTERS): Remove
definitions.
(fetch_register, sore_register): Simplify.
(old_fetch_inferior_registers, old_store_inferior_registers):
Remove functions.
(cannot_fetch_register, cannot_store_register): Change
implementation to use regmap array to decide which registers
cannot be fetched/stored. This removes $orig_eax from the
registers that cannot be fetched/stored.
(fetch_inferior_registers): Call fetch_register directly instead
of calling old_fetch_inferior_registers.
(store_inferior_registers): Call store_register directly instead
of calling old_store_inferior_registers.
(i386_linux_dr_get): Replace PT_READ_U with PTRACE_PEEKUSER.
(i386_linux_dr_set): Replace PT_WRITE_U with PTRACE_POKEUSER.
* config/i386/nm-linux.h (U_REGS_OFFSET): Remove definition.
Klee Dienes [Sat, 9 Nov 2002 19:34:35 +0000 (19:34 +0000)]
2002-11-09 Klee Dienes <kdienes@apple.com>
* 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).
Klee Dienes [Sat, 9 Nov 2002 19:28:22 +0000 (19:28 +0000)]
2002-11-09 Klee Dienes <kdienes@apple.com>
* blockframe.c (sigtramp_saved_pc): Use
builtin_type_void_code_ptr, not builtin_type_void_data_ptr (we are
extracting the PC). Use TYPE_LENGTH (builtin_type_void_code_ptr)
instead of (TARGET_PTR_BIT / TARGET_CHAR_BIT).
* frame.c (get_prev_frame): Cleanups. Eliminate redundant tests
for a NULL NEXT_FRAME. Simplify fromleaf initialization. Add
more comments. Zap dead code.
Mark Kettenis [Sat, 9 Nov 2002 12:44:23 +0000 (12:44 +0000)]
* infcmd.c (print_vector_info, print_float_info): Move code that
checks whether the target has any registers and whether there is a
selected frame up, such that it is also used if a target provides
multi-arch definitions of these functions.
* i386-linux-tdep.c: Include "reggroups.h".
(i386_linux_register_reggroup_p): New function.
(i386_linux_init_abi): Set register_reggroup_p to
i386_linux_register_reggroup_p.
* i386-tdep.h (i386_register_reggroup_p): Declare.
* i386-tdep.c: Include "reggroups.h".
(i386_init_reggroups): New function.
(i386_add_reggroups): New function.
(i386_register_reggroup_p): New function.
(i386_sse_reggroup, i386_mmx_reggroup): New variables.
(_initialize_i386_tdep): Call i386_init_reggroups.
(i386_gdbarch_init): Set register_reggroup_p and add in the i386
specific reggroups.
* frame.c (set_unwind_by_pc): Use dummy_frame_register_unwind.
* dummy-frame.c (find_dummy_frame): Rename
generic_find_dummy_frame, make static. Return the dummy frame
instead of the regcache.
(generic_find_dummy_frame): Re-implement using find_dummy_frame,
(cached_find_dummy_frame): New function. Use find_dummy_frame.
(dummy_frame_register_unwind): Rename
generic_call_dummy_register_unwind. Use cached_find_dummy_frame.
* dummy-frame.h (dummy_frame_register_unwind): Rename
generic_call_dummy_register_unwind.
Mark Kettenis [Fri, 8 Nov 2002 21:00:47 +0000 (21:00 +0000)]
* config/i386/tm-i386v42mp.h: Remove file. Move its contents,
except the inclusion of "i386/tm-i386.h", to...
* config/i386/nm-i386v42mp.h: ...here.
* config/i386/i386v42mp.mt (TM_FILE): Set to tm-i386.h.
Jeff Johnston [Fri, 8 Nov 2002 20:39:06 +0000 (20:39 +0000)]
2002-11-08 Jeff Johnston <jjohnstn@redhat.com>
* mi-main.c (mi_command_loop): Initialize raw_stdout and gdb_stdout
only if mi version is <= 1.
(mi_init_ui): Initialize raw_stdout and gdb_stdout if mi version
is > 1 so startup message is treated as console output. This is
part of fix for PR gdb/604.
Jeff Johnston [Fri, 8 Nov 2002 20:37:50 +0000 (20:37 +0000)]
2002-11-08 Jeff Johnston <jjohnstn@redhat.com>
* lib/mi-support.exp (mi_gdb_start): Verify the startup message
for mi1 and current mi is in correct format. New mi startup message
should be in mi console format. This is part of fix for PR gdb/604.
Jim Blandy [Fri, 8 Nov 2002 20:05:10 +0000 (20:05 +0000)]
* dwarf2read.c (read_func_scope): Restore list_in_scope properly
when we finish a function a context.
* buildsym.h (outermost_context_p): New macro.
(Bug analyzed by David Edelsohn.)
Jim Blandy [Fri, 8 Nov 2002 19:33:37 +0000 (19:33 +0000)]
* dwarf2read.c (read_func_scope): Restore local_symbols and
param_symbols after we finish the function context. (Based on a
patch from David Edelsohn.)
Joel Brobecker [Fri, 8 Nov 2002 03:35:47 +0000 (03:35 +0000)]
Preparation work to convert the hppa targets to multiarch partial.
* hppa-tdep.c: Add new functions replacing macro bodies from
config/pa/tm-hppa.h. These function will be used to initialize
the gdbarch structure. Import some comments from tm-hppa.h,
and place them where appropriate, to avoid loosing them when
we cleanup this file.
(hppa_reg_struct_has_addr): New function.
(hppa_inner_than): New function.
(hppa_stack_align): New function.
(hppa_pc_requires_run_before_use): New function.
(hppa_instruction_nullified): New function.
(hppa_register_byte): New function.
(hppa_register_virtual_type): New function.
(hppa_store_struct_return): New function.
(hppa_cannot_store_register): New function.
(hppa_frame_args_address): New function.
(hppa_frame_locals_address): New function.
(hppa_smash_text_address): New function.
(hppa_coerce_float_to_double): New function. Requires the inclusion
of "language.h".
* Makefile.in (hppa-tdep.o): Add dependency on language.h.
* tm-hppa.h (REG_STRUCT_HAS_ADDR): Change the definition of this
gdbarch-eligible macro to a call to the new associated function
created in hppa-tdep.c.
(INNER_THAN): Likewise.
(STACK_ALIGN): Likewise.
(PC_REQUIRES_RUN_BEFORE_USE): Likewise.
(INSTRUCTION_NULLIFIED): Likewise.
(REGISTER_BYTE): Likewise.
(REGISTER_VIRTUAL_TYPE): Likewise.
(STORE_STRUCT_RETURN): Likewise.
(CANNOT_STORE_REGISTER): Likewise.
(FRAME_ARGS_ADDRESS): Likewise.
(FRAME_LOCALS_ADDRESS): Likewise.
(SMASH_TEXT_ADDRESS): Likewise.
(COERCE_FLOAT_TO_DOUBLE): Likewise.
(ABOUT_TO_RETURN): Delete, as no longer used.
Jim Blandy [Thu, 7 Nov 2002 20:43:22 +0000 (20:43 +0000)]
* macroscope.c: #include "complaints.h".
(sal_macro_scope): Cope with filenames that appear in the symtabs,
but not in the macro table.
* Makefile.in (macroscope.o): Record dependency.
* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOT,
case R_CRIS_32_GOT>: Correct test for filling in constant .got
contents, enabling for a non-DSO, for symbols defined in the
program with --export-dynamic.
Joel Brobecker [Thu, 7 Nov 2002 07:47:22 +0000 (07:47 +0000)]
Put in place the framework necessary for multiarching the hppa targets.
* hppa-tdep.c (hppa_gdbarch_init): New function.
(hppa_dump_tdep): New function.
(_initialize_hppa_tdep): Register the hppa gdbarch init function and
tdep structure dumper.
* config/pa/tm-hppa.h (GDB_MULTI_ARCH): New macro, defined to 0
until the multi-arching conversion has partially been completed.
* valops.c (value_assign): Merge lval_register case into
lval_reg_frame_relative. Use frame_register and
regcache_cooked_write instead of get_saved_register and
write_register_bytes. After flushing the register cache, try to
re-select the selected frame.
* infcmd.c: Include "reggroups.h" and <ctype.h>.
(print_float_info): Print registers in float_reggroup.
(print_vector_info): Print registers in vector_reggroup.
(default_print_registers_info): When all, print registers in
all_reggroup. Otherwize, print registers in general_reggroup.
(registers_info): Rewrite. Add support for register groups.
Eliminate a goto.
Jeff Johnston [Thu, 7 Nov 2002 01:43:59 +0000 (01:43 +0000)]
2002-11-06 Jeff Johnston <jjohnstn@redhat.com>
* mi-cmd-var.c (mi_cmd_var_create): Change the function used to
parse the frame addr from parse_and_eval_address() to
string_to_core_addr(). This is a fix for PR gdb/494.
Elena Zannoni [Wed, 6 Nov 2002 23:27:58 +0000 (23:27 +0000)]
2002-11-06 Elena Zannoni <ezannoni@redhat.com>
* symtab.c (methods_info): Delete. It has been ifdeffed out for
ages.
(symtab_symbol_info): Remove eons old ifdeffed out code.
(_initialize_symtab): Remove prehistoric disabled 'info methods'
command.
Alexandre Oliva [Wed, 6 Nov 2002 21:56:05 +0000 (21:56 +0000)]
* elf64-mips.c (mips_elf64_slurp_one_reloc_table): Generate
exactly three internal relocs per external reloc. Set reloc_count
to the external reloc count.
Chris Demetriou [Wed, 6 Nov 2002 18:41:09 +0000 (18:41 +0000)]
2002-11-06 Richard Sandiford <rsandifo@redhat.com>
* gen-engine.c (print_engine_issue_prefix_hook): Don't add the
global prefix to ENGINE_ISSUE_PREFIX_HOOK.
(print_engine_issue_postfix_hook): Likewise ENGINE_ISSUE_POSTFIX_HOOK.
Jeff Johnston [Tue, 5 Nov 2002 22:31:00 +0000 (22:31 +0000)]
2002-11-05 Jeff Johnston <jjohnstn@redhat.com>
* varobj.c (child_exists, cplus_number_of_children): Change
STREQ macro references to strcmp.
(cplus_name_of_child): Change code to handle the fact that
fields are not necessarily contiguous with regards to their
access control. This is a fix for PR gdb/792.
David Carlton [Tue, 5 Nov 2002 20:33:01 +0000 (20:33 +0000)]
2002-11-05 David Carlton <carlton@math.stanford.edu>
* symtab.c (lookup_symbol_aux): Move chunks of code into separate
functions.
(lookup_symbol_aux_local): New function.
(lookup_symbol_aux_symtabs): New function.
(lookup_symbol_aux_psymtabs): New function.