Commit graph

6344 commits

Author SHA1 Message Date
Jim Blandy
a1677dfb5e * s390-tdep.c (is_simple_arg): Structs and unions exactly eight
bytes long should be handled as DOUBLE_ARGs; don't recognize them
as SIMPLE_ARGs.
2001-11-16 02:48:30 +00:00
Andrew Cagney
ad10f812bf * remote.c (struct packet_reg): Declare.
(struct remote_state): Add fields sizeof_g_packet and g_packet.
(init_remote_state): Initialize sizeof_g_packet and g_packet.
(free_remote_state): Free g_packet.
(packet_reg_from_pnum, packet_reg_by_regnum): New functions.
(remote_wait): Use above instead of gdbarch methods
REGISTER_RAW_SIZE and REGISTER_BYTES.
(remote_async_wait): Ditto.
(remote_fetch_registers, remote_store_registers): Ditto.
(store_register_using_P): Ditto.
2001-11-15 20:58:38 +00:00
Andrew Cagney
9525aa9055 Really zap tty_input from multi-arch swap. 2001-11-15 20:30:41 +00:00
Andrew Cagney
45a1e86678 Correctly handle phex(*,0) and phex_nz(*,0). 2001-11-15 18:35:05 +00:00
Andrew Cagney
faf833caca * utils.c (phex_nz): For default case, set str to phex_nz return
value.
2001-11-15 18:24:17 +00:00
Andrew Cagney
193cb69f7b * TODO (register_buffer): Delete.
* regcache.c (register_buffer): Make static.
(regcache_collect): New function.
* regcache.h (register_buffer): Delete declaration.
(regcache_collect): Declare.
* remote.c (store_register_using_P): Rewrite using
regcache_collect.
(remote_store_registers): Ditto.
* go32-nat.c (store_register): Ditto.
2001-11-15 06:43:10 +00:00
Andrew Cagney
d01949b65b Move global state variables to ``struct remote_state''. 2001-11-15 05:00:46 +00:00
Andrew Cagney
1ff9c3d6f7 * remote.c: Include "gdb_assert.h".
(tty_input): Wire buffer to 400 bytes.
(readsocket): Check tty_input doesn't overflow.
(build_remote_gdbarch_data, _initialize_remote): Don't multi-arch
tty_input.
2001-11-15 02:56:29 +00:00
Michael Snyder
86884b3733 2001-11-14 Michael Snyder <msnyder@redhat.com>
* d10v-tdep.c (d10v_pointer_to_address): Use new type flag
	TYPE_FLAG_CODE_SPACE to recognize a pointer that has been cast
	into the instruction address space.
	* Makefile.in (doublest.o): Add dependency on gdbtypes.h.
2001-11-15 02:18:46 +00:00
Michael Snyder
47663de598 2001-11-14 Michael Snyder <msnyder@redhat.com>
Add address space identifiers to expression language for types.
	* c-exp.y (space_identifier, cv_with_space_id,
	const_or_volatile_or_space_identifier_noopt,
	const_or_volatile_or_space_identifier): New terminals.
	(ptype): Accept const_or_volatile_or_space_identifier.
	(typebase): Accept const_or_volatile_or_space_identifier.
	* c-typeprint.c (c_type_print_cv_qualifier): Rename to
	c_type_print_modifier.  Handle address space modified types.
	* gdbtypes.h (TYPE_FLAG_CODE_SPACE, TYPE_FLAG_DATA_SPACE):
	New type flags.
	(struct type): Add new field as_type for addr-space qualified types.
	(TYPE_AS_TYPE): New macro, retrieves the chain of types that are
	identical to this one except for address-space qualification.
	* gdbtypes.c (alloc_type): Initialize new field 'as_type'.
	(address_space_name_to_int): New function.
	(address_space_int_to_name): New function.
	(make_type_with_address_space): New function.
	(make_cv_type): Handle as_type field of new struct type object.
	* parse.c (check_type_stack_depth): New function.
	(push_type_address_space): New function.
	(follow_types): Handle types with address-space qualifier.
	* parser-defs.h (enum type_pieces): Add enum tp_space_identifier.
