Commit Graph

56356 Commits

Author SHA1 Message Date
Ian Lance Taylor
78d911fd3e From Cary Coutant: Some x86_64 shared library fixes. 2007-12-07 00:59:31 +00:00
Ian Lance Taylor
ac1f0c21ae From Cary Coutant: Remove commented out assert. Also add comment for
bitfield check.
2007-12-07 00:54:28 +00:00
Daniel Jacobowitz
ca005067ce * infrun.c (init_wait_for_inferior): Reset target_last_wait_ptid.
(handle_inferior_event): Clear stop_stack_dummy earlier.
2007-12-07 00:44:27 +00:00
gdbadmin
af6b03680a *** empty log message *** 2007-12-07 00:00:03 +00:00
Jim Blandy
cb446409e6 * addrmap.c (addrmap_splay_tree_remove): New function.
(addrmap_mutable_set_empty): Use it.
2007-12-06 23:37:35 +00:00
Alan Modra
f4f7091ffe daily update 2007-12-06 23:00:06 +00:00
Richard Sandiford
1c9e0298c7 config/
* mt-sde (CFLAGS_FOR_TARGET, CXXFLAGS_FOR_TARGET): Use +=, not =.
	* mt-mips-elfoabi: Likewise.
2007-12-06 17:44:07 +00:00
Jim Blandy
2fff4d11ee * addrmap.c, addrmap.h: Update to GPLv3.
* addrmap.c (struct addrmap): Make the referenced function table
const.
(addrmap_fixed_funcs, addrmap_mutable_funcs): Declare const.
Don't use designated initializers.

* addrmap.c (addrmap_fixed_create_fixed, addrmap_mutable_find)
(addrmap_mutable_relocate): Use internal_error, not abort.
2007-12-06 17:26:03 +00:00
Ian Lance Taylor
351a80002a From Craig Silverstein: Reorganize testsuite Makefile.am. 2007-12-06 17:07:24 +00:00
Jim Blandy
10665d7613 * NEWS: Mention support for non-contiguous lexical blocks and
function bodies.
2007-12-06 17:07:15 +00:00
Markus Deuling
d3f73121db * gdbarch.sh (stab_reg_to_regnum, dwarf_reg_to_regnum)
( dwarf2_reg_to_regnum, sdb_reg_to_regnum, ecoff_reg_to_regnum): Add
	gdbarch as parameter.
	* gdbarch.{c,h}: Regenerate.

	* xtensa-tdep.c (xtensa_reg_to_regnum): Add gdbarch as parameter.
	Replace current_gdbarch by gdbarch.
	* s390-tdep.c (s390_dwarf_reg_to_regnum): Likewise.
	* rs6000-tdep.c (rs6000_stab_reg_to_regnum)
	(rs6000_dwarf2_reg_to_regnum): Likewise.
	* mips-tdep.c (mips_stab_reg_to_regnum)
	(mips_dwarf_dwarf2_ecoff_reg_to_regnum): Likewise.
	* mep-tdep.c (mep_debug_reg_to_regnum): Likewise.
	* m32c-tdep.c (m32c_debug_info_reg_to_regnum): Likewise.
	* i386-tdep.c (i386_dbx_reg_to_regnum)
	(i386_svr4_reg_to_regnum): Likewise
	* h8300-tdep.c (h8300s_dbg_reg_to_regnum)
	(h8300_dbg_reg_to_regnum): Likewise.
	* amd64-tdep.c (amd64_dwarf_reg_to_regnum): Likewise.
	* arch-utils.c (no_op_reg_to_regnum): Likewise.
	* arch-utils.h (no_op_reg_to_regnum): Likewise.
	* arm-tdep.c (arm_dwarf_reg_to_regnum): Likewise.
	* cris-tdep.c (cris_dwarf2_reg_to_regnum): Likewise.
	* hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Likewise.
	* ia64-tdep.c (ia64_dwarf_reg_to_regnum): Likewise.
	* m68k-tdep.c (m68k_dwarf_reg_to_regnum): Likewise.
