Commit graph

58539 commits

Author SHA1 Message Date
Pedro Alves
a474d7c2a3 Per-thread commands.
* gdbthread.h: Remove unneeded forward declarations.
	Include "inferior.h".
	(struct thread_info): Add continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi and stop_signal members.
	(save_infrun_state): Add continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat parameters.
	(load_infrun_state): Add continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat parameters.

	* thread.c (load_infrun_state): In non-stop mode, load
	continuations, intermediate_continuations, proceed_to_finish,
	step_over_calls, stop_step, step_multi and stop_signal.
	(save_infrun_state): Store continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat.
	(save_infrun_state): Store continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat.
	(free_thread): Clear The thread's stop_bpstat.

	* inferior.h (context_switch_to): Declare.

	* infrun.c (ecss): New global.
	(context_switch): Context switch continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat.
	(wait_for_inferior): Use global ecss.
	(async_ecss, async_ecs): Delete.
	(fetch_inferior_event): Use global ecss.
	(context_switch_to): New.

	* top.c (execute_command): In non-stop, only check if the current
	thread is running, in all-stop, check if there's any thread
	running.

	* breakpoint.c (bpstat_remove_breakpoint): New.
	(bpstat_remove_breakpoint_callback): New.
	(delete_breakpoint): Clear the stop_bpstats of all threads.

	* mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
	current thread is running, in all-stop, check if there's any
	thread running.

	* Makefile.in (gdbthread_h): Depend on $(inferior_h).
2008-07-09 22:30:46 +00:00
Pedro Alves
ad52ddc6a4 Add non_stop global.
* inferior.h (non_stop): Declare.
	* infrun.c (non_stop, non_stop_1): New.
	(set_non_stop, show_non_stop): New.
	(_initialize_infrun): Add "set/show non-stop" command.
2008-07-09 22:27:13 +00:00
Pedro Alves
3a3e9ee36f Adjust fork/vfork/exec to pass ptids around.
* target.h (struct target_waitstatus): Store related_pid as a ptid.
	(inferior_has_forked, inferior_has_vforked, inferior_has_execd):
	Take a ptid_t.
	* breakpoint.h (struct breakpoint): Change forked_inferior_pid
	type to ptid.
	* breakpoint.c (print_it_typical, bpstat_check_location)
	(print_one_breakpoint_location, set_raw_breakpoint_without_location)
	(create_fork_vfork_event_catchpoint): Adjust.
	* infrun.c (fork_event): Change parent_pid and child_pid types to
	ptid.
	(follow_exec, inferior_has_forked, inferior_has_vforked)
	(inferior_has_execd): Take a ptid_t and don't trim it.
	* linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
	* linux-nat.c (linux_child_follow_fork): Adjust.
	* inf-ptrace.c (inf_ptrace_wait): Adjust.
	* inf-ttrace.c (inf_ttrace_wait): Adjust.
	* win32-nat.c (get_win32_debug_event): Don't set related_pid.
2008-07-09 22:23:05 +00:00
Pedro Alves
8ea051c51f Add "executing" property to threads.
* inferior.h (target_executing): Delete.
	* gdbthread.h (struct thread_info): Add executing_ field.
	(set_executing, is_executing): New.
	* thread.c (main_thread_executing): New.
	(init_thread_list): Clear it and also main_thread_running.
	(is_running): Return false if target has no execution.
	(any_running, is_executing, set_executing): New.

	* top.c: Include "gdbthread.h".
	(target_executing): Delete.
	(execute_command): Replace target_executing check by any_running.
	* event-top.c: Include "gdbthread.h".
	(display_gdb_prompt, command_handler): Replace target_executing by
	is_running.
	* inf-loop.c: Include "gdbthread.h".  Don't mark as not executing
	here.  Replace target_executing by is_running.
	* infrun.c (handle_inferior_event): Mark all threads as
	not-executing.
	* linux-nat.c (linux_nat_resume): Don't mark thread as executing
	here.
	* stack.c (get_selected_block): Return null if inferior is
	executing.
	* target.c (target_resume): Mark resumed ptid as executing.
	* breakpoint.c (until_break_command): Replace target_executing
	check by is_executing.
	* remote.c (remote_async_resume): Don't mark inferior as executing
	here.
	* mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
	by any_running.

	* mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
	(mi_execute_async_cli_command): Replace target_executing by
	is_running.

	* frame.c (get_current_frame): Error out if the current thread is
	executing.
	(has_stack_frames): New.
	(get_selected_frame, deprecated_safe_get_selected_frame): Check
	has_stack_frames.

	* Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
	$(gdbthread_h).
2008-07-09 22:16:15 +00:00
Pedro Alves
4487aabf2e gdb/
2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	* symfile.c (load_command): Reopen the exec file and reread
	symbols before anything else.