2001-11-15 01:55:59 +00:00
Jim Blandy
9a1befc916 * s390-tdep.c (s390_pop_frame_regular): On the S/390, the frame
pointer and the SP are often the same, so we can't pop the frame
by setting the SP to the FP; we need to get the old SP from
saved_regs.
2001-11-14 22:34:38 +00:00
Jim Blandy
f2c6cfba86 * s390-tdep.c (s390_extract_return_value): Returned `float' values
can simply be copied bitwise from the registers into the value
object's buffer.
2001-11-14 22:29:39 +00:00
Jim Blandy
0902523724 * s390-tdep.c (s390_get_frame_info): Initialize SP's element of
the frame's saved_regs array correctly.
2001-11-14 22:14:11 +00:00
Jim Blandy
0d43edd16b * symfile.c (simple_read_overlay_table): Make sure we can find
both `_novlys' and `_ovly_table' before we try anything else;
print a helpful error message.
(simple_overlay_update): No need to print error message here.
2001-11-14 21:55:21 +00:00
Michael Snyder
befc81ac1d 2001-11-14 Michael Snyder <msnyder@redhat.com>
* Makefile.in (doublest.o): Add dependency on gdbtypes.h.
2001-11-14 18:38:01 +00:00
Andrew Cagney
032758dc55 * arm-tdep.c (arm_register_type): New function.
(arm_register_convertible): Delete.
(arm_register_convert_to_virtual): Delete.
(arm_register_convert_to_raw): Delete.
* config/arm/tm-arm.h (REGISTER_CONVERTIBLE): Delete.
(REGISTER_CONVERT_TO_VIRTUAL): Delete.
(REGISTER_CONVERT_TO_RAW): Delete.
(REGISTER_VIRTUAL_TYPE): Redefine as call to arm_register_type.
(arm_register_type): Declare.
2001-11-14 08:18:33 +00:00
Elena Zannoni
8b982acfc6 2001-11-13 Elena Zannoni <ezannoni@redhat.com>
From Andrew Cagney <cagney@redhat.com>:
	* gdbtypes.h (builtin_type_int128, builtin_type_uint128): Declare.
	* gdbtypes.c (_initialize_gdbtypes, build_gdbtypes): Initialize
	new builtin types.
