1 2009-05-23 Jan Kratochvil <jan.kratochvil@redhat.com>
3 Replace the savestring calls by xstrdup calls where possible.
4 * breakpoint.c (condition_command, set_raw_breakpoint)
5 (create_catchpoint, update_breakpoint_locations): Replace the
6 savestring calls by xstrdup calls where possible.
7 * buildsym.c (start_subfile, patch_subfile_names, record_debugformat)
8 (record_producer): Likewise.
9 * coffread.c (coff_start_symtab, complete_symtab): Likewise.
10 * corefile.c (set_gnutarget): Likewise.
11 * dbxread.c (add_new_header_file): Likewise.
12 * demangle.c (set_demangling_command, set_demangling_style): Likewise.
13 * event-top.c (push_prompt, pop_prompt, command_line_handler)
14 (set_async_prompt): Likewise.
15 * infcmd.c (set_inferior_io_terminal, attach_command_post_wait):
17 * language.c (set_language_command, _initialize_language): Likewise.
18 * linespec.c (decode_line_2): Likewise.
19 * rs6000-nat.c (add_vmap): Likewise.
20 * top.c (set_prompt, init_history, init_main): Likewise.
21 * tracepoint.c (stringify_collection_list): Likewise.
22 * varobj.c (varobj_create): Remove variable expr_len. Replace the
23 savestring calls by xstrdup calls where possible.
24 (value_of_root, c_name_of_variable, c_describe_child): Replace the
25 savestring calls by xstrdup calls where possible.
26 * xcoffread.c (complete_symtab): Likewise.
27 * cli/cli-script.c (build_command_line, define_command): Likewise.
28 * cli/cli-setshow.c (do_setshow_command): Likewise.
30 2009-05-23 Jan Kratochvil <jan.kratochvil@redhat.com>
32 Remove already unreachable code.
33 * varobj.c (varobj_get_handle): Fix comment when error is called.
36 2009-05-23 Eli Zaretskii <eliz@gnu.org>
38 * README (`configure' options): Document GDB-specific options to
41 * symtab.c (skip_prologue_using_lineinfo): New function.
42 (find_function_start_sal): Use it to get to the first line of
43 function's body that has an entry in the lineinfo table.
45 * symmisc.c (dump_symtab): Switch the current language to
46 the language of the symtab we are dumping only if the symtab's
47 language is neither language_auto nor language_unknown.
49 * coffread.c (coff_symtab_read): Set language_minimal as the
50 language for the "_globals_" pseudo-file.
51 (process_coff_symbol): Set the symbol's language to the language
54 2009-05-22 Pedro Alves <pedro@codesourcery.com>
56 * target.h (struct section_table): Rename to ...
57 (struct target_section): ... this.
58 * exec.c: Adjust all references.
59 * exec.h: Adjust all references.
60 * nto-tdep.c: Adjust all references.
61 * nto-tdep.h: Adjust all references.
62 * ppc-linux-tdep.c: Adjust all references.
63 * rs6000-nat.c: Adjust all references.
64 * s390-tdep.c: Adjust all references.
65 * solib-darwin.c: Adjust all references.
66 * solib-frv.c: Adjust all references.
67 * solib-irix.c: Adjust all references.
68 * solib-null.c: Adjust all references.
69 * solib-osf.c: Adjust all references.
70 * solib-pa64.c: Adjust all references.
71 * solib-som.c: Adjust all references.
72 * solib-sunos.c: Adjust all references.
73 * solib-svr4.c: Adjust all references.
74 * solib-target.c: Adjust all references.
75 * solib.c: Adjust all references.
76 * solist.h: Adjust all references.
77 * symfile.c: Adjust all references.
78 * symfile.h: Adjust all references.
79 * target.c: Adjust all references.
81 2009-05-22 Hui Zhu <teawater@gmail.com>
83 Add sys_fcntl argument interfaces to linux_record_tdep.
85 * linux-record.h (linux_record_tdep): Add fcntl_F_GETLK,
86 fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be
88 * i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK,
89 I386_LINUX_RECORD_FCNTL_F_GETLK64,
90 I386_LINUX_RECORD_FCNTL_F_SETLK64,
91 I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values
92 of I386 Linux sys_fcntl arguments.
93 (i386_linux_init_abi): Set macros values to linux_record_tdep.
94 * linux-record.c (record_linux_system_call): Change to use
95 the interface in linux_record_tdep in sys_fcntl and
98 * linux-record.c (record_linux_system_call): Fix the process
99 record build error about type in CYGWIN.
101 2009-05-22 Pedro Alves <pedro@codesourcery.com>
103 * inflow.c (kill_command): Delete left over static declaration.
105 2009-05-22 Pedro Alves <pedro@codesourcery.com>
107 * bfd-target.c: Don't include gdb_assert.h or gdb_string.h.
109 (struct section_closure): Delete.
110 (add_to_section_table): Delete.
111 (build_target_sections_from_bfd): Delete.
112 (target_bfd_xfer_partial): Use section_table_xfer_memory_partial.
113 (target_bfd_reopen): Use build_section_table.
114 * exec.c (xfer_memory): Move most code except for overlay
115 debugging support from here...
116 (section_table_xfer_memory): ... to this new function.
117 (section_table_xfer_memory_partial): New.
118 * exec.h (section_table_xfer_memory_partial): Declare.
119 * bfd-target.h (build_target_sections_from_bfd): Delete
122 2009-05-22 Pedro Alves <pedro@codesourcery.com>
124 * remote.c (compare_sections_command): Don't declare exec_bfd.
125 * tracepoint.c: Include "gdbcore.h".
126 (remote_set_transparent_ranges): Don't declare exec_bfd.
128 2009-05-21 Pedro Alves <pedro@codesourcery.com>
130 * aix-thread.c (init_aix_thread_ops): Whitespace.
132 2009-05-21 Pedro Alves <pedro@codesourcery.com>
134 * dec-thread.c (dec_thread_wait): Add options parameter. Use it
135 to call the to_wait method in the target beneath.
136 * remote-m32r-sdi.c (m32r_wait): Add options parameter.
138 2009-05-21 Joel Brobecker <brobecker@adacore.com>
140 * aix-thread.c (aix_thread_wait): Add options parameter. Use it
141 to call the to_wait method in the target_beneath.
143 2009-05-21 Pedro Alves <pedro@codesourcery.com>
145 * linux-nat.c (linux_nat_terminal_inferior)
146 (linux_nat_terminal_ours): Don't check sync_execution.
147 * remote.c (remote_terminal_inferior, remote_terminal_ours):
148 Don't check sync_execution. Update comments.
149 * target.c (target_terminal_inferior): New.
150 * target.h (target_terminal_inferior): Delete macro, and declare
152 * event-top.c (async_disable_stdin): Make idempotent. Don't give
153 the target the terminal here.
154 * inflow.c (terminal_ours_1): Don't return early without setting
157 2009-05-21 Pedro Alves <pedro@codesourcery.com>
159 * target.h (TARGET_WNOHANG): New.
160 * target.c (target_wait): Add `options' argument. Adjust.
161 (struct target_ops) <to_wait>: Add `options' argument.
162 (target_wait): Add `options' argument.
163 * infrun.c (wait_for_inferior): Pass 0 as options to
164 target_wait (blocking wait).
165 (fetch_inferior_event): Pass TARGET_WNOHANG as options to
167 * fork-child.c (startup_inferior): Pass 0 as options to
168 target_wait (blocking wait).
169 * linux-nat.c (linux_nat_create_inferior): Remove async masking.
170 (linux_nat_wait_1): Add `target_options' argument. Use it instead
171 of checking on target_can_async_p.
172 (linux_nat_wait): Add `target_options' argument. Adjust.
173 * remote.c (remote_wait_ns): Add `options' argument. Adjust to
174 check on TARGET_WNOWAIT instead of checking on remote_is_async_p.
175 (remote_wait_as): Add `options' argument. Adjust to check on
176 TARGET_WNOWAIT instead of checking on remote_is_async_p. If doing
177 a blocking wait, keep waiting until an interesting event comes
179 (remote_wait): Add `options' argument. Don't loop here if the
180 target is in async mode, and a blocking wait has been requested.
182 * top.c (deprecated_target_wait_hook): Add `options' argument.
183 * linux-thread-db.c (thread_db_wait): Add `options' argument, and
184 pass it down to the layer beneath.
185 * inf-ptrace.c (inf_ptrace_wait): Add `options' argument.
186 * record.c (record_beneath_to_wait): Add `options' argument.
187 (record_wait): Add `options' argument, and pass it down to the
189 * bsd-uthread.c (bsd_uthread_wait): Add `options' argument.
190 * darwin-nat.c (darwin_wait): Likewise.
191 * defs.h (deprecated_target_wait_hook): Likewise.
192 * gnu-nat.c (gnu_wait): Add `options' argument.
193 * go32-nat.c (go32_wait): Likewise.
194 * hpux-thread.c (hpux_thread_wait): Add `options' argument, and
195 pass it down to the layer beneath.
196 * inf-ttrace.c (inf_ttrace_wait): Add `options' argument.
197 * monitor.c (monitor_wait): Likewise.
198 * nto-procfs.c (procfs_wait): Likewise.
199 * remote-mips.c (mips_wait): Add `options' argument.
200 * remote-sim.c (gdbsim_wait): Likewise.
201 * rs6000-nat.c (rs6000_wait): Add `options' argument.
202 * sol-thread.c (sol_thread_wait): Add `options' argument, and pass
203 it down to the layer beneath.
204 * spu-linux-nat.c (spu_child_wait): Add `options' argument.
205 * windows-nat.c (windows_wait): Likewise.
206 * tui/tui-hooks.c (tui_target_wait_hook): Likewise. Adjust.
208 2009-05-21 Pedro Alves <pedro@codesourcery.com>
210 * mi/mi-interp.c (mi_on_resume): Account for whole process
213 2009-05-21 Jan Kratochvil <jan.kratochvil@redhat.com>
215 * m2-exp.y (MAX_FUNC): Fix trailing UNOP_MAX.
217 2009-05-21 Jan Kratochvil <jan.kratochvil@redhat.com>
219 * dwarf2read.c (set_cu_language): Recognize also DW_LANG_C99.
221 2009-05-21 Jan Kratochvil <jan.kratochvil@redhat.com>
223 Fix parsing DW_AT_const_value using DW_FORM_string.
224 * dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New.
226 2009-05-20 Joel Brobecker <brobecker@adacore.com>
228 * aix-thread.c (giter_count): Do not count the main thread.
229 (giter_accum): Do not include the main thread.
231 2009-05-19 Jan Kratochvil <jan.kratochvil@redhat.com>
233 Remove the PROT parameter from openp.
234 * source.c (openp): Remove the parameter PROT. Assertion check MODE.
235 defs.h (openp): Update the prototype.
236 Update all the openp callers.
238 2009-05-19 Pedro Alves <pedro@codesourcery.com>
240 * inflow.c (kill_command): Moved to infcmd.c.
241 (_initialize_inflow): Don't add the "kill" command or clear
243 * infcmd.c (kill_command): Moved here from inflow.c.
244 (_initialize_infcmd): Add the "kill" command here.
246 2009-05-19 Pedro Alves <pedro@codesourcery.com>
248 * fork-child.c: Don't include frame.h. Include terminal.h.
249 (fork_inferior): Call new_tty_postfork after forking adn adding
250 the child to the inferior list.
251 * inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare
253 * inflow.c (struct terminal_info): Remove const qualifier from
254 `run_terminal' field.
255 (inferior_thisrun_terminal): Tweak comment.
256 (inflow_inferior_exit): Release the `run_terminal' field.
257 (copy_terminal_info): New function.
258 (new_tty_postfork): New function.
259 * terminal.h (new_tty_prefork, new_tty, new_tty_postfork,
260 (copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare.
261 * inf-ptrace.c: Include terminal.h.
262 (inf_ptrace_follow_fork): Copy the parent's terminal info to the
264 * linux-nat.c: Include terminal.h.
265 (linux_child_follow_fork): Copy the parent's terminal info to the
267 * inf-ttrace.c: Include terminal.h.
268 (inf_ttrace_follow_fork): Copy the parent's terminal info to the
271 2009-05-19 Pedro Alves <pedro@codesourcery.com>
273 * breakpoint.c (insert_breakpoints, breakpoint_init_inferior)
274 (update_global_location_list): Use gdbarch_has_global_breakpoints
275 instead of gdbarch_has_global_solist and
276 target_supports_multi_process.
277 * dicos-tdep.c (dicos_init_abi): Set
278 gdbarch_has_global_breakpoints.
279 * gdbarch.sh (has_global_solist): Update comment.
280 (has_global_breakpoints): New.
281 * remote.c (remote_start_remote): Use
282 gdbarch_has_global_breakpoints instead of
283 gdbarch_has_global_solist.
284 * target.c (target_detach): Use gdbarch_has_global_breakpoints
285 instead of gdbarch_has_global_solist.
286 * infcmd.c (attach_command): Use gdbarch_has_global_solist instead
287 of target_supports_multi_process.
289 2009-05-18 Paul Pluzhnikov <ppluzhnikov@google.com>
291 * objc-lang.c (find_methods): Plug a small memory leak.
293 2009-05-18 Pedro Alves <pedro@codesourcery.com>
295 * solib-svr4.c: Include observer.h.
296 (debug_base, debug_loader_offset_p, debug_loader_offset)
297 (debug_loader_name, main_lm_addr): Move these globals...
298 (struct svr4_info): ... into this new structure.
299 (svr4_info_p): New typedef.
300 (svr4_info): New global.
301 (get_svr4_info, remove_svr4_info, solib_svr4_inferior_exit): New
303 (locate_base, solib_svr4_r_map, solib_svr4_r_brk)
304 (solib_svr4_r_ldsomap): Add svr4_info argument. Adjust to
306 (open_symbol_file_object): Adjust to per-inferior svr4.
307 (svr4_default_sos, svr4_current_sos, svr4_fetch_objfile_link_map):
309 (enable_break): Add svr4_info argument. Adjust to per-inferior
311 (enable_break, svr4_solib_create_inferior_hook, svr4_clear_solib):
312 Adjust to per-inferior svr4.
313 (_initialize_svr4_solib): Install the solib_svr4_inferior_exit
316 2009-05-18 Pedro Alves <pedro@codesourcery.com>
318 * linux-nat.h (linux_proc_get_tgid): Declare.
319 * linux-nat.c (linux_proc_get_tgid): New.
320 * linux-thread-db.c (struct thread_db_info): New field
321 `need_stale_parent_threads_check'.
322 (add_thread_db_info): Set it.
323 (find_new_threads_callback): Ignore stale fork parent threads.
324 (thread_db_resume): New.
325 (init_thread_db_ops): Install thread_db_resume.
327 2009-05-18 Pedro Alves <pedro@codesourcery.com>
329 * fork-child.c (fork_inferior): Only reset the thread list if this
330 is the first inferior.
331 (startup_inferior): If the target support multi-process, tell it
332 to resume only the new process.
333 * linux-nat.c (num_lwps): Delete global.
334 (purge_lwp_list): New function.
335 (num_lwps): New function.
336 (add_lwp, delete_lwp): Adjust.
338 (iterate_over_lwps): Add filter argument. Handle it.
339 (linux_nat_attach): Remove FIXME note.
340 (linux_nat_detach): Adjust to iterate over threads of the inferior
341 we're detaching from. Adjust to num_lwps being a function. Don't
342 assume the head of the lwp list is the main thread of the process
343 we're detaching from. Don't destroy the LWP list.
344 (resume_callback): Add debug output.
345 (linux_nat_resume): Handle resuming a single inferior. Allow a
346 wildcard resume in non-stop mode.
347 (linux_handle_extended_wait): Don't assume inferior_ptid is the
348 correct inferior of the parent LWP.
349 (status_callback): Also check lp->waitstatus.
350 (select_event_lwp): Add new filter parameter. Handle it.
351 (linux_nat_filter_event): Adjust to num_lwps being a function.
352 (linux_nat_wait_1): When adding the first lwp of the inferior, use
353 an is_lwp check instead of checking for the number of lwps.
354 (linux_nat_wait_1): Handle waiting for a specific tgid. Handle
355 pending process exit statuses.
356 (linux_nat_mourn_inferior): Don't destroy all the LWP info.
357 Instead delete LWPs of the inferior that we're mourning. Don't
358 unregister from the event loop here.
359 (linux_nat_pid_to_str): Use `num_lwps'.
360 (linux_nat_make_corefile_notes): Adjust to walk over lwps of a
362 (linux_nat_is_async_p): Check if async was masked out.
363 (linux_multi_process): New global.
364 (linux_nat_supports_multi_process): New.
365 (linux_nat_stop_lwp): Remove LWP filtering. It is done by the
367 (linux_nat_stop): Adjust to make iterate_over_lwps itself do the
369 (linux_nat_close): New.
370 (linux_nat_add_target): Register linux_nat_close and
371 linux_nat_supports_multi_process.
372 * linux-nat.h (iterate_over_lwps): Add filter argument.
373 * linux-thread-db.c (thread_db_handle): Delete.
374 (proc_handle, thread_agent, td_init_p, td_ta_new_p)
375 (td_ta_map_id2thr_p, td_ta_map_lwp2thr_p, td_ta_thr_iter_p)
376 (td_ta_event_addr_p, td_ta_set_event_p, td_ta_event_getmsg_p)
377 (td_thr_validate_p, td_thr_get_info_p, td_thr_event_enable_p)
378 (td_thr_tls_get_addr_p, td_create_bp_addr, td_death_bp_addr): No
379 longer globals, moved to...
380 (struct thread_db_info): ... this new structure.
381 (thread_db_list): New.
382 (add_thread_db_info, get_thread_db_info, delete_thread_db_info):
384 (have_threads_callback): Filter out threads of all inferiors but
385 the one specified by the ARGS argument.
386 (have_threads): Add ptid argument specifying the inferior we're
387 interested in. Handle it.
388 (struct thread_get_info_inout): New.
389 (thread_get_info_callback, thread_from_lwp): Adjust to use it.
390 (thread_db_attach_lwp): Check that inferior of the passed in
391 thread is using thread-db. Adjust.
392 (enable_thread_event): Remove thread_agent parameter. Instead,
393 get it from the per-inferior thread-db info.
394 (dladdr_to_soname): Move higher up.
395 (enable_thread_event_reporting): Adjust to use per-inferior
397 (try_thread_db_load_1): Replace `handle' parameter by a
398 thread_db_info parameter. Adjust to use per-inferior thread-db
400 (try_thread_db_load): Adjust to use per-inferior thread-db info.
401 (thread_db_load, disable_thread_event_reporting): Ditto.
402 (check_for_thread_db): Remove conditional reporting of which
403 libthread_db is in use.
404 (thread_db_new_objfile): Add comment about inferior_ptid.
405 (attach_thread): Adjust to use per-inferior thread-db info.
406 (thread_db_detach): Adjust to use per-inferior thread-db info.
407 Remove thread event breakpoints of the current inferior. Only
408 unpush the thread-db target if there are no more processes using
410 (check_event): Adjust to use per-inferior thread-db info.
411 (thread_db_wait): Adjust to use per-inferior thread-db info. Only
412 unpush the thread-db target if there are no more processes using
414 (thread_db_mourn_inferior): Adjust to use per-inferior thread-db
415 info. Mark breakpoints of the current inferior out before
416 deleting them. Only unpush the thread-db target if there are no
417 more processes using it.
418 (find_new_threads_callback): Adjust to use per-inferior thread_db
420 (thread_db_find_new_threads_1): Add new ptid argument. Adjust to
421 use per-inferior thread-db info.
422 (thread_db_find_new_threads): Adjust to use per-inferior thread-db
424 (thread_db_get_thread_local_address): Adjust.
425 (thread_db_get_ada_task_ptid): Adjust.
426 * inf-ptrace.c (inf_ptrace_mourn_inferior): Only unpush the target
427 if there no more processes left to debug.
428 * thread.c (set_running, set_executing): Handle resuming all
429 threads of a single inferior.
430 * mi/mi-interp.c (mi_output_running_pid): New.
431 (mi_inferior_count): New.
432 (mi_on_resume): For backwards compatibility, if resuming all
433 threads of an inferior, and there is only one inferior, output
436 2009-05-18 Ulrich Weigand <uweigand@de.ibm.com>
438 * ada-lang.c (ada_find_any_type): Move check for primitive types ...
439 (to_fixed_range_type): ... to here.
441 2009-05-18 Ulrich Weigand <uweigand@de.ibm.com>
443 * ada-lang.c (desc_data_type): Remove, replace by ...
444 (desc_data_target_type): ... this.
445 (thin_data_pntr): Use desc_data_target_type instead of desc_data_type.
446 (ada_is_array_descriptor_type): Likewise.
447 (ada_type_of_array): Likewise.
448 (ada_coerce_to_simple_array_type): Likewise.
449 (ada_array_element_type): Likewise.
451 2009-05-18 Ulrich Weigand <uweigand@de.ibm.com>
453 * ada-valprint.c (ada_val_print_1): Use val_print_string to print
454 result of ada_vax_float_print_function inferior call.
456 2009-05-18 Ulrich Weigand <uweigand@de.ibm.com>
458 * ada-lang.c (ada_coerce_to_simple_array_type): Reimplement to
459 avoid creating a dummy value.
461 2009-05-18 Ulrich Weigand <uweigand@de.ibm.com>
463 * p-valprint.c (pascal_val_print): Use extract_typed_address
464 to extract reference value.
466 2009-05-18 Ulrich Weigand <uweigand@de.ibm.com>
468 * doublest.c (NAN): Remove unused define.
469 (extract_floating_by_length, deprecated_extract_floating): Remove.
470 (store_floating_by_length, deprecated_store_floating): Remove.
471 (extract_typed_floating): Do not call extract_floating_by_length.
472 (store_typed_floating): Do not call store_floating_by_length.
473 (convert_typed_floating): Remove redundant assertions.
474 * doublest.h (deprecated_extract_floating): Remove.
475 (deprecated_store_floating): Remove.
476 * sh64-tdep.c (sh64_register_convert_to_raw): Call
477 extract_typed_floating instead of deprecated_extract_floating.
479 2009-05-18 Jon Beniston <jon@beniston.com>
481 * MAINTAINERS: Add lm32 target.
482 * Makefile.in: Add lm32 dependencies.
483 * NEWS: Indicate lm32 is a new target.
484 * configure.tgt: Add lm32 targets.
485 * lm32-tdep.c: New file.
487 2009-05-18 Pedro Alves <pedro@codesourcery.com>
489 * corelow.c (core_open): Flush the register cache before doing
490 anything with registers.
492 2009-05-18 Pedro Alves <pedro@codesourcery.com>
494 * inflow.h (our_process_group): Remove declaration.
495 (inferior_process_group): Delete global variable declaration.
496 (inferior_process_group): New function declaration.
497 * inflow.c: Include observer.h.
498 (inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours):
500 (struct terminal_info): New struct.
501 (our_terminal_info): New global.
502 (inferior_process_group): New function.
503 (inferior_thisrun_terminal): Extend description comment.
504 (gdb_has_a_terminal): Adjust to write to our_terminal_info fields
506 (terminal_init_inferior_with_pgrp): Adjust to per-inferior
508 (terminal_inferior): Ditto.
509 (terminal_ours_1): Ditto.
510 (inflow_new_inferior, inflow_inferior_exit): New functions.
511 (child_terminal_info): Adjust to per-inferior terminal settings.
512 (osig_set): New global.
513 (set_sigint_trap): Adjust to per-inferior terminal settings. Set
514 or clear `osig_set' accordingly.
515 (clear_sigint_trap): Check `osig_set' to decide wheater to restore
516 SIGINT handler, instead of checking the current inferior (which
518 (_initialize_inflow): Attach inflow_new_inferior and
519 inflow_inferior_exit to the "new_inferior" and "inferior_exit"
520 notifications, respectively.
521 * inferior.h (struct terminal_info): Forward declare.
522 (struct inferior): Add `terminal_info' field.
523 * inferior.c (delete_inferior_1): Notify the inferior_exit
524 observers before removing the inferior from the lists and deleting
526 * inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now
527 a function instead of a variable. Adjust.
528 * procfs.c (procfs_stop): Ditto.
530 2009-05-17 Pedro Alves <pedro@codesourcery.com>
532 * infrun.c (handle_inferior_event): When handling a
533 TARGET_WAITKIND_FORKED, detach breakpoints from the fork child
535 * linux-nat.c (linux_child_follow_fork): Only detach breakpoints
536 from the child if vforking.
537 * inf-ptrace.c (inf_ptrace_follow_fork): No need to detach
538 breakpoints from the child here.
540 2009-05-17 Pedro Alves <pedro@codesourcery.com>
542 * infrun.c (pending_follow): Remove execd_pathname member.
543 (resume): No longer handle TARGET_WAITKIND_EXECD pending follow.
544 (handle_inferior_event): When handling a TARGET_WAITKIND_EXECD
545 event, don't copy `execd_pathname' to pending_follow, use the
546 event copy instead. Release `execd_pathname' once done with
549 * infrun.c (pending_follow): Remove mention of exec events.
551 2009-05-17 Hui Zhu <teawater@gmail.com>
553 * i386-tdep.c (i386_process_record): Make it extern.
554 (i386_gdbarch_init): Don't call set_gdbarch_process_record
556 * i386-tdep.h (i386_process_record): Declare.
557 * i386-linux-tdep.c (i386_linux_init_abi): Call
558 set_gdbarch_process_record.
560 2009-05-17 Vladimir Prus <vladimir@codesourcery.com>
562 Always report varobj as changed when in_scope attribute changes.
564 * varobj.c (install_new_value): If non-NULL-ness of value
567 2009-05-15 Paul Pluzhnikov <ppluzhnikov@google.com>
569 * NEWS: Mention set/show libthread-db-search-path.
570 * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define.
571 (LIBTHREAD_DB_SO): Moved from linux-thread-db.c
572 * linux-thread-db.c (libthread_db_search_path): New setting.
573 (thread_db_handle): New variable (replaces using_thread_db).
574 (try_thread_db_load_1): New function.
575 (try_thread_db_load, thread_db_load_search): Likewise.
576 (dladdr_to_soname): Likewise.
577 (thread_db_load): Iterate over possibly multiple libthread_db's.
578 (check_for_thread_db): Attempt to load new libthread_db.
579 (thread_db_detach, thread_db_wait): Unload libthread_db.
580 (thread_db_mourn_inferior): Likewise.
581 (_initialize_thread_db): Add new libthread-db-search-path option.
582 Defer loading of libthread_db to check_for_thread_db.
583 * solib.c (libpthread_name_p): New function.
584 (libpthread_solib_p): Call it.
585 * solib.h (libpthread_name_p): New prototype.
587 2009-05-15 Pierre Muller <muller@ics.u-strasbg.fr>
589 * MAINTAINERS: Update my email address.
591 2009-05-14 Paul Pluzhnikov <ppluzhnikov@google.com>
593 * breakpoint.h: Add breakpoint_re_set_objfile prototype.
594 * breakpoint.c (create_overlay_event_breakpoint): Renamed
595 from create_overlay_event_breakpoint_1, old
596 create_overlay_event_breakpoint deleted.
597 (breakpoint_re_set_objfile): Don't rescan all objfiles
599 (breakpoint_re_set): New function.
600 * symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile
601 instead of breakpoint_re_set.
602 * objfiles.c (objfile_relocate): Likewise.
604 2009-05-14 Joel Brobecker <brobecker@adacore.com>
606 * gdbarch.sh: Add comment documenting the target_gdbarch global.
607 gdbarch.h does NOT need to be regenerated as the corresponding
608 change has already been made in a previous commit.
610 2009-05-14 Pierre Muller <muller@ics.u-strasbg.fr>
612 Remove all i386 debug register low level macros in config nm files.
613 (I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR): Remove.
614 (I386_DR_LOW_GET_STATUS, I386_DR_LOW_SET_CONTROL): Remove.
615 (I386_USE_GENERIC_WATCHPOIINTS): Remove.
617 * i386-nat.h: New file (adapted from config/i386/nm-i386.h).
618 (struct i386_dr_low_type): New type.
619 (i386_dr_low): New global variable.
620 * i386-nat.c (TARGET_HAS_DR_LEN_8): Update macro.
621 (i386_insert_aligned_watchpoint): Replace i386 dr low macros by
622 i386_dr_low struct variable fields.
623 (i386_remove_aligned_watchpoint): Likewise.
624 (i386_stopped_data_address): Likewise.
625 (i386_stopped_by_hwbp): Likewise.
626 (show_debug_regs_command_added): New static variable.
627 (add_show_debug_regs_command): New static function.
628 (i386_use_watchpoints): Call add_show_debug_regs_command if not done.
629 (i386_set_debug_register_length): New function.
630 (_initialize_i386_nat): Delete.
632 * amd64-linux-nat.c: Include "i386-nat.h".
633 (amd64_linux_dr_set_control): Change to static.
634 (amd64_linux_dr_get_status): Change to static.
635 (amd64_linux_dr_set_addr,amd64_linux_dr_reset_addr): Likewise.
636 (_initialize_amd64_linux_nat): Set i386_dr_low variable fields.
638 * go32-nat.c: Include "i386-nat.h".
639 (go32_set_addr): Change to static.
640 (go32_set_dr7): Change to static. Change arg type to unisgned long.
641 (go32_get_dr6): Change to static. Change return type to unisnged long.
642 (init_go32_ops): Set i386_dr_low variable fields.
643 * i386-linux-nat.c: Include "i386-nat.h".
644 (i386_linux_dr_set_control, i386_linux_dr_get_status): Change to static.
645 (i386_linux_dr_set_addr, i386_linux_dr_reset_addr): Idem.
646 (_initialize_i386_linux_nat): Set i386_dr_low variable fields.
647 * i386bsd-nat.h: Declare functions used for
648 i386_dr_low fields in i386fbsd-nat.c.
649 * i386fbsd-nat.c: Include "i386-nat.h".
650 (_initialize_i386fbsd_nat): Set i386_dr_low variable fields.
651 * windows-nat.c: Include "i386-nat.h".
652 (cygwin_set_dr, cygwin_get_dr6, cygwin_set_dr7): Add prototypes.
654 (cygwin_get_dr6): Change return type to unisnged long.
655 (cygwin_set_dr7): Change arg type to unisgned long.
656 (init_windows_ops): Set i386_dr_low function fields.
658 * amd64-windows-nat.c (_initialize_amd64_windows_nat): Call
659 i386_set_debug_register_length.
660 * i386-windows-nat.c (_initialize_i386_windows_nat): Likewise.
662 * config/i386/nm-cygwin.h: Remove all I386_* macros.
663 * config/i386/nm-cygwin64.h: Likewise.
664 * config/i386/nm-fbsd.h: Likewise.
665 * config/i386/nm-linux.h: Likewise.
666 * config/i386/nm-i386.h: Remove completely.
667 * config/i386/nm-go32.h: Remove completely.
668 * config/i386/nm-linux64.h: Remove completely.
669 * config/i386/go32.mh (NAT_FILE): Remove entry.
670 * config/i386/linux64.h (NAT_FILE): Change to config/nm-linux.h.
672 2009-05-14 Jon Beniston <jon@beniston.com>
674 * MAINTAINERS: Add Jon Beniston to write after approval list.
676 2009-05-13 Paul Pluzhnikov <ppluzhnikov@google.com>
678 * objc-lang.c (objc_objfile_data): New variable.
679 (find_methods): Skip objfiles without Obj-C methods.
680 (_initialize_objc_lang): New function.
682 2009-05-13 Joel Brobecker <brobecker@adacore.com>
684 * c-lang.c (print_wchar): Remove unnecessary cast.
686 2009-05-12 Jim Blandy <jimb@red-bean.com>
688 * MAINTAINERS: Remove self as m32c target maintainer.
690 2009-05-12 Pedro Alves <pedro@codesourcery.com>
692 * cli/cli-decode.c (deprecated_add_set_cmd): Delete.
693 * command.h (deprecated_add_set_cmd): Delete declaration.
694 * gnu-nat.c (_initialize_gnu_nat): Replace 'maint gnu-debug' with
695 'set debug gnu-nat' and 'show debug gnu-nat'.
696 * i386-nat.c (_initialize_i386_nat): Replace 'maint
697 show-debug-registers' with 'maint set show-debug-registers' and
698 'maint show show-debug-registers'.
699 * mips-linux-nat.c (_initialize_mips_linux_nat): Replace 'maint
700 show-debug-registers' with 'maint set show-debug-registers' and
701 'maint show show-debug-registers'.
703 2009-05-12 Joel Brobecker <brobecker@adacore.com>
705 * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
706 pushing it on the output obstack.
708 2009-05-11 Joel Brobecker <brobecker@adacore.com>
710 Fix internal error on breaking at a multi-locations caller source line.
711 * breakpoint.c (parse_breakpoint_sals): Set EXPLICIT_PC for the `break'
712 command with no parameters.
714 2009-05-11 Pedro Alves <pedro@codesourcery.com>
716 * linux-nat.c (enum sigchld_state): Delete.
717 (linux_nat_async_events_state): Delete.
718 (struct waitpid_result): Delete.
719 (waitpid_queue): Delete.
720 (queued_waitpid_1): Delete.
721 (async_file_flush): New.
722 (queued_waitpid, push_waitpid): Delete.
723 (async_file_mark): New.
724 (drain_queued_events): Delete.
725 (my_waitpid): Remove locally queued events handling.
726 (linux_test_for_tracefork): Upjust.
727 (linux_child_follow_fork): Ditto.
728 (sync_sigchld_action): Delete.
729 (blocked_mask): Reinstate.
730 (async_sigchld_action): Rename to...
731 (sigchld_action): ... this.
732 (block_child_signals): New.
733 (restore_child_signals_mask): New.
734 (lin_lwp_attach_lwp): Adjust.
735 (linux_nat_create_inferior): Ditto.
736 (linux_nat_attach): Also use lp->status in async mode.
737 (get_pending_status): Don't use queued_waitpid.
738 (linux_nat_detach): Don't drain locally queued events.
739 (linux_nat_resume): Allow pending wait statuses stored lp->status
740 in async mode. If returning early due to a pending event,
741 re-register the event source.
742 (stop_wait_callback): Allow pending wait statuses stored
743 lp->status in async mode.
744 (pipe_to_local_event_queue, local_event_queue_to_pipe): Delete.
745 (linux_nat_wait): Rename to ...
746 (linux_nat_wait_1): ... this. Allow pending wait statuses stored
747 lp->status in async mode. Always add WNOHANG to the waitpid
748 options in async mode.
749 (linux_nat_wait): New.
750 (kill_callback): Don't drain locally queued events.
751 (sigchld_handler): Rewrite.
752 (linux_nat_is_async_p, linux_nat_can_async_p): Fix comments to
753 refer to "set target-async".
754 (linux_nat_async_mask): If in non-stop, and re-enabling async
755 mode, re-register the target event source in the event loop.
756 (linux_nat_event_pipe_pop, linux_nat_event_pipe_push)
757 (get_pending_events, async_sigchld_handler)
758 (linux_nat_async_events): Delete.
759 (handle_target_event): New.
760 (linux_nat_async_file_handler): Delete.
761 (linux_async_pipe): New.
762 (linux_nat_async): Only re-register in the event loop if not
763 registered yet. Always notify the event-loop once if enabling the
765 (linux_nat_stop_lwp): Rewrite to handle pending events stored in
766 lp->status, not in the locally queued event list.
767 (linux_nat_stop): Don't mask out async event handling.
768 (linux_nat_setup_async): Delete.
769 (_initialize_linux_nat): Adjust.
770 (lin_thread_get_thread_signals): blocked_mask is global again.
773 2009-05-11 Pierre Muller <muller@ics.u-strasbg.fr>
777 * target.h (STOPPED_BY_WATCHPOINT): Delete, replaced by ...
778 (target_stoppped_by_watchpoint): New macro.
779 (HAVE_STEPPABLE_WATCHPOINT): Delete, replaced by ...
780 (target_have_steppable_watchpoint): New macro.
781 (HAVE_CONTINUABLE_WATCHPOINT): Delete, replace by ...
782 (target_have_continuable_watchpoint): New macro.
783 (TARGET_CAN_USE_HARDWARE_WATCHPOINT):Delete, replaced by ...
784 (target_can_use_hardware_watchpoint): New macro.
785 (TARGET_REGION_OK_FOR_HW_WATCHPOINT):Delete, replaced by ...
786 (target_region_ok_for_hw_watchpoint): New macro.
788 * breakpoint.c (update_watchpoint): Use new macros.
789 (bpstat_alloc): Likewise.
790 (create_breakpoint): Likewise.
791 (watch_command_1): Likewise.
792 (can_use_hardware_watchpoint): Likewise.
793 (do_enable_breakpoint): Likewise.
794 * infrun.c (handle_inferior_event): Adapt to new macros.
795 * mips-tdep.c (mips_gdbarch_init): Update comments.
796 * procfs.c (procfs_set_watchpoint): Update comment.
797 (procfs_insert_watchpoint): Adapt to new macros.
798 * remote-m32r-sdi.c (m32r_stop):
799 * remote-mips.c (mips_remove_breakpoint):
800 * target.c (debug_to_region_ok_for_hw_watchpoint): Update to new macros.
801 (debug_to_stopped_by_watchpoint): Likewise.
804 2009-05-10 Pierre Muller <muller@ics.u-strasbg.fr>
806 * src/gdb/target.h: Remove all tests for already defined
807 macros. All macros defined here should not be set in config
810 2009-05-08 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
812 * ppc-linux-nat.c (have_ptrace_getsetregs): New variable.
813 (have_ptrace_getsetfpregs): Likewise.
814 fetch_all_gp_regs): New function.
815 (fetch_gp_regs): New function.
816 (fetch_all_fp_regs): Likewise.
817 (fetch_fp_regs): New function.
818 (fetch_ppc_registers): Using the new methods to fetch general-
819 purpose and floating-pointer registers.
820 (store_all_gp_regs): New function.
821 (store_gp_regs): Likewise.
822 (store_all_fp_regs): New function.
823 (store_fp_regs): Likewise.
824 (store_ppc_registers): Using the new methods to store general-
825 purpose and floating-pointer registers.
827 2009-05-08 Doug Evans <dje@google.com>
829 * linux-nat.c (linux_xfer_siginfo): Delete unused locals lp, n.
831 2009-05-07 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
833 * MAINTAINERS (Write After Approval): Add self.
835 2009-05-07 Joel Brobecker <brobecker@adacore.com>
837 * gdbarch.h (target_gdbarch): Add comment documenting this global.
839 2009-05-06 Joel Brobecker <brobecker@adacore.com>
841 * acinclude.m4 (AM_ICONV): Prefer in-tree libiconv if present over
843 * configure: Regenerate.
845 2009-05-06 Joel Brobecker <brobecker@adacore.com>
847 * utils.c: Add include of gdb_usleep.h.
848 (defaulted_query): Detect false EOF conditions that happen
849 on terminals opened with the O_NONBLOCK flag when there is
852 2009-05-06 Pedro Alves <pedro@codesourcery.com>
854 * inferior.c (add_inferior): Move observer_notify_new_inferior
856 (add_inferior_silent): ... here.
858 2009-05-06 Pierre Muller <muller@ics.u-strasbg.fr>
859 Pedro Alves <pedro@codesourcery.com>
861 * procfs.c (procfs_insert_watchpoint, procfs_remove_watchpoint)
862 (procfs_region_ok_for_hw_watchpoint, procfs_use_watchpoints): New
864 (procfs_stopped_by_watchpoint): Made static, ptid argument
866 (_initialize_procfs): Register new watchpoint related target
868 * config/i386/nm-i386sol2.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT)
869 (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT)
870 (HAVE_CONTINUABLE_WATCHPOINT): Delete.
871 (target_insert_watchpoint, target_remove_watchpoint): Delete.
872 (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
874 * config/mips/nm-irix5.h (STOPPED_BY_WATCHPOINT)
875 (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
876 (target_insert_watchpoint, target_remove_watchpoint): Delete.
877 (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
879 * config/sparc/nm-sol2.h (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT)
880 (HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT): Delete.
881 (target_insert_watchpoint, target_remove_watchpoint): Delete.
882 (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
885 2009-05-06 Hui Zhu <teawater@gmail.com>
887 * i386-tdep.c (i386_process_record): Change bzero to memset.
889 2009-05-06 Hui Zhu <teawater@gmail.com>
891 * NEWS: Add item for process record and replay.
893 2009-05-05 Maxim Grigoriev <maxim2405@gmail.com>
895 * xtensa-tdep.c (xtensa_frame_cache): Use pc instead of cache->pc.
897 2009-05-05 Ulrich Weigand <uweigand@de.ibm.com>
899 * inferior.h (read_pc, write_pc): Remove.
900 * regcache.c (read_pc, write_pc): Remove.
902 * infrun.c (displaced_step_fixup): Use regcache_read_pc instead
904 (handle_inferior_event): Use regcache_read_pc instead of read_pc
905 when determining value of stop_pc. Replace subsequent uses of
906 read_pc by inspecting already-retrieved stop_pc value.
907 (keep_going): Use regcache_read_pc instead of read_pc.
909 * breakpoint.c (watchpoint_check): Use current frame architecture
910 and PC instead of current_gdbarch and read_pc ().
911 * tracepoint.c (set_traceframe_context): Replace PC argument
913 (trace_start_command, finish_tfind_command): Update calls.
914 (finish_tfind_command): Compare frame IDs to identify transitions
916 (trace_find_pc_command): Use regcache_read_pc instead of read_pc.
917 * rs6000-nat.c (exec_one_dummy_insn): Pass in regcache instead
918 of gdbarch. Use regcache_read_pc and regcache_write_pc instead
919 of read_pc and write_pc.
920 (store_register): Make regcache argument non-const. Update call
921 to exec_one_dummy_insn.
923 * thread.c (switch_to_thread): Use regcache_read_pc instead of read_pc.
924 * infcmd.c (post_create_inferior): Likewise.
925 * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
926 * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
927 * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
928 * solib-svr4.c (enable_break, svr4_relocate_main_executable): Likewise.
929 * linux-fork.c (fork_load_infrun_state): Likewise.
930 * hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Likewise.
931 * record.c (record_wait): Likewise.
932 * procfs.c (procfs_wait): Likewise.
933 * remote-mips.c (common_open, mips_wait): Likewise.
934 * remote-m32r-sdi.c (m32r_resume): Likewise.
936 * symfile.c (generic_load): Use regcache_write_pc instead of write_pc.
937 * monitor.c (monitor_create_inferior, monitor_load): Likewise.
938 * m32r-rom.c (m32r_load, m32r_upload_command): Likewise.
939 * remote-m32r-sdi.c (m32r_create_inferior, m32r_load): Likewise.
940 * remote-mips.c (mips_create_inferior, mips_load): Likewise.
942 * solib-darwin.c: Include "regcache.h".
943 * solib-pa64.c: Include "regcache.h".
944 * solib-svr4.c: Include "regcache.h.".
946 * symfile.c: Do not mention read_pc or write_pc in comments.
947 * dink32-rom.c: Likewise.
948 * m32r-rom.c: Likewise.
949 * mips-tdep.c: Likewise.
951 2009-05-05 Ulrich Weigand <uweigand@de.ibm.com>
953 * fork-child.c (startup_inferior): Move setting stop_pc ...
954 * infcmd.c (post_create_inferior): ... to here.
956 2009-05-04 Michael Snyder <msnyder@vmware.com>
958 * NEWS: Add item for reverse debugging commands.
960 2009-05-04 Pedro Alves <pedro@codesourcery.com>
962 * go32-nat.c (go32_stop): Delete.
963 (go32_kill_inferior): Rewrite to only call go32_mourn_inferior.
964 (go32_create_inferior): Don't call go32_stop or
966 (go32_mourn_inferior): Inline go32_stop and go32_kill_inferior
968 (init_go32_ops): Don't register go32_stop.
970 2009-05-02 Eli Zaretskii <eliz@gnu.org>
972 * dbxread.c (read_dbx_symtab): Avoid compiler warnings for
975 * infcall.c (find_function_addr): Avoid compiler warnings for
978 2009-05-01 Jan Kratochvil <jan.kratochvil@redhat.com>
980 * dictionary.c (dict_hashed_vector, dict_hashed_expandable_vector)
981 (dict_linear_vector, dict_linear_expandable_vector): Fix a comment typo.
983 2009-05-01 Doug Evans <dje@google.com>
985 * linux-thread-db.c (thread_db_pid_to_str): Delete unused assignment
988 2009-05-01 Eli Zaretskii <eliz@gnu.org>
990 * record.c (_initialize_record): Reformat and clarify doc strings
991 for stop-at-limit and insn-number-max.
993 * go32-nat.c: Add comments about dirty secrets of DJGPP debugging.
995 2009-05-01 Jan Kratochvil <jan.kratochvil@redhat.com>
997 Make specifiable the make_function_type type memory ownership.
998 * gdbtypes.c (make_function_type): New parameter `objfile', use it
999 explicitely instead of TYPE-initialized removed local variable
1000 `objfile'. Describe `objfile' it in the function comment.
1001 (lookup_function_type): Update make_function_type callers.
1002 * gdbtypes.h (make_function_type): Update the prototype.
1003 * jv-lang.c (java_link_class_type): Update make_function_type callers.
1004 * dwarf2read.c (read_subroutine_type): Likewise.
1005 * stabsread.c (read_type): Likewise.
1007 2009-05-01 Eli Zaretskii <eliz@gnu.org>
1009 * go32-nat.c (go32_pid_to_str): Call normal_pid_to_str instead of
1010 printing a bogus "Thread <main>".
1011 (go32_thread_alive): Don't return 1 for null_ptid.
1013 * i386-tdep.c (i386_go32_init_abi): Override the number of
1014 registers due to non-support of SSE.
1016 2009-04-30 Anthony Green <green@moxielogic.com>
1018 * configure.tgt: Link the moxie simulator in with gdb.
1020 2009-04-30 Paul Pluzhnikov <ppluzhnikov@google.com>
1022 * elfread.c (elf_symtab_read): Don't assume .data and .rodata
1025 2009-04-30 Hui Zhu <teawater@gmail.com>
1026 Michael Snyder <msnyder@vmware.com>
1028 I386 Linux process record and replay support.
1030 * i386-linux-tdep.c (i386_linux_record_tdep): New variable.
1031 This struct has the argument for the function
1032 "record_linux_system_call".
1033 (i386_linux_intx80_sysenter_record): New function. Parse the
1034 system call instruction and call function
1035 "record_linux_system_call" to record execute log.
1036 (i386_linux_init_abi): Initialize "i386_linux_record_tdep".
1037 Set "i386_linux_intx80_sysenter_record" to
1038 "i386_intx80_record" and "i386_sysenter_record".
1040 2009-04-30 Hui Zhu <teawater@gmail.com>
1041 Michael Snyder <msnyder@vmware.com>
1043 I386 architecture process record and replay support.
1045 * i386-tdep.c (PREFIX_REPZ, PREFIX_REPNZ, PREFIX_LOCK,
1046 PREFIX_DATA, PREFIX_ADDR): New macros. Help decode the i386
1048 (aflag, dflag, override, modrm, mod, reg, rm, ot,
1049 i386_record_pc): New variables. Ditto.
1050 (i386_record_modrm, i386_record_lea_modrm_addr,
1051 i386_record_lea_modrm): New functions. Ditto.
1052 (i386_process_record): New function. Parse the instruction in
1053 address "addr" and record the values of registers and memory
1054 that will be changed by this instruction.
1055 (i386_gdbarch_init): Set "i386_process_record" to GDBARCH
1056 "process_record" interface.
1057 * i386-tdep.h (gdbarch_tdep): New function pointers
1058 "i386_intx80_record" and "i386_sysenter_record" that point to
1059 the function that can record "intx80" and "sysenter" execute
1062 2009-04-30 Hui Zhu <teawater@gmail.com>
1063 Michael Snyder <msnyder@vmware.com>
1065 * infrun.c (use_displaced_stepping): Return false if process
1066 record and replay target is used.
1067 (proceed): Call function "record_not_record_set" if pocess
1068 record and replay target is used.
1070 2009-04-30 Hui Zhu <teawater@gmail.com>
1071 Michael Snyder <msnyder@vmware.com>
1073 Linux process record and replay support.
1075 * Makefile.in (ALLDEPFILES): Add linux-record.c.
1076 (ALL_TARGET_OBS): Add linux-record.o.
1077 * configure.tgt (x86_64-*-linux*): Add linux-record.o.
1078 (i[34567]86-*-linux*): Add linux-record.o.
1079 * linux-record.c, linux-record.h: New file.
1081 2009-04-30 Hui Zhu <teawater@gmail.com>
1082 Michael Snyder <msnyder@vmware.com>
1084 Process record and replay target.
1086 * Makefile.in (SFILES): Add record.c.
1087 (COMMON_OBS): Add record.o.
1088 * record.c, record.h: New file.
1090 2009-04-30 Hui Zhu <teawater@gmail.com>
1091 Michael Snyder <msnyder@vmware.com>
1093 * target.h (strata): New stratum "record_stratum".
1095 2009-04-30 Hui Zhu <teawater@gmail.com>
1096 Michael Snyder <msnyder@vmware.com>
1098 GDBARCH interface for process record and replay.
1100 * gdbarch.sh (process_record): This interface point to the
1101 function that records the inferior execute log.
1103 2009-04-29 Doug Evans <dje@google.com>
1105 * i386-nat.c (child_post_startup_inferior): Delete, unused.
1107 2009-04-29 Pedro Alves <pedro@codesourcery.com>
1109 * breakpoint.c (print_exception_catchpoint): Access `b' directly
1110 instead of `b->loc->owner'.
1111 (print_mention_exception_catchpoint): Ditto.
1113 2009-04-29 Jan Kratochvil <jan.kratochvil@redhat.com>
1115 * macrocmd.c (info_macro_command): Print -Dname=value if LINE is zero.
1117 2009-04-27 Tom Tromey <tromey@redhat.com>
1119 * c-exp.y (yylex): Handle '[' and ']' like '(' and ')'.
1121 2009-04-27 Jerome Guitton <guitton@adacore.com>
1123 * symtab.c (append_exact_match_to_sals): New function, extracted
1124 from expand_line_sal.
1125 (expand_line_sal): Use append_exact_match_to_sals to append exact
1126 matches. If none found, append all best items.
1128 2009-04-27 Jerome Guitton <guitton@adacore.com>
1130 * main.c (captured_main): Move gdbinit lookups after gdb_init.
1132 2009-04-27 Jan Kratochvil <jan.kratochvil@redhat.com>
1135 * dwarf2read.c (unsigned_int_compar, inherit_abstract_dies): New.
1136 (read_func_scope): Call inherit_abstract_dies.
1138 2009-04-25 Eli Zaretskii <eliz@gnu.org>
1140 * Makefile.in (ALLDEPFILES): Remove duplicate entries for
1141 sparc-sol2-nat.c and sparc-sol2-tdep.c.
1143 * stack.c (_initialize_stack) <disassemble-next-line>: Doc fix.
1145 2009-04-24 Pierre Muller <muller@ics.u-strasbg.fr>
1147 ARI change: Use "/* ARI: rule */" pattern.
1148 * utils.c: Update ARI patterns.
1149 * gdb_dirent.h: Likewise.
1151 2009-04-23 Anthony Green <green@moxielogic.com>
1153 * MAINTAINERS: Add moxie target.
1154 * configure.tgt: Add moxie-*-elf target.
1155 * moxie-tdep.c: New file.
1156 * moxie-tdep.h: New file.
1158 2009-04-23 Joel Brobecker <brobecker@adacore.com>
1160 * ada-lang.c: Remove an extra empty line. No code change.
1162 2009-04-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1164 Fix double free on error inserting the breakpoint instruction.
1165 * breakpoint.c (create_breakpoints): Move the
1166 update_global_location_list call to ...
1167 (break_command_really): ... here together with the second local call
1168 both unified after all the cleanups.
1170 2009-04-23 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
1171 Tom Tromey <tromey@redhat.com>
1173 * configure, config.in: Regenerate.
1174 * configure.ac: Support for relocatable GDB datadir. Use
1175 GDB_AC_WITH_DIR. Always define TARGET_SYSTEM_ROOT_RELOCATABLE.
1176 * acinclude.m4 (GDB_AC_WITH_DIR): New defun.
1177 * top.c (init_main): Add "set data-directory".
1178 * defs.h (gdb_datadir): Declare.
1179 * main.c (gdb_datadir): New global.
1180 (captured_main): Initialize gdb_datadir. Use relocate_directory.
1181 (relocate_path): New function.
1182 (relocate_directory): Likewise.
1183 (get_init_files): Use relocate_path.
1184 (README): Mention --with-gdb-datadir.
1186 2009-04-23 Joel Brobecker <brobecker@adacore.com>
1188 * ada-tasks (task_command_1): Call target_find_new_threads.
1190 2009-04-23 Joel Brobecker <brobecker@adacore.com>
1192 * stack.c (do_gdb_disassembly): Print the exception message if an
1193 error was thrown while trying to perform the disassembly.
1195 2009-04-22 Jan Kratochvil <jan.kratochvil@redhat.com>
1197 * varobj.c (free_variable): Replace free_current_contents by xfree.
1199 2009-04-22 Kazu Hirata <kazu@codesourcery.com>
1201 * arm-linux-nat.c (fetch_register, store_register): Use
1202 ARM_CPSR_GREGNUM instead of ARM_CPSR_REGNUM.
1203 * arm-linux-tdep.c (arm_linux_supply_gregset,
1204 arm_linux_collect_gregset): Likewise.
1205 * arm-linux-tdep.h (ARM_CPSR_GREGNUM): New.
1206 * arm-tdep.h (ARM_CPSR_REGNUM): Remove.
1208 2009-04-22 Hui Zhu <teawater@gmail.com>
1210 * stack.c (_initialize_stack): Set the default of
1211 disassemble-next-line to off.
1213 2009-04-21 Tom Tromey <tromey@redhat.com>
1215 * acinclude.m4: Use AS_HELP_STRING, not AC_HELP_STRING.
1216 * configure.ac: Use AS_HELP_STRING, not AC_HELP_STRING.
1218 2009-04-21 Andreas Schwab <schwab@linux-m68k.org>
1220 * configure.ac: Add quotes to not lose brackets in help text.
1221 * configure: Rebuild.
1223 2009-04-21 Andreas Schwab <schwab@linux-m68k.org>
1225 * configure.ac: Don't postprocess Makefile in config.status.
1226 Substitute GDB_NM_FILE. Don't substitute nm_h.
1227 * Makefile.in (GDB_NM_FILE): Substitute.
1228 (TAGS): Use $(GDB_NM_FILE) instead of $(NAT_FILE).
1229 * configure: Regenerate.
1230 * gnulib/Makefile.in: Regenerate.
1232 2009-04-21 Joseph Myers <joseph@codesourcery.com>
1234 * configure.ac (--with-datarootdir, --with-docdir, --with-pdfdir,
1235 --with-htmldir): New.
1236 * configure: Regenerate.
1238 2009-04-21 Tom Tromey <tromey@redhat.com>
1240 * configure: Rebuild.
1241 * configure.ac: Use lower case for start of help strings. Clean
1242 up --with-sysroot help.
1244 2009-04-21 Tom Tromey <tromey@redhat.com>
1246 * configure: Rebuild.
1247 * acinclude.m4 (AM_ICONV): Use AC_HELP_STRING.
1248 * configure.ac: Use AC_HELP_STRING. Use upper case for variables
1251 2009-04-21 Pierre Muller <muller@ics.u-strasbg.fr>
1253 ARI fix: remove "%p".
1254 * ia64-tdep.c (ia64_frame_this_id): Use host_address_to_string function.
1255 (ia64_sigtramp_frame_this_id): Ditto.
1256 (ia64_libunwind_frame_this_id): Ditto.
1257 (ia64_libunwind_sigtramp_frame_this_id): Ditto.
1258 * symmisc.c (maintenance_info_psymtabs): Ditto.
1260 2009-04-21 Joseph Myers <joseph@codesourcery.com>
1262 * configure.ac (--with-relocated-sources): New.
1263 * configure, config.in: Regenerate.
1264 * source.c (add_substitute_path_rule): Remove static.
1265 * source.h (add_substitute_path_rule): Declare.
1266 * main.c: Include "source.h".
1267 (captured_main): Add substitution rule if RELOC_SRCDIR.
1269 2009-04-21 Pierre Muller <muller@ics.u-strasbg.fr>
1271 * gnu-nat.h (proc_debug): Add missing continuation line in macro.
1273 2009-04-20 David Daney <ddaney@caviumnetworks.com>
1275 * NEWS: Mention MIPS/Linux hardware watchpoint support.
1277 2009-04-20 David Daney <ddaney@caviumnetworks.com>
1279 * mips-linux-nat.c (command.h, gdbcmd.h, gdb_assert.h): New #includes.
1280 (maint_show_dr, super_close): New variables.
1281 (super_fetch_registers, super_store_registers): Make static.
1282 (PTRACE_GET_WATCH_REGS, PTRACE_SET_WATCH_REGS, W_BIT, R_BIT, I_BIT)
1283 (W_MASK, R_MASK, I_MASK, IRW_MASK, MAX_DEBUG_REGISTER): Define.
1284 (pt_watch_style): Define new enum.
1285 (mips32_watch_regs, mips64_watch_regs, pt_watch_regs, mips_watchpoint):
1287 (watch_readback_valid, watch_readback, current_watches, watch_mirror):
1289 (get_irw_mask, get_reg_mask, get_num_valid, get_watchlo)
1290 (set_watchlo, get_watchhi, set_watchhi, mips_show_dr)
1291 (mips_linux_read_watch_registers, mips_linux_can_use_hw_breakpoint)
1292 (mips_linux_stopped_by_watchpoint, mips_linux_stopped_data_address)
1293 (type_to_irw, fill_mask, try_one_watch)
1294 (mips_linux_region_ok_for_hw_watchpoint, write_watchpoint_regs)
1295 (mips_linux_new_thread, populate_regs_from_watches)
1296 (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
1297 (mips_linux_close): New functions.
1298 (_initialize_mips_linux_nat): Register watchpoint functions with
1299 the target_ops. Add show-debug-regs maintenance command.
1301 2009-04-20 David Daney <ddaney@caviumnetworks.com>
1303 * infrun.c (handle_inferior_event): Move gegisters_changed call down.
1305 2009-04-19 Pedro Alves <pedro@codesourcery.com>
1307 * NEWS: Mention gdbserver support for x86 Windows CE.
1309 2009-04-19 Eli Zaretskii <eliz@gnu.org>
1311 * config/djgpp/fnchange.lst: Fix typos.
1313 Set default host and target charsets in the DJGPP port.
1315 * config/djgpp/config.sed (am_cv_langinfo_codeset)
1316 (bash_cv_langinfo_codeset, ac_cv_header_nl_types_h): Set to "yes"
1317 in all configure scripts that define ac_cv_env_CPP_value.
1319 * go32-nat.c (dos_codepage, nl_langinfo): New functions.
1322 * config/djgpp/nl_types.h: New file.
1324 * config/djgpp/langinfo.h: New file.
1326 * config/i386/go32.mh (MH_CFLAGS): Add $(srcdir)/config/djgpp.
1328 2009-04-18 Carlos O'Donell <carlos@codesourcery.com>
1330 * Makefile.in (MAKEHTML): Set to makeinfo --html.
1331 (MAKEHTMLFLAGS): Set to empty.
1333 2009-04-18 Eli Zaretskii <eliz@gnu.org>
1335 * NEWS: Mention all new set/show commands added since GDB 6.8 was
1338 * go32-nat.c (go32_sysinfo): Check if the call to
1339 __dpmi_get_capabilities fills the buffer with information, and
1340 don't use the buffer if not.
1342 2009-04-17 Tom Tromey <tromey@redhat.com>
1344 * charset.c (_initialize_charset): Add special case for "646".
1346 2009-04-17 Carlos O'Donell <carlos@codesourcery.com>
1348 * configure.ac: AC_SUBST datarootdir, docdir, htmldir, pdfdir.
1349 * configure: Regenerate.
1350 * Makefile.in: Set datarootdir, docdir, htmldir, and pdfdir from
1351 configure substitutions.
1352 (FLAGS_TO_PASS): Add datarootdir, docdir, and htmldir.
1354 2009-04-17 Pierre Muller <muller@ics.u-strasbg.fr>
1356 ARI fix: Do not use %p, replace by call to host_address_to_string
1358 * darwin-nat.c (darwin_xfer_partial): Apply change.
1359 * gnu-nat.c (inf_continue, gnu_xfer_memory): Ditto.
1360 * gnu-nat.h (proc_debug): Ditto.
1361 * symmisc.c (maintenance_info_symtabs): Ditto.
1362 (maintenance_info_psymtabs): Ditto.
1363 * windows-nat.c (handle_load_dll): Ditto.
1364 (handle_unload_dll, info_w32_command, handle_exception): Ditto.
1365 * xtensa-tdep.c (xtensa_unwind_pc): Ditto.
1367 2009-04-17 Joseph Myers <joseph@codesourcery.com>
1369 * configure.tgt (i[34567]86-*-linux*): Use 64-bit configuration if
1370 --enable-64-bit-bfd.
1371 (sparc-*-linux*): Likewise.
1373 2009-04-17 Eli Zaretskii <eliz@gnu.org>
1375 * go32-nat.c (go32_sysinfo): Update list of Windows versions of
1378 2009-04-16 Pedro Alves <pedro@codesourcery.com>
1380 * remote.c (remote_query_attached): Fix pasto in packet_ok result
1383 2009-04-16 Joel Brobecker <brobecker@adacore.com>
1385 * procfs.c (solib_mappings_callback, find_memory_regions_callback):
1386 Revert the previous change. Might not be correct, actually.
1388 2009-04-16 Joel Brobecker <brobecker@adacore.com>
1390 * ada-lang.h (ada_adjust_exception_stop, ada_print_exception_stop)
1391 (ada_get_current_task, ada_print_exception_breakpoint_nontask)
1392 (ada_print_exception_breakpoint_task, ada_reset_thread_registers):
1393 Remove declaration. These are non-existent functions.
1395 2009-04-16 Joel Brobecker <brobecker@adacore.com>
1397 * procfs.c (solib_mappings_callback, find_memory_regions_callback):
1398 Fix a compilation warning on mips-irix due to casting from
1399 a pointer of different size.
1401 2009-04-16 Joel Brobecker <brobecker@adacore.com>
1403 * ada-lang.c (symtab_for_sym): Delete.
1404 (user_select_syms): Use sym->symtab instead of calling symtab_for_sym.
1406 2009-04-16 Joel Brobecker <brobecker@adacore.com>
1408 * ada-lang.c (extract_string): Delete.
1409 (ada_main_name): Reimplement using target_read_string instead of
1412 2009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1414 * m68klinux-nat.c: Remove obsolete comment.
1415 (fetch_register, store_register): Don't call
1416 gdbarch_cannot_fetch_register or gdbarch_cannot_store_register,
1417 which are always nops here.
1419 2009-04-14 Tom Tromey <tromey@redhat.com>
1421 * c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING.
1422 (c_printstr): Likewise.
1423 * charset.c: Include gdb_wait.h.
1424 (make_wchar_iterator): Use INTERMEDIATE_ENCODING.
1425 (find_charset_names): Use pexecute. Handle libiconv's output.
1427 (_initialize_charset): Use xstrdup.
1428 * gdb_wchar.h: Check HAVE_BTOWC. Split PHONY_ICONV and wchar
1430 (INTERMEDIATE_ENCODING): New define.
1431 * configure, config.in: Rebuild.
1432 * configure.ac: Check for btowc.
1434 2009-04-15 Tom Tromey <tromey@redhat.com>
1436 * c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP.
1438 2009-04-15 Eli Zaretskii <eliz@gnu.org>
1440 * utils.c (parse_escape): Initialize target_char to pacify GCC.
1442 2009-04-14 Jan Kratochvil <jan.kratochvil@redhat.com>
1444 * c-lang.c (c_get_string): Fix xfree crash on a failed string read.
1446 2009-04-14 Pierre Muller <muller@ics.u-strasbg.fr>
1448 ARI fix: sprintf rule.
1449 * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
1450 * ada-lang.c (add_angle_brackets): Use xstrprintf.
1451 (ada_decode): Replace sprintf by xsnprintf.
1452 (find_old_style_renaming_symbol): Ditto.
1453 (ada_to_fixed_type_1, ada_enum_name): Ditto.
1456 2009-04-14 Joel Brobecker <brobecker@adacore.com>
1458 * target.c (target_mourn_inferior): Call bfd_cache_close_all
1459 after having executed the target mourn_inferior routine.
1461 2009-04-14 Eli Zaretskii <eliz@gnu.org>
1463 * config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if
1466 2009-04-13 David Daney <ddaney@caviumnetworks.com>
1468 * infrun.c (maybe_software_singlestep): New function.
1469 (resume): Call maybe_software_singlestep.
1470 (handle_inferior_event): Same.
1472 2009-04-13 Tom Tromey <tromey@redhat.com>
1474 * python/python-frame.c (frapy_richcompare): Return
1475 Py_NotImplemented, not an error. Handle Py_NE as well.
1477 2009-04-13 Eli Zaretskii <eliz@gnu.org>
1479 * charset.c (EILSEQ): Define if not defined by system headers.
1481 2009-04-11 Eli Zaretskii <eliz@gnu.org>
1483 * config/djgpp/config.sed: Tweak ac_config_files in intl/configure
1484 to be consistent with renaming config.intl.in into config_intl.in.
1486 * go32-nat.c (go32_attach, go32_detach): Fix prototypes to be
1487 consistent with the change from 2008-11-09.
1489 2009-04-10 Jan Kratochvil <jan.kratochvil@redhat.com>
1491 * gdbtypes.c: Remove excessive parentheses at the return keywords.
1492 * varobj.c (varobj_invalidate): Fix indentation.
1493 * varobj.c (varobj_invalidate): Fix formatting text width.
1495 2009-04-08 Vladimir Prus <vladimir@codesourcery.com>
1497 Implement -exec-jump.
1499 * mi/mi-cmds.h (mi_cmd_exec_jump): Declare.
1500 * mi/mi-main.c (mi_cmd_exec_jump): New.
1501 * mi/mi-cmds.c (mi_cmds): Register exec-jump.
1503 2009-04-07 Doug Evans <dje@google.com>
1505 * symfile.c (symbol_file_clear): Fix indentation.
1507 2009-04-06 Mark Kettenis <kettenis@gnu.org>
1509 * sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
1511 2009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
1513 * ppc-linux-nat.c (ppc_linux_target_wordsize): New function.
1514 (ppc_linux_auxv_parse): New function.
1515 (ppc_linux_read_description): Use ppc_linux_target_wordsize.
1516 (_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse.
1518 2009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
1520 * spu-linux-nat.c (spu_bfd_open): Set filename of in-memory
1521 BFD to contents of SPU name note.
1522 (spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd
1523 with "from_tty" argument 1 instead of 0.
1525 2009-04-02 Jan Kratochvil <jan.kratochvil@redhat.com>
1528 (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>):
1529 Create the symbol in local scope.
1530 * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part.
1532 2009-04-02 Keith Seitz <keiths@redhat.com>
1534 * stabsread.c (read_member_functions): GCC may emit an extra space
1535 at the end of the names "__base_ctor" and "__base_dtor"; so ignore
1536 whitespace when looking for these functions.
1538 2009-04-01 Joel Brobecker <brobecker@adacore.com>
1540 Change the default value for "set print frame-arguments" to scalars.
1542 * stack.c (print_frame_arguments): Set initial value to "scalars".
1544 2009-04-01 Aleksandar Ristovski <aristovski@qnx.com>
1546 * mips-tdep.c (mips_numeric_register_alieses): New definition.
1547 (mips_gdbarch_init): Add user registers from
1548 mips_numeric_register_aliases.
1550 2009-04-01 Joel Brobecker <brobecker@adacore.com>
1552 * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
1554 2009-04-01 Joel Brobecker <brobecker@adacore.com>
1556 * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
1557 this is the last one.
1559 2009-04-01 Pedro Alves <pedro@codesourcery.com>
1561 * remote.c (append_resumption): New.
1562 (remote_vcont_resume): Use it.
1564 2009-04-01 Joel Brobecker <brobecker@adacore.com>
1566 * windows-nat.c (+windows_get_ada_task_ptid): New function.
1567 (init_windows_ops): Set windows_ops.to_get_ada_task_ptid.
1569 2009-03-31 Daniel Jacobowitz <dan@codesourcery.com>
1570 Keith Seitz <keiths@redhat.com>
1571 Jan Kratochvil <jan.kratochvil@redhat.com>
1574 * Makefile.in (dbxread.o): Update.
1575 * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string.
1576 * dwarf2read.c (GDB_FORM_cached_string): New.
1577 (read_partial_die): Use dwarf2_canonicalize_name.
1578 (dwarf2_linkage_name): Use dwarf2_name.
1579 (dwarf2_canonicalize_name): New.
1580 (dwarf2_name): Use dwarf2_canonicalize_name.
1581 (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string.
1582 * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string.
1583 * symtab.c (lookup_symbol_in_language): Canonicalize input before
1585 * cp-name-parser.y: operator() requires two parameters,
1586 according to libiberty.
1587 * minsyms.c (lookup_minimal_symbol): Canonicalize input
1591 2009-03-31 Joel Brobecker <brobecker@adacore.com>
1593 Provide support for (Ada) task-specific breakpoints.
1595 * ada-lang.h (ada_get_task_number): Add declaration.
1596 (breakpoint_ada_task_match): Delete declaration.
1597 * ada-tasks.c (ada_get_task_number): Make non-static.
1598 * breakpoint.h (struct breakpoint): Add field "task".
1599 * breakpoint.c (print_one_breakpoint_location): Add handling of
1600 task-specific breakpoints.
1601 (create_breakpoint, create_breakpoints, find_condition_and_thread):
1602 New parameter "task".
1603 (break_command_really): Update calls to find_condition_and_thread
1604 and create_breakpoints.
1605 (breakpoint_re_set_one): Update call to find_condition_and_thread.
1608 2009-03-31 Joel Brobecker <brobecker@adacore.com>
1610 * ada-tasks.c (short_task_info): Eliminate the "Running" task state.
1612 2009-03-31 Pedro Alves <pedro@codesourcery.com>
1614 * remote.c (remote_notice_new_inferior): Use ptid_is_pid. Check
1615 if the thread's ptid without a thread id field is in the list
1616 before calling thread_change_ptid.
1617 (extended_remote_attach_1): In non-stop mode, do not rely on
1618 querying the current thread, instead, query the thread list, and
1619 select the first thread of the process.
1620 * gdbthread.h (first_thread_of_process): Declare.
1621 * thread.c (first_thread_of_process): Define.
1623 2009-03-30 Stan Shebs <stan@codesourcery.com>
1625 Make tracepoints into a type of breakpoint.
1626 * breakpoint.h (enum bptype): Add bp_tracepoint.
1627 (struct breakpoint): Add fields step_count, pass_count, actions.
1628 (get_tracepoint, get_tracepoint_by_number): Declare.
1629 (all_tracepoints): Declare.
1630 * breakpoint.c: Include tracepoint.h, readline.h.
1631 (ALL_TRACEPOINTS): Move here from tracepoint.c.
1632 (tracepoint_count): Ditto.
1633 (should_be_inserted): GDB does not insert tracepoints itself.
1634 (print_it_typical): Add tracepoint case.
1635 (bpstat_what): Ditto.
1636 (print_one_breakpoint_location): Ditto, and add printing for
1637 pass count, step count, and action list.
1638 (user_settable_breakpoint): Add tracepoint case.
1639 (allocate_bp_location): Ditto.
1640 (set_breakpoint_location_function): Ditto.
1641 (disable_breakpoints_in_shlibs): Ditto.
1643 (break_command_really): Add argument traceflag, use to choose
1644 basic breakpoint type.
1645 (break_command_1): Pass extra argument.
1646 (set_breakpoint, handle_gnu_v3_exceptions): Ditto.
1647 (breakpoint_re_set_one): Add tracepoint case.
1648 (disable_command, enable_command): Ditto.
1649 (set_tracepoint_count): Move here from tracepoint.c.
1650 (trace_command): Move here from tracepoint.c and use
1651 break_command_really.
1652 (tracepoints_info): Move here from tracepoint.c and call
1654 (enable_trace_command): Move here from tracepoint.c and call
1656 (disable_trace_command): Move here from tracepoint.c and call
1658 (delete_trace_command): Move here from tracepoint.c and call
1660 (trace_pass_command): Move here from tracepoint.c.
1661 (get_tracepoint_by_number): Ditto.
1662 (tracepoint_save_command): Ditto.
1663 (get_tracepoint): New function.
1664 (all_tracepoints): New function.
1665 (_initialize_breakpoint): Move tracepoint init from tracepoint.c,
1666 deprecate "enable trace" and "disable trace" commands.
1667 * tracepoint.h (struct tracepoint): Remove.
1668 (tracepoint_chain): Remove decl.
1669 (deprecated_create_tracepoint_hook): Remove decl.
1670 (deprecated_delete_tracepoint_hook): Remove decl.
1671 (deprecated_modify_tracepoint_hook): Remove decl.
1672 (ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove.
1673 (free_actions): Update signature.
1674 (validate_actionline): Update signature.
1675 (end_actions_pseudocommand): Declare.
1676 (while_stepping_pseudocommand): Declare.
1677 * tracepoint.c: Include breakpoint.h.
1678 (tracepoint_chain, tracepoint_count): Remove.
1679 (free_actions, make_cleanup_free_actions): Update signature.
1680 (trace_command, set_raw_tracepoint): Remove.
1681 (trace_mention): Remove.
1682 (tracepoints_info): Remove.
1683 (tracepoint_operation, map_args_over_tracepoints): Remove.
1684 (get_tracepoint_by_number): Remove.
1685 (enable_trace_command, disable_trace_command): Remove.
1686 (delete_trace_command, trace_pass_command): Remove.
1687 (trace_actions_command, read_actions): Update signature.
1688 (validate_actionline): Update signature, use bp loc.
1689 (encode_actions): Ditto.
1690 (download_tracepoint): New function, body of trace_start_command.
1691 (trace_start_command): Call it, use all_tracepoints.
1692 (tracepoint_save_command): Remove.
1693 (tracepoint_dump_command): Use get_tracepoint.
1694 (end_actions_pseudocommand): Make globally visible.
1695 (while_stepping_pseudocommand): Ditto.
1696 (_initialize_tracepoint): Move command definitions to breakpoint.c.
1698 2009-03-30 Thiago Jung Bauermann <bauerman@br.ibm.com>
1700 Expose frames to Python.
1701 * Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o.
1702 (SUBDIR_PYTHON_SRCS): Add python-frame.c.
1703 (python-frame.o): New target.
1704 * python/python-frame.c: New file.
1705 * python/python-internal.h (gdbpy_frames, gdbpy_newest_frame,
1706 gdbpy_frame_stop_reason_string, gdbpy_selected_frame,
1707 gdbpy_initialize_frames): New prototypes.
1708 * python/python.c (_initialize_python): Call gdbpy_initialize_frames.
1709 (GdbMethods): Add `selected_frame' and `frame_stop_reason_string'
1711 * stack.c (find_frame_funname): New function, factored out of
1713 (print_frame): Call find_frame_funname.
1714 * stack.h (find_frame_funname): Add prototype.
1716 2009-03-29 Thiago Jung Bauermann <bauerman@br.ibm.com>
1718 Remove unused value_object attribute `owned_by_gdb'.
1719 * python/python-value.c (value_object): Remove owned_by_gdb
1721 (valpy_dealloc): Remove reference to self->owned_by_gdb.
1722 (valpy_new): Likewise.
1723 (value_to_value_object): Likewise.
1725 2009-03-29 Thiago Jung Bauermann <bauerman@br.ibm.com>
1727 Change gdb.Value.address from a method to an attribute.
1728 * python/python-value.c (value_object): Add `address' element.
1729 (valpy_dealloc): Decrement reference to self->address if set.
1730 (valpy_new): Initialize val_obj->address.
1731 (valpy_address): Rename to ...
1732 (valpy_get_address): ... this. Change signature from method to
1733 attribute. Update self->address if not set.
1734 (value_to_value_object): Initialize val_obj->address.
1735 (value_object_getset): Add `address' element.
1736 (value_object_methods): Remove `address' element.
1738 2009-03-29 Andreas Schwab <schwab@linux-m68k.org>
1740 * observer.sh: Set LANG/LC_ALL to C, not c.
1742 2009-03-28 Kevin Buettner <kevinb@redhat.com>
1744 * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
1747 2009-03-28 Pedro Alves <pedro@codesourcery.com>
1749 * remote.c (remote_stop_ns): If multi-process extensions are off,
1750 and GDB is requesting the whole process to stop, sent "vCont;t",
1753 2009-03-28 Pedro Alves <pedro@codesourcery.com>
1755 * inf-loop.c (inferior_event_handler): Avoid calling is_running on
1758 2009-03-27 Eli Zaretskii <eliz@gnu.org>
1760 * config/djgpp/fnchange.lst: Update to fix ARI-reported problems.
1762 2009-03-26 Doug Evans <dje@google.com>
1764 * thread.c (do_restore_current_thread_cleanup): Redo test for
1765 whether to restore old->inferior_ptid.
1767 2009-03-26 Tom Tromey <tromey@redhat.com>
1769 * breakpoint.c (resolve_sal_pc): Preserve original line number
1770 when skipping prologue.
1772 2009-03-26 Doug Evans <dje@google.com>
1774 * thread.c (inferior_thread) Remove "extern" in definition.
1776 2009-03-26 Thiago Jung Bauermann <bauerman@br.ibm.com>
1778 Add gdb.Value.is_optimized_out attribute.
1779 * python/python-value.c (valpy_get_is_optimized_out): New
1781 (value_object_getset): New variable.
1782 (value_object_type): Initialize tp_getset element.
1784 2009-03-26 Joel Brobecker <brobecker@adacore.com>
1786 Recognize missing DW_AT_location as <value optimized out>.
1788 (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>):
1789 Call add_symbol_to_list.
1791 2009-03-25 Tom Tromey <tromey@redhat.com>
1793 * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
1794 * stack.c (print_this_frame_argument_p): Use check_typedef.
1796 2009-03-25 Tom Tromey <tromey@redhat.com>
1798 * configure: Rebuild.
1799 * acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv.
1800 Rearrange flags setting. Add comments.
1802 2009-03-25 Pierre Muller <muller@ics.u-strasbg.fr>
1804 * config/i386/nm-i386.h: Remove code within
1805 I386_WATCHPOINTS_IN_TARGET_VECTOR conditional.
1806 * config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR
1808 * config/i386/nm-cygwin64.h: Ditto.
1809 * config/i386/nm-fbsd.h: Ditto.
1810 * config/i386/nm-go32.h: Ditto.
1811 * config/i386/nm-linux.h: Ditto.
1812 * config/i386/nm-linux64.h: Ditto.
1814 2009-03-25 Pierre Muller <muller@ics.u-strasbg.fr>
1816 ARI fix: "xasprintf" rule.
1817 * printcmd.c (sym_info): Replace xasprintf by xstrprintf.
1819 2009-03-25 Pedro Alves <pedro@codesourcery.com>
1821 * remote.c (remote_start_remote): In non-stop mode, call
1822 init_wait_for_inferior before adding threads and inferiors.
1824 2009-03-25 Joel Brobecker <brobecker@adacore.com>
1826 * breakpoint.c (breakpoint_thread_match): Split a large condition
1827 into several smaller conditions. No behavior change.
1829 2009-03-25 Pedro Alves <pedro@codesourcery.com>
1831 * infrun.c (infrun_thread_thread_exit): New.
1832 (_initialize_infrun): Attach it to the thread_exit observer.
1833 * thread.c (delete_thread_1): Always call the observer, passing it
1835 * mi/mi-interp.c (mi_thread_exit): Add "silent" parameter. If
1836 SILENT, return immediately.
1838 2009-03-25 Pedro Alves <pedro@codesourcery.com>
1840 * infrun.c (normal_stop): Use has_stack_frames instead of
1842 * mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread
1843 when there is no thread selected.
1844 (mi_cmd_execute): Don't special case commands that can run without
1845 a valid selected thread.
1846 * top.c (execute_command): Don't special case commands that can
1847 run without a valid selected thread. Use has_stack_frames.
1848 * infcmd.c (ensure_valid_thread): New.
1849 (continue_1, step_1, jump_command, signal_command): Use it.
1850 (detach_command): Error out if there's no selected thread/inferior.
1851 * thread.c (print_thread_info): Allow having no thread selected.
1852 (switch_to_thread): Don't read the PC if there is no current thread.
1853 (do_restore_current_thread_cleanup): Don't record the current
1854 frame if there is no current thread.
1855 (make_cleanup_restore_current_thread): Don't read frame info if
1856 there is no selected thread.
1857 (_initialize_thread): Don't mark commands as
1858 "no_selected_thread_ok".
1859 * frame.c (get_current_frame): Error out if there is no valid
1861 (has_stack_frames): Return false if there is no valid
1863 * cli/cli-cmds.c (init_cli_cmds): Don't mark commands as
1864 "no_selected_thread_ok".
1865 * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
1866 (get_cmd_no_selected_thread_ok): Delete.
1867 * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete.
1868 (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
1870 * stack.c (get_selected_block): Use has_stack_frames.
1872 2009-03-25 Thiago Jung Bauermann <bauerman@br.ibm.com>
1874 Fix size of FPSCR in Power 7 processors.
1875 * ppc-linux-nat.c (PPC_FEATURE_ARCH_2_05): Remove #define.
1876 (PPC_FEATURE_HAS_DFP): New #define.
1877 (ppc_linux_read_description): Check for DFP feature instead of
1878 ISA 2.05 to decide on size of the FPSCR.
1880 2009-03-25 Kevin Buettner <kevinb@redhat.com>
1882 * mn10300-tdep.c (trad-frame.h): Don't include.
1883 (prologue-value.h): Include.
1884 (mn10300_frame_unwind_cache, set_reg_offsets): Delete.
1885 (struct mn10300_prologue): Define.
1886 (push_reg, translate_rreg, check_for_saved): New functions.
1887 (mn10300_analyze_prologue): Rewrite, using prologue-value
1888 machinery. Handle more instructions than before. Permit
1889 instructions to occur in any order.
1890 (mn10300_skip_prologue): Find the extents of the function
1891 in question; mn10300_analyze_prologue no longer does this.
1892 (mn10300_analyze_frame_prologue): New function.
1893 (mn10300_frame_base): New function.
1894 (mn10300_frame_this_id): Rewrite, no longer using trad-frame
1896 (mn10300_frame_prev_register): Likewise.
1897 (mn10300_frame_base_address, mn10300_frame_base struct): Delete.
1898 (mn10300_unwind_pc, mn10300_unwind_sp): Rename `next_frame' to
1900 (mn10300_frame_unwind_init): Don't call frame_base_set_default().
1902 2009-03-25 Pierre Muller <muller@ics.u-strasbg.fr>
1904 Fix completer problem for filename completion on the first try.
1906 * gdb/completer.h (gdb_completion_word_break_characters): New function.
1907 * gdb/completer.c: Include gdb_assert.h.
1908 (complete_line_internal_reason): New enum.
1909 (complete_line_internal): Change last argument type to
1910 complete_line_internal_reason.
1911 Modify function to handle the different complete_line_internal_reason
1913 (complete_line): Adapt to change in complete_line_internal.
1914 (command_completer): Ditto.
1915 (gdb_completion_word_break_characters): Implement new function.
1916 * top.c (init_main): Set rl_completion_word_break_hook to
1917 gdb_completion_word_break_characters.
1920 2009-03-25 Pierre Muller <muller@ics.u-strasbg.fr>
1922 ARI fix: "strlen d_name" rule.
1923 * linux-nat.c (linux_nat_xfer_osdata): Use NAMELEN macro.
1926 2009-03-24 Tom Tromey <tromey@redhat.com>
1927 Pedro Alves <pedro@codesourcery.com>
1929 * configure, config.in: Rebuild.
1930 * configure.ac: Check for libiconvlist.
1931 * charset.c: Check HAVE_LIBICONVLIST.
1932 * acinclude.m4 (AM_ICONV): Don't subst LIBICONV, LIBICONV_INCLUDE,
1933 LIBICONV_LIBDIR. Update CPPFLAGS and LIBS.
1934 * Makefile.in (LIBICONV, LIBICONV_INCLUDE, LIBICONV_LIBDIR):
1936 (INTERNAL_CFLAGS_BASE): Update.
1937 (INTERNAL_LDFLAGS): Update.
1940 2009-03-24 Jan Kratochvil <jan.kratochvil@redhat.com>
1942 * configure.ac: Initialize the variable $PREFER_CURSES.
1943 * configure: Regenerated.
1945 2009-03-24 Jan Kratochvil <jan.kratochvil@redhat.com>
1947 * configure.ac: Enable $PREFER_CURSES even with default $ENABLE_TUI.
1948 * configure: Regenerated.
1950 2009-03-24 Pierre Muller <muller@ics.u-strasbg.fr>
1952 ARI fix: "strerror" rule.
1953 * darwin-nat.c (darwin_ptrace): Use safe_strerror.
1954 (darwin_stop_inferior, darwin_attach, darwin_detach): Ditto.
1956 2009-03-23 Joel Brobecker <brobecker@adacore.com>
1958 * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
1959 before looking up the fields inside our struct type.
1961 2009-03-23 Joel Brobecker <brobecker@adacore.com>
1963 * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
1964 trying to resolve the type qualification.
1966 2009-03-23 Joel Brobecker <brobecker@adacore.com>
1968 * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure
1969 we try to apply the attribute on the real type, rather than
1970 its associated typedef.
1972 2009-03-23 Joel Brobecker <brobecker@adacore.com>
1974 * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef
1975 to make sure we try to get the modulus of the actual type, not the
1978 2009-03-23 Joel Brobecker <brobecker@adacore.com>
1980 * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST]
1981 [OP_ATR_LENGTH]: When using the attribute on a type, make sure
1982 to get the real type, not the associated typedef.
1984 2009-03-23 Joel Brobecker <brobecker@adacore.com>
1986 * ada-lang.c (ada_get_field_index): Add handling of the case
1987 when TYPE is a typedef of a struct.
1989 2009-03-23 Joel Brobecker <brobecker@adacore.com>
1991 Add gdb_usleep as a portable version of usleep based on gdb_select.
1992 * gdb_usleep.h, gdb_usleep.c: New files.
1993 * Makefile.in (SFILES): Add gdb_usleep.c.
1994 (HFILES_NO_SRCDIR): Add gdb_usleep.h.
1995 (COMMON_OBS): Add gdb_usleep.o.
1996 * ser-unix.c (hardwire_send_break): Replace call to gdb_select
1997 by call to gdb_usleep.
1999 2009-03-23 Joel Brobecker <brobecker@adacore.com>
2001 * buildsym.c (end_symtab): If we ignore the subfiles, then
2002 unlink the associated symtabs if they were already allocated.
2004 2009-03-23 Jerome Guitton <guitton@adacore.com>
2006 Provide a way to force building of GDB with libcurses.
2007 * configure.ac: Add --with-curses.
2008 * configure: Regenerated.
2010 2009-03-23 Tom Tromey <tromey@redhat.com>
2012 * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_uninit>: Fix typo in
2015 2009-03-23 Paul Pluzhnikov <ppluzhnikov@google.com>
2017 * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Use
2018 solib_contains_address_p instead of searching.
2020 2009-03-23 Tom Tromey <tromey@redhat.com>
2022 * charset.c (ICONV_CONST) <PHONY_ICONV>: Define.
2023 (iconv): Make 'inbuf' argument const.
2024 (convert_between_encodings): Use ICONV_CONST.
2025 (wchar_iterate): Likewise.
2027 2009-03-22 Christopher Faylor <me+cygwin@cgf.cx>
2029 * windows-nat.c (AdjustTokenPrivileges): Implement macro wraparound for
2030 dynamically loaded function.
2031 (LookupPrivilegeValueA): Ditto.
2032 (OpenProcessToken): Ditto.
2033 (AdjustTokenPrivileges): Rename and define placeholder for address of
2034 dynamically loaded function.
2035 (LookupPrivilegeValueA): Ditto.
2036 (OpenProcessToken): Ditto.
2037 (set_process_privilege): Remove check for loaded functions.
2038 (bad_OpenProcessToken): Define.
2039 (_initialize_loadable): Load token functions from advapi here, setting
2040 OpenProcessToken function to a dummy static function which always return
2041 error if OS doesn't support this functionality.
2043 2009-03-22 Nicolas Roche <roche@adacore.com>
2044 Christopher Faylor <me+cygwin@cgf.cx>
2046 * win32-nat.c (ctrl_c_handler): New function.
2047 (win32_wait): Register ctrl_c_handler as Ctrl-C handler if the inferior
2048 is run in a separate console.
2050 2009-03-22 Christopher Faylor <me+cygwin@cgf.cx>
2052 * windows-nat.c (DebugActiveProcessStop): Implement macro wraparound
2053 for dynamically loaded function.
2054 (DebugBreakProcess): Ditto.
2055 (DebugSetProcessKillOnExit): Ditto.
2056 (EnumProcessModules): Ditto.
2057 (GetModuleFileNameExA): Ditto.
2058 (GetModuleInformation): Ditto.
2059 (DebugActiveProcessStop): Rename and define placeholder for address of
2060 dynamically loaded function.
2061 (DebugBreakProcess): Ditto.
2062 (DebugSetProcessKillOnExit): Ditto.
2063 (EnumProcessModules): Ditto.
2064 (GetModuleFileNameExA): Ditto.
2065 (GetModuleInformation): Ditto.
2066 (psapi_loaded): Delete.
2067 (get_module_name): Don't check psapi_loaded, just rely on the fact that
2068 dynamically loaded functions will return failure if they weren't
2070 (has_detach_ability): Delete.
2071 (windows_attach): Remove call to has_detach_ability (). Just rely on
2072 functions being callable.
2073 (bad_DebugActiveProcessStop): Define.
2074 (bad_DebugBreakProcess): Ditto.
2075 (bad_DebugSetProcessKillOnExit): Ditto.
2076 (bad_EnumProcessModules): Ditto.
2077 (bad_GetModuleFileNameExA): Ditto.
2078 (bad_GetModuleInformation): Ditto.
2079 (_initialize_loadable): Rename from _initialize_psapi. Initialize all
2080 dynamic storage here, setting nonexistent functions to dummy static
2081 functions which always return error.
2083 2009-03-22 Pedro Alves <pedro@codesourcery.com>
2085 * mi/mi-interp.c (mi_interpreter_init): Attach mi_about_to_proceed
2086 to the about_to_proceed observer notification.
2087 (mi_about_to_proceed): New.
2088 (mi_on_resume): Only output ^running and the prompt here if the
2089 target was proceeded.
2090 * breakpoint.c (breakpoint_proceeded): New static.
2091 (breakpoint_about_to_proceed): New.
2092 (_initialize_breakpoints): Attach breakpoint_about_to_proceed to
2093 the about_to_proceed observer notification.
2094 * inferior.h (breakpoint_proceeded): Delete declaration.
2095 * infrun.c (clear_proceed_status): Don't set breakpoint_proceeded.
2096 Notify the about_to_proceed observers.
2097 (struct inferior_status): Delete breakpoint_proceeded member.
2098 (save_inferior_status): Don't save it.
2099 (restore_inferior_status): Don't restore it.
2100 * mi-main.h (mi_proceeded): Declare.
2101 * mi/mi-main.c (mi_cmd_execute): Clear mi_proceeded before running
2104 2009-03-22 Pedro Alves <pedro@codesourcery.com>
2106 * gdbthread.h (struct thread_info): Add in_infcall member.
2107 * infcall.c (run_inferior_call): Save, set and restore in_infcall.
2108 Remove reverences to suppress_resume_observer. Refresh
2109 `call_thread' after returning from `proceed'.
2110 * infcmd.c (suppress_resume_observer): Delete.
2111 * inferior.h (suppress_resume_observer): Delete declaration.
2112 * mi/mi-interp.c (mi_on_resume): Suppress output while calling an
2114 * thread.c (set_running): Remove references to
2115 suppress_resume_observer.
2116 * infrun.c (struct inferior_status): Add in_infcall member.
2117 (save_inferior_status): Save it.
2118 (restore_inferior_status): Restore it.
2120 2009-03-22 Pedro Alves <pedro@codesourcery.com>
2122 * infcall.c (run_inferior_call): Remove references to
2123 suppress_stop_observer.
2124 * infcmd.c (suppress_stop_observer): Delete.
2125 (finish_command_continuation): Remove NOTE. Don't clear
2126 suppress_stop_observer anymore.
2127 (finish_command_continuation_free_arg): Likewise.
2128 (finish_forward): Remove references to suppress_stop_observer.
2129 Call normal_stop observer if we haven't already.
2130 * inferior.h (suppress_stop_observer): Delete.
2131 * infrun.c (normal_stop): When deciding to suppress the
2132 normal_stop observer, check for proceed_to_finish instead of
2133 suppress_stop_observer.
2135 2009-03-22 Pedro Alves <pedro@codesourcery.com>
2137 * symfile.c (symfile_relocate_debug_section): Remove check for
2140 2009-03-21 Jan Kratochvil <jan.kratochvil@redhat.com>
2141 Jim Blandy <jimb@red-bean.com>
2142 Thiago Jung Bauermann <bauerman@br.ibm.com>
2143 Tom Tromey <tromey@redhat.com>
2145 Miscellaneous fixes to the Python code.
2146 * python/python-cmd.c (cmdpy_init): Accept keyword
2148 * python/python-value.c (valpy_string): Accept keyword
2150 (valpy_binop): Use `break' to exit from the TRY_CATCH block.
2151 Do not call value_to_value_object on NULL RES_VAL.
2152 (value_object_methods): Change `string' entry to also accept
2154 (convert_value_from_python): Return a copy of the value if obj is
2156 (value_object_methods): Mark the `string' method as accepting
2157 keywords, and show method "prototype" in the doc string.
2158 * python/python.c (get_parameter): Don't return inside a
2161 2009-03-20 Tom Tromey <tromey@redhat.com>
2163 Add support for convenience functions in Python.
2164 * Makefile.in (SUBDIR_PYTHON_OBS): Add python-function.o.
2165 (SUBDIR_PYTHON_SRCS): Add python-function.c.
2166 (python-function.o): New target.
2167 * eval.c: Include "python/python.h" and <ctype.h>.
2168 (evaluate_subexp_standard): Handle values of type
2169 TYPE_CODE_INTERNAL_FUNCTION.
2170 * gdbtypes.h (type_code): Add TYPE_CODE_INTERNAL_FUNCTION.
2171 * parse.c (write_exp_string): Remove duplicate word in comment.
2172 * python/python-function.c: New file.
2173 * python/python-internal.h (gdbpy_initialize_functions): Add
2175 * python/python.c (_initialize_python): Call
2176 gdbpy_initialize_functions.
2177 * valprint.c (value_check_printable): Handle values of type
2178 TYPE_CODE_INTERNAL_FUNCTION.
2179 * value.c: Include "cli/cli-decode.h".
2180 (internal_function): New struct.
2181 (functionlist, internal_fn_type): New static variables.
2182 (lookup_only_internalvar,
2183 lookup_internalvar): Add const qualifier to name argument.
2184 (create_internalvar): Likewise. Initialize new field.
2185 (set_internal_var): Fix typo in comment. Don't allow assignment
2186 to canonical variable.
2187 (value_create_internal_function, value_internal_function_name,
2188 call_internal_function, function_command, function_destroyer,
2189 add_internal_function): New functions.
2190 (_initialize_values): Create `function' placeholder command.
2191 Initialize internal_fn_type.
2192 * value.h (lookup_only_internalvar, create_internalvar,
2193 lookup_internalvar): Add const qualifier to name argument.
2194 (internal_function_fn, add_internal_function, call_internal_function,
2195 value_internal_function_name): Add prototypes.
2196 (struct internalvar) <canonical>: New field.
2198 2009-03-20 Tom Tromey <tromey@redhat.com>
2200 * c-lang.c (evaluate_subexp_c): Call check_typedef.
2202 2009-03-20 Tom Tromey <tromey@redhat.com>
2203 Julian Brown <julian@codesourcery.com>
2205 PR i18n/7220, PR i18n/7821, PR exp/8815, PR exp/9103,
2206 PR i18n/9401, PR exp/9613:
2208 * value.h (value_typed_string): Declare.
2209 (val_print_string): Update.
2210 * valprint.h (print_char_chars): Update.
2211 * valprint.c (print_char_chars): Add type argument. Update.
2212 (val_print_string): Likewise.
2213 * valops.c (value_typed_string): New function.
2214 * utils.c (host_char_to_target): New function.
2215 (parse_escape): Use host_char_to_target, host_hex_value. Update.
2217 (no_control_char_error): Remove.
2218 * typeprint.c (print_type_scalar): Update.
2219 * scm-valprint.c (scm_scmval_print): Update.
2220 * scm-lang.h (scm_printchar, scm_printstr): Update.
2221 * scm-lang.c (scm_printchar): Add type argument.
2222 (scm_printstr): Likewise.
2223 * printcmd.c (print_formatted): Update.
2224 (print_scalar_formatted): Update.
2225 (printf_command) <wide_string_arg, wide_char_arg>: New constants.
2226 Handle '%lc' and '%ls'.
2227 * parser-defs.h (struct typed_stoken): New type.
2228 (struct stoken_vector): Likewise.
2229 (write_exp_string_vector): Declare.
2230 * parse.c (write_exp_string_vector): New function.
2231 * p-valprint.c (pascal_val_print): Update.
2232 * p-lang.h (is_pascal_string_type, pascal_printchar,
2233 pascal_printstr): Update.
2234 * p-lang.c (is_pascal_string_type): Remove 'char_size' argument.
2235 Add 'char_type' argument.
2236 (pascal_emit_char): Add type argument.
2237 (pascal_printchar): Likewise.
2238 (pascal_printstr): Likewise.
2239 * objc-lang.c (objc_emit_char): Add type argument.
2240 (objc_printchar): Likewise.
2241 (objc_printstr): Likewise.
2242 * macroexp.c (get_character_constant): Handle unicode characters.
2244 (get_string_literal): Handle unicode strings. Use
2246 * m2-valprint.c (print_unpacked_pointer): Update.
2247 (m2_print_array_contents): Update.
2248 (m2_val_print): Update.
2249 * m2-lang.c (m2_emit_char): Add type argument.
2250 (m2_printchar): Likewise.
2251 (m2_printstr): Likewise.
2252 * language.h (struct language_defn) <la_printchar>: Add type
2254 <la_printstr, la_emitchar>: Likewise.
2255 (LA_PRINT_CHAR): Likewise.
2256 (LA_PRINT_STRING): Likewise.
2257 (LA_EMIT_CHAR): Likewise.
2258 * language.c (unk_lang_emit_char): Add type argument.
2259 (unk_lang_printchar): Likewise.
2260 (unk_lang_printstr): Likewise.
2261 * jv-valprint.c (java_val_print): Update.
2262 * jv-lang.c (java_emit_char): Add type argument.
2263 * f-valprint.c (f_val_print): Update.
2264 * f-lang.c (f_emit_char): Add type argument.
2265 (f_printchar): Likewise.
2266 (f_printstr): Likewise.
2267 * expprint.c (print_subexp_standard): Update.
2268 * charset.h (target_wide_charset): Declare.
2269 (c_target_char_has_backslash_escape, c_parse_backslash,
2270 host_char_print_literally, host_char_to_target,
2271 target_char_to_host, target_char_to_control_char): Remove.
2272 (enum transliterations): New type.
2273 (convert_between_encodings): Declare.
2274 (HOST_ESCAPE_CHAR): New define.
2275 (host_letter_to_control_character, host_hex_value): Declare.
2276 (enum wchar_iterate_result): New enum.
2277 (struct wchar_iterator): Declare.
2278 (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
2279 wchar_push_back): Declare.
2280 * charset-list.h: New file.
2281 * c-valprint.c (textual_name): New function.
2282 (textual_element_type): Handle wide character types.
2283 (c_val_print): Pass original type to textual_element_type. Handle
2284 wide character types.
2285 (c_value_print): Use textual_element_type. Pass original type of
2287 * c-lang.h (enum c_string_type): New type.
2288 (c_printchar, c_printstr): Update.
2289 * c-lang.c (classify_type): New function.
2290 (print_wchar): Likewise.
2291 (c_emit_char): Add type argument. Handle wide characters.
2292 (c_printchar): Likewise.
2293 (c_printstr): Add type argument. Handle wide and multibyte
2295 (convert_ucn): New function.
2296 (emit_numeric_character): Likewise.
2297 (convert_octal): Likewise.
2298 (convert_hex): Likewise.
2299 (ADVANCE): New macro.
2300 (convert_escape): New function.
2301 (parse_one_string): Likewise.
2302 (evaluate_subexp_c): Likewise.
2303 (exp_descriptor_c): New global.
2304 (c_language_defn): Use exp_descriptor_c.
2305 (cplus_language_defn): Likewise.
2306 (asm_language_defn): Likewise.
2307 (minimal_language_defn): Likewise.
2308 (charset_for_string_type): New function.
2309 * c-exp.y (%union): Add 'svec' and 'tsval'.
2311 (exp): Add CHAR production.
2312 (string_exp): Rewrite.
2313 (exp) <string_exp>: Rewrite.
2314 (tempbuf): Now global.
2315 (tempbuf_init): New global.
2316 (parse_string_or_char): New function.
2317 (yylex) <tempbuf>: Now global.
2318 <tokptr, tempbufindex, tempbufsize, token_string, class_prefix>:
2320 Handle 'u', 'U', and 'L' prefixes. Call parse_string_or_char.
2321 (c_parse_escape): New function.
2322 * auxv.c (fprint_target_auxv): Update.
2323 * ada-valprint.c (ada_emit_char): Add type argument.
2324 (ada_printchar): Likewise.
2325 (ada_print_scalar): Update.
2326 (printstr): Add type argument. Update calls to ada_emit_char.
2327 (ada_printstr): Add type argument.
2328 (ada_val_print_array): Update.
2329 (ada_val_print_1): Likewise.
2330 * ada-lang.c (emit_char): Add type argument.
2331 * ada-lang.h (ada_emit_char, ada_printchar, ada_printstr): Add
2333 * gdb_locale.h: Include langinfo.h.
2334 * charset.c (_initialize_charset): Set default host charset from
2335 the locale. Don't register charsets. Add target-wide-charset
2336 commands. Call find_charset_names.
2337 (struct charset, struct translation): Remove.
2338 (GDB_DEFAULT_HOST_CHARSET): Remove.
2339 (GDB_DEFAULT_TARGET_WIDE_CHARSET): New define.
2340 (target_wide_charset_name): New global.
2341 (show_host_charset_name): Handle "auto".
2342 (show_target_wide_charset_name): New function.
2343 (host_charset_enum, target_charset_enum): Remove.
2344 (charset_enum): New global.
2345 (all_charsets, register_charset, lookup_charset, all_translations,
2346 register_translation, lookup_translation): Remove.
2347 (simple_charset, ascii_print_literally, ascii_to_control): Remove.
2348 (iso_8859_print_literally, iso_8859_to_control,
2349 iso_8859_family_charset): Remove.
2350 (ebcdic_print_literally, ebcdic_to_control,
2351 ebcdic_family_charset): Remove.
2352 (struct cached_iconv, check_iconv_cache, cached_iconv_convert,
2353 register_iconv_charsets): Remove.
2354 (target_wide_charset_be_name, target_wide_charset_le_name): New
2356 (identity_either_char_to_other): Remove.
2357 (set_be_le_names, validate): New functions.
2358 (backslashable, backslashed, represented): Remove.
2359 (default_c_target_char_has_backslash_escape): Remove.
2360 (default_c_parse_backslash, iconv_convert): Remove.
2361 (ascii_to_iso_8859_1_table, ascii_to_ebcdic_us_table,
2362 ascii_to_ibm1047_table, iso_8859_1_to_ascii_table,
2363 iso_8859_1_to_ebcdic_us_table, iso_8859_1_to_ibm1047_table,
2364 ebcdic_us_to_ascii_table, ebcdic_us_to_iso_8859_1_table,
2365 ebcdic_us_to_ibm1047_table, ibm1047_to_ascii_table,
2366 ibm1047_to_iso_8859_1_table, ibm1047_to_ebcdic_us_table): Remove.
2367 (table_convert_char, table_translation, simple_table_translation):
2369 (current_host_charset, current_target_charset,
2370 c_target_char_has_backslash_escape_func,
2371 c_target_char_has_backslash_escape_baton): Remove.
2372 (c_parse_backslash_func, c_parse_backslash_baton): Remove.
2373 (host_char_to_target_func, host_char_to_target_baton): Remove.
2374 (target_char_to_host_func, target_char_to_host_baton): Remove.
2375 (cached_iconv_host_to_target, cached_iconv_target_to_host):
2377 (lookup_charset_or_error, check_valid_host_charset): Remove.
2378 (set_host_and_target_charsets): Remove.
2379 (set_host_charset, set_target_charset): Remove.
2380 (set_host_charset_sfunc, set_target_charset_sfunc): Rewrite.
2381 (set_target_wide_charset_sfunc): New function.
2382 (show_charset): Print target wide character set.
2383 (host_charset, target_charset): Rewrite.
2384 (target_wide_charset): New function.
2385 (c_target_char_has_backslash_escape): Remove.
2386 (c_parse_backslash): Remove.
2387 (host_letter_to_control_character): New function.
2388 (host_char_print_literally): Remove.
2389 (host_hex_value): New function.
2390 (target_char_to_control_char): Remove.
2391 (cleanup_iconv): New function.
2392 (convert_between_encodings): New function.
2393 (target_char_to_host): Remove.
2394 (struct wchar_iterator): Define.
2395 (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
2396 wchar_push_back): New functions.
2397 (do_cleanup_iterator): New function.
2398 (char_ptr): New typedef.
2399 (charsets): New global.
2400 (add_one, find_charset_names): New functions.
2401 (default_charset_names): New global.
2402 (auto_host_charset_name): Likewise.
2403 * aclocal.m4, config.in, configure: Rebuild.
2404 * configure.ac: Call AM_LANGINFO_CODESET.
2405 (GDB_DEFAULT_HOST_CHARSET): Default to UTF-8.
2406 (AM_ICONV): Invoke earlier.
2407 * acinclude.m4: Include codeset.m4. Subst LIBICONV_INCLUDE and
2408 LIBICONV_LIBDIR. Check for libiconv in build tree.
2409 * Makefile.in (LIBICONV_LIBDIR, LIBICONV_INCLUDE): New macros.
2410 (INTERNAL_CFLAGS_BASE): Add LIBICONV_INCLUDE.
2411 (INTERNAL_LDFLAGS): Add LIBICONV_LIBDIR.
2412 * gdb_obstack.h (obstack_grow_wstr): New define.
2413 * gdb_wchar.h: New file.
2414 * defs.h: Include it.
2416 2009-03-20 Tom Tromey <tromey@redhat.com>
2417 Jan Kratochvil <jan.kratochvil@redhat.com>
2419 * dwarf2read.c (process_die): Handle DW_TAG_typedef.
2420 * eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single
2422 * ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the
2424 * ada-typeprint.c (print_array_type): Do the NULL check
2427 2009-03-19 Tom Tromey <tromey@redhat.com>
2429 * utils.c (do_obstack_free): New function.
2430 (make_cleanup_obstack_free): Likewise.
2431 * defs.h (make_cleanup_obstack_free): Declare.
2433 2009-03-18 Doug Evans <dje@google.com>
2435 * linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an
2436 int, not a long long.
2437 (linux_nat_info_proc_cmd): Store pid in long instead of long long.
2439 * expprint.c (dump_raw_expression): Print note if non-NULL.
2441 * printcmd.c (display_uses_solib_p): Redo loop, scan element list
2444 2009-03-18 Nathan Sidwell <nathan@codesourcery.com>
2446 * Makefile.in: Update license to GPLv3.
2447 * ada-exp.y: Update license to GPLv3.
2448 * ada-lex.l: Update license to GPLv3.
2449 * c-exp.y: Update license to GPLv3.
2450 * cp-name-parser.y: Update license to GPLv3.
2451 * darwin-nat-info.c: Update license to GPLv3.
2452 * f-exp.y: Update license to GPLv3.
2453 * gdb_thread_db.h: Update license to GPLv3.
2454 * hppanbsd-nat.c: Update license to GPLv3.
2455 * hppanbsd-tdep.c: Update license to GPLv3.
2456 * hppaobsd-tdep.c: Update license to GPLv3.
2457 * jv-exp.y: Update license to GPLv3.
2458 * m2-exp.y: Update license to GPLv3.
2459 * objc-exp.y: Update license to GPLv3.
2460 * p-exp.y: Update license to GPLv3.
2461 * reply_mig_hack.awk: Update license to GPLv3.
2462 * reverse.c: Update license to GPLv3.
2463 * xtensa-xtregs.c: Update license to GPLv3.
2465 2009-03-18 Pedro Alves <pedro@codesourcery.com>
2467 * remote.c (remote_close): Don't call generic_mourn_inferior.
2468 (remote_mourn_1): Call generic_mourn_inferior after closing the
2471 2009-03-18 Pedro Alves <pedro@codesourcery.com>
2473 * remote.c (remote_start_remote): Add missing call to
2474 init_wait_for_inferior in non-stop mode.
2476 2009-03-18 Pedro Alves <pedro@codesourcery.com>
2478 * breakpoint.c (bpstat_should_step): Only consider software
2479 watchpoints that have a location.
2481 2009-03-17 Joel Brobecker <brobecker@adacore.com>
2483 Add a target_ops parameter to the to_kill method in struct target_ops.
2485 * target.h (struct target_ops): Add a "target_ops *" parameter to
2487 (target_kill): Remove macro. Add declaration.
2488 * target.c (debug_to_kill): Delete, no longer necessary.
2489 (target_kill): New function.
2490 (update_current_target): Stop inheriting the to_kill method.
2491 Do not de_fault it to no_process either.
2492 (setup_target_debug): Do not set current_target.to_kill.
2493 * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c,
2494 linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c,
2495 remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update
2498 2009-03-17 Doug Evans <dje@google.com>
2500 * amd64-linux-nat.c (si_timerid,si_overrun): Provide definition for
2501 glibc 2.3.2 and earlier.
2503 2009-03-17 Joel Brobecker <brobecker@adacore.com>
2505 * frame.c (get_prev_frame_1): Do not perform the inner_frame
2506 sanity check if this_frame is not NORMAL.
2507 (frame_id_inner): Update the description of this function.
2509 2009-03-17 Hui Zhu <teawater@gmail.com>
2511 * stack.c: Change the introduce of "disassemble-next-line".
2513 2009-03-17 Pedro Alves <pedro@codesourcery.com>
2515 * mi/mi-main.h (mi_print_timing_maybe): Add strict prototype,
2518 2009-03-17 Hui Zhu <teawater@gmail.com>
2520 * stack.c: Include valprint.h.
2521 (disassemble_next_line): New enum.
2522 (show_disassemble_next_line): New function. Show the current
2523 value of disassemble-next-line.
2524 (gdb_disassembly_stub_args): New struct for argument passing
2525 between function do_gdb_disassembly and function
2526 gdb_disassembly_stub.
2527 (gdb_disassembly_stub): New function. Helper for
2529 (do_gdb_disassembly): New function. Use TRY_CATCH to catch
2530 the exception from the gdb_disassembly because it will be
2531 broken by filter sometime.
2532 (print_frame_info): If disassemble-next-line is set to auto
2533 or on and doesn't have the line debug messages for $pc,
2534 output the next instruction.
2535 If disassemble-next-line is set to on and there is line debug
2536 messages, output assembly codes for next line.
2537 (_initialize_stack): Make the "set disassemble-next-line"
2538 command an auto-boolean command. Change its class to
2539 class_stack. Place it in the top level set list. Extend help
2540 to describe the auto mode.
2542 2009-03-17 Pedro Alves <pedro@codesourcery.com>
2544 * infrun.c (normal_stop): Don't overwrite old_chain.
2546 2009-03-16 Joel Brobecker <brobecker@adacore.com>
2548 * remote-mips.c (mips_load): Replace call to regcache_set_valid_p,
2549 which is undefined, by call to regcache_invalidate, which should
2550 do what the original author wanted to do.
2552 2009-03-16 Joel Brobecker <brobecker@adacore.com>
2554 * remote-mips.c (mips_mourn_inferior): Add missing ops parameter.
2555 (mips_create_inferior): Likewise.
2557 2009-03-16 Joel Brobecker <brobecker@adacore.com>
2559 * go32-nat.c (go32_create_inferior): Add missing ops parameter.
2561 2009-03-16 Joel Brobecker <brobecker@adacore.com>
2563 * darwin-nat.c (darwin_resume): Fix a compiler warning when
2564 building on x86_64-darwin.
2566 2009-03-16 Tristan Gingold <gingold@adacore.com>
2568 * configure.tgt: Add handling for x86_64-darwin.
2570 2009-03-16 Jan Kratochvil <jan.kratochvil@redhat.com>
2572 * auxv.c (fprint_target_auxv): New TAG for AT_RANDOM.
2574 2009-03-15 Joel Brobecker <brobecker@adacore.com>
2576 * aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str):
2577 Use the ops parameter to get to the target beneath, rather than
2578 using the current_target global. Using the current_target global
2579 was an unintended accident.
2581 2009-03-15 Joel Brobecker <brobecker@adacore.com>
2583 Fix an error happening while loading symbols from a core file
2586 * rs6000-nat.c (xcoff_relocate_symtab): Use target_has_execution
2587 to detect whether we're debugging a core file or not.
2589 2009-03-15 Joel Brobecker <brobecker@adacore.com>
2591 Modernize the aix-thread later by getting rid of the base_target
2592 global. This brings back to life the AIX port which was otherwise
2593 crashing all the time.
2595 * aix-thread.c (base_target): Delete.
2596 (pd_enable): Do not set base_target.
2597 (aix_thread_attach): Use find_target_beneath instead of base_target.
2598 (aix_thread_detach, aix_thread_resume, aix_thread_wait)
2599 (aix_thread_fetch_registers, aix_thread_store_registers),
2600 (aix_thread_xfer_partial, aix_thread_mourn_inferior)
2601 (aix_thread_thread_alive, aix_thread_pid_to_str): Likewise.
2602 (aix_thread_kill): Delete. Does not seem necessary.
2603 (init_aix_thread_ops): Do not set aix_thread_ops.to_kill.
2605 2009-03-15 Jan Kratochvil <jan.kratochvil@redhat.com>
2607 * stack.c (return_command <retval_exp>): New variables retval_expr
2608 and old_chain. Inline parse_and_eval to initialize retval_expr. Check
2609 RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type
2610 if RETURN_TYPE is NULL.
2612 2009-03-14 Pedro Alves <pedro@codesourcery.com>
2614 * remote.c (PACKET_qAttached): New.
2615 (remote_query_attached): New.
2616 (remote_add_inferior): Add new `attached' argument. Handle it.
2617 (remote_notice_new_inferior, remote_start_remote): Adjust to pass
2618 -1 to remote_add_inferior in new parameter.
2619 (extended_remote_attach_1): Adjust to pass 1 to
2620 remote_add_inferior in the new parameter.
2621 (extended_remote_create_inferior_1): Adjust to pass 0 to
2622 remote_add_inferior in the new parameter.
2623 (_initialize_remote): Add "set/show remote query-attached-packet"
2626 2009-03-13 Tom Tromey <tromey@redhat.com>
2628 * symtab.c (lookup_symbol_in_language): Use a cleanup.
2630 2009-03-13 Doug Evans <dje@google.com>
2632 * exceptions.h: Clean up some comments on catch_exceptions usage.
2633 * exceptions.c: Ditto. Plus mark catch_errors as superseded by
2636 2009-02-17 Joel Brobecker <brobecker@adacore.com>
2638 The following patch helps getting rid of a warning inside solib-som.c.
2640 * source.c (source_full_path_of): Constify parameter filename.
2641 * defs.h (source_full_path_of): Update declaration accordingly.
2643 2009-03-12 Joel Brobecker <brobecker@adacore.com>
2645 * ada-lang.c (ada_evaluate_subexp): Merge case BINOP_REM and
2646 BINOP_MOD cases with the handling of case BINOP_DIV and BINOP_MUL.
2647 Remove useless op value checks when EVAL_AVOID_SIDE_EFFECTS.
2649 2009-03-12 Joel Brobecker <brobecker@adacore.com>
2651 * ada-lang.c (ada_evaluate_subexp) <BINOP_DIV>: make sure to
2652 promote the operands when noside is EVAL_AVOID_SIDE_EFFECTS.
2654 2009-03-12 Joel Brobecker <brobecker@adacore.com>
2656 * ada-tasks.c (ada_task_is_alive): Move up and make static.
2657 * ada-lang.h (ada_task_is_alive): Remove declaration.
2659 2009-03-12 Jerome Guitton <guitton@adacore.com>
2661 * ada-lang.c (ada_delta): Change the type of numerators and
2662 denominators to DOUBLEST, as they may not fit into a long.
2663 (scaling_factor): Ditto.
2665 2009-03-12 Jerome Guitton <guitton@adacore.com>
2667 * language.c (lang_bool_type): Set lai->bool_type_symbol to NULL.
2669 2009-03-12 Joel Brobecker <brobecker@adacore.com>
2671 * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: For tagged
2672 types, if we are unable to determine the actual symbol type
2673 from its tag, then use the static approximation instead.
2675 2009-03-12 Joel Brobecker <brobecker@adacore.com>
2677 Fix crash printing packed record with packed array.
2679 * ada-lang.c (ada_modulus_from_name): New function.
2680 (ada_modulus): In the case where the type length is bigger than
2681 the size of the type used to hold the bounds, try determining
2682 the modulus from the type name.
2683 (ada_value_primitive_packed_val): Fix bug in the computation of
2684 ntarg causing an out-of-buffer invalid access.
2686 2009-03-12 Joel Brobecker <brobecker@adacore.com>
2688 Fix segfault when printing short_integer'last.
2690 * ada-lang.c (ada_find_any_type): Search in the primitive types
2691 if a symbol could not be found.
2693 2009-03-12 Joel Brobecker <brobecker@adacore.com>
2695 * ada-tasks.c (task_states,long_task_states): Add new states
2696 Activating and Acceptor_Delay_Sleep. Update the description
2697 of state Acceptor_Sleep.
2699 2009-03-12 Jonas Maebe <jonas.maebe@elis.ugent.be> (obvious change)
2701 Fix a build failure on Darwin following some changes in
2702 the profile of some target_ops methods.
2704 * darwin-nat.c (darwin_kill_inferior): Add target_ops parameter
2706 (darwin_stop_inferior, darwin_detach): Likewise.
2708 2009-03-12 Vladimir Prus <vladimir@codesourcery.com>
2710 Include token in ^running notification for CLI commands.
2712 * mi/mi-main.c (mi_execute_command): Set current_token here.
2713 (mi_cmd_execute): Do not set current_token here.
2715 2009-03-12 Vladimir Prus <vladimir@codesourcery.com>
2719 * mi/mi-main.c (mi_print_timing_maybe): New.
2720 (captured_mi_execute_command): Simplify. Output timings to
2722 (mi_execute_async_cli_command): Do not print timings.
2723 * mi/mi-main.h (mi_print_timing_maybe): Declare.
2724 * mi/mi-interp.c (mi_on_normal_stop): Call mi_print_timing_maybe.
2726 2009-03-12 Jerome Guitton <guitton@adacore.com>
2728 * xcoffread.c (process_linenos): Check if the line in the
2729 include table refers to the main source file and, if so,
2730 add them to the main subfile.
2732 2009-03-12 Joel Brobecker <brobecker@adacore.com>
2734 Fix a build failure on AIX introduced after a change in the profile
2735 of some of the "methods" in the target_ops structure.
2736 * aix-thread.c: Add missing target_ops parameter throughout.
2738 Implement Ada task switching on AIX.
2739 * aix-thread.c (aix_thread_get_ada_task_ptid): New function.
2740 (init_aix_thread_ops): Set aix_thread_ops.to_get_ada_task_ptid.
2742 2009-03-11 Daniel Jacobowitz <dan@codesourcery.com>
2744 * breakpoint.c (bpstat_check_breakpoint_conditions): Use
2745 value_mark and value_free_to_mark.
2746 * objfiles.c (free_objfile): Call objfile_free_data before
2749 2009-03-10 Hui Zhu <teawater@gmail.com>
2751 * disasm.c (gdb_disassembly): Remove unused argument
2753 * disasm.h (gdb_disassembly): Ditto.
2754 * cli/cli-cmds.c (print_disassembly): Ditto.
2755 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
2757 2009-03-09 Paul Pluzhnikov <ppluzhnikov@google.com>
2759 * solib.c (solib_contains_address_p): New function.
2760 (solib_name_from_address): Use it.
2761 * printcmd.c (display_uses_solib_p): Use it.
2762 * solib.h (solib_contains_address_p): Declare it.
2764 2009-03-09 Jan Kratochvil <jan.kratochvil@redhat.com>
2766 * varobj.c (free_variable): Call value_free.
2768 2009-03-09 Jan Kratochvil <jan.kratochvil@redhat.com>
2771 * dwarf2read.c (dwarf_decode_macros): New variable `at_commandline'.
2772 Move the variable `macinfo_type' out of the loop. Create a new
2773 processing pass before the current one to pre-create `current_file'.
2774 New complaint on misplaced zero/non-zero definitions/includes.
2775 Skip first DW_MACINFO_start_file with `at_commandline' set.
2777 2008-03-09 Vladimir Prus <vladimir@codesourcery.com>
2779 * solib.c (reload_shared_libraries): Give
2780 inferior a chance to reset solib breakpoint.
2783 2009-03-08 Christopher Faylor <me+cygwin@cgf.cx>
2785 * windows-nat.c (dr): Redefine to use largest possible integer which
2787 (cygwin_set_dr): Avoid coercion.
2789 2009-03-08 Oswald Buddenhagen <oswald.buddenhagen@trolltech.de>
2791 * windows-nat.c (windows_create_inferior): Implement --tty handling on
2794 2009-03-06 Paul Pluzhnikov <ppluzhnikov@google.com>
2796 Rename solib_address to solib_name_from_address.
2797 * breakpoint.c (insert_bp_location, disable_breakpoints_in_shlibs)
2798 (disable_breakpoints_in_unloaded_shlib): Update.
2799 * printcmd.c (display_uses_solib_p): Likewise.
2800 * stack.c (print_frame): Likewise.
2804 2009-03-05 Paul Pluzhnikov <ppluzhnikov@google.com>
2806 * printcmd.c (do_one_display): Reparse exp_string.
2807 (display_uses_solib_p): New function.
2808 (clear_dangling_display_expressions): New function.
2809 (_initialize_printcmd): Add observer.
2810 * solib.c (no_shared_libraries): Swap order of calls to
2811 clear_solib and objfile_purge_solibs.
2813 2009-03-05 Joel Brobecker <brobecker@adacore.com>
2815 Implement the target-specific part of Ada tasking support
2818 * dec-thread.c (dec_thread_get_ada_task_ptid): New function.
2819 (init_dec_thread_ops): Set the to_get_ada_task_ptid method.
2821 2009-03-05 Joel Brobecker <brobecker@adacore.com>
2823 Get rid of the global "base_target" and use "find_target_beneath"
2824 to find the underlying target.
2825 * dec-thread.c (base_target): Delete.
2826 (enable_dec_thread): Remove assignement to base_target.
2827 (dec_thread_detach, dec_thread_wait, dec_thread_wait)
2828 (dec_thread_fetch_registers, dec_thread_store_registers)
2829 (dec_thread_mourn_inferior, dec_thread_pid_to_str):
2830 Update the function profile if necessary.
2831 Use find_target_beneath to call the same method but from
2832 the underlying target, removing the need for "base_target".
2834 * dec-thread.c (dec_thread_get_regsets, dec_thread_set_regsets):
2835 Fix a copy/paste error in a few debug traces...
2837 * solib-osf.c (init_so): Use a simpler method for computing
2838 the size of lm_info structure. This also gets rid of warning
2839 emitted by the compiler.
2841 2009-03-05 Pedro Alves <pedro@codesourcery.com>
2843 * breakpoint.c (check_duplicates_for): Skip permanent breakpoints
2844 duplicates of permanent breakpoints.
2846 2009-03-04 Pedro Alves <pedro@codesourcery.com>
2848 * inferior.h (notice_new_inferior): Declare.
2849 * infcmd.c (notice_new_inferior): New.
2850 * remote.c (remote_add_inferior, remote_add_thread): New.
2851 (notice_new_inferiors): Rename to...
2852 (remote_notice_new_inferior): ... this. Add RUNNING argument.
2853 Use remote_add_thread instead of add_thread, passing it the
2854 RUNNING argument. Add an inferior with remote_add_inferior. If
2855 we just learned about an inferior, call notice_new_inferior.
2856 (record_currthread): Adjust.
2857 (remote_threads_info): Adjust to use remote_notice_new_inferior.
2858 (remote_start_remote, extended_remote_attach_1): Use
2859 remote_add_inferior.
2860 (process_stop_reply): Adjust. Call remote_notice_new_inferior
2861 after handling expedited registers and watchpoint state.
2862 (extended_remote_create_inferior_1): Use remote_add_inferior.
2864 2009-03-04 Aleksandar Ristovski <aristovski@qnx.com>
2866 * infcmd.c (registers_info): Remove register number case.
2868 2009-03-03 Pedro Alves <pedro@codesourcery.com>
2870 * top.c (quit_target): Check for target_has_execution before
2871 killing or detaching from inferiors.
2873 2009-03-02 Joel Brobecker <brobecker@adacore.com>
2875 Remove some unused routines.
2877 * ada-lang.c (is_suppressed_name, ada_suppress_symbol_printing):
2879 * ada-lang.c (ada_task_list_iterator_ftype)
2880 (iterate_over_live_ada_tasks): Delete.
2881 * ada-tasks.c (ada_get_environment_task, iterate_over_live_ada_tasks):
2884 2009-03-01 Doug Evans <dje@google.com>
2886 * symtab.c: Remove trailing whitespace throughout the file.
2887 (expand_line_sal): Fix some typos and whitespace.
2889 * Makefile.in (clean): rm -f $(DEPDIR)/*.
2891 * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common.
2892 (init.c): signals/ -> common/.
2893 (signals.o): Update.
2894 * target.h (target_signal_to_string,target_signal_to_string)
2895 (target_signal_from_name,target_signal_to_host_p)
2896 (target_signal_from_host,target_signal_to_host): Move to ...
2897 * common/gdb_signals.h: ... here. New file.
2898 * common/signals.c: Moved here from signals/signals.c.
2899 #include gdb_signals.h, remove #include of target.h in gdb case.
2900 (target_signal_from_command,default_target_signal_to_host)
2901 (default_target_signal_from_host): Move inside #ifndef GDBSERVER.
2903 Include thread ID in target_wait debugging output.
2904 * infrun.c (print_target_wait_results): New function.
2905 (wait_for_inferior,fetch_inferior_event): Call it.
2907 2009-02-27 Pedro Alves <pedro@codesourcery.com>
2909 * gdb_proc_service.h (struct ps_prochandle): Replace pid_t field
2910 with a ptid_t field.
2911 * linux-thread-db.c (thread_get_info_callback): Build the ptid
2912 using the pid stored in proc_handle.ptid.
2913 (thread_from_lwp, thread_db_attach_lwp, enable_thread_event)
2914 (check_for_thread_db, thread_db_detach, check_event)
2915 (thread_db_mourn_inferior, find_new_threads_callback)
2916 (thread_db_find_new_threads_1): Adjust.
2917 * proc-service.c (ps_xfer_memory, ps_lgetregs, ps_lsetregs)
2918 (ps_lgetfpregs, ps_lsetfpregs, ps_getpid): Adjust.
2920 2009-02-27 Phil Muldoon <pmuldoon@redhat.com>
2922 * valprint.c (read_string): Rework clean-up logic. Use
2923 free_current_contents to clean-up buffer.
2925 2009-02-27 Andreas Schwab <schwab@linux-m68k.org>
2927 * MAINTAINERS: Update e-mail address.
2929 2009-02-26 Phil Muldoon <pmuldoon@redhat.com>
2931 * python/python-utils.c (python_string_to_unicode): Always return
2933 (python_string_to_target_string): Decrement transient python
2935 (python_string_to_host_string): Likewise.
2937 2007-02-26 Pedro Alves <pedro@codesourcery.com>
2939 * mips-linux-nat.c (mips64_linux_fetch_registers): Pass `ops' to
2940 call to super_fetch_registers.
2941 (mips64_linux_store_registers): Pass `ops' to call to
2942 super_store_registers.
2944 2009-02-25 Doug Evans <dje@google.com>
2946 * breakpoint.c (insert_bp_location): Add \n to overlay breakpoint
2949 * breakpoint.c (disable_breakpoints_in_shlibs): Delete local
2950 disabled_shlib_breaks, unused.
2952 * printcmd.c (build_address_symbolic): Fix comment.
2954 2009-02-25 Hui Zhu <teawater@gmail.com>
2956 * cli/cli-script.c (define_command): Add _() to query.
2957 * gnu-nat.c (inf_validate_task_sc): Ditto.
2958 * infcmd.c (kill_if_already_running): Ditto.
2959 (jump_command): Ditto.
2960 (attach_command): Ditto.
2961 * inflow.c (kill_command): Ditto.
2962 * infrun.c (handle_command): Ditto.
2963 * maint.c (maintenance_dump_me): Ditto.
2964 * memattr.c (mem_delete_command): Ditto.
2965 * monitor.c (monitor_interrupt_query): Ditto.
2966 * nto-procfs.c (interrupt_query): Ditto.
2967 * printcmd.c (undisplay_command): Ditto.
2968 * remote-mips.c (mips_kill): Ditto.
2969 * remote.c (interrupt_query): Ditto.
2970 * solib-irix.c (irix_open_symbol_file_object): Ditto.
2971 * solib-osf.c (osf_open_symbol_file_object): Ditto.
2972 * solib-pa64.c (pa64_open_symbol_file_object): Ditto.
2973 * solib-som.c (som_open_symbol_file_object): Ditto.
2974 * solib-svr4.c (open_symbol_file_object): Ditto.
2975 * symfile.c (symbol_file_add_with_addrs_or_offsets): Ditto.
2976 * target.c (kill_or_be_killed): Ditto.
2977 * tracepoint.c (delete_trace_command): Ditto.
2978 * top.c (quit_confirm): Add _() to s that will be used
2981 2009-02-24 Pierre Muller <muller@ics.u-strasbg.fr>
2983 Fix windows-nat.c compilation failure.
2985 * windows-nat.c (windows_thread_alive): Fix forward declaration.
2986 (get_windows_debug_event): Add ops parameter to call to windows_resume.
2988 2009-02-23 Pedro Alves <pedro@codesourcery.com>
2990 * remote-sim.c (gdbsim_resume): Add target_ops* argument.
2992 2009-02-23 Jay Krell <jay.krell@cornell.edu> (tiny change)
2994 * symtab.c (find_line_symtab): Initialize exact to avoid
2997 2009-02-23 Pedro Alves <pedro@codesourcery.com>
2999 * i386-linux-nat.c (i386_linux_fetch_inferior_registers): Pass
3000 `ops' to recursive call.
3002 2009-02-23 Pedro Alves <pedro@codesourcery.com>
3004 * corelow.c (get_core_registers): Adjust.
3005 (core_file_thread_alive): Rename to...
3006 (core_thread_alive): ... this.
3007 (core_pid_to_str): Try gdbarch_core_pid_to_str first.
3008 (init_core_ops): Adjust.
3009 (coreops_suppress_target): Delete.
3010 (_initialize_corelow): Unconditionally add core_ops.
3011 * procfs.c: Include "inf-child.h".
3012 (procfs_ops): Delete.
3013 (init_procfs_ops): Delete. Reimplement as...
3014 (procfs_target): ... this, inheriting from inf-child.
3015 (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust.
3016 (procfs_prepare_to_store): Delete.
3017 (procfs_store_registers, procfs_resume): Adjust.
3018 (procfs_open): Delete.
3019 (procfs_suppress_run): Delete.
3020 (procfs_can_run): Delete.
3021 (procfs_mourn_inferior): Adjust.
3022 (procfs_init_inferior): Add target_ops parameter. Adjust.
3023 (procfs_create_inferior): Don't pass procfs_init_inferior to
3024 fork_inferior. Instead call it after fork_inferior returns.
3025 (procfs_find_new_threads): Adjust.
3026 (_initialize_procfs): Adjust to use procfs_target instead of
3028 * sol-thread.c (orig_core_ops, sol_core_ops): Delete.
3029 (lwp_to_thread): Use target_thread_alive.
3030 (sol_thread_open): Delete.
3031 (sol_thread_attach): Delete.
3032 (sol_thread_detach, sol_thread_resume, sol_thread_wait)
3033 (sol_thread_fetch_registers, sol_thread_store_registers): Adjust
3034 to use find_target_beneath.
3035 (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete.
3036 (sol_thread_xfer_partial): Adjust to use find_target_beneath.
3037 (sol_thread_files_info, sol_thread_kill_inferior): Delete.
3038 (check_for_thread_db): New.
3039 (sol_thread_notice_signals, sol_thread_create_inferior): Delete.
3040 (sol_thread_new_objfile): Call check_for_thread_db.
3041 (sol_thread_mourn_inferior): Adjust to use find_target_beneath.
3042 (sol_thread_can_run): Delete.
3043 (sol_thread_alive): Adjust to use find_target_beneath.
3044 (sol_thread_stop): Delete.
3045 (rw_common): Use target_write_memory or target_read_memory.
3046 (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers.
3047 (ps_lsetregs, ps_lsetfpregs): Use target_store_registers.
3048 (solaris_pid_to_str): Remove check for libthread_db initialization
3050 (sol_find_new_threads): Remove check for libthread_db
3051 initialization failing, or for an invalid inferior_ptid. Adjust
3052 to use find_target_beneath.
3053 (sol_core_open, sol_core_close, sol_core_detach,
3054 sol_core_files_info, sol_find_memory_regions,
3055 sol_make_note_section, ignore): Delete.
3056 (init_sol_thread_ops): Make it a thread_stratum target. Remove
3057 unneeded callback settings.
3058 (init_sol_core_ops): Delete.
3059 (_initialize_sol_thread): No longer call init_sol_core_ops, set
3060 procfs_suppress_run, or hack with core_ops.
3062 * target.h (struct target_ops): Add a target_ops * parameter to
3063 to_resume, to_fetch_registers, to_store_registers, to_thread_alive
3064 and to_find_new_threads.
3065 (target_fetch_registers, target_store_registers)
3066 (target_thread_alive, target_find_new_threads): Redeclare as
3069 * target.c (update_current_target): Do not inherit or de_fault
3070 to_resume, to_fetch_registers, to_store_registers,
3071 to_thread_alive, to_find_new_threads.
3072 (target_resume): Adjust.
3073 (target_thread_alive, target_find_new_threads): New.
3074 (debug_to_resume, debug_to_fetch_registers): Delete.
3075 (target_fetch_registers): New.
3076 (debug_to_store_registers): Delete.
3077 (target_store_registers): New.
3078 (debug_to_thread_alive, debug_to_find_new_threads): Delete.
3079 (setup_target_debug): Adjust.
3081 * gdbcore.h (core_ops): Delete declaration.
3083 * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c,
3084 inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c,
3085 i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c,
3086 hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c,
3087 nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c,
3088 alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c,
3089 bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c,
3090 hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c,
3091 ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c,
3092 m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c,
3093 mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c,
3094 ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c,
3095 shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c,
3096 vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes.
3098 * gdbarch.sh (core_pid_to_str): New gdbarch callback.
3099 * gdbarch.h, gdbarch.c: Regenerate.
3101 * sol2-tdep.c: Include "inferior.h".
3102 (sol2_core_pid_to_str): New.
3103 * sol2-tdep.h (sol2_core_pid_to_str): Declare.
3105 * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
3106 * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
3107 * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
3108 * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
3110 2009-02-22 Doug Evans <dje@google.com>
3112 * exec.c (exec_file_attach): Fix comment.
3114 2009-02-22 Pedro Alves <pedro@codesourcery.com>
3116 Silence a few -Wmissing-prototypes warnings.
3119 * alpha-linux-tdep.c (alpha_linux_regset_from_core_section): Make
3121 * alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Declare.
3122 * amd64fbsd-tdep.c (amd64fbsd_init_abi): Make it static.
3123 * amd64nbsd-tdep.c (_initialize_amd64nbsd_ndep): Rename to ...
3124 (_initialize_amd64nbsd_tdep): ... this.
3125 * arm-linux-tdep.c (arm_linux_software_single_step): Make it static.
3126 (_initialize_arm_linux_tdep): Declare.
3127 * armbsd-tdep.c (armbsd_fpreg_offset): Make it static.
3128 * armnbsd-tdep.c (_initialize_arm_netbsd_tdep): Declare.
3129 * armobsd-tdep.c (_initialize_armobsd_tdep): Declare.
3130 * avr-tdep.c (avr_return_value): Make it static.
3131 (avr_frame_unwind_cache): Ditto.
3132 * bsd-uthread.c (bsd_uthread_inferior_created): Ditto.
3133 (bsd_uthread_solib_loaded): Ditto.
3134 (bsd_uthread_solib_unloaded): Ditto.
3135 (bsd_uthread_target): Ditto.
3136 (_initialize_bsd_uthread): Declare.
3137 * cris-tdep.c (crisv32_single_step_through_delay): Make it static.
3138 (cris_frame_unwind_cache): Ditto.
3139 * frv-tdep.c (frv_return_value): Ditto.
3140 * h8300-tdep.c (h8300_use_struct_convention): Ditto.
3141 (h8300h_use_struct_convention): Ditto.
3142 * hppa-tdep.c (hppa_sign_extend, hppa_low_hppa_sign_extend):
3144 * hppa-tdep.h (hppa_low_sign_extend, hppa_sign_extend): Delete
3146 * hppabsd-tdep.c: Include hppabsd-tdep.h.
3147 (hppabsd_find_global_pointer): Make it static.
3148 * hppabsd-tdep.h: New.
3149 * hppanbsd-tdep.c: Include hppabsd-tdep.h.
3150 (hppabsd_init_abi): Remove declaration.
3151 (_initialize_hppabsd_tdep): Remove declaration.
3152 (_initialize_hppanbsd_tdep): Declare.
3153 * hppaobsd-tdep.c: Include hppabsd-tdep.h.
3154 (hppabsd_init_abi): Delete declaration.
3155 (hppaobsd_init_abi): Make it static.
3156 * i386-nto-tdep.c (_initialize_i386nto_tdep): Declare.
3157 * i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Declare.
3158 * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Declare.
3159 * ia64-tdep.c (ia64_register_reggroup_p): Make it static.
3160 * iq2000-tdep.c (_initialize_iq2000_tdep): Declare.
3161 * m32c-tdep.c (m32c_register_reggroup_p): Make it static.
3162 (m32c_analyze_prologue, m32c_virtual_frame_pointer): Ditto.
3163 (_initialize_m32c_tdep): Declare.
3164 * m32r-rom.c (_initialize_m32r_rom): Declare.
3165 * m32r-tdep.c (m32r_skip_prologue): Make it static.
3166 (m32r_return_value): Ditto.
3167 * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Make it static.
3168 (m68hc11_return_value): Ditto.
3169 * m68klinux-tdep.c (_initialize_m68k_linux_tdep): Declare.
3170 * m88k-tdep.c (m88k_frame_cache): Make it static.
3171 * mep-tdep.c (mep_gdb_print_insn): Ditto.
3172 (mep_return_value): Ditto.
3173 (_initialize_mep_tdep): Declare.
3174 * mips-irix-tdep.c (_initialize_mips_irix_tdep): Declare.
3175 * mips-linux-tdep.c (supply_64bit_reg): Make it static.
3176 (mips_linux_syscall_next_pc): Ditto.
3177 (_initialize_mips_linux_tdep): Declare.
3178 * mips-tdep.c (mips_single_step_through_delay): Make it static.
3179 * mipsnbsd-tdep.c (_initialize_mipsnbsd_tdep): Declare.
3180 * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Declare.
3181 * mn10300-tdep.c (_initialize_mn10300_tdep): Declare.
3182 * mt-tdep.c (_initialize_mt_tdep): Declare.
3183 * nbsd-tdep.c: Include nbsd-tdep.h.
3184 * nto-tdep.c (find_load_phdr): Make it static.
3185 (_initialize_nto_tdep): Declare.
3186 * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make it
3188 (_initialize_ppc_linux_tdep): Declare.
3189 * remote-m32r-sdi.c (m32r_can_use_hw_watchpoint)
3190 (m32r_insert_watchpoint, m32r_remove_watchpoint)
3191 (m32r_stopped_data_address, m32r_stopped_by_watchpoint): Make
3193 * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Declare.
3194 * rs6000-nat.c: Include xcoffread.h.
3195 (find_toc_address): Don't extern declare get_toc_offset. Adjust
3196 to call xcoff_get_to_offset.
3197 * rs6000-tdep.c (ppc_vsx_support_p, ppc_displaced_step_fixup)
3198 (rs6000_skip_main_prologue, rs6000_in_solib_return_trampoline)
3199 (rs6000_skip_trampoline_code): Make static.
3200 * s390-tdep.c (s390_regset_from_core_section): Ditto.
3201 * sh-tdep.c (sh_register_reggroup_p): Ditto.
3202 * shnbsd-tdep.c (shnbsd_regset_from_core_section): Ditto.
3203 (_initialize_shnbsd_tdep): Declare.
3204 * solib-frv.c (displacement_from_map): Make static.
3205 (_initialize_frv_solib): Declare.
3206 * solib-irix.c (fetch_lm_info): Make static.
3207 (_initialize_irix_solib): Declare.
3208 * solib-som.c: Include solib-som.h.
3209 (som_solib_select): Line break.
3210 * sparc-tdep.c (sparc_regset_from_core_section): Make static.
3211 * sparcnbsd-tdep.c (_initialize_sparnbsd_tdep): Rename to ...
3212 (_initialize_sparcnbsd_tdep): ... this.
3213 * spu-tdep.c (spu_software_single_step): Make it static.
3214 (_initialize_spu_tdep): Declare.
3215 * vax-tdep.c (vax_frame_cache): Make it static.
3216 * xcoffread.c: Include xcoffread.h.
3217 (get_toc_offset): Rename to ...
3218 (xcoff_get_toc_offset): ... this.
3219 (_initialize_xcoffread): Declare.
3221 * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Declare.
3222 * xtensa-tdep.c (xtensa_skip_prologue, xtensa_derive_tdep): Make
3224 (_initialize_xtensa_tdep): Declare.
3226 2008-02-21 Pedro Alves <pedro@codesorcery.com>
3228 Silence a few -Wmissing-prototypes warnings.
3231 * amd64-nat.c: Include "amd64-nat.h".
3232 * fork-child.c (_initialize_fork_child): Ditto.
3233 * gcore.c (_initialize_gcore): Ditto.
3234 * inf-ptrace.c: Include "inf-ptrace.h".
3235 (inf_ptrace_store_registers): Make it static.
3236 * linux-nat.c (linux_nat_terminal_ours): Make it static.
3237 (_initialize_linux_nat): Declare before definition.
3238 * linux-tdep.c: Include "linux-tdep.h".
3239 * linux-thread-db.c (_initialize_thread_db): Declare before
3241 * proc-service.c (_initialize_proc_service): Ditto.
3242 * remote.c (remote_send_printf): Make it static.
3243 * solib.c: Include "solib.h".
3244 * symfile-mem.c (_initialize_symfile_mem): Declare before
3246 * ada-lang.c (ada_la_decode, ada_match_name)
3247 (ada_suppress_symbol_printing, ada_is_array_type)
3248 (ada_value_ptr_subscript, ada_array_length)
3249 (ada_to_static_fixed_value): Make them static.
3250 (_initialize_ada_language): Declare before definition.
3251 * ada-tasks.c (ada_get_task_number, ada_get_environment_task)
3252 (ada_task_list_changed, ada_new_objfile_observer): Make them
3254 (_initialize_tasks): Declare before definition.
3255 * addrmap.c (_initialize_addrmap): Declare before definition.
3256 * auxv.c (default_auxv_parse): Make it static.
3257 * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make
3259 * breakpoint.c (remove_sal): Add line break.
3260 (expand_line_sal_maybe): Make it static.
3261 * cp-name-parser.y: Include "cp-support.h".
3262 * cp-valprint.c (cp_find_class_member): Make it static.
3263 * eval.c (value_f90_subarray): Ditto.
3264 * exceptions.c (print_any_exception): Ditto.
3265 * findcmd.c (_initialize_mem_search): Declare before definition.
3266 * frame.c (frame_observer_target_changed): Make it static.
3267 * gnu-v3-abi.c (gnuv3_find_method_in): Make it static.
3268 * inf-child.c: Include "inf-child.h".
3269 * inferior.h (valid_inferior_id): Rename to ...
3270 (valid_gdb_inferior_id): ... this.
3271 * infrun.c (infrun_thread_stop_requested, siginfo_make_value):
3273 * jv-lang.c (java_language_arch_info): Make it static.
3274 * m2-typeprint.c (m2_get_discrete_bounds): Ditto.
3275 * osdata.c (info_osdata_command): Make it static.
3276 * regcache.c (regcache_observer_target_changed): Make it static.
3277 * reverse.c (_initialize_reverse): Declare before definition.
3278 * stabsread.c (cleanup_undefined_types_noname)
3279 (cleanup_undefined_types_1): Make them static.
3280 * symfile.c (place_section): Make it static.
3281 * symtab.c (find_pc_sect_psymtab_closer): Make it static.
3282 * target-descriptions.c (_initialize_target_descriptions): Declare
3284 * target.c (default_get_ada_task_ptid, find_default_can_async_p)
3285 (find_default_is_async_p, find_default_supports_non_stop): Make
3287 (target_supports_non_stop): Add prototype.
3288 (dummy_pid_to_str): Make it static.
3289 * utils.c (_initialize_utils): Declare before definition.
3290 * ada-exp.y (_initialize_ada_exp): Declare before definition.
3291 * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype.
3292 * target.h (struct target_ops): Add a prototype to the
3293 to_can_execute_reverse callback.
3294 * macroscope.c (_initialize_macroscope): Declare before definition.
3295 * cp-namespace.c (_initialize_cp_namespace): Declare before definition.
3296 * python/python.c (_initialize_python): Declare before definition.
3297 * tui/tui-command.c: Include "tui/tui-command.h".
3298 * tui/tui-data.c (init_content_element, init_win_info): Make them
3300 * tui/tui-disasm.c: Include "tui/tui-disasm.h".
3301 * tui/tui-interp.c (_initialize_tui_interp): Declare before
3303 * tui/tui-layout.c: Include "tui/tui-layout.h".
3304 (_initialize_tui_layout): Declare before definition.
3305 * tui/tui-regs.c: Include "tui/tui-regs.h".
3306 (tui_display_reg_element_at_line): Make it static.
3307 (_initialize_tui_regs): Declare before definition.
3308 * tui/tui-stack.c (_initialize_tui_stack): Declare before
3310 * tui/tui-win.c: Include "tui/tui-win.h".
3311 (_initialize_tui_win): Declare before definition.
3312 (tui_sigwinch_handler): Make it static. Wrap in ifdef SIGWINCH.
3313 * tui/tui-win.h (tui_sigwinch_handler): Delete declaration.
3314 (tui_get_cmd_list): Add a prototype.
3315 * tui/tui-windata.c: Include tui-windata.h.
3316 * tui/tui-wingeneral.c (box_win): Make it static.
3317 * cli/cli-logging.c (show_logging_command): Make it static.
3318 (_initialize_cli_logging): Declare before definition.
3319 * mi/mi-common.c (_initialize_gdb_mi_common): Declare before
3322 2009-02-20 Pierre Muller <muller@ics.u-strasbg.fr>
3324 Extend use of i386_use_watchpoints to all i386 native files
3325 using hardware watchpoints.
3326 * go32-nat.c (init_go32_ops): Call i386_use_watchpoints.
3327 * i386fbsd-nat.c (_initialize_i386fbsd_nat): Ditto.
3328 * windows-nat.c (init_windows_ops): Ditto.
3329 * config/i386/nm-cygwin.h: Define I386_WATCHPOINTS_IN_TARGET_VECTOR.
3330 * config/i386/nm-cygwin64.h: Ditto.
3331 * config/i386/nm-fbsd.h: Ditto.
3332 * config/i386/nm-go32.h: Ditto.
3334 2009-02-19 Joel Brobecker <brobecker@adacore.com>
3336 * ada-typeprint.c (ada_typedef_print): Remove. Unused.
3338 2009-02-18 Vladimir Prus <vladimir@codesourcery.com>
3340 * mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New.
3341 (mi_interpreter_init): Register the above.
3342 * solib.c (clear_solib): Notify solib unload.
3343 * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not
3344 disable breakpoints on a.out targets.
3346 2009-02-17 Vladimir Prus <vladimir@codesourcery.com>
3348 * observer.c (observer_test_first_notification_function)
3349 (observer_test_second_notification_function)
3350 (observer_test_third_notification_function): Adjust prototype.
3352 2009-02-17 Pedro Alves <pedro@codesourcery.com>
3354 * Makefile.in (ALL_64_TARGET_OBS): Add amd64-dicos-tdep.o.
3355 (ALL_TARGET_OBS): Add dicos-tdep.o.
3356 (ALLDEPFILES): Add amd64-dicos-tdep.c and dicos-tdep.c.
3357 * configure.tgt (i[34567]86-*-dicos*): Add dicos-tdep.o to
3359 (x86_64-*-dicos*): Add dicos-tdep.o and amd64-dicos-tdep.o to
3361 * dicos-tdep.h, dicos-tdep.c: New.
3362 * amd64-dicos-tdep.c: New.
3363 * i386-dicos-tdep.c: Don't include solib.h, solib-target.h or
3364 inferior.h. Include dicos-tdep.h.
3365 (i386_dicos_init_abi): Call dicos_init_abi.
3366 (i386_dicos_bfd_has_symbol_p): Delete.
3367 (i386_dicos_osabi_sniffer): Use dicos_load_module_p.
3369 * NEWS: Mention x86-64 DICOS target support.
3371 2009-02-16 Doug Evans <dje@google.com>
3373 * amd64-tdep.c (amd64_skip_prefixes): Renamed from skip_prefixes.
3374 All callers updated.
3375 (amd64_get_insn_details): Handle more 3-byte opcode insns.
3376 (amd64_breakpoint_p): Delete.
3377 (amd64_displaced_step_fixup): When fixing up after stepping an int3,
3378 don't back up pc to the start of the int3.
3379 * i386-tdep.c: #include opcode/i386.h.
3380 (i386_skip_prefixes): New function.
3381 (i386_absolute_jmp_p): Constify argument.
3382 (i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto.
3383 (i386_breakpoint_p): Delete.
3384 (i386_displaced_step_fixup): Handle unnecessary or redundant prefixes.
3385 When fixing up after stepping an int3, don't back up pc to the start
3388 2009-02-16 Pedro Alves <pedro@codesourcery.com>
3390 * corelow.c (core_close): Don't hardcode the core's pid.
3391 (core_open): Find core threads before calling
3392 post_create_inferior.
3393 (add_to_thread_list, get_core_register_section): Take into account
3394 systems where the regset section names encode the pid of the
3397 * gdbarch.sh (core_reg_section_encodes_pid): New gdbarch setting.
3398 * gdbarch.h, gdbarch.c: Regenerate.
3400 * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
3401 * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
3402 * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
3403 * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
3405 2009-02-14 Vladimir Prus <vladimir@codesourcery.com>
3407 Include frame information for *stopped due to CLI commands.
3409 * ada-tasks.c (ada_normal_stop_observer): Adjust prototype.
3410 * infcmd.c (finish_command_continuation): Pass '1' for
3411 'print_frame' parameter to the observer.
3412 * infrun.c (normal_stop): Don't print mi-specific information
3413 here. Pass 'stop_print_frame' to the 'print_frame' parameter
3415 * mi/mi-interp.c (mi_on_normal_stop): Adjust prototype.
3416 If we need to print frame, and current uiout is not the MI one,
3419 2009-02-13 Pierre Muller <muller@ics.u-strasbg.fr>
3421 * xtensa-tdep.c (call0_analyze_prologue): Delete BSZ macro.
3422 Replace BSZ macro uses by XTENSA_ISA_BSZ macro.
3424 2009-02-12 Jan Kratochvil <jan.kratochvil@redhat.com>
3427 * dwarf2read.c (process_die <DW_TAG_module>, read_module)
3428 (scan_partial_symbols <DW_TAG_module>, add_partial_module): New.
3430 2009-02-11 Pierre Muller <muller@ics.u-strasbg.fr>
3432 * dwarf2read.c (read_base_type): Set code to TYPE_CODE_CHAR
3433 for DW_ATE_signed_char and DW_ATE_unsigned_char
3434 for pascal language.
3436 2009-02-11 Jim Meyering <meyering@redhat.com>
3437 Jan Kratochvil <jan.kratochvil@redhat.com>
3439 Avoid NULL dereference.
3440 * stack.c (return_command): Guard use of SYMBOL_TYPE (thisfun).
3441 New variable func_type.
3443 2009-02-11 Pedro Alves <pedro@codesourcery.com>
3445 * gdbarch.c: Regenerate.
3447 2009-02-10 Pierre Muller <muller@ics.u-strasbg.fr>
3449 * p-lang.c (is_pascal_string_type): Fix comment.
3450 Determine exact size of char elements for GPC
3452 (pascal_printstr): Handle char width of 2 or 4.
3453 * p-valprint.c (pascal_val_print): Handle char
3456 2009-02-07 Daniel Jacobowitz <dan@codesourcery.com>
3458 * dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and highpc
3459 inside the loop. Only call addrmap_set_empty if the compilation unit
3460 had DW_AT_high_pc and DW_AT_low_pc. Update call to
3461 scan_partial_symbols.
3462 (scan_partial_symbols): Take NEED_PC argument and pass it along with
3464 (add_partial_namespace): Take NEED_PC argument and pass it through.
3465 (add_partial_subprogram): Take NEED_PC argument. Update the addrmap
3468 2009-02-07 Pedro Alves <pedro@codesourcery.com>
3470 * NEWS: Mention inspecting extra signal information, $_siginfo,
3471 and the qXfer:siginfo:read and qXfer:siginfo:write packets.
3473 2009-02-07 Pedro Alves <pedro@codesourcery.com>
3475 * linux-nat.c (PTRACE_SETSIGINFO): Define if PTRACE_GETSIGINFO
3478 2009-02-06 Pedro Alves <pedro@codesourcery.com>
3480 * amd64-linux-nat.c (compat_int_t, compat_uptr_t, compat_time_t)
3481 (compat_timer_t, compat_clock_t, struct compat_timeval)
3482 (compat_sigval_t, compat_siginfo_t): New types.
3483 (cpt_si_pid, cpt_si_uid, cpt_si_timerid, cpt_si_overrun)
3484 (cpt_si_status, cpt_si_utime, cpt_si_stime, cpt_si_ptr)
3485 (cpt_si_addr, cpt_si_band, cpt_si_fd): New defines.
3486 (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
3487 (amd64_linux_siginfo_fixup): New.
3488 * linux-nat.c (linux_nat_siginfo_fixup): New.
3489 (siginfo_fixup): New.
3490 (linux_xfer_siginfo): Use siginfo_fixup to convert between the
3491 siginfo layout expected by ptrace and the siginfo layout of the
3493 (linux_nat_set_siginfo_fixup): New.
3494 * linux-nat.h (linux_nat_set_siginfo_fixup): Declare.
3496 2009-02-06 Pedro Alves <pedro@codesourcery.com>
3498 * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO.
3499 * infrun.c (siginfo_value_read, siginfo_value_write): New.
3500 (siginfo_value_funcs): New.
3501 (siginfo_make_value): New.
3502 (_initialize_infrun): Create the $_siginfo convenience variable.
3503 * gdbtypes.h (append_composite_type_field_aligned): Declare.
3504 * gdbtypes.c (append_composite_type_field): Rename to...
3505 (append_composite_type_field_aligned): ... this. Add ALIGNMENT
3506 argument. Handle it.
3507 (append_composite_type_field): Rewrite on top of
3508 append_composite_type_field_aligned.
3509 * value.h (internalvar_make_value): New typedef.
3510 (struct internalvar) <make_value>: New field.
3511 (create_internalvar_type_lazy): Declare.
3512 * value.c (create_internalvar): Clear make_value.
3513 (create_internalvar_type_lazy): New.
3514 (value_of_internalvar): If make_value is set use it.
3515 (preserve_values): Skip internal variables that don't have a
3517 * gdbarch.sh (get_siginfo_type): New.
3518 * gdbarch.h, gdbarch.c: Regenerate.
3520 * linux-tdep.h, linux-tdep.c: New.
3521 * amd64-linux-tdep.c: Include "linux-tdep.h".
3522 (amd64_linux_init_abi): Register linux_get_siginfo_type and
3523 linux_get_siginfo_mapper.
3524 * i386-linux-tdep.c: Include "linux-tdep.h".
3525 (i386_linux_init_abi): Register linux_get_siginfo_type and
3526 linux_get_siginfo_mapper.
3527 * arm-linux-tdep.c: Include "linux-tdep.h".
3528 (i386_linux_init_abi): Register linux_get_siginfo_type and
3529 linux_get_siginfo_mapper.
3531 * linux-nat.c (linux_xfer_siginfo): New.
3532 (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
3533 * remote.c (PACKET_qXfer_siginfo_read)
3534 (PACKET_qXfer_siginfo_write): New.
3535 (feature remote_protocol_features): Add "qXfer:siginfo:read" and
3536 "qXfer:siginfo:write" features.
3537 (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
3538 (_initialize_remote): Add "set/show remote read-siginfo-object"
3539 and "set/show remote write-siginfo-object" commands.
3541 * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o.
3542 (HFILES_NO_SRCDIR): Add linux-tdep.h.
3543 (ALLDEPFILES): Add linux-tdep.c.
3545 * configure.tgt (arm*-*-linux* | arm*-*-uclinux*)
3546 (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to
3549 2009-02-06 Jim Blandy <jimb@codesourcery.com>
3550 Daniel Jacobowitz <dan@codesourcery.com>
3551 Vladimir Prus <vladimir@codesourcery.com>
3552 Pedro Alves <pedro@codesourcery.com>
3554 * defs.h (enum lval_type): New value: lval_computed.
3555 * value.h (struct lval_funcs): New type.
3556 (allocate_computed_value, value_computed_funcs)
3557 (value_computed_closure): New declarations.
3558 * value.c (struct value): Add a structure to the location union
3559 for computed lvalues, containing 'funcs' and 'closure' members.
3560 (allocate_computed_value, value_computed_funcs)
3561 (value_computed_closure): New functions.
3562 (value_free): For computed lvalues, call the closure's
3563 'free_closure' function before freeing the value itself.
3564 (value_copy): If we're copying an lval_computed value, call the
3565 closure's 'copy_closure' function.
3566 (set_value_component_location): If the original value is a
3567 computed lvalue, then call the closure's 'copy_closure' function.
3568 (value_of_internalvar): If an internal variable's value is a
3569 computed lvalue, make retrieving its value produce an equivalent
3571 * valops.c (value_fetch_lazy): Unlazy computed lvalues by calling
3572 their read function.
3573 (value_assign): Assign to computed lvalues by calling their write
3576 2009-02-06 Pedro Alves <pedro@codesourcery.com>
3578 * linux-nat.c (linux_nat_wait): Adjust.
3579 (linux_nat_pid_to_str): Adjust. Remove call to thread_db_init.
3580 * linux-nat.h (thread_db_init): Delete declaration.
3581 * linux-thread-db.c (target_beneath): Delete.
3582 (thread_db_init): Delete.
3583 (thread_db_detach): Use find_target_beneath.
3584 (thread_db_wait): Adjust interface. Use find_target_beneath.
3585 (thread_db_mourn_inferior): Use find_target_beneath.
3586 (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
3587 (thread_db_async_mask): Delete.
3588 (thread_db_pid_to_str): Adjust interface. Use
3589 find_target_beneath.
3590 (thread_db_get_thread_local_address): Adjust interface. Use
3591 find_target_beneath.
3592 (init_thread_db_ops): Delete references to delete functions.
3593 * target.c (update_current_target): Don't inherit or default
3594 to_wait. Don't inherit to_pid_to_str and
3595 to_get_thread_local_address.
3596 (target_translate_tls_address): Look for a pushed target that
3597 implements to_get_thread_local_address, and use it instead of
3598 checking for target_get_thread_local_address_p.
3599 (target_wait, target_pid_to_str): Reimplement as functions.
3600 (dummy_pid_to_str): New.
3601 (init_dummy_target): Register it.
3602 (debug_to_wait): Delete.
3603 * target.h (struct target_ops): Make to_wait, to_pid_to_str and
3604 to_get_thread_local_address accept a pointer to struct target_ops.
3605 (target_wait): Delete macro, and declare as function.
3606 (target_pid_to_str): Likewise.
3607 (target_get_thread_local_address)
3608 (target_get_thread_local_address_p): Delete.
3609 (noprocess): Add NORETURN and ATTR_NORETURN tags.
3610 * inf-ptrace.c (inf_ptrace_wait): Adjust.
3611 (inf_ptrace_pid_to_str): New.
3612 (inf_ptrace_target): Use inf_ptrace_pid_to_str.
3613 * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust.
3614 * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust.
3615 * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str):
3617 * corelow.c (core_pid_to_str): Adjust.
3618 * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust.
3619 * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust.
3620 * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust.
3621 * go32-nat.c (go32_wait, go32_pid_to_str): Adjust.
3622 * hpux-thread.c (hpux_thread_wait): Adjust.
3623 * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust.
3624 * monitor.c (monitor_wait, monitor_pid_to_str): Adjust.
3625 * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust.
3626 * procfs.c (procfs_pid_to_str): Adjust.
3627 * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust.
3628 * remote-mips.c (mips_wait): Adjust.
3629 * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust.
3630 * remote.c (remote_wait, remote_pid_to_str)
3631 (remote_get_thread_local_address): Adjust.
3632 * rs6000-nat.c (rs6000_wait): Adjust.
3633 * sol-thread.c (procfs_pid_to_str): Adjust declaration.
3634 (sol_thread_wait, solaris_pid_to_str): Adjust.
3635 * spu-linux-nat.c (spu_child_wait): Adjust.
3636 * windows-nat.c (windows_wait, windows_pid_to_str): Adjust.
3638 2009-02-06 Tom Tromey <tromey@redhat.com>
3640 * Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o.
3641 (SUBDIR_PYTHON_SRCS): Add python-cmd.c.
3642 (python-cmd.o): New target.
3643 * cli/cli-decode.c (set_cmd_completer): Add self parameter to
3644 completer prototype.
3645 (add_cmd): Initialize destroyer member of cmd_list_element. Use
3646 make_symbol_completion_list_fn as completer.
3647 (delete_cmd): Call destroyer if one is set.
3648 * cli/cli-decode.h (cmd_list_element): Add cmd parameter to
3649 completer member. Add destroyer member.
3650 (set_cmd_completer): Add self parameter to
3651 completer prototype.
3652 * command.h (set_cmd_completer): Add cmd parameter to
3653 completer prototype.
3654 * completer.c (noop_completer, filename_completer,
3655 location_completer, expression_completer, command_completer): Adapt
3656 to new completer prototype.
3657 (complete_line_internal): Pass new parameter to completer function.
3658 * completer.h (noop_completer, filename_completer,
3659 location_completer, expression_completer, command_completer): Adapt
3660 prototypes to new completer prototype.
3661 * interps.c (interpreter_completer): Adapt to new completer
3663 * python/python-cmd.c: New file.
3664 * python/python-internal.h (gdbpy_initialize_commands): Add
3666 (gdbpy_doc_cst): Add forward declaration.
3667 * python/python.c (gdbpy_doc_cst): Declare.
3668 (_initialize_python): Call gdbpy_initialize_commands. Initialize
3670 * symtab.c (make_symbol_completion_list_fn): New function.
3671 * symtab.h (make_symbol_completion_list_fn): Add prototype.
3673 2009-02-06 Pedro Alves <pedro@codesourcery.com>
3675 * target.c (target_get_osdata): Check for equal or higher than
3676 process_stratum, not dummy_stratum.
3678 2009-02-06 Pedro Alves <pedro@codesourcery.com>
3680 * remote.c (extended_remote_can_run): Delete.
3681 (init_remote_ops): Don't register it.
3682 * target.c (target_get_osdata): Don't check for target_can_run.
3683 Instead any target that has already been pushed, otherwise
3684 fallback to the default run target.
3686 2009-02-06 Pedro Alves <pedro@codesourcery.com>
3688 * target.c (target_create_inferior, target_detach)
3689 (target_mourn_inferior, target_attach, target_close): Do target
3691 (debug_to_attach, debug_to_detach, debug_to_create_inferior)
3692 (debug_to_mourn_inferior, debug_to_close): Delete.
3693 (setup_target_debug): Adjust.
3695 2009-02-05 Pedro Alves <pedro@codesourcery.com>
3697 * target.h (target_stopped_data_address_p): Delete declaration,
3698 and don't define as macro.
3699 * target.c (target_stopped_data_address_p): Delete.
3701 2009-02-05 Thiago Jung Bauermann <bauerman@br.ibm.com>
3702 Tom Tromey <tromey@redhat.com>
3704 * python/python-utils.c (target_string_to_unicode): New function.
3705 * python/python-internal.h (target_string_to_unicode): New prototype.
3706 * python/python-value.c (valpy_string): New function.
3707 (value_object_methods): Add `string' entry.
3709 2009-02-05 Pedro Alves <pedro@codesourcery.com>
3711 * target.h (target_tid_to_str): Delete.
3712 * thread.c (print_thread_info, thread_apply_all_command)
3713 (thread_apply_command, thread_command, do_captured_thread_select):
3714 Use target_pid_to_str instead of target_tid_to_str.
3715 * linux-fork.c (delete_fork_command): Likewise.
3717 2009-02-05 Pedro Alves <pedro@codesourcery.com>
3719 * frame.c (has_stack_frames): Make public.
3720 (get_prev_frame): Don't allow a NULL this_frame anymore.
3721 * frame.h (has_stack_frames): Declare.
3722 * varobj.c (find_frame_addr_in_frame_chain): Don't ever pass NULL
3723 to get_prev_frame, instead start at get_current_frame.
3724 (varobj_create): Check has_stack_frames before getting any frame;
3725 eliminate one usage of deprecated_safe_get_selected_frame.
3727 2009-02-05 Tom Tromey <tromey@redhat.com>
3728 Thiago Jung Bauermann <bauerman@br.ibm.com>
3730 * python/python.c (GdbMethods): Move to bottom of file.
3731 (get_parameter, execute_gdb_command, gdbpy_write,
3732 gdbpy_flush): Remove forward declarations.
3733 (eval_python_from_control_command): Fix error checking of function
3734 PyRun_SimpleString. Fix error string.
3735 (python_command): Likewise.
3736 (execute_gdb_command): Added from_tty argument.
3738 2009-02-05 Thiago Jung Bauermann <bauerman@br.ibm.com>
3740 * language.h (language_dfn): Add la_get_string member.
3741 (LA_GET_STRING): New macro.
3742 (default_get_string): New prototype.
3743 * language.c (default_get_string): New function.
3744 (unknown_language_defn, auto_language_defn, local_language_defn): Use
3745 default_get_string for la_get_string.
3746 * c-lang.c (c_get_string): New function.
3747 (c_language_defn, cplus_language_defn, asm_language_defn): Use
3748 c_get_string for la_get_string.
3749 (minimal_language_defn): Likewise
3750 * ada-lang.c (ada_language_defn): Likewise.
3751 * f-lang.c (f_language_defn): Use default_get_string for
3753 * jv-lang.c (java_language_defn): Likewise.
3754 * m2-lang.c (m2_language_defn): Likewise.
3755 * objc-lang.c (objc_language_defn): Likewise.
3756 * p-lang.c (p_language_defn): Likewise.
3757 * scm-lang.c (scm_language_defn): Likewise.
3758 * typeprint.c (type_to_string): New function.
3759 * value.h (type_to_string): New prototype.
3760 * valprint.c (val_print_string): Factor out code for reading string
3761 from the inferior into its own function. Put 2 spaces after period
3763 (read_string): New function.
3764 * valprint.h (read_string): New prototype.
3766 2009-01-07 Pierre Muller <muller@ics.u-strasbg.fr>
3767 Tom Tromey <tromey@redhat.com>
3769 PR breakpoints/8079:
3770 * breakpoint.c (print_one_breakpoint): Use exp_string field
3771 to display expression of watchpoints.
3772 (mention): Likewise.
3773 (watch_command_1): Remove trailing whitespace from expression.
3774 * printcmd.c (struct display) <exp_string>: New field.
3775 (display_command): Set exp_string.
3776 (free_display): Free exp_string.
3777 (clear_displays): Use free_display.
3778 (do_one_display): Print exp_string.
3779 (display_info): Likewise.
3781 2009-02-04 Tom Tromey <tromey@redhat.com>
3782 Thiago Jung Bauermann <bauerman@br.ibm.com>
3783 Phil Muldoon <pmuldoon@redhat.com>
3785 * python/python-internal.h (gdbpy_get_value_from_history): Rename
3786 prototype to gdbpy_history.
3787 (gdbpy_is_string): Declare.
3788 (python_string_to_host_string): Declare.
3789 * python/python-utils.c (gdbpy_is_string): New function.
3790 (unicode_to_encoded_string): New function.
3791 (unicode_to_target_string): Use it.
3792 (python_string_to_host_string): New function.
3793 * python/python-value.c (valpy_address): New function.
3794 (convert_value_from_python): Use gdbpy_is_string. Change to throw
3795 Python exception instead of a GDB exception on error. Properly check
3797 (valpy_getitem): Convert field name to host string. Handle array
3798 accesses. Adapt to new behaviour of convert_value_from_python.
3799 (valpy_new): Adapt to new behaviour of convert_value_from_python.
3800 (enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
3801 VALPY_BITXOR, VALPY_BITOR>: New constants.
3802 (valpy_binop): Update. Adapt to new behaviour of
3803 convert_value_from_python.
3804 (valpy_invert): New function.
3805 (valpy_lsh): Likewise.
3806 (valpy_rsh): Likewise.
3807 (valpy_and): Likewise.
3808 (valpy_or): Likewise.
3809 (valpy_xor): Likewise.
3810 (valpy_richcompare): Call convert_value_from_python instead of doing
3812 (is_intlike, valpy_int, valpy_long, valpy_float): New functions.
3813 (gdbpy_get_value_from_history): Rename
3814 function to gdbpy_history.
3815 (gdbpy_initialize_values): Don't set tp_new.
3816 (value_object_type): Add valpy_new.
3817 (value_object_methods): Add `address' entry.
3818 (value_object_as_number): Update for new methods.
3819 * python/python.c (GdbMethods): Rename entry from
3820 `get_value_from_history' to `history'.
3822 2009-02-04 Jerome Guitton <guitton@adacore.com>
3824 * ada-lang.c (ada_template_to_fixed_record_type_1): Check size
3825 of type to guard against a crash.
3827 2009-02-04 Jerome Guitton <guitton@adacore.com>
3829 * value.c (value_from_contents_and_address): Always return
3830 a lval_memory value, even if address is null.
3832 2009-02-04 Tristan Gingold <gingold@adacore.com>
3834 * i386-darwin-tdep.c (i386_darwin_sigcontext_addr): New function.
3835 (amd64_darwin_sigcontext_addr): Ditto.
3836 (darwin_dwarf_signal_frame_p): Ditto.
3837 (i386_darwin_init_abi): Handle signal frames, use the const for
3839 (x86_darwin_init_abi_64): Ditto.
3841 2009-02-04 Tristan Gingold <gingold@adacore.com>
3843 * i386-tdep.c (i386_sigtramp_p): Make it public.
3844 * i386-tdep.h (i386_sigtramp_p): Declare.
3846 2009-02-04 Tristan Gingold <gingold@adacore.com>
3848 * machoread.c (macho_symfile_read): Read minsymtab also from
3850 (macho_symfile_read): Try to read dwarf2 frame info from main
3851 object file, but not from OSO files.
3852 (macho_symfile_offsets): Update section names for latest BFD
3854 * i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops.
3855 (x86_darwin_init_abi_64): Ditto.
3856 * solib-darwin.c: New file.
3857 * solib-darwin.h: New file.
3858 * configure.tgt: Add solib.o solib-darwin.o for Darwin.
3860 2009-02-04 Tristan Gingold <gingold@adacore.com>
3862 * solist.h (struct target_so_ops): Comment fallback behavior for
3865 2009-02-03 Tom Tromey <tromey@redhat.com>
3867 * completer.c (add_struct_fields): Check type_name against NULL
3870 2009-02-03 Joel Brobecker <brobecker@adacore.com>
3872 * MAINTAINERS: Update Elena's email address.
3874 2009-02-02 Joel Brobecker <brobecker@adacore.com>
3876 * breakpoint (update_watchpoint): Minor comment adjustment.
3878 2009-02-02 Tom Tromey <tromey@redhat.com>
3881 * completer.c (count_struct_fields): Count method names.
3882 (add_struct_fields): Add matching method names.
3884 2009-02-02 Doug Evans <dje@google.com>
3886 * configure.ac (gdbkt): Check both no_tcl/no_tk first, before
3887 doing any further tcl/tk configury. Don't configure gdbtk if
3888 tcl or tk check fails.
3889 * aclocal.m4: Regenerate.
3890 * configure: Regenerate.
3892 2009-02-02 Tom Tromey <tromey@redhat.com>
3895 * valops.c (find_overload_match): Follow typedefs before taking
3896 address of object argument.
3898 2009-02-01 Doug Evans <dje@google.com>
3900 * target.h (target_waitstatus_to_string): Declare.
3901 * target.c (target_waitstatus_to_string): New function. Copied from
3902 debug_to_wait. Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY,
3903 TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE,
3904 TARGET_WAITKIND_NO_HISTORY.
3905 (debug_to_wait): Call it.
3906 * infrun.c (wait_for_inferior): If debug_infrun, print result of
3908 (fetch_inferior_event): Ditto.
3910 2009-01-30 Tom Tromey <tromey@redhat.com>
3912 * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h.
3914 2009-01-30 Vladimir Prus <vladimir@codesourcery.com>
3917 * thread.c (do_captured_list_thread_ids): Report the current
3920 2009-01-30 Vladimir Prus <vladimir@codesourcery.com>
3922 * breakpoint.c (create_breakpoint, create_breakpoints)
3923 (break_command_really, set_breakpoint): New parameter enabled.
3924 (create_breakpoint, break_command_really): Make breakpoint
3925 disabled if so requested.
3926 * breakpoint.h (set_breakpoint): New parameter enabled.
3927 * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
3929 2009-01-28 Doug Evans <dje@google.com>
3931 * amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
3932 (amd64_displaced_step_fixup): Declare.
3933 * amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
3934 (amd64_arch_regmap): Move out of amd64_analyze_stack_align
3935 and make static global.
3936 (amd64_arch_regmap_len): New static global.
3937 (amd64_arch_reg_to_regnum): New function.
3938 (struct amd64_insn): New struct.
3939 (struct displaced_step_closure): New struct.
3940 (onebyte_has_modrm,twobyte_has_modrm): New static globals.
3941 (rex_prefix_p,skip_prefixes)
3942 (amd64_insn_length_fprintf,amd64_insn_length_init_dis)
3943 (amd64_insn_length,amd64_get_unused_input_int_reg)
3944 (amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
3945 (amd64_displaced_step_copy_insn)
3946 (amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
3947 (amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
3948 (amd64_displaced_step_fixup): New functions.
3949 * amd64-linux-tdep.c: #include arch-utils.h.
3950 (amd64_linux_init_abi): Install displaced stepping support.
3952 2009-01-28 Daniel Jacobowitz <dan@codesourcery.com>
3953 Jerome Guitton <guitton@adacore.com>
3955 * configure, config.in: Regenerated.
3956 * configure.ac: Add --with-system-gdbinit.
3957 * main.c (get_init_files): New.
3958 (captured_main): Use get_init_files. Load system gdbinit before
3960 (print_gdb_help): Print location of init files.
3962 2009-01-28 Pedro Alves <pedro@codesourcery.com>
3964 * corefile.c (generic_search): Delete disabled code.
3965 * gdbcore.h (generic_search): Delete declaration.
3967 2009-01-26 Pedro Alves <pedro@codesourcery.com>
3969 * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the
3970 parent to the child.
3971 * inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
3972 * inf-ptrace.c (inf_ptrace_follow_fork): Likewise. Use
3973 remove_breakpoints to remove breakpoints from the parent.
3975 2009-01-26 Pedro Alves <pedro@codesourcery.com>
3977 PR backtrace/9458, PR backtrace/8864:
3978 * frame.c (create_new_frame): Update the frame's cached PC before
3979 finding its unwinder. Use frame_id_build to build the new frame's
3981 * stack.c (parse_frame_specification_1): Correct setting ``addrs''
3982 array values from the ``args'' array values.
3984 2009-01-26 Pedro Alves <pedro@codesourcery.com>
3986 * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type)
3987 (create_array_type, create_set_type, init_flags_type)
3988 (copy_type_recursive): Replace pairs of calls to XALLOC and memset
3989 with a call to XZALLOC or XCALLOC, and pairs of calls to
3990 obstack_alloc and memset with a call to OBSTACK_ZALLOC.
3992 2009-01-26 Pedro Alves <pedro@codesourcery.com>
3994 Add "maint set|show internal-error|internal-warning quit|corefile
3995 ask|yes|no" commands.
3998 * utils.c (internal_problem_ask, internal_problem_yes)
3999 (internal_problem_no, internal_problem_modes): New.
4000 (struct internal_problem): Remove FIXME. Make should_quit and
4001 should_dump_core types to char *.
4002 (internal_vproblem, internal_error_problem)
4003 (internal_warning_problem): Adjust.
4004 (set_internal_problem_cmd, show_internal_problem_cmd): New dummy
4006 (add_internal_problem_command): New.
4007 (_initialize_utils): New.
4009 2009-01-25 Pedro Alves <pedro@codesourcery.com>
4011 * infcmd.c (program_info): Use paddress instead of casting stop_pc
4014 2009-01-24 Pedro Alves <pedro@codesourcery.com>
4016 * infrun.c (normal_stop): Don't call
4017 deprecated_update_frame_pc_hack.
4018 * frame.c (deprecated_update_frame_pc_hack)
4019 (deprecated_update_frame_base_hack): Delete, and ...
4020 (create_new_frame): ... inline here.
4021 * frame.h (deprecated_update_frame_pc_hack)
4022 (deprecated_update_frame_base_hack): Delete declarations.
4024 2009-01-23 Pedro Alves <pedro@codesourcery.com>
4026 * cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
4027 * cli/cli-setshow.c (do_setshow_command): Handle it.
4028 * command.h (enum var_types): Add var_zuinteger.
4029 (add_setshow_zuinteger_cmd): Declare.
4031 * valprint.c (_initialize_valprint): Change the set input-radix
4032 and set output-radix commands to zuinteger type.
4034 2009-01-23 Pedro Alves <pedro@codesourcery.com>
4037 * infrun.c (normal_stop): Tag threads as stopped, and run the
4038 hook-stop before printing the stack frame.
4040 2009-01-22 Pedro Alves <pedro@codesourcery.com>
4043 * gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
4046 2009-01-20 Kazu Hirata <kazu@codesourcery.com>
4048 * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
4051 2009-01-20 Daniel Jacobowitz <dan@codesourcery.com>
4054 * infcmd.c (signal_command): Do not specify a resume PC.
4056 2009-01-19 Doug Evans <dje@google.com>
4058 * dummy-frame.c (dummy_frame): Replace regcache member with
4060 (dummy_frame_push): Replace caller_regcache arg with caller_state.
4061 All callers updated.
4062 (remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
4063 (dummy_frame_pop): Rewrite. Verify requested frame is in the
4064 dummy frame stack. Restore program state.
4065 (cleanup_dummy_frames): Rewrite.
4066 (dummy_frame_sniffer): Update. Make static.
4067 * dummy-frame.h (regcache,frame_info): Delete forward decls.
4068 (inferior_thread_state): New forward decl.
4069 (dummy_frame_push): Update prototype.
4070 * frame.c (frame_pop): dummy_frame_pop now does all the work for
4072 * infcall.c (breakpoint_auto_delete_contents): Delete.
4073 (get_function_name,run_inferior_call): New fns.
4074 (call_function_by_hand): Simplify by moving some code to
4075 get_function_name, run_inferior_call. Inferior function call wrapped
4076 in TRY_CATCH so there's less need for cleanups and all exits from
4077 proceed are handled similarily. Detect program exit.
4078 Detect program stopping in a different thread.
4079 Make error messages more consistent.
4080 * inferior.h (inferior_thread_state): Declare (opaque type).
4081 (save_inferior_thread_state,restore_inferior_thread_state,
4082 make_cleanup_restore_inferior_thread_state,
4083 discard_inferior_thread_state, get_inferior_thread_state_regcache):
4085 (save_inferior_status): Update prototype.
4086 * infrun.c: (normal_stop): When stopped for the completion of an
4087 inferior function call, verify the expected stack frame kind.
4088 (inferior_thread_state): New struct.
4089 (save_inferior_thread_state,restore_inferior_thread_state,
4090 do_restore_inferior_thread_state_cleanup,
4091 make_cleanup_restore_inferior_thread_state,
4092 discard_inferior_thread_state,
4093 get_inferior_thread_state_regcache): New functions.
4094 (inferior_status): Move stop_signal, stop_pc, registers to
4095 inferior_thread_state. Remove restore_stack_info.
4096 (save_inferior_status): Remove arg restore_stack_info.
4097 All callers updated. Remove saving of state now saved by
4098 save_inferior_thread_state.
4099 (restore_inferior_status): Remove restoration of state now done by
4100 restore_inferior_thread_state.
4101 (discard_inferior_status): Remove freeing of registers, now done by
4102 discard_inferior_thread_state.
4104 2009-01-18 Pedro Alves <pedro@codesourcery.com>
4106 * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line
4107 at a time, times NUM_TO_SCROLL.
4108 * tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to
4109 fetch the selected frame if there is no stack.
4111 2009-01-18 Pedro Alves <pedro@codesourcery.com>
4114 * gdbthread.h (finish_thread_state, finish_thread_state_cleanup):
4116 * thread.c (finish_thread_state, finish_thread_state_cleanup): New.
4117 * infrun.c (wait_for_inferior, fetch_inferior_event): If an error
4118 is thrown while handling an event, finish the thread state.
4119 (normal_stop): Use finish_thread_state cleanup.
4120 * infcmd.c (run_command_1): If an error is thrown while starting
4121 the inferior, finish the thread state.
4123 2009-01-18 Pedro Alves <pedro@codesourcery.com>
4125 * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout,
4126 skip breakpoints without a location (pending breakpoints).
4128 2009-01-18 Pedro Alves <pedro@codesourcery.com>
4131 * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'.
4133 2009-01-18 Nick Roberts <nickrob@snap.net.nz>
4135 * thread.c (thread_command): Move call to annotate_thread_changed
4137 (do_captured_thread_select): ... here, to avoid printing an
4138 annotation if the thread change generates an exception.
4140 2009-01-16 Joel Brobecker <brobecker@adacore.com>
4142 * NEWS: Document x86_64/MinGW as a new native configuration.
4144 2009-01-16 Joel Brobecker <brobecker@adacore.com>
4146 * NEWS: Move the documentation of "info os processes" to
4147 the appropriate section (documenting the new commands).
4149 2009-01-15 Doug Evans <dje@google.com>
4151 * target.h (target_signal_to_string): Make return type const char *.
4152 (target_signal_to_name): Ditto.
4153 (target_signal_from_name): Make arg const char *.
4154 * infrun.c (sig_print_info): Update.
4155 * signals/signals.c (signals): Make array and struct members const.
4156 (target_signal_to_string): Make return type const char *.
4157 (target_signal_to_name): Ditto.
4158 (target_signal_from_name): Make arg const char *.
4160 2009-01-15 Ulrich Weigand <uweigand@de.ibm.com>
4161 Tristan Gingold <gingold@adacore.com>
4163 * solist.h (struct target_so_ops): New member bfd_open.
4164 (solib_find): Add prototype.
4165 (solib_bfd_fopen): Add prototype.
4166 * solib.c (solib_find, solib_bfd_fopen): New functions, extracted
4167 from solib_bfd_open.
4168 (solib_bfd_open): Use ops->bfd_open override if present. Call
4169 solib_find and solib_bfd_open otherwise.
4171 * objfiles.h (OBJF_KEEPBFD): New define.
4172 * objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD
4173 objfile flag is set.
4174 * solib.c (symbol_add_stub): Do not allocate second BFD for
4175 shared library; use OBJF_KEEPBFD flag on solib objfile.
4177 2009-01-15 Ulrich Weigand <uweigand@de.ibm.com>
4179 * frame.c (get_frame_arch): Abort if called with NULL this_frame.
4181 2009-01-15 Ulrich Weigand <uweigand@de.ibm.com>
4183 * value.h (address_of_variable): Add prototype.
4184 (locate_var_value): Remove prototype.
4186 * findvar.c (read_var_value): Do not attempt to default frame
4188 (locate_var_value): Remove function.
4189 * valops.c (value_of_variable): Retrieve selected frame for
4190 symbols that require a frame when called with NULL block.
4191 * valops.c (address_of_variable): New function.
4193 * eval.c (evaluate_subexp_for_address): Call address_of_variable
4194 instead of calling locate_var_value.
4195 (evaluate_subexp_with_coercion): Likewise.
4197 2009-01-14 Daniel Jacobowitz <dan@codesourcery.com>
4199 * NEWS: Document "define" for prefixed commands.
4200 * cli/cli-cmds.c (show_user): Update calls to show_user_1. Call
4201 show_user_1 for prefix commands.
4202 * cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
4203 * cli/cli-script.c (validate_comname): Rewrite to handle prefix
4204 commands. Return the containing command list.
4205 (define_command, document_command): Update to handle prefix commands.
4206 (show_user_1): Add prefix and name arguments. Handle prefix
4208 * cli/cli-script.h (show_user_1): Update prototype.
4210 2009-01-14 Kai Tietz <kai.tietz@onevision.com>
4212 * ser-mingw.c (console_select_thread): Add return to make
4214 (pipe_select_thread): Likewise.
4215 (file_select_thread): Likewise.
4217 2009-01-14 Pedro Alves <pedro@codesourcery.com>
4219 * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from
4222 2009-01-14 Pedro Alves <pedro@codesourcery.com>
4224 * remote.c (extended_remote_mourn_1): Invalidate our notion of
4225 current general thread.
4227 2009-01-14 Pedro Alves <pedro@codesourcery.com>
4229 * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups
4230 without a live selected thread.
4232 2009-01-14 Joel Brobecker <brobecker@adacore.com>
4234 Update the copyright notice of some of the files I missed
4235 in the previous copyright update.
4237 2009-01-14 Joel Brobecker <brobecker@adacore.com>
4239 * windows-nat.c (handle_unload_dll): Use %p to print the DLL
4240 base address instead of casting it to DWORD.
4242 2009-01-13 Ulrich Weigand <uweigand@de.ibm.com>
4244 * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch
4245 for NULL frame pointers.
4247 2009-01-13 Mark Kettenis <kettenis@gnu.org>
4249 * utils.c (host_address_to_string): Reimplement in a way that
4250 avoids the cast of the address to long.
4252 2009-01-13 Joel Brobecker <brobecker@adacore.com>
4254 * mdebugread.c (parse_symbol): Save the symbol private data
4255 using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE.
4256 (psymtab_to_symtab_1): Likewise.
4257 (parse_procedure): Declare variable "e" only in the scope
4258 where it is used. Extract the symbol private data using
4261 2009-01-13 Jim Blandy <jimb@codesourcery.com>
4263 Abstract out common code for copying value locations.
4265 * value.h (set_value_component_location): New declaration.
4266 * value.c (set_value_component_location): New function.
4267 (value_primitive_field): Use it.
4268 * valarith.c (value_subscript, value_subscripted_rvalue): Same.
4269 * valops.c (search_struct_field, value_slice): Same.
4270 * ada-lang.c (coerce_unspec_val_to_type)
4271 (ada_value_primitive_packed_val): Same.
4273 2009-01-13 Joel Brobecker <brobecker@adacore.com>
4275 * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey.
4277 2009-01-12 Christopher Faylor <me+cygwin@cgf.cx>
4279 * amd64-windows-nat.c Rename gdb-specific win32_* to windows_*
4281 * i386-cygwin-tdep.c: Ditto.
4282 * i386-windows-nat.c: Ditto.
4283 * windows-nat.h: Ditto.
4284 * windows-tdep.c: Ditto.
4285 * windows-tdep.h: Ditto.
4286 * windows-nat.c: Ditto.
4287 (cygwin_load_start): Redefine as CORE_ADDR.
4288 (cygwin_load_end): Ditto.
4289 (windows_make_so): Coerce result of address arithmetic to uintptr_t
4290 before coercing to CORE_ADDR to avoid a compiler warning.
4291 (handle_exception): Define addr as CORE_ADDR and coerce
4292 ExceptionAddress to uintptr_t before assigining to avoid a compiler
4294 * config/djgpp/fnchange.lst: Add mappings for recently renamed windows
4297 2009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
4299 Fix linking with --enable-targets=all:
4300 * Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o.
4301 (HFILES_NO_SRCDIR): Add windows-tdep.h.
4302 (ALLDEPFILES): Add windows-tdep.c.
4304 2009-01-11 Chris Faylor <me.gdb@cgf.cx>
4306 * win32-nat.h: Delete.
4307 * windows-nat.h: Rename from win32-nat.h.
4308 * win32-nat.c: Delete.
4309 * windows-nat.c: Rename from win32-nat.c.
4310 * win32-termcap.c: Delete.
4311 * windows-termcap.c: Rename from win32-termcap.c.
4312 * amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h.
4313 * configure.ac: Handle rename from win32-termcap.c ->
4315 * configure: Regenerate.
4316 * gdb_curses.h: Change comment to reflect rename from win32-termcap.c
4317 -> windows-termcap.c.
4318 * i386-cygwin-tdep.c: Handle rename from win32-tdep.h ->
4320 * i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h.
4321 * windows-nat.c: Ditto. Also reflect rename from from win32-tdep.h ->
4323 (win32_make_so): Handle cygwin compiler warning due to change of
4324 load_addr from DWORD to LPVOID.
4325 (handle_load_dll): Use %p in format string to properly print address
4326 and avoid a compiler warning.
4327 (DEBUG_EXCEPTION_SIMPLE): Ditto.
4328 (handle_exception): Ditto.
4329 * windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
4330 * config/i386/cygwin.mh: Handle rename from win32-nat.o ->
4332 * config/i386/mingw.mh: Ditto.
4333 * config/i386/mingw64.mh: Ditto.
4335 2009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
4337 * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable
4338 arrayprint_recurse_level to a parameter. Update all the callers. New
4339 comment at autovariables.
4341 2009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
4343 * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU
4346 2009-01-11 Joel Brobecker <brobecker@adacore.com>
4348 * target.c (target_xfer_partial): Use host_address_to_string to
4349 print the address of readbuf and writebuf. Cast the address of
4350 elements inside the myaddr buffer into intptr_t.
4351 (deprecated_debug_xfer_memory): Use paddress to print memaddr.
4352 Cast the address of elements inside the myaddr buffer into
4355 2009-01-11 Joel Brobecker <brobecker@adacore.com>
4357 * amd64-windows-nat.c, amd64-windows-tdep.c: New files.
4358 * config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files.
4359 * configure.host, configure.tgt: Add handling for x86_64/windows.
4360 * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c
4361 and amd64-windows-tdep.c.
4363 2009-01-11 Joel Brobecker <brobecker@adacore.com>
4365 * win32-tdep.h, win32-tdep.c: New files.
4366 * i386-cygwin-tdep.h: Delete.
4367 * i386-cygwin-tdep.c: Include win32-tdep.h instead of
4369 (win32_xfer_shared_library): Delete. Moved to win32-tdep.c.
4370 * win32-nat.c: Likewise.
4371 * configure.tgt: Add win32-tdep.o to the list of target object
4372 files for i386-cygwin and i386-mingw targets.
4374 2009-01-11 Joel Brobecker <brobecker@adacore.com>
4376 * win32-nat.h: New file.
4377 * win32-nat.c (mappings): Initialize to NULL.
4378 (win32_set_context_register_offsets): New function.
4379 * i386-windows-nat.c: New file.
4380 (mappings): Moved here from win32-nat.c.
4381 (_initialize_i386_windows_nat): New function.
4382 * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o.
4383 * config/i386/cygwin.mh (NATDEPFILES): Likewise.
4385 2009-01-09 Andreas Schwab <schwab@suse.de>
4387 * Makefile.in (init.c): Set LANG/LC_ALL to C, not c.
4389 2009-01-09 Daniel Jacobowitz <dan@codesourcery.com>
4391 * gdbtypes.c (append_composite_type_field): Correct the location of
4394 2009-01-09 Pedro Alves <pedro@codesourcery.com>
4396 * defs.h (deprecated_error_hook): Delete declaration.
4397 * interps.c (clear_interpreter_hooks): Adjust.
4398 * remote-sim.c (gdb_os_error): Don't try to call
4399 deprecated_error_hook. No need to call exit anymore.
4400 * top.c (deprecated_error_hook): Delete.
4402 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4404 * arch-utils.c (gdbarch_update_p): Use host_address_to_string
4405 to print the address of the gdbarch pointer.
4407 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4409 * gdbarch.sh: Fix all the compilation errors on amd64-windows
4410 due to casting a pointer to a long when printing a function
4411 address. Instead, use host_address_to_string to convert our
4412 address to a string.
4413 * gdbarch.c: Regenerate.
4415 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4417 * event-top.c (async_disconnect, async_stop_sig): use "raise"
4418 instead of "kill" to raise a signal.
4420 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4422 * win32-nat.c (get_module_name): Change the type of parameter
4423 "base_address" to LPVOID. Remove unnecessary cast.
4424 (struct lm_info): Change type of load_addr to LPVOID.
4425 (win32_make_so): Change the type of parameter "load_addr"
4426 to LPVOID. Remove some unnecessary casts.
4427 (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID.
4428 (win32_xfer_shared_libraries): Add missing cast.
4430 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4432 * win32-nat.c (has_detach_ability, set_process_privilege):
4433 Cast the result of GetProcAddress to (void *) to avoid
4434 a compilation warning.
4436 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4438 * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not
4441 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4443 * win32-nat.c (get_image_name, win32_xfer_memory): Fix type
4444 definition of local variable "done".
4445 (info_w32_command, handle_exception): Remove unnecessary cast.
4447 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4449 * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames
4450 DebugSetProcessKillOnExit. Update all uses in this file.
4451 (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop.
4452 Update all uses in this file.
4454 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4456 * win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
4457 and use it when pushing the target.
4458 (win32_attach, win32_create_inferior): Update call to
4459 do_initial_win32_stuff.
4460 (win32_detach, win32_mourn_inferior): Use our ops parameter
4461 instead of the global win32_ops to unpush the target.
4463 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4465 * ser-mingw.c (ser_windows_open): Use proper type when casting
4466 in call to _open_osfhandle.
4468 2009-01-09 Kai Tietz <kai.tietz@onevision.com>
4470 * coff-pe-read.c (read_pe_exported_syms): Fix typo.
4472 2009-01-09 Joel Brobecker <brobecker@adacore.com>
4474 * CONTRIBUTE: Minor reformatting.
4476 2009-01-08 Kai Tietz <kai.tietz@onevision.com>
4478 * MAINTAINERS: Add myself to Write After Approval.
4479 * coff-pe-read.c (read_pe_exported_syms): Enable read of PE+
4482 2009-01-08 Nathan Froyd <froydnj@codesourcery.com>
4484 * remote-sim.c (gdb_os_error): Mark as a noreturn function.
4485 Call exit to make it obvious to GCC.
4487 2009-01-08 Tom Tromey <tromey@redhat.com>
4489 PR breakpoints/9350:
4490 * varobj.c (varobj_invalidate): Unconditionally free
4492 * symfile.c (syms_from_objfile): Free local_addr when returning
4494 * exec.c (exec_file_attach): Do cleanups before returning.
4495 (exec_file_command): Likewise.
4496 * corefile.c (reopen_exec_file): Do cleanups before returning.
4497 * breakpoint.c (insert_breakpoint_locations): Do cleanups before
4499 (do_vec_free): New function.
4500 (update_global_location_list): Make a cleanup for old_locations.
4501 Do cleanups before returning. Remove unused variable 'e'.
4502 (find_condition_and_thread): Free result of parsing the
4504 (print_it_typical): Do cleanups before returning.
4505 (breakpoint_re_set_one): Always free sals.sals.
4507 2009-01-08 Joel Brobecker <brobecker@adacore.com>
4508 Emi Suzuki <emi-suzuki@tjsys.co.jp>
4510 * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for
4513 2009-01-07 Doug Evans <dje@google.com>
4515 * top.c (gdb_prompt_string): Delete, unused.
4517 2009-01-07 Pedro Alves <pedro@codesourcery.com>
4519 Delete ONE_PROCESS_WRITETEXT leftovers.
4521 * breakpoint.c (insert_bp_location): Delete process_warning
4523 (insert_breakpoint_locations): Adjust.
4524 (reattach_breakpoints): Adjust.
4525 * infrun.c (normal_stop): Drop "It might be running in another
4528 2009-01-07 Stan Shebs <stan@codesourcery.com>
4530 * config/pa/linux.mh (XDEPFILES): Remove.
4532 2009-01-07 Doug Evans <dje@google.com>
4534 * cli/cli-cmds.c (set_debug): Fix cut-n-paste error.
4536 2009-01-07 Jan Kratochvil <jan.kratochvil@redhat.com>
4538 * f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
4539 spacing, a regression from 2008-04-22.
4541 2009-01-07 Joel Brobecker <brobecker@adacore.com>
4543 * utils.c (gdb_print_host_address): Adjust implementation to
4544 reuse host_address_to_string. Move comment explaining the conversion
4545 from host address to string from here...
4546 (host_address_to_string): ... to there.
4548 2009-01-07 Emi Suzuki <emi-suzuki@tjsys.co.jp>
4550 * MAINTAINERS: Add myself for write after approval privileges.
4552 2009-01-06 Tom Tromey <tromey@redhat.com>
4554 * value.c (set_internalvar): Use value_free, not xfree.
4556 2009-01-06 Jim Blandy <jimb@red-bean.com>
4558 Check return values of functions declared with warn_unused_result
4559 attribute in GLIBC 2.8.
4560 * cli/cli-cmds.c (pwd_command): Check return value from getcwd.
4561 * inflow.c (check_syscall): New function.
4562 (new_tty): Use check_syscall to check return values from open and dup.
4563 * linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets.
4564 * main.c (captured_main): Call cwd after setting up gdb_stderr;
4565 check for errors from getcwd.
4566 * mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd.
4567 * ui-file.c (stdio_file_write): Ignore return value from fwrite.
4568 (stdio_file_fputs): Same.
4569 * utils.c (internal_vproblem): abort if last-ditch error message
4572 * top.c (gdb_init): Don't set the current directory here; that's
4573 already been done in captured_main.
4575 2009-01-06 Sandra Loosemore <sandra@codesourcery.com>
4577 * ser-tcp.c: Adjust includes.
4578 (tcp_set_cmdlist, tcp_show_cmdlist): Declare.
4579 (tcp_auto_retry, tcp_retry_limit): Declare.
4580 (TIMEOUT): Remove, in favor of tcp_retry_limit.
4581 (POLL_INTERVAL): Increase to 5, in favor of backoff logic.
4582 (wait_for_connect): New function.
4583 (net_open): Use it. Add auto-retry logic.
4584 (set_tcp_cmd, show_tcp_cmd): New functions.
4585 (_initialize_ser_tcp): Initialize new "set/show tcp auto-retry"
4586 and "set/show tcp connect-timeout" commands.
4587 * NEWS: Document new commands.
4589 2009-01-05 Tom Tromey <tromey@redhat.com>
4591 * python/python-internal.h (Py_ssize_t): Define as int.
4593 2009-01-05 Jim Blandy <jimb@red-bean.com>
4595 * MAINTAINERS: Fix my e-mail address as steering committee member.
4597 2009-01-03 Joel Brobecker <brobecker@adacore.com>
4599 Updated copyright notices for most files.
4601 2009-01-03 Joel Brobecker <brobecker@adacore.com>
4603 * top.c (print_gdb_version): Update copyright year.
4605 2009-01-03 Joel Brobecker <brobecker@adacore.com>
4607 * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008.
4609 2009-01-01 Pedro Alves <pedro@codesourcery.com>
4611 PR breakpoints/9681:
4612 * exceptions.h (enum errors): New error type, MEMORY_ERROR.
4613 * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
4614 * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
4615 retrow all other exceptions.
4617 For older changes see ChangeLog-2008.
4623 version-control: never