Commit Graph

33162 Commits

Author SHA1 Message Date
Sanimir Agovic b3d3b4bda1 doc,mi: example refers to -list-features instead of -list-target-features
Corrected mi documentation about -list-target-features, example now uses the
correct mi command.

2013-09-13  Sanimir Agovic  <sanimir.agovic@intel.com>

	* gdb.texinfo (GDB/MI Miscellaneous Commands): Use
	-list-target-features in the example.
2013-09-13 08:04:02 +00:00
Stan Shebs b866c52d3b * README: New file. 2013-09-12 22:51:16 +00:00
Doug Evans dc59cba6fc * gdb.python/py-events.py (new_objfile_handler): Remove accidentally
added code to print event.inferior.
2013-09-12 22:39:26 +00:00
Andrew Pinski 1aa4cd774c 2013-09-12 Andrew Pinski <apinski@cavium.com>
* aarch64-linux-nat.c (aarch64_linux_set_debug_regs): Zero out regs.
2013-09-12 07:14:37 +00:00
Jan Kratochvil edf9f00c51 minidebuginfo: Fix stripping/debuginfo
gdb/doc/
2013-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.texinfo (MiniDebugInfo): Prepare file debug and use it to create
	mini_debuginfo.  Strip binary before adding mini_debuginfo to it.

gdb/testsuite/
2013-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.base/gnu-debugdata.exp (objcopy 1): Move it lower and use only
	debug part of the binary.
2013-09-11 08:31:44 +00:00
Jan Kratochvil 1d236d2308 minidebuginfo: ppc64 sync testcase->doc
gdb/doc/
2013-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Sync documentation with gdb.base/gnu-debugdata.exp.
	* gdb.texinfo (MiniDebugInfo): Add comment and "D" in the example.
2013-09-11 08:29:46 +00:00
Jan Kratochvil 5423b017be minidebuginfo: Obvious changes
gdb/doc/
2013-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.texinfo (MiniDebugInfo): Fix two trailing dots.

gdb/testsuite/
2013-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.base/gnu-debugdata.exp (strip): Add -R .comment.
	(addlink): Add comment.
2013-09-11 08:28:04 +00:00
Ulrich Weigand d91fab15e7 2013-09-10 Andreas Arnez <arnez@linux.vnet.ibm.com>
* config/s390/s390.mh (NATDEPFILES): Add linux-waitpid.o.
2013-09-10 15:05:23 +00:00
Sanimir Agovic 9295cf6f8e test: adjust 'cd' regexpr to match an optional canonically pathname
New regexpr now correctly deals with trailing canonical pathname.

Before only the following output was matched:
(gdb) cd
Working directory /users/foo

In addition it now matches an optional trailing canonical pathname:
(gdb) cd
Working directory /users/foo
 (canonically /nfs/users/foo).

Triggered by `realpath .` != `pwd`

2013-09-10  Sanimir Agovic  <sanimir.agovic@intel.com>

testsuite/
	* gdb.base/default.exp: Adjust regexpr for 'cd' to match optional
	canonical pathname.
2013-09-10 07:32:25 +00:00
Andrew Burgess 5a5d8ead94 Remove use of deprecated_init_ui_hook from quit_confirm.
https://sourceware.org/ml/gdb-patches/2013-09/msg00224.html

gdb/ChangeLog

        * top.c (quit_confirm): Remove use of deprecated_init_ui_hook.
2013-09-09 12:13:58 +00:00
Pedro Alves 1385f66cf4 remote-sim.c: Send debug output to gdb_stdlog.
Tested by building for --target=arm-eabi, and playing with the debug
output a bit.

gdb/
2013-09-06  Pedro Alves <palves@redhat.com>

	* remote-sim.c (dump_mem, gdbsim_fetch_register)
	(gdbsim_store_register, gdbsim_kill, gdbsim_load)
	(gdbsim_create_inferior, gdbsim_open, gdbsim_close)
	(gdbsim_detach, gdbsim_resume_inferior, gdbsim_wait)
	(gdbsim_files_info, gdbsim_mourn_inferior): Send debug output to
	gdb_stdlog.
2013-09-06 18:29:42 +00:00
Pedro Alves 146ec4dbcf remote-sim.c: Don't install a deprecated_xfer_memory method.
Manually tested with a --target=arm-eabi build, and doing things like:

$ arm-eabi-gcc ~/gdb/tests/main.c -o a.out -c -g
$ ./gdb a.out
...
(gdb) tar sim
(gdb) load
(gdb) disassemble 0
Dump of assembler code for function main:
   0x00000000 <+0>:     mov     r12, sp
   0x00000004 <+4>:     push    {r11, r12, lr, pc}
   0x00000008 <+8>:     sub     r11, r12, #4
   0x0000000c <+12>:    sub     sp, sp, #8
   0x00000010 <+16>:    str     r0, [r11, #-16]
   0x00000014 <+20>:    str     r1, [r11, #-20]
   0x00000018 <+24>:    mov     r3, #0
   0x0000001c <+28>:    mov     r0, r3
   0x00000020 <+32>:    sub     sp, r11, #12
   0x00000024 <+36>:    ldm     sp, {r11, sp, pc}
End of assembler dump.
(gdb) p *0 = 1
        0x00000001

gdb/
2013-09-06  Pedro Alves  <palves@redhat.com>

	* remote-sim.c (dump_mem): Constify buf parameter.
	gdbsim_xfer_inferior_memory): Rename to ...
	(gdbsim_xfer_memory): ... this.  Adjust interface as
	target_xfer_partial helper.
	(gdbsim_xfer_partial): New function.
	(init_gdbsim_ops): Don't install a deprecated_xfer_memory hook.
	Install a to_xfer_partial hook.  Send output to gdb_stdlog.
2013-09-06 18:10:39 +00:00
Pedro Alves fcde0081d9 remote-sim.c: cleanup debug output code.
Manually tested with a --target=arm-eabi build, and doing

$ arm-eabi-gcc ~/gdb/tests/main.c -o a.out -c -g
$ ./gdb a.out
...
(gdb) tar sim
(gdb) load
(gdb) set debug remote 1
(gdb) disassemble 0
Dump of assembler code for function main:
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0x0, len 4, write 0
   0x00000000 <+0>:             0xe1a0c00d
mov     r12, sp
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0x4, len 4, write 0
   0x00000004 <+4>:             0xe92dd800
push    {r11, r12, lr, pc}
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0x8, len 4, write 0
   0x00000008 <+8>:             0xe24cb004
sub     r11, r12, #4
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0xc, len 4, write 0
   0x0000000c <+12>:            0xe24dd008
sub     sp, sp, #8
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0x10, len 4, write 0
   0x00000010 <+16>:            0xe50b0010
str     r0, [r11, #-16]
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0x14, len 4, write 0
   0x00000014 <+20>:            0xe50b1014
str     r1, [r11, #-20]
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0x18, len 4, write 0
   0x00000018 <+24>:            0xe3a03000
mov     r3, #0
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0x1c, len 4, write 0
   0x0000001c <+28>:            0xe1a00003
mov     r0, r3
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0x20, len 4, write 0
   0x00000020 <+32>:            0xe24bd00c
sub     sp, r11, #12
gdbsim_xfer_inferior_memory: myaddr 0x7fffffffd400, memaddr 0x24, len 4, write 0
   0x00000024 <+36>:            0xe89da800
ldm     sp, {r11, sp, pc}
End of assembler dump.
(gdb) p *0 = 1
gdbsim_xfer_inferior_memory: myaddr 0xc69bc0, memaddr 0x0, len 4, write 1
        0x00000001
$1 = 1

Which happens to differ from before, I think due to stdout line buffering:

(gdb) disassemble 0
Dump of assembler code for function main:
   0x00000000 <+0>:     gdbsim_xfer_inferior_memory: myaddr 0x0x7fffffffd400, memaddr 0x0, len 4, write 0
        0xe1a0c00d

But the new output looks reasonable to me, better even.

gdb/
2013-09-06  Pedro Alves  <palves@redhat.com>

	* remote-sim.c (gdbsim_xfer_inferior_memory): Use
	host_address_to_string, and send debug output to gdb_stdlog.
2013-09-06 17:41:50 +00:00
Pedro Alves fb71d39e8c [gdbserver] Garbage collect unused dependency-tracking Makefile variables.
These used to be necessary for manual rule dependency tracking.
Nothing uses them anymore.  (regdat_sh is still needed.)

gdb/gdbserver/
2013-09-06  Pedro Alves  <palves@redhat.com>

	* Makefile.in (gdb_proc_service_h, regdef_h, regcache_h)
	(signals_def, signals_h, ptid_h, ax_h, agent_h, linux_btrace_h)
	(linux_osdata_h, vec_h, gdb_vecs_h, host_defs_h, libiberty_h)
	(server_h, gdbthread_h, linux_low_h, linux_ptrace_h)
	(gdb_thread_db_h, linux_procfs_h, lynx_low_h, nto_low_h)
	(mips_linux_watch_h, i386_low_h, win32_low_h): Delete.
2013-09-06 12:04:56 +00:00
Pedro Alves 8e7e991006 [gdbserver] Update a couple Makefile rules.
These two are still written in the pre-auto-dependency-tracking style.
They probably were written before that, and committed afterwards
without adjustment.  An easy oversight to make.

gdb/gdbserver/
2013-09-06  Pedro Alves  <palves@redhat.com>

	* Makefile.in (linux-btrace.o, mips-linux-watch.o): Remove
	explicit header dependencies and use $COMPILE/$POSTCOMPILE.
2013-09-06 11:54:07 +00:00
Pedro Alves 7c3a12caf5 [gdbserver] Fix IPA build.
Somehow, my builds yesterdays didn't trip on this...

../src/gdb/gdbserver/linux-amd64-ipa.c: In function ‘initialize_low_tracepoint’:
../src/gdb/gdbserver/linux-amd64-ipa.c:172:3: error: ‘ipa_tdesc’ undeclared (first use in this function)
../src/gdb/gdbserver/linux-amd64-ipa.c:172:3: note: each undeclared identifier is reported only once for each function it appears in

gdb/gdbserver/
2013-09-06  Pedro Alves  <palves@redhat.com>

	* linux-amd64-ipa.c: Include tracepoint.h.
	* linux-i386-ipa.c: Include tracepoint.h.
2013-09-06 10:58:11 +00:00
Ricard Wanderlof 749c8b38fa Extract Linux-specific portitions of cris-tdep.c to a new file.
This brings in some standard functionality hitherdo missing from
the CRIS/CRISv32 port thanks to the new call to gdbarch_init_osabi,
as well as clearly showing that there is Linux support for this
platform by virtue of the existence of a cris-linux-tdep.c file.

2013-09-06  Ricard Wanderlof  <ricardw@axis.com>

	* Makefile.in (ALL_TARGET_OBS): Add cris-linux-tdep.o.
	* configure.tgt: Add cris-linux-tdep.o and linux-tdep.o to
	gdb_target_obs for cris target.
	* cris-tdep.c (struct gdbarch_tdep): Move to cris-tdep.h.
	(cris_gdbarch_init): Move calls to
	set_gdbarch_fetch_tls_load_module_address and
	set_solib_svr4_fetch_link_map_offsets to cris-linux-tdep.c.
	Add call to gdbarch_init_osabi.
	* cris-linux-tdep.c: New file.
	* cris-tdep.h: New file.
2013-09-06 10:50:10 +00:00
Andrew Burgess 43df09d937 OBVIOUS: Remove legacy comment referring to deprecated_init_ui_hook.
gdb/ChangeLog

	* tui/tui-io.c (tui_initialize_io): Remove legacy comment referring
	to deprecated_init_ui_hook.
2013-09-06 10:12:20 +00:00
Andrew Burgess 4d09c5b423 Give every interpreter a command_loop_proc.
https://sourceware.org/ml/gdb-patches/2013-09/msg00179.html

gdb/ChangeLog

        * cli/cli-interp.c (_initialize_cli_interp): Add a
        command_loop_proc to interp_procs.
        * event-top.c (cli_command_loop): Change signature to match
        interp_command_loop_ftype.
        * event-top.h (cli_command_loop): Same.
        * interps.c (interp_new): Require every interpreter to have a
        command_loop_proc.
        (current_interp_command_loop): Just call the command_loop_proc on
        the current interpreter.
        * tui/tui-interp.c (_initialize_tui_interp): Add a
        command_loop_proc to interp_procs.
2013-09-06 08:53:09 +00:00
Ricard Wanderlof 8eb3d7b6ca Add support for threaded debugging for CRISv32.
2013-09-06  Ricard Wanderlof  <ricardw@axis.com>

	* cris-tdep.c (cris_gdbarch_init): Add call to
	get_gdbarch_fetch_tls_load_module_address.

gdbserver

	* linux-crisv32-low.c (PTRACE_GET_THREAD_AREA): New macro.
	(ps_get_thread_area): New function.
2013-09-06 08:37:17 +00:00
Andrew Burgess 1581d8a7b4 Fix filename format in previous ChangeLog entry.
I used the wrong format for the filenames in a previous changelog entry, I
incorrectly included the "gdb/" prefix.
2013-09-06 08:25:25 +00:00
Ricard Wanderlof 18b3c2f515 Cosmetic clean up of names of *elf_greg_t types for CRIS/CRISv32.
2013-09-06  Ricard Wanderlof  <ricardw@axis.com>

	* cris-tdep.c (cris_elf_greg_t): Rename from elf_greg_t.
	(cris_elf_gregset_t): Rename from elf_gregset_t.
	(crisv32_elf_gregset_t): Adjust.
	(cris_supply_gregset, fetch_core_registers): Adjust.
2013-09-06 08:23:46 +00:00
Ricard Wanderlof dc8636efde Trivial patch to remove dependency on host unsigned long type
from cris-tdep.c.

2013-09-06  Ricard Wanderlof  <ricardw@axis.com>

	* cris-tdep.c (elf_greg_t): Change typedef to unsigned char[4]
2013-09-06 08:14:33 +00:00
Ricard Wanderlof eddddb9d52 Fix compilation for target gdbserver on CRISv32 platform.
One misspelled function call, and one superfluous typedef. The latter
causes an error of the following type when building:

linux-crisv32-low.c:372: error: conflicting types for 'elf_gregset_t'
/.../target/include/asm/elf.h:36:
error: previous declaration of 'elf_gregset_t' was here

2013-09-06  Ricard Wanderlof  <ricardw@axis.com>

	* linux-crisv32-low.c (elf_gregset_t): Delete typedef.
	(initialize_low_arch): Call init_registers_crisv32 rather than
	init_register_crisv32.
2013-09-06 08:04:19 +00:00
Pedro Alves 270c6aeaf2 Add missing new files from these previous commits:
2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (handle_vFile, hostio_last_error_from_errno): Move
	to ...
	* hostio.h: ... this new file.
	* hostio.c, server.c, linux-low.c, nto-low.c, spu-low,
	win32-low.c: Include hostio.h.

2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (gdb_client_data, handler_func, callback_handler_func)
	(delete_file_handler, add_file_handler, append_callback_event)
	(delete_callback_event, start_event_loop, initialize_event_loop):
	Move to event-loop.h and include it.
	* event-loop.h: New file.

2013-09-05  Pedro Alves  <palves@redhat.com>

	* dll.c, inferiors.c, remote-utils.c, server.c: Include "dll.h".
	* server.h (struct dll_info, all_dlls, dlls_changed, clear_dlls)
	(loaded_dll, unloaded_dll): Move to ...
	* dll.h: ... this new file.
	* inferiors.c, remote-utils.c, win32-low.c: Include "dll.h".

2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (current_process, get_thread_process, all_processes)
	(add_inferior_to_list, for_each_inferior, current_inferior)
	(remove_inferior, add_process, remove_process, find_process_pid)
	(have_started_inferiors_p, have_attached_inferiors_p)
	(thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id)
	(clear_inferiors, find_inferior, find_inferior_id)
	(inferior_target_data, set_inferior_target_data)
	(inferior_regcache_data, set_inferior_regcache_data): Move to
	inferiors.h, and include it.
	* inferiors.h: New file.

2013-09-05  Pedro Alves  <palves@redhat.com>

	* ax.c, linux-low.c, linux-x86-low.c, server.c: Include
	tracepoint.h.
	* server.h (IPA_BUFSIZ, initialize_tracepoint, tracing)
	(disconnected_tracing, tracepoint_look_up_symbols, stop_tracing
	(handle_tracepoint_general_set, handle_tracepoint_query)
	(tracepoint_finished_step, tracepoint_was_hit)
	(release_while_stepping_state_list, current_traceframe)
	(in_readonly_region, traceframe_read_mem)
	(fetch_traceframe_registers, traceframe_read_sdata)
	(traceframe_read_info, struct fast_tpoint_collect_status)
	(fast_tracepoint_collecting, force_unlock_trace_buffer)
	(handle_tracepoit_bkpts, initialize_low_tracepoint)
	(supply_fast_tracepoint_registers)
	(supply_static_tracepoint_registers, set_trampoline_buffer_space)
	(ipa_tdesc, claim_trampoline_space)
	(have_fast_tracepoint_trampoline_buffer, gdb_agent_about_to_close)
	(agent_mem_read, agent_get_trace_state_variable_value)
	(agent_set_trace_state_variable_value, agent_tsv_read)
	(agent_mem_read_string, get_raw_reg_func_addr)
	(get_get_tsv_func_addr, get_set_tsv_func_addr): Move to ...
	* tracepoint.h: ... this new file.

2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (perror_with_name, error, fatal, warning, paddress)
	(pulongest, plongest, phex_nz, pfildes): Move to utils.h, and
	include it.
	* utils.h: New file.

2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (remote_debug, noack_mode, transport_is_reliable)
	(gdb_connected, STDIO_CONNECTION_NAME, remote_connection_is_stdio)
	(read_ptid, write_ptid, putpkt, putpkt_binary, putpkt_notif)
	(getpkt, remote_prepare, remote_open, remote_close, write_ok)
	(write_enn, initialize_async_io, enable_async_io)
	(disable_async_io, check_remote_input_interrupt_request)
	(convert_ascii_to_int, convert_int_to_ascii, new_thread_notify)
	(dead_thread_notify, prepare_resume_reply)
	(decode_address_to_semicolon, decode_address, decode_m_packet)
	(decode_M_packet, decode_X_packet, decode_xfer_write)
	(decode_search_memory_packet, unhexify, hexify)
	(remote_escape_output, unpack_varlen_hex, clear_symbol_cache)
	(look_up_one_symbol, relocate_instruction)
	(monitor_output): Move to remote-utils.h, and include it.
	* remote-utils.h: New file.
2013-09-05 22:18:48 +00:00
Pedro Alves 533b06003e [gdbserver] Split a new hostio.h file out of server.h.
gdb/gdbserver/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (handle_vFile, hostio_last_error_from_errno): Move
	to ...
	* hostio.h: ... this new file.
	* hostio.c, server.c, linux-low.c, nto-low.c, spu-low,
	win32-low.c: Include hostio.h.
2013-09-05 20:45:39 +00:00
Pedro Alves 0ce3d3b5aa [gdbserver] Split a new event-loop.h file out of server.h.
gdb/gdbserver/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (gdb_client_data, handler_func, callback_handler_func)
	(delete_file_handler, add_file_handler, append_callback_event)
	(delete_callback_event, start_event_loop, initialize_event_loop):
	Move to event-loop.h and include it.
	* event-loop.h: New file.
2013-09-05 20:42:52 +00:00
Pedro Alves 799cdc3728 [gdbserver] Split a new dll.h file out of server.h.
gdb/gdbserver/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* dll.c, inferiors.c, remote-utils.c, server.c: Include "dll.h".
	* server.h (struct dll_info, all_dlls, dlls_changed, clear_dlls)
	(loaded_dll, unloaded_dll): Move to ...
	* dll.h: ... this new file.
	* inferiors.c, remote-utils.c, win32-low.c: Include "dll.h".
2013-09-05 20:41:55 +00:00
Pedro Alves 6a6bbd9d76 [gdbserver] Split a new inferiors.h file out of server.h.
gdb/gdbserver/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (current_process, get_thread_process, all_processes)
	(add_inferior_to_list, for_each_inferior, current_inferior)
	(remove_inferior, add_process, remove_process, find_process_pid)
	(have_started_inferiors_p, have_attached_inferiors_p)
	(thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id)
	(clear_inferiors, find_inferior, find_inferior_id)
	(inferior_target_data, set_inferior_target_data)
	(inferior_regcache_data, set_inferior_regcache_data): Move to
	inferiors.h, and include it.
	* inferiors.h: New file.
2013-09-05 20:41:22 +00:00
Pedro Alves f699aaba87 [gdbserver] Move bytecode compilation bits from server.h to ax.h.
gdb/gdbserver/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (struct emit_ops, current_insn_ptr, emit_error):
	Move ...
        * ax.h: ... here.
2013-09-05 20:40:58 +00:00
Pedro Alves c144c7a0b7 [gdbserver] Split a new tracepoint.h file out of server.h.
gdb/gdbserver/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* ax.c, linux-low.c, linux-x86-low.c, server.c: Include
	tracepoint.h.
	* server.h (IPA_BUFSIZ, initialize_tracepoint, tracing)
	(disconnected_tracing, tracepoint_look_up_symbols, stop_tracing
	(handle_tracepoint_general_set, handle_tracepoint_query)
	(tracepoint_finished_step, tracepoint_was_hit)
	(release_while_stepping_state_list, current_traceframe)
	(in_readonly_region, traceframe_read_mem)
	(fetch_traceframe_registers, traceframe_read_sdata)
	(traceframe_read_info, struct fast_tpoint_collect_status)
	(fast_tracepoint_collecting, force_unlock_trace_buffer)
	(handle_tracepoit_bkpts, initialize_low_tracepoint)
	(supply_fast_tracepoint_registers)
	(supply_static_tracepoint_registers, set_trampoline_buffer_space)
	(ipa_tdesc, claim_trampoline_space)
	(have_fast_tracepoint_trampoline_buffer, gdb_agent_about_to_close)
	(agent_mem_read, agent_get_trace_state_variable_value)
	(agent_set_trace_state_variable_value, agent_tsv_read)
	(agent_mem_read_string, get_raw_reg_func_addr)
	(get_get_tsv_func_addr, get_set_tsv_func_addr): Move to ...
	* tracepoint.h: ... this new file.
2013-09-05 20:40:33 +00:00
Pedro Alves ff42e6abac [gdbserver] Split a new utils.h file out of server.h.
gdb/gdbserver/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (perror_with_name, error, fatal, warning, paddress)
	(pulongest, plongest, phex_nz, pfildes): Move to utils.h, and
	include it.
	* utils.h: New file.
2013-09-05 20:39:48 +00:00
Pedro Alves 541af0f44b [gdbserver] Split a new remote-utils.h file out of server.h.
gdb/gdbserver/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (remote_debug, noack_mode, transport_is_reliable)
	(gdb_connected, STDIO_CONNECTION_NAME, remote_connection_is_stdio)
	(read_ptid, write_ptid, putpkt, putpkt_binary, putpkt_notif)
	(getpkt, remote_prepare, remote_open, remote_close, write_ok)
	(write_enn, initialize_async_io, enable_async_io)
	(disable_async_io, check_remote_input_interrupt_request)
	(convert_ascii_to_int, convert_int_to_ascii, new_thread_notify)
	(dead_thread_notify, prepare_resume_reply)
	(decode_address_to_semicolon, decode_address, decode_m_packet)
	(decode_M_packet, decode_X_packet, decode_xfer_write)
	(decode_search_memory_packet, unhexify, hexify)
	(remote_escape_output, unpack_varlen_hex, clear_symbol_cache)
	(look_up_one_symbol, relocate_instruction)
	(monitor_output): Move to remote-utils.h, and include it.
	* remote-utils.h: New file.
2013-09-05 20:39:17 +00:00
Pedro Alves eebdf26b45 [gdbserver] Delete _ macro (gettext).
server.h nowadays includes gdb_locale.h, which already brings this in.

gdb/gdbserver/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* server.h (_): Delete.
2013-09-05 20:38:45 +00:00
Andrew Burgess 257e6d53e2 Remove deprecated_command_loop_hook.
https://sourceware.org/ml/gdb-patches/2013-09/msg00174.html

gdb/ChangeLog

        * gdb/defs.h (deprecated_command_loop_hook): Remove, including
        references in comments.
        * gdb/interps.c (current_interp_command_loop): No longer use
        deprecated_command_loop_hook.
        (clear_interpreter_hooks): Remove deprecated_command_loop_hook
        setup.
        * gdb/top.c (deprecated_command_loop_hook): Remove.
2013-09-05 16:46:56 +00:00
Pedro Alves 7c33b57c15 dwarf2loc.c: minor cleanup. don't print integer with paddress.
A couple years ago, dwarf_expr_fetch used to return a CORE_ADDR.  It
was made to return a ULONGEST since, and the 'dwarf_regnum' local
adjusted accordingly, but, we kept printing it with paddress.
gdbarch_dwarf2_reg_to_regnum takes the register number as 'int', so
there's really no point in using ULONGEST/pulongest either.

gdb/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* dwarf2loc.c (dwarf2_evaluate_loc_desc_full): 'dwarf_regnum'
	local is now int instead of ULONGEST.  Print it with %d
	instead of paddress.
2013-09-05 14:49:13 +00:00
Tristan Gingold 9f8edbd563 2013-09-05 Tristan Gingold <gingold@adacore.com>
* MAINTAINERS: Remove avr maintainership.
2013-09-05 14:15:27 +00:00
Pedro Alves d5b495b40b Rework value_of_register in terms of value_of_register_lazy.
I noticed that value_of_register (used for getting values _of_
registers ($pc, $rax, etc.), rather than variables _in_ registers),
kind of builds a franken-value, by propagating the lval and address of
the frame register value, but not the entire location, like necessary
for lval_computed (if some unwinder ever returns that, the resulting
value will misbehave).  This gets in the way of printing optimized out
(not saved) lval_registers differently from other optimized out
values, as it doesn't make sure the resulting value is lval_register.

I started out by just doing something like:

-  VALUE_LVAL (reg_val) = lval;
-  set_value_address (reg_val, addr);
+  VALUE_LVAL (reg_val) = lval_register;

... just like value_of_register_lazy below.  That's sufficient to fix
the issue.

Then I noticed this is using frame_register, which we should avoid
nowadays, for it returns elements of a value, but not all that's
sometimes necessary (unavailable-ness is all or nothing with it, for
instance), and considered using get_frame_register_value instead
(which returns a struct value), and value_contents_copy, just like
value_fetch_lazy's handling of lval_register.  But at that point, I
realized we might as well just defer all that work to
value_of_register_lazy/value_fetch_lazy...

Doing it this way adds a frame_find_by_id lookup (from within
value_fetch_lazy), while we already have a frame pointer handy in
value_of_register.  I considered factoring out the lazy register
fetching out of value_fetch_lazy, into a function that takes a frame
pointer and call that instead, avoiding the lookup, but then it looked
like too much complication for an early optimization, and went back to
keeping it simple.

Tested on x86_64 Fedora 17.

gdb/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* findvar.c (value_of_register): Rework in terms of
	value_of_register_lazy.
2013-09-05 14:02:16 +00:00
Muhammad Bilal 40b917863f 2013-09-05 Muhammad Bilal <mbilal@codesourcery.com>
* symfile.c (add_symbol_file_command): Remove trailing
	 whitespaces and blank line after comment.
2013-09-05 13:13:25 +00:00
Pedro Alves 6eed16788b [TUI] Rewrite register-changed decision bits.
I stumbled on the TUI's register-changed decision code before (used to
decided whether the register should be highlighted in the register
window), for it is trying to compare all the different possible states
and contents or previous/current register contents, and as such may
need updating whenever the value machinery changes to have more state.
It's just much simpler and more future proof to compare the
previous/current printable representation instead.

The bit in tui_register_format that returns early if the register has
no name gets a bit in the way of the new prototype (what to return in
that case? NULL, empty string, etc.?).  Fortunately, that check isn't
really necessary.  All the callers will have already skipped unnamed
registers.

gdb/
2013-09-05  Pedro Alves  <palves@redhat.com>

	* tui/tui-regs.c (tui_register_format): Don't look at the
	register's name here.  Return string representing register
	value instead of storing it in the data element.
	(tui_get_register): Compare register string representations
	instead of register value states and contents.
2013-09-05 11:50:48 +00:00
Pedro Alves 8eb6bda23e [PR tui/15933] TUI shows registers of the wrong frame the first time
I've stumbled on this by inspection.

When the TUI's register window is first displayed, it always shows the
registers of the current frame, instead of of the selected frame,
which is obviously bogus.

E.g.,

 (gdb) step             # into "function"
 (gdb) up
 (gdb) tui reg general  # or C-x 2, C-x 2

shows the registers of "function", rather than the caller's.

A subsequent:

 (gdb) frame

or

 (gdb) down
 (gdb) up

can be used as workaround to "fix" it.

gdb/
2013-09-05  Pedro Alves  <palves@redhat.com>

	PR tui/15933
	* tui/tui-regs.c (tui_show_registers): Show registers of the
	selected frame, not the current frame.
2013-09-05 11:20:16 +00:00
Ricard Wanderlof 48b1f08c9a 2013-09-05 Ricard Wanderlof <ricardw@axis.com>
* MAINTAINERS: Add myself to Write After Approval.
2013-09-05 08:22:15 +00:00
Doug Evans 314bb8c368 * gdb.python/py-events.py (exit_handler): Verify we get the expected
event.
	(continue_handler, new_objfile_handler): Ditto.
	(test_events): Rename command to "test-events".
	(test_newobj_events): Rename command to "test-objfile-events".
	* gdb.python/py-events.exp: Update.
	* gdb.python/py-evsignal.exp: Update.
	* gdb.python/py-evthreads.exp: Update.
2013-09-04 23:49:21 +00:00
Doug Evans 89e63ee47a * dwarf2read.c (queue_and_load_all_dwo_tus): New function.
(queue_and_load_dwo_tu): New function.
	(lookup_dwo_signatured_type): Set per_cu.tu_read.
	(maybe_queue_comp_unit): Rename this_cu argument to dependent_cu.
	Make dependent_cu optional.
	(dw2_do_instantiate_symtab): If we just loaded a CU from a DWO,
	and an older .gdb_index is in use, queue and load all its TUs too.

	testsuite/
	* gdb.base/enumval.c (ZERO): New enum value.
	(main): Use it
	* gdb.base/enumval.exp: Test ability to print ZERO.
2013-09-04 23:05:32 +00:00
Jan Kratochvil 492c0ab72a Code cleanup: Change OPF_DISABLE_REALPATH to OPF_RETURN_REALPATH.
gdb/
2013-09-04  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Code cleanup: Change OPF_DISABLE_REALPATH to OPF_RETURN_REALPATH.
	* cli/cli-cmds.c (find_and_open_script): Add OPF_RETURN_REALPATH to
	variable search_flags.
	* defs.h (OPF_DISABLE_REALPATH): Rename to ...
	(OPF_RETURN_REALPATH): ... here.
	* dwarf2read.c (try_open_dwop_file): Set OPF_RETURN_REALPATH for flags.
	* exec.c (exec_file_attach): Remove OPF_DISABLE_REALPATH from openp
	call.  Twice.
	* nto-tdep.c (nto_find_and_open_solib): Add OPF_RETURN_REALPATH for
	openp call.
	* solib.c (solib_find): Likewise.  Four times.
	* source.c (openp): Change OPF_DISABLE_REALPATH to OPF_RETURN_REALPATH
	in the function comment and for the realpath_fptr variable.
	(source_full_path_of): Add OPF_RETURN_REALPATH for openp call.
	(find_and_open_source): Likewise.  Twice.
	* symfile.c (symfile_bfd_open): Likewise, also twice.
2013-09-04 20:09:39 +00:00
Doug Evans 23a44de810 * progspace.c (save_current_space_and_thread): Remove unnecessary
call to save_current_inferior.
2013-09-04 19:53:11 +00:00
Andrew Burgess 47061676f3 Avoid printing unavailable/optimized out registers (sh64-tdep.c)
https://sourceware.org/ml/gdb-patches/2013-08/msg00834.html

gdb/ChangeLog

        * sh64-tdep.c (sh64_do_register): Return after printing message
        about unavailable register contents.
2013-09-04 16:34:07 +00:00
Muhammad Bilal 41dc8db876 2013-09-04 Muhammad Bilal <mbilal@codesourcery.com>
Pedro Alves  <palves@redhat.com>

	* symfile.c (add_symbol_file_command): Error out on unknown
        option.  Handle EXPECTING_SEC_ADDR/EXPECTING_SEC_NAME before '-'
        options and collapse into single conditional branch.
2013-09-13  Muhammad Bilal  <mbilal@codesourcery.com>
            Pedro Alves  <palves@redhat.com>

	* gdb.base/relocate.exp: Check that invalid options are
	rejected.
2013-09-04 06:17:08 +00:00
Luis Machado 07107ca6f9 * inf-child.c (inf_child_follow_fork) New parameter
detach_fork.
	* inf-ptrace.c (inf_ptrace_follow_fork): Likewise.
	* inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
	* inferior.h (detach_fork): Remove.
	* infrun.c (detach_fork): Adjust comment and make it
	static.
	(follow_fork): Pass detach_fork parameter to
	target_follow_fork.
	* linux-nat.c (linux_child_follow_fork): New parameter
	detach_fork.
	* target.c (target_follow_fork): New parameter detach_fork.
	Pass detach_fork as parameter and print its value.
	* target.h (struct target_ops) <to_follow_fork>: New int
	parameter.
	(target_follow_fork): New parameter detach_fork.
2013-09-03 17:22:45 +00:00
Joel Brobecker 3bec276888 Fix build failure in solib-ia64-hpux.c
The field "bfd" no longer exists in struct target_section.
Use the_bfd_section->owner instead.

gdb/ChangeLog:

        * solib-ia64-hpux.c (ia64_hpux_relocate_section_addresses):
        Replace sec->bfd by sec->the_bfd_section->owner.
2013-09-03 16:59:18 +00:00