gdb/testsuite/
2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	* gdb.base/chng-syms.exp: Don't expect "No symbol ...".
2008-07-09 11:16:49 +00:00
Pedro Alves
9de2bdd7d4 * remote-sim.c: Include gdbthread.h.
(remote_sim_ptid): New global.
	(gdbsim_create_inferior): Silently add the main task to GDB's
	thread list.
	(gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
	task from GDB's thread list.
	(gdbsim_resume): Adjust to use remote_sim_ptid.
	(gdbsim_thread_alive, gdbsim_pid_to_str): New.
	(init_gdbsim_ops): Register gdbsim_thread_alive and
	gdbsim_pid_to_str.
	(_initialize_remote_sim): Initialize remote_sim_ptid.
	* Makefile.in (remote-sim.o): Depend on $(gdbthread_h).
2008-07-09 11:02:56 +00:00
Pedro Alves
5e0b29c16a * monitor (monitor_ptid): New global.
(monitor_open): Silently add the main task to GDB's thread list.
	(monitor_close, monitor_mourn_inferior): Silently delete the main
	task from GDB's thread list.
	(monitor_thread_alive, monitor_pid_to_str): New.
	(init_base_monitor_ops): Register monitor_thread_alive and
	monitor_pid_to_str.
	(_initialize_remote_monitors): Initialize monitor_ptid.

	* gdbthread.h (delete_thread_silent): Declare.
	* thread.c (delete_thread): Rename to ...
	(delete_thread_1): ... this.  Add "silent" parameter.  If silent,
	don't do exit notifications.
	(delete_thread, delete_thread_silent): New, as wrappers to
	delete_thread_1.
2008-07-09 10:58:41 +00:00
Pedro Alves
a4a9b1c4f2 * gdb.base/fullname.exp: Restore pwd if compiling failed. 2008-07-09 10:50:52 +00:00
Kai Tietz
0cd63f3d26 2008-07-09 Kai Tietz <kai.tietz@onevision.com>
* gas/i386/i386.exp (x86-64-pcrel): Disable for w64.
	(x86-64-sse5): Likewise.
	(x86-64-opcode-inval): Likewise.
	(x86-64-opcode-inval-intel): Likewise.
	(x86-64-w64-pcrel): New.
	* gas/i386/x86-64-w64-pcrel.d: New.
2008-07-09 10:28:12 +00:00
Danny Smith
b92216aa3b *pe-dll.c (autofilter_symbolprefixlist): Excude all symbols
starting with ".".
           Exclude "_IMPORT_DESCRIPTOR_".
           (autofilter_symbolsuffixlist): Exclude "_NULL_THUNK_DATA".
           (autofilter_symbollist_generic): Don't check for ".text".
           Exclude "_NULL_IMPORT_DESCRIPTOR".
           (autofilter_symbollist_i386): Likewise.
2008-07-09 03:18:15 +00:00
Alan Modra
679823d92c daily update 2008-07-09 00:00:05 +00:00
gdbadmin
028e0ffd37 *** empty log message *** 2008-07-09 00:00:04 +00:00
Pedro Alves
b60e7edffe * breakpoint.c (update_global_location_list): Add boolean
"should_insert" argument.  Only insert locations if caller told it
	too.
	(update_global_location_list_nothrow): Add boolean "should_insert"
	argument.  Pass it to update_global_location_list.
	(insert_breakpoints, create_longjmp_breakpoint)
	(create_overlay_event_breakpoint, enable_overlay_breakpoints)
	(create_thread_event_breakpoint, create_solib_event_breakpoint)
	(create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
	(enable_watchpoints_after_interactive_call_stop)
	(set_momentary_breakpoint, create_breakpoints)
	(break_command_really, watch_command_1)
	(create_ada_exception_breakpoint, update_breakpoint_locations)
	(do_enable_breakpoint, enable_command): Pass true to
	update_global_location_list.
	(bpstat_stop_status, disable_overlay_breakpoints)
	(disable_watchpoints_before_interactive_call_start)
	(delete_breakpoint, disable_breakpoint, disable_command): Pass
	false to update_global_location_list.
	(update_breakpoints_after_exec): Don't temporarily disable
	always-inserted mode.
2008-07-08 11:09:40 +00:00
Pedro Alves
25b22b0a6f * breakpoint.c (mark_breakpoints_out): Make public.
(update_breakpoints_after_exec): Don't call mark_breakpoints_out
	here.  Update comment.
	* breakpoint.h (mark_breakpoints_out): Declare.

	* linux-nat.c (linux_handle_extended_wait): On
	TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
	* inf-ttrace.c (inf_ttrace_wait): Likewise.
2008-07-08 10:59:57 +00:00
Pedro Alves
cce9b6bff9 * infrun.c (follow_exec): Reset shared libraries before adding the
main exec file.
2008-07-08 10:31:16 +00:00
Kai Tietz
72d4c02fe8 2008-07-08 Kai Tietz <kai.tietz@onevision.com>
* binutils-all/objcopy.exp (copy_setup): Check if host-triplet
	is target-triplet for execution tests.
	(copy_executable): Likewise.
	(strip_executable): Likewise.
	(strip_executable_with_saving_a_symbol): Likewise.
2008-07-08 08:15:09 +00:00
Nathan Sidwell
bfbba8e4ee * config/tc-m68k.c (m68k_set_cpu, m68k_set_arch): Don't complain
about overriding an earlier setting.
2008-07-08 06:33:41 +00:00
gdbadmin
63f22691bb *** empty log message *** 2008-07-08 00:00:33 +00:00
Alan Modra
219dc6c834 daily update 2008-07-08 00:00:05 +00:00
Pedro Alves
aeba519e76 * server.c (handle_v_attach): Inhibit reporting dll changes. 2008-07-07 23:00:11 +00:00
Jan Kratochvil
3c3185ac88 gdb/
* breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.

gdb/testsuite/
	* gdb.base/value-double-free.exp, gdb.base/value-double-free.c: New.
2008-07-07 22:39:59 +00:00
Pedro Alves
42f0bc8eaf * i386-dicos-tdep.c: Include "inferior.h".
(i386_dicos_frame_align): New.
	(i386_dicos_init_abi): Register i386_dicos_frame_align.  Set call
	dummy location ON_STACK.
	* Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).
2008-07-07 22:05:45 +00:00
Adam Nemet
a6d8f55bfd * gas/mips/mips32.s: Move out coprocessor2 insns from here ...
* gas/mips/mips32-cp2.s: ... to here.
	* gas/mips/mips32.d: Update.
	* gas/mips/mips32-cp2.d: New file.
	* gas/mips/mips32r2.s: Move out coprocessor2 insns from here ...
	* gas/mips/mips32r2-cp2.s: ... to here.
	* gas/mips/mips32r2.d: Update.
	* gas/mips/mips32r2-cp2.d: New file.
	* gas/mips/mips64.s: Move out coprocessor2 insns from here ...
	* gas/mips/mips64-cp2.s: ... to here.
	* gas/mips/mips64.d: Update.
	* gas/mips/mips64-cp2.d: New file.
	* gas/mips/mips.exp: Run mips32-cp2, mips32r2-cp2 and mips64-cp
	except for Octeon.
	* gas/mips/octeon.s: Add supported coprocessor insns.  Move pop
	down to keep alphabetical order.
	* gas/mips/octeon.d: Update.
	* gas/mips/octeon-ill.s: Add unsupported coprocessor insns.
	* gas/mips/octeon-ill.l: Update.
2008-07-07 19:28:02 +00:00
Adam Nemet
b19e8a9bae * config/tc-mips.c (NO_ISA_COP): New macro.
(COP_INSN): New macro.
	(is_opcode_valid): Use them.
	(macro) <ld_st>: Use them.  Don't accept coprocessor load store
	insns based on the ISA if CPU is NO_ISA_COP.
	<copz>: Likewise for coprocessor operations.
2008-07-07 19:16:23 +00:00
Carlos O'Donell
79947c5421 gas/
2008-07-07  Paul Brook  <paul@codesourcery.com>

	* config/tc-arm.c (arm_fix_adjustable): Don't adjust MOVW/MOVT
	relocations.

gas/testsuite/

2008-07-07  Paul Brook  <paul@codesourcery.com>

	* gas/arm/movw-local.d: New test.
	* gas/arm/movw-local.s: New test.
2008-07-07 19:12:58 +00:00
Adam Nemet
c27e721e3e * mips-opc.c (CP): New macro.
(mips_builtin_opcodes): Mark c0, c2 and c3 as CP.  Add Octeon to the
	membership of di, dmfc0, dmtc0, ei, mfc0 and mtc0.  Add dmfc2 and
	dmtc2 Octeon instructions.
2008-07-07 19:11:15 +00:00
Stan Shebs
7b60c20e4c * ld-arm/arm-elf.exp: Use objdump -d for arm-be8 test.
* ld-arm/arm-be8.d: Change to test disassembly.
2008-07-07 19:00:21 +00:00
Stan Shebs
6a4fe770bc 2008-07-07 Stan Shebs <stan@codesourcery.com>
* dis-asm.h (struct disassemble_info): Add endian_code field.
2008-07-07 18:40:13 +00:00
Stan Shebs
bd2e25575c 2008-07-07 Stan Shebs <stan@codesourcery.com>
* dis-init.c (init_disassemble_info): Init endian_code field.
	    * arm-dis.c (print_insn): Disassemble code according to
	    setting of endian_code.
	    (print_insn_big_arm): Detect when BE8 extension flag has been set.
2008-07-07 18:35:24 +00:00
Joel Brobecker
b7292df399 * gstdint.h: New file. 2008-07-07 17:11:56 +00:00
Joel Brobecker
0f963b2442 * safe-ctype.h: Add #include of ctype.h before redefining
the ctype.h macros.
2008-07-07 17:09:31 +00:00
Nick Clifton
9990da1d51 * configure.tgt: Add bfin-*-rtems*. 2008-07-07 16:43:06 +00:00
Nick Clifton
329dcd78c6 * elf32-arm.c (arm_type_of_stub): Don't crash on local symbols in
the presence of a PLT.
2008-07-07 16:02:32 +00:00
Andreas Schwab
5ae4183a2a (GDB/MI Target Manipulation): Fix last change. 2008-07-07 12:05:30 +00:00
Alan Modra
c29aae594a * bfd.c (bfd_demangle): Always trim off bfd_get_symbol_leading_char. 2008-07-07 11:48:27 +00:00
Alan Modra
2b4590fb46 * objdump.c (find_symbol_for_address): Prefer symbols in current
section.
2008-07-07 04:37:53 +00:00
Alan Modra
9795b468eb * emultempl/armelf.em (elf32_arm_add_stub_section): Use
bfd_make_section_with_flags.
	* emultempl/avrelf.em (avr_elf_create_output_section_statements):
	Likewise.
	* emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
	* emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
	* emultempl/m68kcoff.em (gld${EMULATION_NAME}_after_open): Likewise.
	* emultempl/m68kelf.em (m68k_elf_after_open): Likewise.
	* emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
	* emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_before_allocation):
	Likewise.