2007-12-06 16:33:00 +00:00
Daniel Jacobowitz
b79d787e44 2007-12-06 Mick Davis <mickd@goanna.iinet.net.au>
* remote-utils.c (readchar): Allow binary data in received messages.
2007-12-06 14:21:26 +00:00
Vladimir Prus
45e8c884b5 Localize infrun use of remove_breakpoints.
* infrun.c (handle_inferior_event): Remove
	calls to remove_breakpoints, except where needed to
	communicate change of breakpoint locations to inferior.
	(keep_going): If steppping over breakpoint, remove
	breakpoints.
2007-12-06 13:47:56 +00:00
Vladimir Prus
ca67fcb81a Clarify infrun variable naming.
* infrun.c (trap_expected): Rename
	to stepping_over_breakpoint.  Document.
	(stepping_past_breakpoint): Remove.
	(stepping_past_breakpoint_ptdi): Renamed
	to deferred_step_ptid.
	(struct execution_control_state): Rename
	the another_trap field to stepping_over_breakpoint.
	(struct inferior_status): Rename the trap_expected
	field to stepping_over_breakpoint.
	(clear_proceed_status, proceed)
	(init_execution_control_state, context_switch)
	(handle_inferior_event, currently_stepping)
	(keep_going, save_inferior_status)
	(restore_inferior_status, prepare_to_proceed): Adjust.
	* gdbthread.h (struct thread_info): Rename the
	trap_expected field to stepping_over_breakpoint.
	* thread.c (load_infrun_state, save_infrun_state):
	Adjust.
2007-12-06 12:57:51 +00:00
Pierre Muller
2c6474365f 2007-12-06 Pierre Muller <muller@ics.u-strasbg.fr>
* win32-nat.c: Allow compilation if CORE_ADDR is 8 byte long.
	Add "gdb_stdint.h" dependency required for uintptr_t type use.
	(handle_output_debug_string): Use uintptr_t typecast.
	(handle_exception): Ditto.
	(win32_xfer_memory): Ditto.
	* Makefile.in (win32-nat.o): Add dependency to gdb_stdint header.