2001-11-13 19:07:00 +00:00
Jim Blandy
78f8b4242f * s390-tdep.c: Rewrite inferior function call code. This may
break zSeries support; that should be fixed soon.
#include "gdb_assert.h".
(is_integer_like, is_pointer_like, is_simple_arg,
pass_by_copy_ref, extend_simple_arg, is_double_arg, round_up,
round_down, alignment_of): New functions.
(s390_push_arguments): Rewritten to handle passing large arguments
by value, and to make more readable.
2001-11-13 17:47:19 +00:00
Jim Blandy
4c8287ac0c * s390-tdep.c (s390_pop_frame): Call generic_pop_current_frame, to
interact correctly with generic dummy frames.
(s390_pop_frame_regular): Move the guts of the frame-popping code
to here, to be called by generic_pop_current_frame.  Use the
frame's saved_regs array; this works for `return' as well as
inferior function calls.
2001-11-13 17:38:49 +00:00
Jim Blandy
0adb2abaa6 * s390-tdep.c (s390_gdbarch_init): Register the function
`standard_coerce_float_to_double', since GCC for the S/390 follows
the standard rules for passing floats.
2001-11-13 17:26:46 +00:00
Jim Blandy
641225a400 * valops.c (default_coerce_float_to_double,
standard_coerce_float_to_double): Doc fixes.
2001-11-13 16:44:13 +00:00
Jim Blandy
648f4f7985 Patch from Peter Schauer:
* symtab.c (find_pc_sect_line): If we can't find the function
containing PC, we certainly won't have line number information for
that location, so return zero immediately.
2001-11-13 16:42:50 +00:00
Andrew Cagney
0cb2e7c50f Eliminate REGISTER_CONVERTIBLE(). 2001-11-13 03:10:35 +00:00
Andrew Cagney
2c10d744f3 Zap REGISTER_CONVERTIBLE from m88k. 2001-11-13 02:39:29 +00:00
Mark Kettenis
226271d3c0 * i386-tdep.h (FPU_REG_RAW_SIZE): Define unconditionally.
* 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.
2001-11-12 22:27:35 +00:00
Jim Blandy
c263635274 Patch from Andreas Schwab <schwab@suse.de>:
* eval.c (evaluate_subexp_standard): Fix memory leak: use alloca
instead of xmalloc.
2001-11-12 21:20:18 +00:00
Jim Blandy
c26e46834f * corefile.c (write_memory_unsigned_integer,
write_memory_signed_integer): New functions.
(write_memory): Move to be with other write_memory_* functions.
* gdbcore.h (write_memory_unsigned_integer,
write_memory_signed_integer): New declarations.
2001-11-12 21:08:04 +00:00
Geoffrey Keating
9aa1fe7eee * dwarf2read.c (dwarf_decode_lines): Properly deal with
unknown standard opcodes.
2001-11-12 20:36:55 +00:00
Andrew Cagney
5b582da3d4 * README (alpha-dec-osf5.1): Mention -DUSE_LDR_ROUTINES.
(sparcv9-sun-solars2.8): Mention problem with 64 bit GCC 3.0.x.
(i586-sco-sysv5uw7.1.1): Mention problem with threads.
2001-11-11 18:34:46 +00:00
Andrew Cagney
b18c45ede9 From Mark Kettenis <kettenis@gnu.org>:
* breakpoint.c (breakpoint_re_set_one): Don't discard SHLIB
breakpoints when they fail.
2001-11-11 16:39:59 +00:00
Andrew Cagney
3d6d86c64b s/value_ptr/struct value */ 2001-11-10 21:34:56 +00:00
Andrew Cagney
6943961c98 s/value_ptr/struct value */ 2001-11-10 20:44:38 +00:00
Andrew Cagney
610510309f s/value_ptr/struct value */ 2001-11-10 20:15:13 +00:00
Jim Blandy
d4d0c21e8f * s390-tdep.c: Don't use a call dummy.
(s390_fix_call_dummy, s390_pc_in_call_dummy): Delete.
(s390_push_return_address): Put the address of the inferior call
breakpoint in r14.
(s390_gdbarch_init):
- Provide trivial definition of s390_call_dummy_words; register it
  with the gdbarch appropriately.
- Delete S390x_call_dummy_words.
- Gather inferior-call-related settings into a group.
- Use generic dummy frames.
- Put the inferior call breakpoint at the entry point.
- Use generic gdbarch methods: pc_in_call_dummy_at_entry_point,
  generic_push_dummy_frame, generic_fix_call_dummy.
- There is a call dummy breakpoint offset; it's zero.
2001-11-09 19:14:00 +00:00
Jim Blandy
f7aaef7d5b Typo: s390-nat.c -> s390-tdep.c. 2001-11-09 19:01:13 +00:00
Jim Blandy
01c464e928 * s390-nat.c: (s390_push_arguments): Write a back chain pointer
into the dummy frame, to help us get backtraces.
2001-11-09 18:58:14 +00:00
Jim Blandy
f312f05740 * values.c (value_as_address): If VAL is a function or method,
just return its address; don't let COERCE_ARRAY convert its
address to a pointer, and then have unpack_long convert it back to
an address.
2001-11-09 16:41:50 +00:00
Pierre Muller
5598ce1171 2001-11-06 Pierre Muller <muller@ics.u-strasbg.fr>
* p-lang.c (is_pascal_string_type): New function to determine if a
	type is a string type.
	* p-lang.h: Add prototype for is_pascal_string_type.
	* p-valprint.c (pascal_val_print) : Use is_pascal_string_type function
	to display strings nicely.
2001-11-09 09:48:09 +00:00
Pierre Muller
94a716bf57 2001-11-06 Pierre Muller <muller@ics.u-strasbg.fr>
* p-exp.y (yylex): Only change case of expression if symbol is found.
	Also check for GPC standard name form.
2001-11-09 09:46:40 +00:00
Andrew Cagney
f6a9480ec1 A simple script to indent GDB source code. 2001-11-09 04:00:00 +00:00
Jim Blandy
64f9bb983b * s390-tdep.c (s390_get_frame_info): Initialize got_load_addr and
got_load_len, to placate compiler.
2001-11-08 23:28:36 +00:00
Mark Kettenis
cd3c07fc0b * i386-tdep.c (i386_gdbarch_init): Fix typo. 2001-11-08 20:26:42 +00:00
Jim Blandy
8001d1e4ef * s390-tdep.c (s390_gdbarch_init): Use func_frame_chain_valid, not
file_frame_chain_valid.
2001-11-08 19:16:10 +00:00
Jim Blandy
8ac0e65a44 * s390-tdep.c (s390_get_frame_info): If the prologue loads r12
from the constant pool, but doesn't add in the constant pool's
address to it, then this function probably isn't using r12 as a
GOT pointer, and that load probably wasn't part of the prologue.
2001-11-08 19:06:04 +00:00
Jim Blandy
4c801202fe * s390-tdep.c (s390_gdbarch_init): Use the default
prepare_to_proceed function established by config/nm-linux.h;
don't try to set it to linuxthreads_prepare_to_proceed.
2001-11-08 19:03:54 +00:00
Andrew Cagney
a62cc96ec5 Enable multi-arch for i386. 2001-11-08 18:32:08 +00:00
Andrew Cagney
8ea43c6d5a Don't update `set architecture'' when `set disassembly-flavor[sic]'' 2001-11-08 18:23:43 +00:00
Elena Zannoni
6a34fd2fd5 2001-11-07 Elena Zannoni <ezannoni@redhat.com>
* dbxread.c (set_namestring): New function, replacing the
	SET_NAMESTRING macro.
	(SET_NAMESTRING, CUR_SYMBOL_TYPE, CUR_SYMBOL_VALUE,
	CUR_SYMBOL_STRX, DBXREAD_ONLY, START_PSYMTAB, END_PSYMTAB): Delete
	definitions.
	(read_dbx_symtab): Don't include partial-stab.h any more. Don't
	reuse code in partial-stab.h, include the code directly, instead.

        * Makefile.in (dbxread.o): Remove dependency on partial-stab.h.
	(HFILES_NO_SRCDIR): Remove partial-stab.h.
2001-11-08 04:39:04 +00:00
Andrew Cagney
a72293e2a7 When non-multi-arch, use predefault as the value of a pure-multi-arch
method.
2001-11-08 01:33:04 +00:00
Mark Kettenis
8cf03c4c87 * config/i386/tm-linux.h (I386_LINUX_ORIG_EAX_REGNUM): Define in
terms of NUM_GREGS, NUM_FREGS and NUM_SSE_REGS instead of
hardcoding the register number.
2001-11-08 00:03:52 +00:00