2008-07-07 00:46:51 +00:00
Alan Modra
0eb80fd3e5 * ieee.c (write_ieee_debugging_info): Use bfd_make_section_with_flags.
* nlmconv.c (main, powerpc_build_stubs): Likewise.
	* rescoff.c (write_coff_file): Likewise.
	* resres.c (write_res_file): Likewise.
	* windmc.c (windmc_write_bin): Likewise.
2008-07-07 00:44:41 +00:00
gdbadmin
0bcce8fccd *** empty log message *** 2008-07-07 00:00:33 +00:00
Alan Modra
67c9104572 daily update 2008-07-07 00:00:05 +00:00
Nathan Sidwell
4006703d71 * ld.texinfo (File Commands): Document that INCLUDE can be used in
several different places.
	* ldgram.y (statement, memory_spec, section): Allow INCLUDE.
	(memory, memory_spec_list): Simplify BNF
	(memory_spec_list_opt): New rule.
	* ldlex.l (INCLUDE): Recognize in EXPRESSION.
testsuite/
	* ld-scripts/include-1.d: New.
	* ld-scripts/include-1.t: New.
	* ld-scripts/include-data.t: New.
	* ld-scripts/include-mem.t: New.
	* ld-scripts/include-ram.t: New.
	* ld-scripts/include-sections.t: New.
	* ld-scripts/include-subdata.t: New.
	* ld-scripts/include.exp: New.
	* ld-scripts/include.s: New.