2007-12-06 11:17:03 +00:00
Ian Lance Taylor
f2619d6c3b Initialize variable to avoid warning. 2007-12-06 06:03:00 +00:00
Ian Lance Taylor
7bf1f8020f From Cary Coutant: More support for generating shared libraries. 2007-12-06 05:55:50 +00:00
Ian Lance Taylor
fd6940ea27 Fix comment. 2007-12-06 05:27:24 +00:00
Ian Lance Taylor
116724f39d Don't write out the symbol table when stripping. 2007-12-06 05:00:00 +00:00
gdbadmin
62c4f6b3c9 *** empty log message *** 2007-12-06 00:00:04 +00:00
Alan Modra
6433719fe7 daily update 2007-12-05 23:00:06 +00:00
Ian Lance Taylor
987cc25110 Rework Stringpool to not compute the hash code twice when adding a new
string.
2007-12-05 22:56:51 +00:00
Alan Modra
d688b66ee1 * elf32-spu.c (spu_elf_size_stubs): Do consider branches to
non-function symbols for overlay stubs.
2007-12-05 03:29:20 +00:00
Ben Elliston
ad25e7d5fc * config.sub, config.guess: Update from upstream sources. 2007-12-05 03:27:21 +00:00
Ian Lance Taylor
42a1b6860d From Craig Silverstein: Support -o -. 2007-12-05 01:13:28 +00:00
Ian Lance Taylor
43771f7638 From Craig Silverstein: Test some flags. 2007-12-05 01:10:16 +00:00
Ian Lance Taylor
ad8f37d1ba Stringpool stats. Also make Symbol_table support functions inline. 2007-12-05 00:48:49 +00:00
gdbadmin
055f1d8ffc *** empty log message *** 2007-12-05 00:00:03 +00:00
Jim Blandy
801e3a5b56 Support lexical blocks and function bodies that occupy
non-contiguous address ranges.
* addrmap.c, addrmap.h: New files.
* block.h (struct addrmap): New forward declaration.
(struct blockvector): New member, 'map'.
(BLOCKVECTOR_MAP): New accessor macro.
* block.c: #include "addrmap.h"
(blockvector_for_pc_sect): If the blockvector we've found has
an address map, use it instead of searching the blocks.
* buildsym.c: #include "addrmap.h"
(pending_addrmap_obstack, pending_addrmap_interesting): New static
variables.
(really_free_pendings): If we have a pending addrmap, free it too.
(record_block_range): New function.
(make_blockvector): If we have an interesting pending addrmap,
record it in the new blockvector.
(start_symtab, buildsym_init): Assert that there is no pending
addrmap now; we should have cleaned up any addrmaps we'd built
previously.
(end_symtab): If there is a pending addrmap left over that didn't
get included in the blockvector, free it.
* buildsym.h (struct addrmap): New forward declaration.
(record_block_range): New prototype.
* objfiles.c: #include "addrmap.h".
(objfile_relocate): Relocate the blockvector's address map, if
present.
* dwarf2read.c (dwarf2_record_block_ranges): New function.
(read_func_scope, read_lexical_block_scope): Call it.
* Makefile.in (SFILES): Add addrmap.c.
(addrmap_h): New header dependency variable.
(COMMON_OBS): Add addrmap.o.
(addrmap.o): New rule.l
(block.o, objfiles.o, buildsym.o): Depend on $(addrmap_h).

* block.c (blockvector_for_pc, blockvector_for_pc_sect): Return a
pointer to the block, not its index in the blockvector.
(block_for_pc_sect): Use the returned block, instead of looking it
up ourselves.
* block.h (blockvector_for_pc, blockvector_for_pc_sect): Update
declarations.
* breakpoint.c (resolve_sal_pc): Use returned block, instead of
looking it up ourselves.
* stack.c (print_frame_label_vars): Disable function, which
depends on the block's index.

* buildsym.c (finish_block): Return the block we've built.
* buildsym.h (finish_block): Update prototype.

* defs.h (CORE_ADDR_MAX): New constant.
2007-12-04 23:43:57 +00:00
Ian Lance Taylor
c420411fe8 From Craig Silverstein: Support irregular output files. 2007-12-04 23:42:28 +00:00
Ulrich Weigand
6ccb916229 * coffread.c (decode_type): Use builtin_type_int32 instead
of FT_INTEGER fundamental type for array range index type.
	(decode_base_type): Use builtin types of current_gdbarch
	instead of fundamental types.

	* dwarf2read.c (struct dwarf2_cu): Remove ftypes member.
	(read_file_scope): Do not initialize ftypes member.
	(dwarf_base_type, dwarf2_fundamental_types): Remove functions.
	(read_array_type): Use builtin_type_int32 instead of FT_INTEGER
	fundamental type for array range index type.
	(read_tag_string_type): Likewise for string range index type.
	Also, do not overwrite FT_CHAR type with new string type.
	(read_base_type): If DW_AT_name is missing, create unnamed type
	with given properties instead of looking for a fundamental type.
	Create new types as TYPE_TARGET_TYPE for DW_ATE_address and
	DW_ATE_complex_float types.
	(read_subrange_type): Create new type to represent missing
	DW_AT_type instead of looking for a fundamental type.
	(die_type): Use builtin type to represent "void" instead of
	looking for a fundamental type.

	* stabsread.c (define_symbol): Use builtin types to represent
	'r' and 'i' floating-point and integer constants.

	* gdbtypes.c (lookup_fundamental_type): Remove.
	* gdbtypes.h (lookup_fundamental_type): Remove prototype.
	(FT_VOID, FT_BOOLEAN, FT_CHAR, FT_SIGNED_CHAR, FT_UNSIGNED_CHAR,
	FT_SHORT, FT_SIGNED_SHORT, FT_UNSIGNED_SHORT, FT_INTEGER,
	FT_SIGNED_INTEGER, FT_UNSIGNED_INTEGER, FT_LONG, FT_SIGNED_LONG,
	FT_UNSIGNED_LONG, FT_LONG_LONG, FT_SIGNED_LONG_LONG,
	FT_UNSIGNED_LONG_LONG, FT_FLOAT, FT_DBL_PREC_FLOAT, FT_EXT_PREC_FLOAT,
	FT_COMPLEX, FT_DBL_PREC_COMPLEX, FT_EXT_PREC_COMPLEX, FT_STRING,
	FT_FIXED_DECIMAL, FT_FLOAT_DECIMAL, FT_BYTE, FT_UNSIGNED_BYTE,
	FT_TEMPLATE_ARG, FT_DECFLOAT, FT_DBL_PREC_DECFLOAT,
	FT_EXT_PREC_DECFLOAT, FT_NUM_MEMBERS): Remove macros.
	* objfiles.c (struct objfile): Remove fundamental_types member.
	* symfile.c (reread_symbols): Do not clear fundamental_types.

	* language.h (struct language_defn): Remove la_fund_type member.
	(create_fundamental_type): Remove.
	* language.c (unk_lang_create_fundamental_type): Remove.
	(unknown_language_defn, auto_language_defn,
	local_language_defn): Adapt initializer.
	* ada-lang.c (ada_create_fundamental_type): Remove.
	(ada_language_defn): Adapt initializer.
	* c-lang.h (c_create_fundamental_type): Remove prototype.
	* c-lang.c (c_create_fundamental_type): Remove.
	(c_language_defn, cplus_language_defn, asm_language_defn,
	minimal_language_defn): Adapt initializer.
	* f-lang.c (f_create_fundamental_type): Remove.
	(f_language_defn): Adapt initializer.
	* jv-lang.c (java_create_fundamental_type): Remove.
	(java_language_defn): Adapt initializer.
	* m2-lang.c (m2_create_fundamental_type): Remove.
	(m2_language_defn): Adapt initializer.
	* objc-lang.c (objc_create_fundamental_type): Remove.
	(objc_language_defn): Adapt initializer.
	* p-lang.h (pascal_create_fundamental_type): Remove prototype.
	* p-lang.c (pascal_create_fundamental_type): Remove.
	(pascal_language_defn): Adapt initializer.
	* scm-lang.c (scm_language_defn): Adapt initializer.
2007-12-04 23:33:00 +00:00
Ian Lance Taylor
abaa399568 Print symbol table statistics with --stats. 2007-12-04 23:11:35 +00:00
Alan Modra
fd4980a3b8 daily update 2007-12-04 23:00:05 +00:00
Ben Elliston
5584c8417c 2007-11-26 Thiago Jung Bauermann <bauerman@br.ibm.com>
* Makefile.in (decimal32.o): Prepend $(srcdir) to dependencies
	and substitute $< for the source file in compilation command.
	(decimal64.o): Likewise.
	(decimal128.o): Likewise.
	(bid2dpd_dpd2bid.o): Likewise.
	(host-ieee32.o): Likewise.
	(host-ieee64.o): Likewise.
	(host-ieee128.o): Likewise.