2008-07-06 13:38:37 +00:00
Vladimir Prus
b56e7235bb * gdb.texinfo (GDB/MI Target Manipulation): Add
example of -target-attach.
2008-07-06 13:21:19 +00:00
Alan Modra
d67fad7bcc daily update 2008-07-06 00:00:05 +00:00
gdbadmin
58b9dcea98 *** empty log message *** 2008-07-06 00:00:03 +00:00
Vladimir Prus
bb599c81ca * mi/mi-interp.c (mi_on_resume): Don't try to report
resumed thread it the thread list is empty.
2008-07-05 17:57:24 +00:00
Daniel Jacobowitz
ed5e946612 Add missed changelog entry. 2008-07-05 13:48:21 +00:00
gdbadmin
1fb7311a79 *** empty log message *** 2008-07-05 00:00:36 +00:00
Alan Modra
ab8c0151ac daily update 2008-07-05 00:00:06 +00:00
Pierre Muller
7f6a63144c * cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
completer for set to filename_completer.
	NEWS: Mention it.
2008-07-04 22:30:19 +00:00
Joel Brobecker
d5721fa7de * safe-ctype.h: Remove #error when detecting that ctype.h has been
included. Redefine the various macros provided by ctype.h as
        undefined variables.
2008-07-04 17:11:29 +00:00