2007-12-04 22:54:32 +00:00
Bob Wilson
c243ad3b81 * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Create DT_PLTGOT
entry for all dynamic objects.
2007-12-04 22:41:59 +00:00
Maciej W. Rozycki
3966e1906c * features/mips-cpu.xml: Specify "regnum" for "r0" explicitly.
* features/mips64-cpu.xml: Likewise.
* features/mips-fpu.xml: Specify "regnum" for "f0" explicitly.
* features/mips64-fpu.xml: Likewise.
* features/mips-linux.c: Regenerate.
* features/mips64-linux.c: Regenerate.
2007-12-04 15:41:46 +00:00
Maciej W. Rozycki
4becf47ce7 * target.h (target_find_new_threads): Fix definition. 2007-12-04 14:15:01 +00:00
Alan Modra
b8e2249147 * elf32-spu.c (spu_elf_size_stubs): Correct section alignment. 2007-12-04 03:29:43 +00:00
Ian Lance Taylor
3ae7da37eb From Craig Silverstein: Use gold_fatal in options.h, beef up value checks. 2007-12-04 01:30:46 +00:00
gdbadmin
05d2fc7dc1 *** empty log message *** 2007-12-04 00:00:03 +00:00
Alan Modra
a7dd7d0572 * readelf.c (is_32bit_abs_reloc, is_32bit_pcrel_reloc): Add SPU. 2007-12-03 23:19:25 +00:00
Alan Modra
d13d401589 * config/tc-ppc.c (ppc_tc): Allow a space between toc symbol
name and bracket.
2007-12-03 23:14:24 +00:00
Alan Modra
dade8b53ef daily update 2007-12-03 23:00:05 +00:00
Pedro Alves
d97903b290 * win32-low.c (attaching): New global.
(win32_create_inferior): Clear the `attaching' global.
	(win32_attach): Set the `attaching' global.
	(get_child_debug_event) [_WIN32_WCE]: Stop the inferior when
	attaching.  Only set a breakpoint at the entry point if not
	attaching.
2007-12-03 01:42:06 +00:00
Pedro Alves
311de42358 * server.c (main): Don't report dll events on the initial
connection on attaches.
2007-12-03 01:38:09 +00:00
Pedro Alves
6c2d16d2d3 * server.c (main): Relax numerical bases supported for the pid of
the --attach command line argument.
2007-12-03 01:34:09 +00:00
Pedro Alves
5ca906e670 * win32-low.c (win32_attach): Call OpenProcess before
DebugActiveProcess, not after.  Add last error output to error
	call.
2007-12-03 01:30:59 +00:00
Pedro Alves
9c6c819469 * win32-low.c (win32_get_thread_context)
(win32_set_thread_context): New functions.
	(thread_rec): Use win32_get_thread_context.
	(continue_one_thread, win32_resume): Use win32_set_thread_context.
	* win32-low.h (win32_thread_info) [_WIN32_WCE]: Add `base_context'
	field.
2007-12-03 01:27:19 +00:00
Pedro Alves
4d5d1aaa19 * win32-low.c (soft_interrupt_requested, faked_breakpoint): New
global variables.
	(child_add_thread): Minor cleanup.
	(child_continue): Resume artificially suspended threads before
	calling ContinueDebugEvent.
	(suspend_one_thread): New.
	(fake_breakpoint_event): New.
	(get_child_debug_event): Change return type to int.  Check here if
	gdb sent an interrupt request.  If a soft interrupt was requested,
	fake a breakpoint event.  Return 0 if there is no event to handle,
	and 1 otherwise.
	(win32_wait): Don't check here if gdb sent an interrupt request.
	Ensure there is a valid event to handle.
	(win32_request_interrupt): Add soft interruption method as last
	resort.
2007-12-03 01:18:49 +00:00
Pedro Alves
c436e841ff * win32-low.h (win32_thread_info): Add descriptions to the
structure members.  Replace `suspend_count' counter by a
	`suspended' flag.
	* win32-low.c (thread_rec): Update condition of when to get the
	context from the inferior.  Rely on ContextFlags being set if it
	has already been retrieved.  Only suspend the inferior thread if
	we haven't already.  Warn if that fails.
	(continue_one_thread): s/suspend_count/suspended/.  Only call
	ResumeThread once.  Warn if that fails.
2007-12-03 01:10:30 +00:00