1 2008-12-02 Pedro Alves <pedro@codesourcery.com>
3 * target.h (target_get_osdata): Describe.
4 * osdata.h (make_cleanup_osdata_free): Declare.
5 * osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is
7 (osdata_free_cleanup): New.
8 (make_cleanup_osdata_free): New.
9 (get_osdata): Fix leak.
10 (info_osdata_command): Use make_cleanup_osdata_free.
11 (info_processes_command): Delete.
12 (_initialize_osdata): Drop undocumented "info processes" alias.
13 * mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.
15 2008-12-02 Jan Kratochvil <jan.kratochvil@redhat.com>
17 Fix resolving external references to TLS variables.
18 * findvar.c: Include `objfiles.h'.
19 (read_var_value <LOC_UNRESOLVED>): New variable `obj_section'. Handle
20 SEC_THREAD_LOCAL variables.
21 * printcmd.c (address_info <LOC_UNRESOLVED>): Handle SEC_THREAD_LOCAL
24 2008-12-02 Doug Evans <dje@google.com>
26 * infrun.c (handle_inferior_event): Delete unused local tp.
28 2008-12-02 Pedro Alves <pedro@codesourcery.com>
29 Vladimir Prus <vladimir@codesourcery.com>
31 Implement -list-thread-groups --available
33 * Makefile.in (XMLFILES): Add osdata.dtd.
34 (SFILES): Add osdata.c.
35 (COMMON_OBS): Add osdata.o.
36 * linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h.
37 (linux_nat_xfer_osdata): New function.
38 (linux_xfer_partial): Handle TARGET_OBJECT_OSDATA.
41 * remote.c (PACKET_qXfer_osdata): New packet enum.
42 (remote_protocol_features): Add "qXfer:osdata:read".
43 (remote_read_qxfer): Handle TARGET_OBJECT_OSDATA.
44 (extended_remote_can_run): New.
45 (init_extended_remote_ops): Set to_can_run to
46 extended_remote_can_run.
47 (_initialize_remote): Add packet config command for
49 * xml-support.c (obstack_xml_printf): New function.
50 * xml-support.h (obstack_xml_printf): Declare.
51 * target.c (target_get_osdata): New function.
52 * target.h (enum target_object): Add TARGET_OBJECT_OSDATA.
53 (target_os_data): Declare.
54 * features/osdata.dtd: New file.
55 * mi/mi-main.c (mi_list_thread_groups): Handle the --available
58 2008-12-01 Doug Evans <dje@google.com>
60 * infrun.c (proceed): Delete unused local stop_signal.
62 2008-11-27 Tristan Gingold <gingold@adacore.com>
64 * NEWS: Add entry for new native configuration: Darwin.
65 * configure.host: Add Darwin host.
66 * configure.tgt: Add Darwin target.
67 * defs.h (enum gdb_osabi): Add GDB_OSABI_DARWIN.
68 * osabi.c (gdb_osabi_names): Add name for Darwin abi.
69 * i386-darwin-nat.c: New file.
70 * i386-darwin-tdep.c: New file.
71 * machoread.c: New file.
72 * darwin-nat-info.c: New file.
73 * darwin-nat.c: New file.
74 * darwin-nat.h: New file.
75 * darwin.defs: New file.
76 * config/i386/darwin.mh: New file.
78 2008-11-26 Tristan Gingold <gingold@adacore.com>
80 * MAINTAINERS: Add myself for write after approval privileges.
82 2008-11-26 Jerome Guitton <guitton@adacore.com>
84 * value.h (allocate_value_lazy): New function declaration.
85 (value_free): Remove macro, make it a function.
86 * value.c (value): Move actual content outside of the memory space
87 of the struct; add a pointer to this actual content.
88 (allocate_value_lazy, allocate_value_contents): New function.
89 (allocate_value): Reimplement using these two new functions.
90 (value_contents_raw, value_contents_all_raw): If no memory
91 has been allocated yet for the actual content, allocate it.
92 (value_contents_all): Resync with struct value's changes.
93 (value_free): New function.
94 (value_copy, value_primitive_field): Use new function
95 allocate_value_lazy to allocate lazy values.
96 (value_change_enclosing_type): Resync with struct value's changes.
97 As the value is not reallocated, remove the special handling for
98 the value chain (now obsolete).
99 * valops.c (value_at_lazy): Use new function allocate_value_lazy.
100 (value_fetch_lazy): Allocate value content. Use allocate_value_lazy
101 to allocate lazy values.
102 (value_slice): Use allocate_value_lazy to allocate lazy values.
104 2008-11-25 Jan Kratochvil <jan.kratochvil@redhat.com>
106 Fix automatic restoration of breakpoints memory for ia64.
107 * ia64-tdep.c: New #if check on BREAKPOINT_MAX vs. BUNDLE_LEN.
108 (ia64_memory_insert_breakpoint): New comment part for SHADOW_CONTENTS
109 content. Remove variable instr. New variable cleanup. Disable
110 automatic breakpoints restoration. PLACED_SIZE and SHADOW_LEN are now
111 set larger, to BUNDLE_LEN - 2. Variable `bundle' type update. Return
112 error if even just final target_write_memory has failed.
113 (ia64_memory_remove_breakpoint): Rename variables bundle to bundle_mem
114 and instr to instr_saved. New variables bundle_saved and
115 instr_breakpoint. Comment new reasons why we need to disable automatic
116 restoration of breakpoints. Assert PLACED_SIZE and SHADOW_LEN. New
117 check of the original memory content. Return error if even just final
118 target_write_memory has failed.
119 (ia64_breakpoint_from_pc): Implement the emulation of permanent
120 breakpoints compatible with current bp_loc_is_permanent.
121 (template_encoding_table): Make it `const'.
122 * breakpoint.c (bp_loc_is_permanent): Support unsupported software
123 breakpoints. New variables `cleanup' and `retval'.
125 2008-11-24 Tom Tromey <tromey@redhat.com>
127 * ada-lang.c (value_from_contents_and_address): Move...
129 * ada-lang.h (value_from_contents_and_address): Move
133 2008-11-24 Paul Pluzhnikov <ppluzhnikov@google.com>
135 * valprint.c (val_print_array_elements): Pass correct
136 element address to val_print.
138 2008-11-24 Jan Kratochvil <jan.kratochvil@redhat.com>
140 Fix access of an already freed memory.
141 * parse.c (parse_field_expression): Call xstrdup on `*name'.
142 * completer.c (expression_completer): Free fieldname.
144 2008-11-24 Daniel Jacobowitz <dan@codesourcery.com>
147 * remote.c (remote_read_description_p): New function.
148 (remote_start_remote): Try to fetch the target description
149 before adding shared libraries. Try again later if the
150 target is running but stopped.
151 (remote_open_1): Mark extended targets as exited by default.
152 (remote_read_description): Check target_has_execution.
154 2008-11-24 Jerome Guitton <guitton@adacore.com>
156 * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Use
157 the frame address in block instead of the return address to
158 locate the mdebug PDR of the frame.
160 2008-11-21 Joel Brobecker <brobecker@adacore.com>
162 Remove the unused BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
164 * breakpoint.h (enum bpstat_what_main_action): Remove
165 BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
166 * breakpoint.c (bpstat_what): Delete catch_shlib_event from enum class.
167 Remove the BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK column from
169 * infrun.c (wait_for_inferior): Remove handling of
170 BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
172 2008-11-21 Tom Tromey <tromey@redhat.com>
174 * configure: Rebuild.
175 * configure.ac: Merge calls to AC_CHECK_FUNCS, AC_CHECK_HEADERS,
176 AC_CHECK_DECLS, and AC_CHECK_MEMBERS.
178 2008-11-21 Tom Tromey <tromey@redhat.com>
180 * python/python-internal.h (PyGILState_Ensure): New define.
181 (PyGILState_Release): Likewise.
182 (PyEval_InitThreads): Likewise.
183 (PyThreadState_Swap): Likewise.
184 (PyEval_InitThreads): Likewise.
185 * python/python.c (_initialize_python): Initialize threads.
187 (eval_python_from_control_command): Acquire GIL.
188 (python_command): Likewise.
189 * python/python-internal.h (make_cleanup_py_restore_gil):
191 * python/python-utils.c (py_gil_restore): New function.
192 (make_cleanup_py_restore_gil): Likewise.
194 2008-11-20 Doug Evans <dje@google.com>
196 * frame.c (frame_debug_got_null_frame): Remove file arg.
199 2008-11-20 Pedro Alves <pedro@codesourcery.com>
201 * infrun.c (resume): If following a fork, also reset regcache,
204 2008-11-20 Doug Evans <dje@google.com>
206 * printcmd.c (sym_info): Don't print the offset if it's zero.
208 2008-11-20 Pedro Alves <pedro@codesourcery.com>
210 * infrun.c (resume): If following a fork, reread the current
211 thread. Avoid dereferencing a possibly dangling pointer.
213 2008-11-19 Doug Evans <dje@google.com>
215 * inferior.h (proceed_to_finish): Delete, unused.
216 (stop_registers): Tweak comment.
217 * infrun.c (stop_registers): Tweak comment.
219 2008-11-19 Kevin Buettner <kevinb@redhat.com>
221 * frv-tdep.c (frv_skip_main_prologue): New function.
222 (frv_gdbarch_init): Register frv_skip_main_prologue.
223 * solib-frv.c (fetch_loadmap): Return early when no segments are
225 (frv_relocate_main_executable): Return early when both interpreter
226 and executable loadmap addresses are zero.
228 2008-11-19 Bob Wilson <bob.wilson@acm.org>
230 * xtensa-config.c (rmap): Remove entries for ar32 through ar63. Add
231 threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7,
232 excsave5, excsave6, excsave7, cpenable, and vecbase registers.
233 (xtensa_submask0, xtensa_submask1, xtensa_submask2)
234 (xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6)
235 (xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10)
236 (xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14)
237 (xtensa_submask15): Adjust register numbers.
238 * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
239 (xtensa_regmap_table): Add entry for scompare1.
240 * regformats/reg-xtensa.dat: Remove ar32 through ar63. Add threadptr
243 2008-11-19 Pedro Alves <pedro@codesourcery.com>
245 * remote.c (escape_buffer): New.
246 (putpkt_binary, read_frame, getpkt_or_notif_sane_1): Use it. Make
247 sure debug output printing a packet buffer goes through a single
248 fprintf_unfiltered call.
249 * utils.c (vfprintf_unfiltered): If outputting timestamps, end
250 output with a newline if it wasn't going to already.
252 2008-11-18 Paul Pluzhnikov <ppluzhnikov@google.com>
254 * maint.c (maintenance_translate_address): Fix a buglet.
256 2008-11-18 Thiago Jung Bauermann <bauerman@br.ibm.com>
258 * features/Makefile (rs6000/powerpc-isa205-32l-expedite,
259 rs6000/powerpc-isa205-altivec32l-expedite,
260 powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite,
261 rs6000/powerpc-isa205-altivec64l-expedite,
262 powerpc-isa205-vsx64l-expedite): New variables.
263 * regformats/rs6000/powerpc-isa205-32l.dat: Generate.
264 * regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate.
265 * regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate.
266 * regformats/rs6000/powerpc-isa205-64l.dat: Generate.
267 * regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate.
268 * regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate.
270 2008-11-18 Thiago Jung Bauermann <bauerman@br.ibm.com>
272 * ppc-linux-nat.c (ppc_register_u_addr): Add special case to return
273 offset for full 64-bit slot of FPSCR when in 32-bits.
274 (ppc_linux_read_description): Return target description with 64-bit
275 FPSCR when inferior is running on an ISA 2.05 or later processor.
276 * ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Call
277 initialize_tdec_powerpc_isa205_32l,
278 initialize_tdec_powerpc_isa205_altivec32l,
279 initialize_tdec_powerpc_isa205_vsx32l,
280 initialize_tdec_powerpc_isa205_64l,
281 initialize_tdec_powerpc_isa205_altivec64l and
282 initialize_tdec_powerpc_isa205_vsx64l.
283 * ppc-linux-tdep.h: Add external declaration for
284 tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l,
285 tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_64l,
286 tdesc_powerpc_isa205_altivec64l and tdesc_powerpc_isa205_vsx64l.
287 * features/rs600/powerpc-fpu-isa205.xml: New file.
288 * features/rs600/powerpc-isa205-32l.xml: New file.
289 * features/rs600/powerpc-isa205-64l.xml: New file.
290 * features/rs600/powerpc-isa205-altivec32l.xml: New file.
291 * features/rs600/powerpc-isa205-altivec64l.xml: New file.
292 * features/rs600/powerpc-isa205-vsx32l.xml: New file.
293 * features/rs600/powerpc-isa205-vsx64l.xml: New file.
294 * features/rs600/powerpc-isa205-32l.c: Generate.
295 * features/rs600/powerpc-isa205-64l.c: Generate.
296 * features/rs600/powerpc-isa205-altivec32l.c: Generate.
297 * features/rs600/powerpc-isa205-altivec64l.c: Generate.
298 * features/rs600/powerpc-isa205-vsx32l.c: Generate.
299 * features/rs600/powerpc-isa205-vsx64l.c: Generate.
301 2008-11-18 Paul Pluzhnikov <ppluzhnikov@google.com>
303 * objfiles.h: New MULTI_OBJFILE_P macro.
304 * printcmd.c (sym_info): Print object name.
305 * maint.c (maintenance_translate_address): Likewise.
307 2008-11-18 Joel Brobecker <brobecker@adacore.com>
309 * NEWS: Document the removal of "catch load" and "catch unload".
311 2008-11-17 Doug Evans <dje@google.com>
313 * infcall.c (call_function_by_hand): Fix punctuation and capitalization
316 2008-11-17 Ulrich Weigand <uweigand@de.ibm.com>
319 * infrun.c (clear_proceed_status_thread): New function.
320 (clear_proceed_status_callback): New function.
321 (clear_proceed_status): In all-stop mode, clear per-thread
322 proceed status of *all* threads, not only the current.
323 (handle_inferior_event): In all-stop mode, if we're stepping
324 one thread, but got some inferior event in another thread
325 that does not cause GDB to break to the user interface,
326 ensure the interrupted stepping operation continues in the
328 (currently_stepping): Move thread-related tests to ...
329 (currently_stepping_thread): ... this new function.
330 (currently_stepping_callback): New function.
332 2008-11-17 Vladimir Prus <vladimir@codesourcery.com>
334 Implement =thread-selected notification.
336 * mi/mi-common.h (struct mi_interp): New, moved from ...
337 * mi/mi-interp.c: ...here.
338 * mi/mi-main.c (mi_execute_command): If the thread changed
339 as result of command, report that.
341 2008-11-17 Vladimir Prus <vladimir@codesourcery.com>
343 Implement continue/interrupt of thread groups.
345 * mi/mi-main.c (proceed_thread_callback): New.
346 (mi_cmd_exec_continue): If --thread-group is specified, resume all
347 threads in that group.
348 (interrupt_thread_callback): New.
349 (mi_cmd_exec_interrupt): If --thread-group is specified, interrupt
350 all threads in that group.
352 2008-11-17 Vladimir Prus <vladimir@codesourcery.com>
354 Implement '-target-detach pid'.
356 * infcmd.c (detach_command): Make nonstatic.
357 * inferior.h (detach_command): Declare.
358 * mi/mi-cmds.c (mi_cmds): Don't route -target-detach via CLI.
359 * mi/mi-cmds.h (mi_cmd_target_detach): Declare.
360 * mi/mi-main.c (find_thread_of_process, mi_cmd_target_detach): New.
362 2008-11-17 Vladimir Prus <vladimir@codesourcery.com>
364 Include group-id in thread-created notification.
366 * mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include
367 group id in the output.
369 2008-11-17 Vladimir Prus <vladimir@codesourcery.com>
371 Notification for attach/detach.
373 * inferior.c: Call the process observers.
374 * mi/mi-interp.c (mi_new_inferior, mi_inferior_exit): New.
375 (mi_interpreter_init): Register the above.
377 2008-11-17 Vladimir Prus <vladimir@codesourcery.com>
379 Implement -list-thread-groups.
381 * thread.c (print_thread_info): New parameter pid, to print
382 threads of specific process.
383 * gdbthread.h (print_thread_info): New parameter pid.
384 * mi/mi-cmds.c (mi_cmds): Register -list-thread-groups.
385 * mi/mi-cmds.h (mi_cmd_list_thread_groups): New.
386 * mi/mi-main.c (mi_cmd_thread_info): Adjust.
387 (print_one_process, mi_cmd_list_thread_groups): New.
389 2008-11-16 Joel Brobecker <brobecker@adacore.com>
391 Remove some unused macros related to the old load/unload catchpoints.
393 * breakpoint.c (SOLIB_LOADED_LIBRARY_PATHNAME)
394 (SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_CREATE_CATCH_LOAD_HOOK)
395 (SOLIB_CREATE_CATCH_UNLOAD_HOOK): Delete. No longer used.
397 2008-11-16 Joel Brobecker <brobecker@adacore.com>
399 Remove support for catch load and catch unload commands.
401 * breakpoint.h (enum bptype): Remove bp_catch_load and bp_catch_unload.
402 (struct breakpoint): Remove fields dll_pathname and
403 triggered_dll_pathname.
404 (bpstat_get_triggered_catchpoints, ep_is_shlib_catchpoint): Delete.
405 * breakpoint.c (ep_is_catchpoint): Remove handling of
406 bp_catch_load and bp_catch_unload.
407 (print_it_typical, bpstat_check_location, bpstat_what)
408 (print_one_breakpoint_location, print_one_breakpoint_location)
409 (user_settable_breakpoint, allocate_bp_location)
410 (set_raw_breakpoint_without_location, mention, delete_breakpoint,
411 (breakpoint_re_set_one, disable_command, enable_command): Likewise.
412 (ep_is_shlib_catchpoint, bpstat_get_triggered_catchpoints)
413 (catch_load_command_1, catch_unload_command_1): Delete.
414 (_initialize_breakpoint): Remove the "catch load" and "catch unload"
416 * infrun.c (handle_inferior_event): Remove the handling of
417 load/unload catchpoint events.
419 2008-11-15 Joel Brobecker <brobecker@adacore.com>
421 From Jerome Guitton <guitton@adacore.com>
422 * dwarf2read.c (dwarf2_debug_line_missing_end_sequence_complaint):
424 (dwarf_decode_lines): Detect null file numbers. Detect the end of
425 the line program sequence when no end sequence is emitted.
427 2008-11-15 Joel Brobecker <brobecker@adacore.com>
429 * ada-lang.c (ada_evaluate_subexp): Improve handling of integer
432 2008-11-15 Daniel Jacobowitz <dan@codesourcery.com>
434 * NEWS: Mention sparc64-linux-gnu gdbserver support.
436 2008-11-14 Daniel Gutson <dgutson@codesourcery.com>
438 * configure.tgt (sparc64-*-linux*): Added gdbserver support.
439 * regformats/reg-sparc64.dat: New file.
441 2008-11-14 Tom Tromey <tromey@redhat.com>
444 * mi/mi-main.c (get_register): Use get_formatted_print_options.
446 2008-11-13 Joel Brobecker <brobecker@adacore.com>
448 * printcmd.c: define PRINTF_HAS_LONG_LONG only if not yet defined.
450 2008-11-13 Ulrich Weigand <uweigand@de.ibm.com>
452 * auxv.c (fprint_target_auxv): Handle AT_BASE_PLATFORM and
453 AT_EXECFN. Re-sort AT_SECURE.
455 2008-11-13 Jan Kratochvil <jan.kratochvil@redhat.com>
457 * monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'.
459 2008-11-13 Joel Brobecker <brobecker@adacore.com>
461 * ia64-tdep.c: Remove commented out #define.
463 2008-11-12 Joel Brobecker <brobecker@adacore.com>
465 From Joel Sherrill <joel.sherrill@oarcorp.com>
466 * remote-sim.c (gdbsim_mourn_inferior): Use "target" parameter
467 instead of the "gdbsim_ops" global.
469 2008-11-11 Doug Evans <dje@google.com>
471 * infcall.c (call_function_by_hand): Handle inferior exit.
473 2008-11-11 Thiago Jung Bauermann <bauerman@br.ibm.com>
475 * remote-sim.c (gdbsim_create_inferior, gdbsim_mourn_inferior): Add
476 missing struct target_ops argument.
478 2008-11-11 Joel Sherrill <joel.sherrilL@oarcorp.com>
480 * MAINTAINERS: Add myself for write after approval privileges.
482 2008-11-10 Tom Tromey <tromey@redhat.com>
484 * gdbtypes.c (copy_type_recursive): Clear new fields.
486 2008-11-10 Tom Tromey <tromey@redhat.com>
488 * cli/cli-cmds.c (source_script): Clean up full_pathname. Run
489 cleanups on early return.
491 2008-11-09 Vladimir Prus <vladimir@codesourcery.com>
493 Kill pthread_ops_hack
495 * target.h (struct target_ops): Make to_attach, to_detach,
496 to_create_inferior and to_mourn_inferior accept a pointer
497 to struct target_ops.
498 (target_attach, target_create_inferior, target_create_inferior):
499 Convert from macros to function. Find the right target to
501 (find_default_attach, find_default_create_inferior): New parameter
503 * corefile.c (core_file_command): Pass target to to_detach.
504 * corelow.c (core_detach): Add 'ops' parameter.
505 * fork-child.c (fork_inferior): Return the pid. Allow
506 init_trace_fun to be NULL.
507 * inf-ptrace (ptrace_ops_hack): Remove.
508 (inf_ptrace_him): Remove, moving all logic into....
509 (inf_ptrace_create_inferior): ... here. Push the target
511 (inf_ptrace_mourn_inferior, inf_ptrace_attach, inf_ptrace_detach):
512 Push/pop target passed as parameter, no ptrace_ops_hack.
513 (inf_ptrace_target): Don't remember result.
514 * inferior.h (fork_inferior): Adjust prototype.
515 * linux-nat.c (linux_nat_create_inferior, linux_nat_attach)
516 (linux_nat_detach, linux_nat_mourn_inferior): New parameter ops.
517 Pass it to linux_ops target.
518 * linux-thread-db.c (thread_db_detach, thread_db_mourn_inferior):
519 New parameter ops. Pass it to the target beneath.
520 * remote.c (remote_mourn, extended_remote_mourn, remote_detach)
521 (extended_remote_create_inferior): New parameter ops. Pass it
523 * target.c (debug_to_attach, debug_to_detach)
524 (debug_to_mourn_inferior): New parameter ops.
525 (target_create_inferior): New.
526 (update_current_target): Do not inherit to_attach, to_detach,
527 to_create_inferiour, to_mourn_inferior. Do not default
528 to_detach and to_mourn_inferior.
529 (target_detach): Find the right target to use.
530 (target_mourn_inferior): New.
531 (find_default_attach, find_default_create_inferior): New parameter
532 ops. Pass the found target when calling its method.
533 (init_dummy_target): Provide fallback definition of to_detach.
534 (target_attach): New.
535 (debug_to_attach, debug_to_detach, debug_to_create_inferior)
536 (debug_to_mourn_inferiour): New parameter ops.
537 * aix-thread.c: Adjust.
538 * bsd-uthread.c: Adjust.
540 * go32-nat.c: Adjust.
541 * hpux-thread.c: Adjust.
542 * inf-ttrace.c: Ajust.
544 * nto-procfs.c: Adjust.
546 * remote-m32r-sdi.c: Adjust.
547 * remote-mips.c: Adjust.
548 * remote-sim.c: Adjust.
549 * rs6000-nat.c: Adjust.
550 * sol-thread.c: Adjust.
551 * win32-nat.c: Adjust.
552 * dec-thread.c: Adjust.
554 2008-11-09 Vladimir Prus <vladimir@codesourcery.com>
556 * thread.c (print_thread_info): Eliminate now useless checks
559 2008-11-06 Pedro Alves <pedro@codesourcery.com>
561 * i386-dicos-tdep.c (i386_dicos_init_abi): Set decr_pc_after_break
564 2008-11-05 Pedro Alves <pedro@codesourcery.com>
566 * remote.c (notice_new_inferiors): Add a new inferior only when
567 we're going to add a new thread.
569 2008-11-05 Pedro Alves <pedro@codesourcery.com>
571 * defs.h (add_inferior_continuation)
572 (do_all_inferior_continuations)
573 (discard_all_inferior_continuations): Declare.
574 * utils.c (add_inferior_continuation)
575 (do_all_inferior_continuations)
576 (discard_all_inferior_continuations): New.
577 * inferior.h (struct inferior) <continuations>: New field.
578 * inferior.c (free_inferior): Discard all the inferior
580 * inf-loop.c (inferior_event_handler): Do all current inferior
582 * infcmd.c (attach_command): Register an inferior continuation
583 instead of a thread continuation.
584 * infrun.c (handle_inferior_event): If stop_soon is
585 STOP_QUIETLY_NO_SIGSTOP, also expect a TARGET_SIGNAL_0.
587 2008-11-04 Pedro Alves <pedro@codesourcery.com>
589 * inf-loop.c (inferior_event_handler): On INF_ERROR and
590 INF_REG_EVENT throwing, don't call target_async or pop_target.
591 Call pop_all_targets_above.
592 * remote.c (remote_close): Call remote_terminal_ours. Don't call
593 signal or target_async.
595 2008-11-04 Daniel Jacobowitz <dan@codesourcery.com>
597 * eval.c (evaluate_subexp_standard): Assert that there is at
598 least one array dimension.
600 2008-11-03 Vladimir Prus <vladimir@codesourcery.com>
602 Make attach_command exception-safe
603 * infcmd.c (attach_command): Call async_enable_stdin
604 if exception is thrown.
606 2008-11-03 Pedro Alves <pedro@codesourcery.com>
608 * gdbarch.sh (has_global_solist): Mention global breakpoints.
609 * gdbarch.h: Regenerate.
611 2008-11-03 Pedro Alves <pedro@codesourcery.com>
613 * remote.c (remote_start_remote): If the solib list is global,
614 fetch libraries and insert breakpoints after connecting.
615 * infcmd.c (post_create_inferior): If the solist is shared between
616 inferiors, no need to refetch it on every new inferior.
617 (detach_command): If the shared library list is shared between
618 inferiors, then don't clear it on every inferior detach.
619 * gdbarch.sh (has_global_solist): New.
620 * i386-dicos-tdep.c (i386_dicos_init_abi): Set
621 gdbarch_has_global_solist.
622 * target.c (target_pre_inferior): If the shared library list is
623 shared between inferiors, then don't clear it here, neither
624 invalidate the memory regions or clear the target description.
625 (target_detach): If the shared library list is shared between
626 inferiors, then don't remove breakpoints from the target here.
627 (target_disconnect): Comment.
628 * solib.c (update_solib_list): Check for null_ptid.
629 * breakpoint.c (insert_breakpoints, update_global_location_list):
630 If the shared library list is shared between inferiors, insert
631 breakpoints even if there's no execution.
632 (breakpoint_init_inferior): If the shared library list is shared
633 between inferiors, don't delete breakpoints or mark them
636 * gdbarch.c, gdbarch.h: Regenerate.
638 2008-10-31 Pedro Alves <pedro@codesourcery.com>
640 * inferior.h (inferior_ignoring_leading_exec_events): Delete
643 2008-10-31 Pedro Alves <pedro@codesourcery.com>
645 * inferior.h (write_inferior_status_register): Delete.
646 * infrun.c (write_inferior_status_register): Delete.
648 2008-10-30 Tom Tromey <tromey@redhat.com>
650 * value.c (coerce_array): Use check_typedef.
652 2008-10-30 Tom Tromey <tromey@redhat.com>
654 * cli/cli-logging.c (handle_redirections): Make a cleanup.
655 * reggroups.c (maintenance_print_reggroups): Make a cleanup.
656 * regcache.c (regcache_print): Make a cleanup.
657 * maint.c (maintenance_print_architecture): Make a cleanup.
658 * dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.
660 2008-10-30 Tom Tromey <tromey@redhat.com>
662 * utils.c (make_cleanup_close): Use make_cleanup_dtor.
663 (do_close_cleanup): Don't free 'fd'.
665 2008-10-30 Tom Tromey <tromey@redhat.com>
667 * source.c (symtab_to_fullname): Test 'r >= 0'.
668 (psymtab_to_fullname): Likewise.
669 (get_filename_and_charpos): Make a cleanup.
670 (forward_search_command): Likewise.
671 (reverse_search_command): Likewise.
672 * exec.c (exec_file_attach): Close scratch_chan on failure.
673 * nto-procfs.c (procfs_open): Make a cleanup.
674 (procfs_pidlist): Likewise.
675 (do_closedir_cleanup): New function.
677 2008-10-30 Andreas Schwab <schwab@suse.de>
679 * infcmd.c (construct_inferior_arguments): Handle newlines
682 2008-10-30 Joel Brobecker <brobecker@adacore.com>
684 * breakpoint.h (enum bptype): Delete bp_catch_exec.
685 * breakpoint.c (insert_catchpoint): Remove handling for
686 bp_catch_exec breakpoint kinds.
687 (insert_bp_location, update_breakpoints_after_exec, remove_breakpoint)
688 (ep_is_catchpoint, print_it_typical, bpstat_check_location),
689 (bpstat_check_location, bpstat_what, print_one_breakpoint_location)
690 (print_one_breakpoint_location, user_settable_breakpoint)
691 (breakpoint_address_is_meaningful, adjust_breakpoint_address)
692 (allocate_bp_location, mention, breakpoint_re_set_one)
693 (disable_command, enable_command): Likewise.
694 (create_exec_event_catchpoint): Delete.
695 (insert_catch_exec, remove_catch_exec, breakpoint_hit_catch_exec)
696 (print_it_catch_exec, print_one_catch_exec, print_mention_catch_exec):
698 (catch_exec_breakpoint_ops): New static global.
699 (catch_exec_command_1): Use create_catchpoint instead of
700 create_exec_event_catchpoint to create the exec catchpoint.
702 2008-10-28 Tom Tromey <tromey@redhat.com>
704 * Makefile.in (SUBDIR_CLI_OBS): Don't mention cli-utils.o.
705 (SUBDIR_CLI_DEPS): Don't mention cli-utils.c.
706 (HFILES_NO_SRCDIR): Don't mention cli-utils.h.
707 (cli-utils.o): Remove.
708 * cli/cli-utils.c: Remove.
709 * cli/cli-utils.h: Remove.
711 2008-10-28 Tom Tromey <tromey@redhat.com>
713 * varobj.c (value_get_print_value): Include valprint.h.
714 (value_get_print_value): Use get_formatted_print_options.
715 * value.h (struct value_print_options): Declare.
716 (value_print, val_print, common_val_print, val_print_string):
718 * value.c: Include valprint.h.
719 (show_values): Use get_user_print_options.
720 (show_convenience): Likewise.
721 * valprint.h (prettyprint_arrays, prettyprint_structs): Don't
723 (struct value_print_options): New type.
724 (vtblprint, unionprint, addressprint, objectprint, print_max,
725 inspect_it, repeat_count_threshold, output_format,
726 stop_print_at_null): Don't declare.
727 (user_print_options, get_user_print_options,
728 get_raw_print_options, get_formatted_print_options): Declare.
729 (print_array_indexes_p): Don't declare.
730 (maybe_print_array_index, val_print_array_elements): Update.
731 * valprint.c (print_max): Remove.
732 (user_print_options): New global.
733 (get_user_print_options, get_raw_print_options,
734 get_formatted_print_options): New functions.
735 (print_array_indexes, repeat_count_threshold, stop_print_at_null,
736 prettyprint_structs, prettyprint_arrays, unionprint,
737 addressprint): Remove.
738 (val_print): Remove format, deref_ref, pretty arguments; add
740 (common_val_print): Likewise.
741 (print_array_indexes_p): Remove.
742 (maybe_print_array_index): Remove format, pretty arguments; add
744 (val_print_array_elements): Remove format, deref_ref, pretty
745 arguments; add options. Update.
746 (val_print_string): Add options argument. Update.
747 (_initialize_valprint): Use user_print_options.
748 (output_format): Remove.
749 (set_output_radix_1): Use user_print_options.
750 * typeprint.c: Include valprint.h.
751 (objectprint): Don't declare.
752 (whatis_exp): Use get_user_print_options.
753 * tui/tui-regs.c: Include valprint.h.
754 (tui_register_format): Use get_formatted_print_options.
755 * tracepoint.c: Include valprint.h.
756 (addressprint): Don't declare.
757 (trace_mention): Use get_user_print_options.
758 (tracepoints_info): Likewise.
759 * stack.c (print_frame_args): Use get_raw_print_options.
760 (print_frame_info): Use get_user_print_options.
761 (print_frame): Likewise.
762 * sh64-tdep.c: Include valprint.h
763 (sh64_do_register): Use get_formatted_print_options.
764 * scm-valprint.c (scm_inferior_print): Remove format, deref_ref,
765 pretty arguments; add options.
766 (scm_scmlist_print): Likewise. Update.
767 (scm_scmval_print): Likewise.
768 (scm_val_print): Likewise.
769 (scm_value_print): Remove format, pretty arguments; add options.
771 * scm-lang.h (scm_value_print, scm_val_print, scm_scmval_print):
773 * scm-lang.c (scm_printstr): Add options argument.
774 * python/python-value.c: Include valprint.h.
775 (valpy_str): Use get_user_print_options.
776 * printcmd.c: Include valprint.h.
777 (addressprint): Don't declare.
778 (inspect_it): Remove.
779 (print_formatted): Remove format option; add options. Update.
780 (print_scalar_formatted): Likewise.
781 (print_address_demangle): Use get_user_print_options.
782 (do_examine): Use get_formatted_print_options.
783 (print_command_1): Likewise.
784 (output_command): Use get_formatted_print_options.
785 (do_one_display): Likewise.
786 (print_variable_value): Use get_user_print_options.
787 * p-valprint.c (pascal_val_print): Remove format, deref_ref,
788 pretty arguments; add options. Update.
789 (pascal_value_print): Remove format, pretty arguments; add
791 (vtblprint, objectprint): Don't declare.
792 (pascal_static_field_print): Remove.
793 (pascal_object_print_value_fields): Remove format, pretty
794 arguments; add options. Update.
795 (pascal_object_print_static_field): Likewise.
796 (_initialize_pascal_valprint): Use user_print_options. Update.
797 * p-lang.h (pascal_val_print, pascal_value_print,
798 pascal_printstr, pascal_object_print_value_fields): Update.
799 (vtblprint, static_field_print): Don't declare.
800 * p-lang.c (pascal_printstr): Add options argument. Update.
801 * objc-lang.c (objc_printstr): Add options argument. Update.
802 * mt-tdep.c: Include valprint.h.
803 (mt_registers_info): Use get_raw_print_options.
804 * mips-tdep.c: Include valprint.h.
805 (mips_print_fp_register): Use get_formatted_print_options.
806 (mips_print_register): Likewise.
807 * mi/mi-main.c: Include valprint.h.
808 (get_register): Use get_user_print_options.
809 (mi_cmd_data_evaluate_expression): Likewise.
810 (mi_cmd_data_read_memory): Use get_formatted_print_options.
811 * mi/mi-cmd-stack.c: Include valprint.h.
812 (list_args_or_locals): Use get_raw_print_options.
813 * m2-valprint.c (print_function_pointer_address): Add addressprint
815 (m2_print_long_set): Remove format, pretty arguments.
816 (m2_print_unbounded_array): Remove format, deref_ref, pretty
817 arguments; add options. Update.
818 (print_unpacked_pointer): Remove format argument; add options.
820 (print_variable_at_address): Remove format, deref_ref, pretty
821 arguments; add options. Update.
822 (m2_print_array_contents): Likewise.
823 (m2_val_print): Likewise.
824 * m2-lang.h (m2_val_print): Update.
825 * m2-lang.c (m2_printstr): Add options argument. Update.
826 * language.h (struct value_print_options): Declare.
827 (struct language_defn) <la_printstr>: Add options argument.
828 <la_val_print>: Remove format, deref_ref, pretty argument; add
830 <la_value_print>: Remove format, pretty arguments; add options.
831 <la_print_array_index>: Likewise.
832 (LA_VAL_PRINT, LA_VALUE_PRINT, LA_PRINT_STRING,
833 LA_PRINT_ARRAY_INDEX): Update.
834 (default_print_array_index): Update.
835 * language.c (default_print_array_index): Remove format, pretty
836 arguments; add options. Update.
837 (unk_lang_printstr): Add options argument.
838 (unk_lang_val_print): Remove format, deref_ref, pretty arguments;
840 (unk_lang_value_print): Remove format, pretty arguments; add
842 * jv-valprint.c (java_value_print): Remove format, pretty
843 arguments; add options. Update.
844 (java_print_value_fields): Likewise.
845 (java_val_print): Remove format, deref_ref, pretty arguments; add
847 * jv-lang.h (java_val_print, java_value_print): Declare.
848 * infcmd.c: Include valprint.h.
849 (print_return_value): Use get_raw_print_options.
850 (default_print_registers_info): Use get_user_print_options,
851 get_formatted_print_options.
852 (registers_info): Use get_formatted_print_options.
853 * gdbtypes.h (struct value_print_options): Declare.
854 (print_scalar_formatted): Update.
855 * f-valprint.c (f77_print_array_1): Remove format, deref_ref,
856 pretty arguments; add options. Update.
857 (f77_print_array): Likewise.
858 (f_val_print): Likewise.
859 * f-lang.h (f_val_print): Update.
860 * f-lang.c (f_printstr): Add options argument. Update.
861 (c_value_print): Update declaration.
862 * expprint.c: Include valprint.h.
863 (print_subexp_standard): Use get_raw_print_options,
864 get_user_print_options.
865 * eval.c: Include valprint.h.
866 (objectprint): Don't declare.
867 (evaluate_subexp_standard): Use get_user_print_options.
868 * cp-valprint.c (vtblprint, objectprint, static_field_print):
870 (cp_print_value_fields): Remove format, pretty arguments; add
872 (cp_print_value): Likewise.
873 (cp_print_static_field): Likewise.
874 (_initialize_cp_valprint): Use user_print_options. Update.
875 * c-valprint.c (print_function_pointer_address): Add addressprint
877 (c_val_print): Remove format, deref_ref, pretty arguments; add
879 (c_value_print): Add options argument. Update.
880 * c-lang.h (c_val_print, c_value_print, c_printstr): Update.
881 (vtblprint, static_field_print): Don't declare.
882 (cp_print_value_fields): Update.
883 * c-lang.c (c_printstr): Add options argument. Update.
884 * breakpoint.c: Include valprint.h.
885 (addressprint): Don't declare.
886 (watchpoint_value_print): Use get_user_print_options.
887 (print_one_breakpoint_location): Likewise.
888 (breakpoint_1, print_it_catch_fork, print_it_catch_vfork, mention,
889 print_exception_catchpoint): Likewise.
890 * auxv.c (fprint_target_auxv): Don't declare addressprint. Use
891 get_user_print_options.
892 * ada-valprint.c (struct ada_val_print_args): Remove format,
893 deref_ref, and pretty; add options.
894 (print_optional_low_bound): Add options argument.
895 (val_print_packed_array_elements): Remove format and pretty
896 arguments; add options. Update.
897 (printstr): Add options argument. Update.
898 (ada_printstr): Likewise.
899 (ada_val_print): Remove format, deref_ref, pretty arguments; add
900 options argument. Update.
901 (ada_val_print_stub): Update.
902 (ada_val_print_array): Remove format, deref_ref, pretty arguments;
904 (ada_val_print_1): Likewise.
905 (print_variant_part): Likewise.
906 (ada_value_print): Remove format, pretty arguments; add options.
908 (print_record): Likewise.
909 (print_field_values): Likewise.
910 * ada-lang.h (ada_val_print, ada_value_print, ada_printstr):
912 * ada-lang.c (ada_print_array_index): Add options argument; remove
913 format and pretty arguments.
914 (print_one_exception): Use get_user_print_options.
916 2008-10-28 Tom Tromey <tromey@redhat.com>
918 * cli/cli-script.c (do_fclose_cleanup): Remove.
919 (script_from_file): Use make_cleanup_fclose.
920 * xml-tdesc.c (do_cleanup_fclose): Remove.
921 (fetch_xml_from_file): Use make_cleanup_fclose.
922 * tracepoint.c (tracepoint_save_command): Use
923 make_cleanup_fclose. Always free pathname.
924 * source.c (print_source_lines_base): Use make_cleanup_fclose.
925 * remote.c (fclose_cleanup): Remove.
926 (remote_file_put): Use make_cleanup_fclose.
927 (remote_file_get): Likewise.
928 * linux-nat.c (linux_nat_find_memory_regions): Use
930 (linux_nat_info_proc_cmd): Likewise.
931 (linux_proc_pending_signals): Likewise.
932 * fbsd-nat.c (fbsd_find_memory_regions): Use make_cleanup_fclose.
934 * cli/cli-dump.c (do_fclose_cleanup): Remove.
935 (make_cleanup_fclose): Remove.
936 * defs.h (make_cleanup_fclose): Declare.
937 * utils.c (do_fclose_cleanup): New function.
938 (make_cleanup_fclose): Likewise.
940 2008-10-27 Pedro Alves <pedro@codesourcery.com>
942 * inflow.c (kill_command): If the target claims there is still
943 execution, don't clear the thread list.
945 2008-10-27 Pedro Alves <pedro@codesourcery.com>
947 * cp-name-parser.y: Include defs.h instead of config.h.
948 (parse_escape): Rename to ...
949 (cp_parse_escape): ... this.
951 (xfree) [TEST_CPNAMES]: New.
953 2008-10-27 Pedro Alves <pedro@codesourcery.com>
955 * CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
956 2.13 and configure.in.
958 2008-10-27 Pedro Alves <pedro@codesourcery.com>
960 * target.h (struct target_ops) <to_supports_multi_process>: New
962 (target_supports_multi_process): New define.
963 * target.c (update_current_target): Inherit and de_fault
964 to_supports_multi_process.
965 * infcmd.c (attach_command): Allow attaching to multiple processes
966 if the target supports it.
967 (detach_command): If the target claims there is still execution,
968 don't clear the thread list.
969 * remote.c (remote_supports_multi_process): New.
970 (init_remote_ops): Register remote_supports_multi_process.
972 2008-10-27 Pedro Alves <pedro@codesourcery.com>
974 * Makefile.in (.y.c, .l.c): sed free to xfree.
976 2008-10-27 Pedro Alves <pedro@codesourcery.com>
978 * Makefile.in (INSTALLED_LIBS, CLIBS): Remove reference to
980 (CDEPS): Remove reference to $(TM_CDEPS).
982 2008-10-26 Michael Snyder <msnyder@vmware.com>
984 * infrun.c (handle_inferior_event): Handle dynamic symbol
985 resolution in reverse.
987 2008-10-25 Joel Brobecker <brobecker@adacore.com>
989 * infrun.c: Minor comment reformatting.
991 2008-10-25 Pedro Alves <pedro@codesourcery.com>
993 * ada-exp.y (write_object_renaming): Use malloc instead of
995 * p-exp.y (pop_current_type): Use free instead of xfree.
997 2008-10-24 Pedro Alves <pedro@codesourcery.com>
999 * fork-child.c (startup_inferior): Only set threads not-executing
1000 after getting all the pending execs. On TARGET_WAITKIND_IGNORE,
1001 keep waiting, don't resume. On all other cases but
1002 TARGET_WAITKIND_SIGNALLED and TARGET_WAITKIND_EXITED, switch to
1005 2008-10-24 Pedro Alves <pedro@codesourcery.com>
1007 Remote non-stop mode support.
1009 * remote.c (pending_stop_reply): New.
1010 (struct remote_state) <non_stop_aware, support_vCont_t>: New
1012 (remote_async_inferior_event_token)
1013 (remote_async_get_pending_events_token): New.
1014 (notice_new_inferiors): New, abstracted out from record_currthread.
1015 (record_currthread): Call it.
1016 (remote_threads_info): Default threads to running in non-stop
1017 mode. In non-stop mode, only qfThreadInfo is supported.
1018 (remote_close): Discard all pending stop_replies. Close the event
1020 (set_stop_requested_callback): New.
1021 (remote_start_remote): Implement non-stop mode startup. In
1022 all-stop, don't clear the thread list here.
1023 (remote_non_stop_feature): New.
1024 (remote_protocol_features): Add a "QNonStop" feature.
1025 (remote_open_1): Clear cached_wait_status and non_stop_aware.
1026 Clear the thread list here.
1027 (remote_detach_1): Discard pending stop replies of the process we
1029 (extended_remote_attach_1): Implement non-stop mode.
1030 (remote_vcont_probe): Recognize `vCont;t'.
1031 (remote_vcont_resume): Implement non-stop mode.
1032 (remote_resume): Don't set waiting_for_stop_reply in non-stop
1034 (remote_stop_ns): New.
1035 (remote_stop): Rename to ...
1036 (remote_stop_as): ... this. If we have a cached wait status,
1037 don't bother interrupting the remote.
1038 (remote_stop): Reimplement as wrapper around remote_stop_as and
1040 (interrupt_query): Don't query in async mode.
1041 (struct cached_reg, cahed_reg_t): New.
1042 (struct stop_reply): New.
1043 (stop_reply_queue): New.
1044 (stop_reply_xmalloc, stop_reply_xfree)
1045 (discard_pending_stop_replies, do_stop_reply_xfree)
1046 (queued_stop_reply, push_stop_reply, peek_stop_reply)
1047 (remote_parse_stop_reply, remote_get_pending_stop_replies)
1048 (process_stop_reply): New.
1049 (remote_wait_ns): New.
1050 (remote_wait_as): Use remote_parse_stop_reply. Invalidate the
1051 notion of current general thread is a process exit was reported.
1052 (remote_wait): Call remote_wait_ns in non-stop mode.
1053 (handle_notification): New.
1054 (putpkt_binary): Handle notifications. Don't care for
1055 waiting_for_stop_reply in non-stop mode.
1056 (getpkt_sane): Rename to ...
1057 (getpkt_or_notif_sane_1): ... this. Add `expecting_notif'
1058 argument. Handle it. Handle notifications.
1059 (getpkt_sane): Reimplement as wrapper around getpkt_or_notif_sane_1.
1060 (getpkt_or_notif_sane): New.
1061 (select_new_thread_callback): Check for exited state instead of
1062 comparing the ptid against minus_one_ptid.
1063 (extended_remote_create_inferior_1): Query the remote about the
1065 (remote_supports_non_stop): New.
1066 (init_remote_ops): Register it.
1067 (remote_async_inferior_event_handler): New.
1068 (remote_async_get_pending_events_handler): New.
1070 * infcmd.c (proceed_thread_callback): Comment.
1071 (proceed_after_attach_callback, proceed_after_attach): New.
1072 (attach_command_post_wait): In background attach, resume all
1073 threads, but only if they are unsignalled, and not explicitly
1074 stopped. In foreground attach, in non-stop mode, make sure to
1075 stop all threads of the just attached to process.
1076 (attach_command): In non-stop mode: If doing a background attach,
1077 stop at least one thread. If a foreground attach, stop all
1080 2008-10-24 Pedro Alves <pedro@codesourcery.com>
1082 * event-loop.h: Mention async_event_handlers.
1083 (async_event_handler): Forward declare.
1084 (async_event_handler_func): New typedef.
1085 (create_async_event_handler, delete_async_event_handler)
1086 (mark_async_event_handler): Declare.
1087 * event-loop.c (event_data): New.
1088 (event_handler_func): Take an event_data instead of an integer.
1089 (struct gdb_event): Replace the integer file descriptor by a
1091 (async_event_handler): New.
1092 (async_handler_ready): Delete.
1093 (async_event_handler_list): New.
1094 (create_event): New.
1095 (create_file_event): Use it.
1096 (process_event): Adjust.
1097 (gdb_do_one_event): Poll from the event sources in round-robin
1098 fashion across calls. Be sure to consult all sources before
1100 (handle_file_event): Take an event_data instead of an integer.
1102 (gdb_wait_for_event): Add `block' argument. Handle it.
1103 (mark_async_signal_handler): Remove unneeded cast.
1104 (invoke_async_signal_handler): Rename to ...
1105 (invoke_async_signal_handlres): ... this. Return true if any was
1107 (check_async_ready): Delete
1108 (create_async_event_handler): New.
1109 (mark_async_event_handler): New.
1110 (struct async_event_handler_data): New.
1111 (invoke_async_event_handler): New.
1112 (check_async_event_handlers): New.
1113 (delete_async_event_handler): New.
1114 (handle_timer_event): Adjust.
1116 2008-10-24 Doug Evans <dje@google.com>
1118 * dwarf2read.c (typename_concat): Don't segv if prefix or suffix
1119 is NULL. Simplify obs == NULL case.
1121 2008-10-24 Hui Zhu <teawater@gmail.com>
1122 Pedro Alves <pedro@codesourcery.com>
1124 * infrun.c (can_use_displaced_stepping): Change type to
1126 (can_use_displaced_stepping_auto): New string.
1127 (can_use_displaced_stepping_on): New string.
1128 (can_use_displaced_stepping_off): New string.
1129 (can_use_displaced_stepping_enum): New array.
1130 (show_can_use_displaced_stepping): In auto mode, also show
1131 the current effect of the option.
1132 (use_displaced_stepping): Return non-zero if displaced
1133 stepping is auto, and can be used with GDBARCH, and in
1134 non-stop mode. Return non-zero if displaced stepping is on,
1135 and can be used with GDBARCH. Return zero otherwise.
1136 (_initialize_infrun): Make the "set displaced-stepping"
1137 command an enum command. Change its class to class_run.
1138 Place it in the top level set list. Extend help to describe
1141 2008-10-23 Pedro Alves <pedro@codesourcery.com>
1143 * defs.h: Mention ptid_is_pid.
1144 * inferior.h (ptid_is_pid): Declare.
1145 * gdbthread.h (struct thread_info) <stop_requested>: New field.
1146 (set_stop_requested): Declare.
1147 * infcmd.c (interrupt_target_1): Call set_stop_requested.
1148 * infrun.c (clear_proceed_status): Clear stop_requested.
1149 (infrun_thread_stop_requested_callback,
1150 infrun_thread_stop_requested): New.
1151 (handle_inferior_event): If a TARGET_SIGNAL_TRAP is reported on a
1152 thread that had an explicit stop request, pretend we got a
1153 TARGET_SIGNAL_0. Always stop if the thread had an explicit stop
1155 (print_stop_reason): In the SIGNAL_RECEIVED case, if we're not
1156 outputting to MI, and we got a TARGET_SIGNAL_0, print "# Stopped",
1157 instead of mentioning signal 0.
1159 * thread.c (set_stop_requested): New.
1161 * linux-nat.c (queued_waitpid): Rename to ...
1162 (queued_waitpid_1): ... this. Add `peek' argument. Handle it.
1163 (queued_waitpid): New, as wrapper to queued_waitpid_1.
1164 (push_waitpid): Push the SIGTRAP to the local event queue, to the
1166 (send_sigint_callback): Delete.
1167 (linux_nat_stop_lwp): New.
1168 (linux_nat_stop): Use it.
1170 2008-10-23 Paul Pluzhnikov <ppluzhnikov@google.com>
1172 * python/python-value (valpy_getitem): Fix heap corruption.
1174 2008-10-23 Aleksandar Ristovski <aristovski@qnx.com>
1176 * nto-procfs.c (do_attach): Form proper ptid including pid and tid.
1177 (procfs_create_inferior): Fetch list of threads.
1179 2008-10-23 Aleksandar Ristovski <aristovski@qnx.com>
1181 * nto-procfs.c (procfs_files_info): Fix a typo.
1182 (procfs_create_inferior): Make attach_flag per-inferior.
1184 2008-10-23 Tom Tromey <tromey@redhat.com>
1186 * python/python-value.c (value_to_value_object): Initialize
1188 (valpy_new): Likewise.
1190 2008-10-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1191 Joel Brobecker <brobecker@adacore.com>
1193 * ada-tasks.c (task_states, long_task_states): Use constant N_()
1194 initializer. Define the strings as const.
1195 (short_task_info, info_task): Translate the strings above.
1197 2008-10-22 Joel Brobecker <brobecker@adacore.com>
1199 * NEWS: Add entry for new feature (Ada tasking support).
1201 2008-10-22 Joel Brobecker <brobecker@adacore.com>
1203 * configure.ac: On alpha-osf, error out if enable_tui is set to
1204 "yes", and set enable_tui to "no" if previously set to "auto".
1205 Check for waddstr only if TUI support was requested. Move the
1206 part of the configure script that updates various Makefile
1207 variables up, together with the check for waddstr.
1208 * configure: Regenerate.
1210 2008-10-22 Joel brobecker <brobecker@adacore.com>
1212 * gdbtypes.c (copy_type): New function.
1213 * gdbtypes.h (copy_type): Add declaration.
1214 * ada-lang.c (ada_to_fixed_type_1): If there is a parallel XVZ
1215 variable, then use it.
1217 2008-10-22 Joel Brobecker <brobecker@adacore.com>
1219 * target.h (struct target_ops): Add new field to_get_ada_task_ptid.
1220 (target_get_ada_task_ptid): New macro.
1221 * target.c (default_get_ada_task_ptid): New function.
1222 (update_current_target): Inherit field default_get_ada_task_ptid.
1223 (update_current_target): Make default_get_ada_task_ptid the default
1224 value for field to_get_ada_task_ptid.
1225 * ada-lang.h (struct task_control_block): Delete. Never used.
1226 (struct task_ptid, task_ptid_t, struct task_entry, task_list):
1228 (struct ada_task_info): New.
1229 (ada_task_is_alive, ada_find_printable_frame)
1230 (ada_task_list_iterator_ftype, iterate_over_live_ada_tasks): Add
1232 (ada_build_task_list): Update prototype.
1233 (init_task_list, ada_is_exception_breakpoint): Remove prototypes.
1234 * ada-lang.c (ada_find_printable_frame): Make non-static.
1235 * ada-tasks.c: New file.
1236 * Makefile.in (SFILES): Add ada-tasks.c.
1237 (COMMON_OBS): Add ada-tasks.o.
1238 * linux-thread-db.c (thread_db_find_thread_from_tid)
1239 (thread_db_get_ada_task_ptid): New functions.
1240 (init_thread_db_ops): Set thread_db_ops.to_get_ada_task_ptid.
1242 2008-10-22 Tom Tromey <tromey@redhat.com>
1245 * c-exp.y (string_exp): New production.
1248 2008-10-21 Jan Kratochvil <jan.kratochvil@redhat.com>
1250 * mips-tdep.c (mips_n32n64_fp_arg_chunk_p): Update TYPE_FIELD_STATIC
1253 2008-10-20 Joel Brobecker <brobecker@adacore.com>
1255 * NEWS: Add entry mentioning thread-support on Tru64
1257 2008-10-19 Joel Brobecker <brobecker@adacore.com>
1259 * dec-thread.c: New file.
1260 * config/alpha/alpha-osf3.mh (NATDEPFILES): Add dec-thread.o.
1261 (NAT_CLIBS): Define.
1263 2008-10-19 Hui Zhu <teawater@gmail.com>
1265 * infrun.c (handle_inferior_event): Set "stop_pc" when
1266 TARGET_WAITKIND_NO_HISTORY.
1268 2008-10-19 Pedro Alves <pedro@codesourcery.com>
1270 * python/python-value.c (value_object_methods)
1271 (value_object_as_number, value_object_as_mapping): Move to bottom
1273 (valpy_dealloc, valpy_new, valpy_length, valpy_getitem)
1274 (valpy_setitem, valpy_str, valpy_add, valpy_subtract)
1275 (valpy_multiply, valpy_divide, valpy_remainder, valpy_power)
1276 (valpy_negative, valpy_positive, valpy_absolute, valpy_nonzero)
1277 (valpy_richcompare, valpy_dereference): Don't forward-declare.
1278 (valpy_length) [HAVE_LIBPYTHON2_4]: Change return type to `int'.
1280 2008-10-18 Pedro Alves <pedro@codesourcery.com>
1282 * infrun.c (adjust_pc_after_break): Do nothing if executing in
1285 2008-10-17 Pedro Alves <pedro@codesourcery.com>
1287 * infcmd.c (GO_USAGE): Delete.
1288 (go_command): Adjust.
1290 2008-10-17 Michael Snyder <msnyder@vmware.com>
1291 Target interface for reverse debugging.
1292 * target.h (enum target_waitkind):
1293 Add new wait event, TARGET_WAITKIND_NO_HISTORY.
1294 (struct target_ops): New method to_can_execute_reverse.
1295 (target_can_execute_reverse): New macro.
1296 * target.c (update_current_target): Inherit to_can_execute_reverse.
1298 Remote interface for reverse debugging.
1299 * remote.c (remote_can_execute_reverse): New target method.
1300 (remote_resume): Check for reverse exec direction, and send
1301 appropriate command to target.
1302 (remote_wait_as): Check target response for NO_HISTORY status.
1303 Also check for empty reply (target doesn't understand "bs" or "bc).
1304 (remote_vcont_resume): Jump out if attempting reverse execution.
1306 Event handling interface for reverse debugging.
1307 * infrun.c (execution_direction): New state variable.
1308 (enum inferior_stop_reason): Add NO_HISTORY reason.
1309 (handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY.
1310 Handle stepping over a function call in reverse.
1311 Handle stepping thru a line range in reverse.
1312 Handle setting a step-resume breakpoint in reverse.
1313 Handle stepping into a function in reverse.
1314 Handle stepping between line ranges in reverse.
1315 (print_stop_reason): Print reason for NO_HISTORY.
1316 (step_into_function): Rename to handle_step_into_function.
1317 (handle_step_into_function_backward): New function.
1318 (set_exec_direction_func, show_exec_direction_func): New funcs.
1319 (proceed): No need to singlestep over a breakpoint
1320 when resuming in reverse.
1322 * inferior.h (enum exec_direction_kind): New enum.
1323 (execution_direction): Export new execution state variable.
1325 * breakpoint.c (make_breakpoint_silent): New function.
1326 * breakpoint.h (make_breakpoint_silent): Export.
1327 * infcmd.c (finish_command): Check for reverse exec direction.
1328 (finish_backward): New function, handle finish cmd in reverse.
1330 User interface for reverse execution.
1331 * Makefile.in (reverse.c): New file.
1332 * reverse.c: New file. User interface for reverse execution.
1334 2008-10-17 Pedro Alves <pedro@codesourcery.com>
1336 * remote.c (record_currthread): Add inferior before child threads.
1337 (remote_threads_info): Check for exited threads. Mention
1340 2008-10-16 Joel Brobecker <brobecker@adacore.com>
1342 * breakpoint.h (enum bptype): New enum bp_catchpoint.
1343 Delete bp_catch_fork and bp_catch_vfork.
1344 (struct breakpoint_ops): Add new methods "insert", "remove"
1345 and "breakpoint_hit".
1346 * breakpoint.c (create_fork_vfork_event_catchpoint)
1347 (create_fork_event_catchpoint, create_vfork_event_catchpoint): Remove.
1348 (insert_catchpoint): Remove handling of bp_catch_fork and
1349 bp_catch_vfork catchpoints, and handle them as bp_catchpoint
1350 catchpoints instead.
1351 (insert_bp_location, update_breakpoints_after_exec)
1352 (remove_breakpoint, bpstat_check_location, bpstat_what)
1353 (allocate_bp_location): Likewise.
1354 (print_it_typical, print_one_breakpoint_location, mention): Remove
1355 handling of bp_catch_fork and bp_catch_vfork breakpoints.
1356 (ep_is_catchpoint, user_settable_breakpoint)
1357 (breakpoint_address_is_meaningful, adjust_breakpoint_address)
1358 (breakpoint_re_set_one, disable_command, enable_command):
1359 Remove use of bp_catch_fork and bp_catch_vfork. Add handling of
1360 bp_catchpoint breakpoints.
1361 (insert_catch_fork, remove_catch_fork, breakpoint_hit_catch_fork)
1362 (print_it_catch_fork, print_one_catch_fork, print_mention_catch_fork):
1364 (catch_fork_breakpoint_ops): New static constant.
1365 (insert_catch_vfork, remove_catch_vfork, breakpoint_hit_catch_vfork)
1366 (print_it_catch_vfork, print_one_catch_vfork)
1367 (print_mention_catch_vfork): New functions.
1368 (catch_vfork_breakpoint_ops): New static constant.
1369 (create_catchpoint, create_fork_vfork_event_catchpoint): New functions.
1370 (catch_fork_command_1): Use create_fork_vfork_event_catchpoint
1371 to create the fork and vfork catchpoints.
1372 (gnu_v3_exception_catchpoint_ops): Set new breakpoint_ops fields.
1373 * ada-lang.c (catch_exception_breakpoint_ops): Set new breakpoint_ops
1375 (catch_exception_unhandled_breakpoint_ops): Likewise.
1376 (catch_assert_breakpoint_ops): Likewise.
1378 2008-10-16 Pedro Alves <pedro@codesourcery.com>
1380 * remote.c (set_general_process): New.
1381 (remote_check_symbols): Use it.
1383 2008-10-16 Pedro Alves <pedro@codesourcery.com>
1385 * remote.c (push_remote_target): Delete.
1386 * target.h (push_remote_target): Delete declaration.
1388 2008-10-15 Pedro Alves <pedro@codesourcery.com>
1390 * remote.c (remote_close): Unregister remote_desc from the event
1391 loop. Always restore the SIGINT handler. Discard all inferiors
1393 (remote_detach_1, remote_disconnect): Don't unregister the file
1394 descriptor from the event loop here.
1395 (interrupt_query, readchar, getpkt_sane): Pop the target instead
1396 of morning the current inferior.
1397 (remote_kill): Don't unregister the file descriptor from the event
1399 (remote_mourn_1): Don't discard inferiors here.
1401 2008-10-15 Pedro Alves <pedro@codesourcery.com>
1403 * breakpoint.c (breakpoint_init_inferior): Clean up the moribund
1405 (moribund_breakpoint_here_p): Record the moribund
1406 location in the moribund_locations vector.
1407 * breakpoint.h (moribund_breakpoint_here_p): Declare.
1408 (displaced_step_fixup): Check if the breakpoint the thread was
1409 trying to step over has been removed since having been placed in
1410 the displaced stepping queue.
1411 (adjust_pc_after_break): In non-stop mode, check for a moribund
1412 breakpoint at the stop pc.
1413 (handle_inferior_event): Don't retire moribund breakpoints on
1414 TARGET_WAITKIND_IGNORE.
1416 2008-10-15 Pedro Alves <pedro@codesourcery.com>
1418 * infrun.c (displaced_step_prepare): Switch thread temporarily
1420 (displaced_step_fixup): Make sure target_resume sees ptid as
1421 inferior_ptid. Add debug output.
1423 2008-10-14 Pedro Alves <pedro@codesourcery.com>
1427 * breakpoint.c (show_breakpoint_hit_counts): Delete.
1428 (print_one_breakpoint_location): Adjust.
1429 (breakpoint_clear_ignore_counts): Delete.
1430 * breakpoint.h (breakpoint_clear_ignore_counts): Remove
1432 * target.c (generic_mourn_inferior): Don't clear ignore
1433 counts (never reached).
1435 2008-10-10 Doug Evans <dje@google.com>
1437 * dwarf2read.c (comp_unit_head): Use unsigned int consistently
1438 for dwarf section offsets and sizes.
1440 (dwarf2_per_cu_data): Ditto.
1441 (create_all_comp_units): Change offset to unsigned int.
1442 (load_full_comp_unit,find_partial_die_in_comp_unit,find_partial_die,
1443 dwarf2_find_containing_comp_unit,dwarf2_find_comp_unit): Ditto.
1445 * dwarf2read.c (read_initial_length): Delete cu_header arg.
1446 All callers updated.
1447 (read_checked_initial_length_and_offset): New function.
1448 (read_offset_1): New function.
1449 (read_offset): Call it.
1450 (dwarf_decode_line_header): Call read_checked_initial_length_and_offset
1451 instead of read_initial_length. Call read_offset_1 instead of
1454 * dwarf2read.c (dwarf2_get_ref_die_offset): Remove unused arg `cu'.
1455 All callers updated.
1457 * dwarf2read.c (dwarf_attr_name): Unconditionally support all
1458 DW_AT_MIPS_* except DW_AT_MIPS_fde which collides with
1459 DW_AT_HP_block_index.
1461 2008-10-10 Pedro Alves <pedro@codesourcery.com>
1463 * remote.c (remote_start_remote): Always tell the stub if we're in
1466 2008-10-09 Pedro Alves <pedro@codesourcery.com>
1468 * remote.c (remote_wait): Rename to...
1469 (remote_wait_as): ... this. Don't loop here. If the remote
1470 didn't stop, return TARGET_WAITKIND_IGNORE.
1471 (remote_wait): New, reimplemented on top of remote_wait_as.
1473 2008-10-09 Thomas Schwinge <tschwinge@gnu.org>
1475 * Makefile.in (gnu-nat.o): Revert the 2008-09-10 change, as the problem
1478 * reply_mig_hack.awk: Use the `BAD_TYPECHECK' macro.
1480 * MAINTAINERS (Write After Approval): Add myself.
1482 2008-10-09 Pedro Alves <pedro@codesourcery.com>
1484 Make it compile without warnings.
1486 * procfs.c (create_procinfo): Initialize `parent'.
1487 (dead_procinfo): Pass a constant string as format to error.
1488 (procfs_address_to_host_pointer): Add cast to gdb_type *.
1489 (procfs_find_LDT_entry): Adjust format string to long int
1491 (procfs_xfer_partial): Adjust prototype. Add gdb_byte* cast.
1492 (procfs_xfer_memory): Adjust prototype.
1493 (info_mappings_callback, info_proc_mappings): Adjust to not pass a
1494 variable as printf_filtered format.
1495 (procfs_make_note_section): Change type of auxv local to gdb_byte.
1496 * Makefile.in: Remove special rule.
1498 2008-10-09 Pedro Alves <pedro@codesourcery.com>
1499 Daniel Jacobowitz <dan@codesourcery.com>
1501 * remote.c (remote_open_1): Move acknowledging any pending ack,
1502 querying supported features, activating noack mode, finding the
1503 target description, enabling extended remote, and checking remote
1504 symbols from here ...
1505 (remote_start_remote): ... to here.
1506 (remote_open_1): Don't pop the target if it is already gone.
1507 * target.c (unpush_target): Check for the dummy target.
1509 2008-10-09 Pedro Alves <pedro@codesourcery.com>
1511 * ser-mingw.c: Include "command.h".
1512 (pipe_windows_open): Declare locals at the beginning of the scope.
1514 2008-10-08 Pedro Alves <pedro@codesourcery.com>
1516 * remote.c (struct remote_state) <waiting_for_stop_reply>: New
1518 (remote_open_1): Clear waiting_for_stop_reply.
1519 (remote_resume): Set waiting_for_stop_reply.
1520 (remote_wait): Clear or set waiting_for_stop_reply accordingly.
1521 (putpkt_binary): If we're in async mode and waiting for a stop
1522 reply, bail out with an error.
1523 (extended_remote_mourn_1): Clear waiting_for_stop_reply.
1525 2008-10-08 Pedro Alves <pedro@codesourcery.com>
1527 * remote.c (remote_get_thread_info): If the remote doesn't support
1528 the query, bail out.
1530 2008-10-08 Jan Kratochvil <jan.kratochvil@redhat.com>
1532 Convert static_kind into loc_kind enum.
1533 * gdbtypes.h (enum field_loc_kind): New.
1534 (union field_location): New field dwarf_block.
1535 (struct field): Rename static_kind as loc_kind.
1536 (FIELD_STATIC_KIND): Rename to ...
1537 (FIELD_LOC_KIND): ... here.
1538 (TYPE_FIELD_STATIC_KIND): Rename to ...
1539 (TYPE_FIELD_LOC_KIND): ... here and use there now new FIELD_LOC_KIND.
1540 (TYPE_FIELD_STATIC_HAS_ADDR): Remove.
1541 (TYPE_FIELD_STATIC): Remove.
1542 (TYPE_FIELD_BITPOS): Reformat.
1543 (SET_FIELD_BITPOS): New.
1544 (FIELD_PHYSADDR): Rename to ...
1545 (FIELD_STATIC_PHYSADDR): ... here.
1546 (TYPE_FIELD_STATIC_PHYSADDR): Follow the FIELD_PHYSADDR rename.
1547 (SET_FIELD_PHYSADDR): Use new FIELD_LOC_KIND.
1548 (FIELD_PHYSNAME): Rename to ...
1549 (FIELD_STATIC_PHYSNAME): ... here.
1550 (TYPE_FIELD_STATIC_PHYSNAME): Follow the FIELD_PHYSNAME rename.
1551 (SET_FIELD_PHYSNAME): Use new FIELD_LOC_KIND.
1552 (FIELD_DWARF_BLOCK, TYPE_FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK): New.
1553 (field_is_static): New declaration.
1554 * gdbtypes.c (field_is_static): New function.
1555 (copy_type_recursive): Update throughout.
1556 * amd64-tdep.c, c-typeprint.c, coffread.c, cp-valprint.c, dwarf2read.c,
1557 eval.c, jv-typeprint.c, jv-valprint.c, mdebugread.c, p-typeprint.c,
1558 p-valprint.c, valops.c, value.c, varobj.c: Update throughout.
1560 2008-10-07 Thomas Schwinge <tschwinge@gnu.org>
1561 Pedro Alves <pedro@codesourcery.com>
1563 * gnu-nat.h: Rename `current_inferior' to `gnu_current_inf' to
1564 avoid a name collision.
1565 * gnu-nat.c: Likewise.
1566 * i386gnu-nat.c: Likewise.
1568 2008-10-07 Joel Brobecker <brobecker@adacore.com>
1570 * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Add handling
1571 of arguments that are references.
1573 2008-10-06 Doug Evans <dje@google.com>
1575 * dwarf2read.c (dwarf2_die_debug): New static global.
1576 (dump_die_shallow): Renamed from dump_die, New args f, indent.
1577 Print to specified file, indented by the specified amount.
1578 (dump_die_for_error): New fn. Point all existing callers of
1580 (dump_die_die_1,dump_die): New fns, replaces ...
1581 (dump_die_list): ... deleted.
1582 (read_die_and_children_1): Old contents of read_die_and_children
1584 (read_die_and_children): Rewrite.
1585 (read_die_and_siblings): Call read_die_and_children_1 instead of
1586 read_die_and_children.
1587 (_initialize_dwarf2_read): New option "debug dwarf2-die".
1588 * gdbinit.in (pdie): New macro.
1590 * dwarf2read.c (offset_in_cu_p): New function.
1591 (find_partial_die,follow_die_ref): Use it.
1593 * symmisc.c (maintenance_info_symtabs): Watch for ^c.
1594 (maintenance_info_psymtabs): Ditto.
1596 2008-10-05 Michael Snyder <msnyder@vmware.com>
1598 * infrun.c (handle_inferior_event): Fix typo in comment.
1600 2008-10-04 Vladimir Prus <vladimir@codesourcery.com>
1602 * mi/mi-interp.c (mi_on_resume): Flush raw_stdout.
1604 2008-10-03 Paul Pluzhnikov <ppluzhnikov@google.com>
1607 * gdbtypes.c (get_vptr_fieldno): baseclass and basetype may have
1608 different lifetimes.
1610 2008-10-03 Joel Brobecker <brobecker@adacore.com>
1612 * solib-osf.c: Include "solib.h".
1614 2008-10-03 Paul Pluzhnikov <ppluzhnikov@google.com>
1616 * utils.c, defs.h (gdb_buildargv): New fn. Wrap buildargv
1617 and check for out-of-memory condition.
1618 * exec.c (exec_file_command): Call it.
1619 * infrun.c (handle_command, xdb_handle_command): Likewise.
1620 * interps.c (interpreter_exec_cmd): Likewise.
1621 * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
1622 * procfs.c (info_proc_cmd): Likewise.
1623 * remote-mips.c (common_open): Likewise.
1624 * remote-sim.c (gdbsim_kill, gdbsim_create_inferior)
1625 (gdbsim_open): Likewise.
1626 * remote.c (extended_remote_run, remote_put_command)
1627 (remote_get_command, remote_delete_command): Likewise.
1628 * ser-mingw.c (pipe_windows_open): Likesise.
1629 * source.c (add_path, show_substitute_path_command)
1630 (unset_substitute_path_command, set_substitute_path_command):
1632 * stack.c (backtrace_command): Likewise.
1633 * symfile.c (symbol_file_command, generic_load)
1634 (add_symbol_file_command): Likesise.
1635 * symmisc.c (maintenance_print_symbols, maintenance_print_psymbols)
1636 (maintenance_print_msymbols): Likewise.
1638 2008-10-02 Jan Kratochvil <jan.kratochvil@redhat.com>
1640 Replace TYPE_ARRAY_{UPPER,LOWER}_BOUND_TYPE by a bit if {un,}defined.
1641 * c-typeprint.c (c_type_print_varspec_suffix), m2-typeprint.c
1642 (m2_array), p-typeprint.c (pascal_type_print_varspec_prefix),
1643 valops.c (value_cast), varobj.c (c_number_of_children): Replace
1644 TYPE_ARRAY_UPPER_BOUND_TYPE compared to BOUND_CANNOT_BE_DETERMINED by
1645 TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1646 * parse.c (follow_types): Use TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1647 * f-valprint.c (f77_get_dynamic_upperbound): Replace with ...
1648 (f77_get_upperbound): ... this function handling now only
1649 TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1650 (f77_get_dynamic_lowerbound): Replace with ...
1651 (f77_get_lowerbound): ... this function handling now only
1652 TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED.
1653 (f77_get_dynamic_length_of_aggregate, f77_create_arrayprint_offset_tbl):
1654 Update their callers.
1655 * eval.c (evaluate_subexp_standard): Update their callers.
1656 * f-lang.h (f77_get_dynamic_upperbound, f77_get_upperbound)
1657 (f77_get_dynamic_lowerbound, f77_get_lowerbound): Update their
1659 (BOUND_FETCH_OK, BOUND_FETCH_ERROR): Remove.
1660 * f-typeprint.c (f_type_print_varspec_suffix, f_type_print_base): Remove
1661 the lower_bound_was_default variable. Update the
1662 f77_get_dynamic_upperbound, f77_get_upperbound and
1663 TYPE_ARRAY_UPPER_BOUND_TYPE calls.
1664 * gdbtypes.c (print_bound_type): Remove the function.
1665 (recursive_dump_type): Remove its calls printing UPPER_BOUND_TYPE and
1667 * gdbtypes.h (enum array_bound_type): Remove.
1668 (struct main_type): Remove the fields upper_bound_type and
1669 lower_bound_type. Comment the new overload of the field artificial.
1670 (TYPE_ARRAY_UPPER_BOUND_TYPE): Replace by ...
1671 (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED): ... this macro.
1672 (TYPE_ARRAY_LOWER_BOUND_TYPE): Replace by ...
1673 (TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): ... this macro.
1675 2008-10-02 Tom Tromey <tromey@redhat.com>
1677 * Makefile.in (HFILES_NO_SRCDIR): Remove gdb-events.h, gstdint.h.
1679 2008-10-02 Daniel Jacobowitz <dan@codesourcery.com>
1681 * mips-linux-tdep.c (mips_linux_in_dynsym_resolve_code): Update
1683 (mips_linux_skip_resolver): Also use glibc_skip_solib_resolver.
1684 (mips_linux_init_abi): Do not override skip_trampoline_code.
1685 * configure.tgt (mips*-*-linux*): Add glibc-tdep.o.
1686 * mips-tdep.c (mips32_scan_prologue): Stop scanning at branches.
1687 (mips_stub_frame_sniffer): Use the stub frame sniffer for PIC stubs.
1688 (mips_skip_mips16_trampoline_code): Rename from
1689 mips_skip_trampoline_code.
1690 (mips_skip_pic_trampoline_code, mips_skip_trampoline_code): New.
1691 * infrun.c (handle_inferior_event): Do not pass zero to
1692 in_solib_dynsym_resolve_code.
1694 2008-10-02 Pierre Muller <muller@ics.u-strasbg.fr>
1695 Pedro Alves <pedro@codesourcery.com>
1697 * win32-nat.c (do_initial_win32_stuff): Set inferior_ptid.
1700 2008-10-01 Tom Tromey <tromey@redhat.com>
1702 * symtab.c (search_symbols): Update.
1703 * symtab.h (domain_enum_tag) <METHODS_DOMAIN>: Remove.
1705 2008-10-01 Tom Tromey <tromey@redhat.com>
1707 * symfile.c (syms_from_objfile): Update.
1708 (reread_symbols): Update.
1709 * objfiles.h (OBJF_SYMS): Remove.
1710 (OBJF_REORDERED): Renumber.
1711 (OBJF_SHARED): Likewise.
1712 (OBJF_READNOW): Likewise.
1713 (OBJF_USERLOADED): Likewise.
1715 2008-10-01 Tom Tromey <tromey@redhat.com>
1717 * symtab.c (find_pc_sect_psymtab): Use MSYMBOL_TYPE.
1718 (find_pc_sect_symtab): Likewise.
1719 * symmisc.c (dump_msymbols): Use MSYMBOL_TYPE.
1720 * solib-som.c (som_solib_desire_dynamic_linker_symbols): Use
1721 MSYMBOL_TYPE, not SYMBOL_TYPE.
1722 * parse.c (write_exp_msymbol): Use MSYMBOL_TYPE.
1723 * objc-lang.c (find_methods): Use MSYMBOL_TYPE.
1724 * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Use
1726 * m2-exp.y (yylex): Use SYMBOL_CLASS.
1728 2008-10-01 Tom Tromey <tromey@redhat.com>
1730 * xcoffread.c (RECORD_MINIMAL_SYMBOL): Update.
1731 (scan_xcoff_symtab): Update.
1732 * mdebugread.c (record_minimal_symbol): Update.
1733 (parse_partial_symbols): Update.
1734 * elfread.c (record_minimal_symbol): Update.
1735 * dbxread.c (record_minimal_symbol): Update.
1736 * coffread.c (record_minimal_symbol): Update.
1737 * sh64-tdep.c (MSYMBOL_IS_SPECIAL): Redefine.
1738 (sh64_elf_make_msymbol_special): Update.
1739 * mips-tdep.c (mips_elf_make_msymbol_special): Use
1740 MSYMBOL_TARGET_FLAG_1.
1741 (mips_elf_make_msymbol_special): Likewise.
1742 (msymbol_is_special): Likewise.
1743 * minsyms.c (prim_record_minimal_symbol_and_info): Update.
1744 (install_minimal_symbols): Likewise.
1745 (prim_record_minimal_symbol): Update.
1746 (prim_record_minimal_symbol_and_info): Remove 'info' argument.
1747 * m68hc11-tdep.c (MSYMBOL_SET_RTC): Redefine.
1748 (MSYMBOL_SET_RTI): Redefine.
1749 (MSYMBOL_IS_RTC): Redefine.
1750 (MSYMBOL_IS_RTI): Redefine.
1751 * arm-tdep.c (MSYMBOL_SET_SPECIAL): Redefine.
1752 (MSYMBOL_IS_SPECIAL): Redefine.
1753 * symtab.h (struct minimal_symbol) <info>: Remove.
1754 <target_flag_1, target_flag_2>: New fields.
1755 (MSYMBOL_INFO): Remove.
1756 (MSYMBOL_TARGET_FLAG_1): New macro.
1757 (MSYMBOL_TARGET_FLAG_2): Likewise.
1758 (prim_record_minimal_symbol_and_info): Update.
1760 2008-09-30 Joel Brobecker <brobecker@adacore.com>
1762 * ada-lang.c (is_digits_suffix): Delete unused function.
1764 2008-09-30 Paul Hilfinger <hilfinger@adacore.com>
1766 * ada-lang.c (ada_modulus): Correct to avoid sign problem with
1769 2008-09-30 Paul Hilfinger <hilfinger@adacore.com>
1771 * ada-lang.c (ada_lookup_struct_elt_type): Handle case of a "naked"
1773 (empty_record): Use INIT_CPLUS_SPECIFIC, since this field is not
1774 supposed to be null. Fixes debugger segfaults.
1775 (is_unchecked_variant): New function.
1776 (to_fixed_variant_branch_type): Modify to leave unchecked unions
1778 (ada_template_to_fixed_record_type_1): Fix comment.
1780 2008-09-30 Joel Brobecker <brobecker@adacore.com>
1782 * ada-lang.c (standard_exc): New static constant.
1783 (ada_exception_catchpoint_cond_string): Add special handling
1784 for the predefined exceptions.
1786 2008-09-30 Joel Brobecker <brobecker@adacore.com>
1788 * ada-lang.c (ADA_RETAIN_DOTS): Delete this dead macro. Update
1789 the code accordingly.
1791 2008-09-30 Joel Brobecker <brobecker@adacore.com>
1793 * ada-lang.c (ada_evaluate_subexp) [UNOP_IND]: Remove strange
1794 treatment of expect_type. Return the correct type when dereferencing
1797 2008-09-30 Tom Tromey <tromey@redhat.com>
1800 * symtab.c (struct add_macro_name_data): New struct.
1801 (add_macro_name): New function.
1802 (default_make_symbol_completion_list): Complete macro names.
1803 * scm-lang.c (scm_language_defn): Update.
1804 * p-lang.c (pascal_language_defn): Update.
1805 * objc-lang.c (objc_language_defn): Update.
1806 * macrotab.h (macro_callback_fn): Add user_data argument.
1807 (macro_for_each): Likewise.
1808 (macro_for_each_in_scope): Declare.
1809 * macrotab.c: (struct macro_for_each_data): New struct.
1810 (foreach_macro): Use it.
1811 (macro_for_each): Likewise.
1812 (foreach_macro_in_scope): New function.
1813 (macro_for_each_in_scope): Likewise.
1814 * macrocmd.c (print_one_macro): Add argument.
1815 (macro_list_command): Pass NULL to macro_for_each.
1816 * m2-lang.c (m2_language_defn): Update.
1817 * language.h (struct language_defn) <la_macro_expansion>: New
1819 (macro_expansion): New enum.
1820 * language.c (unknown_language_defn): Update. Fix order of
1822 (auto_language_defn): Likewise.
1823 (local_language_defn): Update.
1824 * jv-lang.c (java_language_defn): Update.
1825 * f-lang.c (f_language_defn): Update.
1826 * c-lang.c (c_language_defn): Update.
1827 (cplus_language_defn): Likewise.
1828 (asm_language_defn): Likewise.
1829 (minimal_language_defn): Likewise.
1830 * ada-lang.c (ada_language_defn): Update.
1832 2008-09-30 Joel Brobecker <brobecker@adacore.com>
1834 * dwarf2read.c (dwarf2_get_subprogram_pc_bounds): New function.
1835 (get_scope_pc_bounds): Use it.
1837 2008-09-27 Tom Tromey <tromey@redhat.com>
1840 * macrocmd.c (extract_identifier): Add is_parameter argument.
1841 (macro_define_command): Update.
1842 (macro_undef_command): Likewise.
1843 * macroexp.c (stringify): New function.
1844 (find_parameter): Likewise.
1845 (gather_arguments): Add nargs argument. Handle varargs.
1846 (substitute_args): Add is_varargs and va_arg_name arguments.
1847 Handle varargs, splicing, stringification. Use find_parameter.
1848 (expand): Handle varargs.
1850 2008-09-27 Tom Tromey <tromey@redhat.com>
1852 * scm-lang.c (scm_language_defn): Update.
1853 * p-typeprint.c (pascal_print_typedef): New function.
1854 * p-lang.h: (pascal_print_typedef): Declare.
1855 * p-lang.c (pascal_language_defn): Update.
1856 * objc-lang.c (objc_language_defn): Update.
1857 * m2-typeprint.c (m2_print_typedef): New function.
1858 * m2-lang.h (m2_print_typedef): Declare.
1859 * m2-lang.c (m2_language_defn): Update.
1860 * language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal):
1862 (struct language_defn) <la_print_typedef>: New field.
1863 (default_print_typedef): Declare.
1864 (LA_PRINT_TYPEDEF): New define.
1865 * language.c (unknown_language_defn): Update.
1866 (auto_language_defn): Update.
1867 (local_language_defn): Update.
1868 * jv-lang.c (java_language_defn): Update.
1869 * f-lang.c (f_language_defn): Update.
1870 * c-typeprint.c (c_print_typedef): New function.
1871 * c-lang.h (c_print_typedef): Declare.
1872 * c-lang.c (c_language_defn): Update.
1873 (cplus_language_defn): Update.
1874 (asm_language_defn): Update.
1875 (minimal_language_defn): Update.
1876 * ada-lang.c (ada_language_defn): Update.
1877 * typeprint.c (default_print_typedef): New function.
1879 2008-09-27 Tom Tromey <tromey@redhat.com>
1881 * jv-exp.y (insert_exp): Define using ISO syntax.
1882 (copy_exp): Likewise.
1883 (push_expression_name): Likewise.
1884 (push_fieldnames): Likewise.
1885 (java_type_from_name): Likewise.
1886 (yyerror): Likewise.
1888 (parse_number): Likewise.
1890 2008-09-26 Joel Brobecker <brobecker@adacore.com>
1892 * MAINTAINERS (GLOBAL MAINTAINERS): Add Pedro Alves.
1894 2008-09-25 Stephan Springl <springl-gdb@bfw-online.de> (tiny change)
1896 * stack.c (print_frame_args): Fix typos in comments.
1898 2008-09-25 Sérgio Durigan Júnior <sergiodj@linux.vnet.ibm.com>
1900 * linux-nat.c (get_pending_status): Fix argument to WIFSTOPPED.
1902 2008-09-24 Vladimir Prus <vladimir@codesourcery.com>
1904 * remote-sim.c (gdbsim_create_inferior): Fix missing parenthesis.
1906 2008-09-24 Andreas Schwab <schwab@suse.de>
1908 * frame.c (get_frame_register_bytes): Take pseudo registers into
1909 account. Avoid excessive function calls.
1911 2008-09-23 Doug Evans <dje@google.com>
1913 * dcache.c (state_chars): New static global.
1914 (ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
1916 (dcache_info): Print cache state as mnemonically useful letters instead
1919 * dwarf2read.c (comp_unit_head): Reorganize for better packing.
1921 2008-09-22 Tom Tromey <tromey@redhat.com>
1923 * symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
1926 2008-09-22 Pedro Alves <pedro@codesourcery.com>
1928 * infrun.c (follow_exec): Don't do a generic mourn. Instead
1929 inline the required bits.
1930 * breakpoint.h (enum inf_context): Add inf_execd.
1932 2008-09-22 Pedro Alves <pedro@codesourcery.com>
1934 * infrun.c (handle_inferior_event): In the follow exec case,
1935 context-switch before doing anything else.
1937 2008-09-22 Pedro Alves <pedro@codesourcery.com>
1939 * top.c (any_thread_of, kill_or_detach): New functions.
1940 (quit_target): Iterate over all inferiors, killing or detaching
1943 2008-09-22 Pedro Alves <pedro@codesourcery.com>
1945 Remove the attach_flag global, and make it per-inferior.
1947 * inferior.h (attach_flag): Delete.
1948 (inferior_process): Declare.
1949 * solib.c (update_solib_list): Adjust.
1950 * gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
1951 * inf-ptrace.c (inf_ptrace_detach): Adjust.
1952 (inf_ptrace_files_info): Get it from the current inferior.
1953 * inf-ttrace.c (inf_ttrace_attach): Adjust.
1954 (inf_ttrace_files_info): Get it from the current
1956 * inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
1957 (clear_sigint_trap): Get it from the current process.
1958 * remote.c (extended_remote_attach_1)
1959 (extended_remote_create_inferior_1): Adjust.
1960 * top.c (quit_confirm, quit_target): Get it from the current inferior.
1961 * procfs.c (do_detach): Adjust.
1962 (procfs_wait): Get it from the event inferior.
1963 (procfs_files_info): Get it from the current inferior.
1964 * nto-procfs.c (procfs_files_info): Likewise.
1965 (procfs_attach): Adjust. Set the attach_flag here.
1966 (do_attach): Don't set it here.
1967 (procfs_detach): Don't clear it.
1968 (procfs_mourn_inferior): Don't clear it.
1969 * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
1970 * target.c (attach_flag): Delete.
1971 (generic_mourn_inferior): Don't clear it.
1972 * win32-nat.c (get_win32_debug_event): Get it from the event
1974 (do_initial_win32_stuff): Add attaching argument. Set attach_flag
1975 in the inferior accordingly.
1976 (win32_attach): Don't set the attach_flag here. Pass 1 to
1977 do_intial_win32_stuff.
1978 (win32_files_info): Get it from the current inferior.
1979 (win32_create_inferior): Dont clear attach_flag here. Pass 0 to
1980 do_intial_win32_stuff.
1982 2008-09-22 Pedro Alves <pedro@codesourcery.com>
1984 Make the stop_soon global be per-inferior instead.
1986 * infcmd.c (attach_command_post_wait): Adjust.
1987 (attach_command): Likewise.
1989 * inferior.h (stop_soon): Delete.
1990 (struct inferior): Add stop_soon member.
1992 * infrun.c (stop_soon): Delete.
1993 (clear_proceed_status, start_remote)
1994 (fetch_inferior_event, handle_inferior_event): Adjust.
1995 (signal_stop_state): Don't check stop_soon here. Check in callers
1997 (save_inferior_status, restore_inferior_status): Adjust.
1999 * linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
2000 signals to common code if starting up the inferior.
2002 * inferior.h (struct inferior_info): Added stop_soon member.
2003 * inferior.c (add_inferior) Clear stop_soon.
2005 * mips-tdep.c (heuristic_proc_start): Adjust.
2006 * nto-procfs.c (procfs_create_inferior): Adjust.
2007 * solib-irix.c (irix_solib_create_inferior_hook): Adjust.
2008 * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2009 * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
2010 * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
2012 * win32-nat.c (do_initial_win32_stuff): Adjust.
2014 * alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
2016 2008-09-22 Pedro Alves <pedro@codesourcery.com>
2018 Implement remote multi-process extensions.
2020 * remote.c (struct remote_state): Add extended and
2021 multi_process_aware fields.
2022 (remote_multi_process_p): New.
2023 (PACKET_vKill): New.
2024 (record_currthread): Use thread_change_ptid. Notice new
2026 (set_thread, remote_thread_alive): Use write_ptid.
2027 (write_ptid, read_ptid): New.
2028 (remote_current_thread, remote_threads_extra_info): Use them.
2029 (remote_threads_info): Likewise. Detect new inferiors.
2030 (remote_start_remote): Add inferior to inferior list.
2031 (remote_multi_process_feature): New.
2032 (remote_protocol_features): Add "multiprocess" feature.
2033 (remote_query_supported): Pass "multiprocess+" as supported
2035 (remote_open_1): Clear multi_process_aware. Set extended
2037 (remote_detach_1): Detach current process. Use extended packet
2038 format for extended-remote multi-process. Detach process from the
2039 inferior list. Only mourn after printing output.
2040 (extended_remote_attach_1): Add process to the inferior list.
2041 (remote_vcont_resume): Use write_ptid to pass the thread ids.
2042 (remote_wait): Use read_ptid. Implement the extended
2043 multi-process extension format of the 'W' and 'X' reply packets.
2044 Remove exited inferiors from inferior list.
2045 (remote_xfer_memory): Set general thread.
2046 (remote_vkill): New.
2047 (extended_remote_kill): New.
2048 (remote_mourn_1): Discard all inferiors.
2049 (select_new_thread_callback): New.
2050 (extended_remote_mourn_1): If there are more processes to debug,
2051 switch to a thread in another process, and don't pop the target.
2052 (extended_remote_create_inferior_1): Add the new process to the
2054 (remote_stopped_by_watchpoint): Indenting.
2055 (remote_xfer_partial): Set the general thread.
2056 (remote_pid_to_str): If the remote is multi-process aware, print
2057 the process id as well as the thread id.
2058 (remote_get_thread_local_address): Use write_ptid.
2059 (init_extended_remote_ops): Register extended_remote_kill.
2060 (_initialize_remote): Register new packets. Change
2061 magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
2064 * thread.c (thread_change_ptid): Also account for the inferior pid
2067 * inferior.h (discard_all_inferiors): Declare.
2068 * inferior.c (discard_all_inferiors): New.
2070 2008-09-22 Pedro Alves <pedro@codesourcery.com>
2072 * gnu-nat.c (gnu_attach): Add process to inferiors table.
2073 (gnu_detach): Remove it.
2074 * go32-nat.c (go32_create_inferior): Add process to gdb's inferior
2076 * inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
2077 to inferior table accordingly.
2078 (inf_ptrace_attach): Add new process to inferior table.
2079 (inf_ptrace_detach): Remove it.
2080 * inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
2081 to inferior table accordingly.
2082 (inf_ttrace_attach): Add process to inferior table.
2083 (inf_ttrace_detach): Remove it.
2084 * linux-fork.c (init_fork_list): Delete any left over inferior.
2085 (linux_fork_mourn_inferior, detach_fork_command): Also delete
2086 processes from inferior list.
2087 * monitor.c (monitor_open): Add process to inferior list.
2088 (monitor_close): Remove it.
2089 * nto-procfs.c (procfs_attach): Add process to inferior list.
2090 Find threads after pushing the target.
2091 (procfs_detach): Remove process from inferior list.
2092 (procfs_create_inferior): Add process to inferior list.
2093 * procfs.c (procfs_detach): Remove process from inferior list.
2094 (do_attach): Add process to inferior list.
2095 * remote-sim.c (sim_create_inferior): Add process to inferior list.
2096 (gdbsim_close): Remove it.
2097 * target.c (generic_mourn_inferior): If inferior_ptid is not
2098 null_ptid, remove the corresponding inferior from inferior list.
2099 * win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
2100 (win32_detach): Remove it.
2101 * linux-nat.c (linux_child_follow_fork): Delete and add inferiors
2102 to inferior list accordingly.
2103 * fork-child.c (fork_inferior): Add process to inferior list.
2104 * corelow.c (CORELOW_PID): Define.
2105 (core_close): Remove core from inferior list.
2106 (core_open): Add it.
2108 2008-09-22 Pedro Alves <pedro@codesourcery.com>
2110 * inferior.h: Forward declare struct ui_out.
2111 Forward declare struct private_inferior.
2112 (struct inferior): New.
2113 (init_inferior_list, add_inferior, add_inferior_silent)
2114 (delete_inferior, delete_inferior_silent, detach_inferior)
2115 (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
2116 (valid_inferior_id, find_inferior_pid): New functions.
2117 (inferior_callback_func): New typedef.
2118 (iterate_over_inferiors, print_inferior, have_inferiors)
2119 (current_inferior): New functions.
2120 * inferior.c: New file.
2122 * Makefile.in (SFILES): Add inferior.c.
2123 (COMMON_OBS): Add inferior.o.
2125 2008-09-22 Jonathan Larmour <jifl@eCosCentric.com>
2127 * arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
2128 instead of determining symbol and line info directly.
2129 * MAINTAINERS: Update my email address.
2131 2008-09-22 Daniel Jacobowitz <dan@codesourcery.com>
2133 * symtab.c (skip_prologue_using_sal): Treat two consecutive lines
2134 at the same address as a prologue marker. Do not skip an entire
2137 2008-09-22 Andrew Stubbs <ams@codesourcery.com>
2139 * frame.c (get_frame_register_bytes): Comment improvments.
2141 2008-09-22 Pedro Alves <pedro@codesourcery.com>
2143 * linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
2146 2008-09-19 Andrew Stubbs <ams@codesourcery.com>
2148 * MAINTAINERS: Update my email address.
2150 2008-09-19 Andrew Stubbs <ams@codesourcery.com>
2152 * frame.c (get_frame_register_bytes): Detect bad debug info.
2154 2008-09-17 Jan Kratochvil <jan.kratochvil@redhat.com>
2156 Fix a crash on uninitialized ECS->EVENT_THREAD for a newly found thread.
2157 * infrun.c (wait_for_inferior): Move this ECS->EVENT_THREAD
2159 (fetch_inferior_event): ... and this ECS->EVENT_THREAD initialization
2161 (handle_inferior_event): ... here after the add_thread call together
2162 with the local adjust_pc_after_break and reinit_frame_cache calls.
2164 2008-09-16 David Daney <ddaney@avtrex.com>
2166 * breakpoint.c (bpstat_stop_status): Clear breakpoint_at for
2167 all hardware bpstats.
2169 2008-09-16 Joel Brobecker <brobecker@adacore.com>
2171 * gstdint.h: Delete.
2173 2008-09-15 Mark Kettenis <kettenis@gnu.org>
2175 * infcall.c (generic_push_dummy_code): Remove.
2176 (push_dummy_code): Unconditionally call gdbarch_push_dummy_code.
2178 2008-09-15 Doug Evans <dje@google.com>
2180 * dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
2181 (struct attribute): Ditto.
2183 2008-09-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2185 * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind_cache): Record
2186 HPPA_IPSW_REGNUM and HPPA_SAR_REGNUM values.
2188 * hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
2189 "#if 0" "#endif". Fix mapping of DWARF DBX registers to GDB registers.
2190 Correct arguments and improve comments.
2191 (hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum. Delete
2193 * hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating
2194 point DBX register, change error to warning, and improve comments.
2196 2008-09-14 Doug Evans <dje@google.com>
2198 * dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.
2200 2008-09-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2202 * hppa-linux-tdep.c (hppa_linux_supply_fpregset): Correct iteration.
2204 2008-09-13 Joel Brobecker <brobecker@adacore.com>
2206 * defs.h (GCC_GENERATED_STDINT_H): Define.
2208 2008-09-13 Tom Tromey <tromey@redhat.com>
2210 * varobj.c (varobj_set_display_format): Use xfree.
2211 * tracepoint.c (stringify_collection_list): Use xfree.
2212 * remote-fileio.c (remote_fileio_reset): Use xfree.
2213 * mipsread.c (read_alphacoff_dynamic_symtab): Use xfree.
2214 * dfp.c (decimal_from_floating): Use xfree, xstrprintf. Don't use
2216 * cp-support.c (mangled_name_to_comp): Use xfree.
2218 2008-09-13 Joel Brobecker <brobecker@adacore.com>
2220 * ada-lang.c (remove_extra_symbols): Remove stub symbols if
2221 the associated complete symbol is also in the list.
2222 (ada_add_local_symbols, ada_add_non_local_symbols): New functions,
2223 extracted out from ada_lookup_symbol_list.
2224 (ada_lookup_symbol_list): Use them. Remove the search through
2225 the minimal symbols.
2227 2008-09-13 Joel Brobecker <brobecker@adacore.com>
2229 * dwarf2read.c (add_partial_subprogram): New procedure.
2230 (scan_partial_symbols): Use it.
2231 (load_partial_dies): Read in children of subprogram and lexical
2232 blocks for Ada compilation units.
2234 2008-09-13 Tom Tromey <tromey@redhat.com>
2236 * symfile.c (build_id_verify): Free 'found'.
2237 (find_separate_debug_file): Use xfree, not free.
2239 2008-09-12 Doug Evans <dje@google.com>
2241 * corefile.c (write_memory): Remove unnecessary copying.
2243 * sol-thread.c (_initialize_sol_thread): Add FIXME regarding
2244 order of _initialize_* fns.
2246 * dwarf2read.c (comp_unit_head): Rename first_die_ptr to
2247 first_die_offset. All uses updated.
2248 Delete unused members cu_head_ptr, next.
2249 Move members base_known, base_address to ...
2250 (dwarf2_cu) ... here. All uses updated.
2252 2008-09-12 Pedro Alves <pedro@codesourcery.com>
2254 * Makefile.in (generated_files): Add $(NAT_GENERATED_FILES).
2255 * config/i386/i386gnu.mh (NAT_GENERATED_FILES): New.
2257 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2259 * fork-child.c (startup_inferior): Use target_wait and target_resume
2260 directly instead of calling wait_for_inferior / resume.
2262 * infcmd.c (kill_if_already_running): Do not call no_shared_libraries
2263 or init_wait_for_inferior.
2264 (run_command_1): Call init_wait_for_inferior.
2266 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2268 * gdbtypes.h (builtin_type_void_data_ptr, builtin_type_void_func_ptr,
2269 builtin_type_CORE_ADDR, builtin_type_char, builtin_type_short,
2270 builtin_type_int, builtin_type_long, builtin_type_signed_char,
2271 builtin_type_unsigned_char, builtin_type_unsigned_short,
2272 builtin_type_unsigned_int, builtin_type_unsigned_long,
2273 builtin_type_float, builtin_type_double, builtin_type_long_double,
2274 builtin_type_complex, builtin_type_double_complex, builtin_type_string,
2275 builtin_type_bool, builtin_type_long_long,
2276 builtin_type_unsigned_long_long): Remove macros.
2278 (builtin_type_f_character, builtin_type_f_integer,
2279 builtin_type_f_integer_s2, builtin_type_f_logical,
2280 builtin_type_f_logical_s1, builtin_type_f_logical_s2,
2281 builtin_type_f_real, builtin_type_f_real_s8, builtin_type_f_real_s16,
2282 builtin_type_f_complex_s8, builtin_type_f_complex_s16,
2283 builtin_type_f_complex_s32): Likewise.
2285 (builtin_type_m2_char, builtin_type_m2_int, builtin_type_m2_card,
2286 builtin_type_m2_real, builtin_type_m2_bool): Likewise.
2288 (struct builtin_f_type, builtin_f_type): Move to f-lang.h.
2289 (struct builtin_m2_type, builtin_m2_type): Move to m2-lang.h.
2291 * f-lang.h (struct builtin_f_type, builtin_f_type): Move here.
2292 * m2-lang.h (struct builtin_m2_type, builtin_m2_type): Move here.
2294 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2296 * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Use builtin types of
2297 target_gdbarch instead of builtin_type_void_data_ptr.
2298 (LM_DYNAMIC_FROM_LINK_MAP, LM_NEXT, LM_NAME,
2299 IGNORE_FIRST_LINK_MAP_ENTRY, scan_dyntag, elf_locate_base,
2300 solib_svr4_r_map, solib_svr4_r_brk, solib_svr4_r_ldsomap,
2301 open_symbol_file_object): Likewise.
2302 * nto-tdep.c (LM_ADDR): Likewise.
2304 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2306 * bsd-uthread.c (bsd_uthread_read_memory_address): New function.
2307 (bsd_uthread_fetch_registers, bsd_uthread_store_registers,
2308 bsd_uthread_wait, bsd_uthread_find_new_threads): Use it.
2310 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2312 * procfs.c (procfs_address_to_host_pointer): Use target_gdbarch
2313 and its associated types to perform pointer conversion.
2314 (procfs_can_use_hw_breakpoint): Likewise.
2315 (procfs_auxv_parse): Remove unused variable.
2317 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2319 * auxv.c (default_auxv_parse): Use gdbarch_ptr_bit (target_gdbarch)
2320 instead of builtin_type_void_data_ptr.
2321 * target.c (default_region_ok_for_hw_watchpoint): Likewise.
2323 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2325 * expprint.c (print_subexp_standard): Compare against builtin type
2326 associated with exp->gdbarch instead of builtin_type_char.
2328 * f-valprint.c (f_val_print): Use extract_unsigned_integer to
2329 extract values of arbitrary logical type. Handle arbitrary
2332 * printcmd.c (float_type_from_length): New function.
2333 (print_scalar_formatted, printf_command): Use it.
2335 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2337 * valops.c: Include "objfiles.h" and "symtab.h".
2338 (find_function_in_inferior): New argument OBJF_P. Use it to return
2339 objfile where function is defined. Use per-objfile arch types
2340 instead of builtin_type_ to define default return type.
2342 * linux-fork.c (checkpoint_command): Update calls. Use per-objfile
2343 architecture to define inferior call argument types.
2344 * gcore.c (derive_heap_segment): Likewise.
2345 * objc-lang.c (value_nsstring): Likewise.
2346 * scm-lang.c (scm_lookup_name): Likewise.
2347 * scm-valprint.c (scm_inferior_print): Likewise.
2348 * valops.c (value_allocate_space_in_inferior): Likewise.
2350 * eval.c (evaluate_subexp_standard): Update calls.
2351 * objc-lang.c (lookup_objc_class, print_object_command): Likewise.
2353 * linux-fork.c: Include "objfiles.h".
2354 * scm-lang.c: Include "objfiles.h".
2355 * scm-valprint.c: Include "objfiles.h".
2357 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2359 * gdbarch.sh (name_of_malloc): Remove.
2360 * gdbarch.c, gdbarch.h: Re-generate.
2361 * valops.c (value_allocate_space_in_inferior): Do not call
2362 gdbarch_name_of_malloc.
2364 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2366 * valarith.c (value_x_unop): Use builtin_type_int8 as type for
2367 UNOP_POSTINCREMENT/UNOP_POSTDECREMENT constant 0 argument.
2368 (value_bit_index): Use extract_unsigned_integer
2369 instead of unpack_long to read single byte.
2371 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2373 * infcall.c (value_arg_coerce): Add GDBARCH parameter. Use its
2374 associates types instead of builtin_type_ macros.
2375 (find_function_addr): Leave output VALUE_TYPE NULL if unknown.
2376 (call_function_by_hand): Use per-architecture "int" type as
2377 fall-back if find_function_addr returns NULL VALUE_TYPE.
2378 Update call to value_arg_coerce.
2380 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2382 * cp-abi.h (cplus_method_ptr_size): Add TO_TYPE parameter.
2383 (cplus_make_method_ptr): Add TYPE parameter.
2384 * cp-abi.c (cplus_method_ptr_size): Add TO_TYPE parameter. Pass it
2385 on to current_cp_abi.method_ptr_size callback.
2386 (cplus_make_method_ptr): Add TYPE parameter. Pass it on to
2387 current_cp_abi.make_method_ptr callback.
2389 * gdbtypes.c (lookup_methodptr_type): Pass target type
2390 argument to cplus_method_ptr_size.
2391 * valops.c (value_cast): Pass type argument to cplus_make_method_ptr.
2392 (value_struct_elt_for_reference): Likewise.
2394 * gnu-v3-abi.c (get_class_arch): New function.
2395 (vtable_address_point_offset): Add GDBARCH parameter. Use it
2396 instead of current_gdbarch. Update all callers.
2397 (gnuv3_get_vtable): Likewise.
2398 (gnuv3_get_virtual_fn): Likewise.
2399 (gnuv3_decode_method_ptr): Likewise.
2400 (gnuv3_rtti_type): Call get_class_arch to determine architecture.
2401 Use it instead of current_gdbarch.
2402 (gnuv3_virtual_fn_field): Likewise.
2403 (gnuv3_baseclass_offset): Likewise.
2404 (gnuv3_print_method_ptr): Likewise.
2405 (gnuv3_method_ptr_to_value): Likewise.
2406 (gnuv3_method_ptr_size): Add TYPE parameter. Use it to determine
2407 class architecture. Use architecture types instead of builtin types.
2408 (gnuv3_make_method_ptr): Likewise.
2410 * cp-valprint.c (cp_print_class_member): Expect pointer type
2411 instead of class type. Use its length when extracting value.
2412 * c-valprint.c (c_val_print): Update call to cp_print_class_member.
2414 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2416 * stack.c (return_command): Use frame architecture to determine
2417 default integer return type.
2419 * f-valprint.c (f77_get_dynamic_lowerbound): Use frame architecture
2420 to determine pointer types.
2421 (f77_get_dynamic_upperbound): Likewise.
2423 * objc-lang.c (OBJC_FETCH_POINTER_ARGUMENT): Remove.
2424 (resolve_msgsend): Use architecture of current frame to determine
2425 pointer types. Inline OBJC_FETCH_POINTER_ARGUMENT.
2426 (resolve_msgsend_stret, resolve_msgsend_super,
2427 resolve_msgsend_super_stret): Likewise.
2429 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2431 * alpha-tdep.c (alpha_register_type): Use builtin_type (gdbarch)
2432 instead of builtin_type_ macros.
2433 * amd64-tdep.c (amd64_register_type): Likewise.
2434 (amd64_get_longjmp_target): Likewise.
2435 * arm-tdep.c (arm_register_type): Likewise.
2436 * avr-tdep.c (avr_register_type): Likewise.
2437 * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
2438 * frv-tdep.c (frv_register_type): Likewise.
2439 * h8300-tdep.c (h8300_register_type): Likewise.
2440 * hppa-tdep.c (hppa32_convert_from_func_ptr_addr,
2441 hppa_skip_trampoline_code): Likewise.
2442 * i386-tdep.c (i386_register_type): Likewise.
2443 (i386_unwind_pc, i386_sse_type): Likewise.
2444 * ia64-tdep.c (ia64_register_type): Likewise.
2445 * m32r-tdep.c (m32r_register_type): Likewise.
2446 * m68k-tdep.c (m68k_register_type, m68k_unwind_pc): Likewise.
2447 * m88k-tdep.c (m88k_register_type): Likewise.
2448 * mep-tdep.c (mep_register_type): Likewise.
2449 * mips-tdep.c (mips_pseudo_register_type): Likewise.
2450 * mn10300-tdep.c (mn10300_register_type): Likewise.
2451 * mt-tdep.c (mt_copro_register_type): Likewise.
2452 * rs6000-tdep.c (rs6000_builtin_type_vec64): Likewise.
2453 (rs6000_convert_register_p, rs6000_register_to_value,
2454 rs6000_value_to_register): Likewise.
2455 * s390-tdep.c (s390_register_type): Likewise.
2456 * sh64-tdep.c (sh64_register_type): Likewise.
2457 (sh64_build_float_register_type, sh64_do_fp_register): Likewise.
2458 * sh-tdep.c (sh_sh2a_register_type, sh_sh3e_register_type,
2459 sh_sh4_build_float_register_type, sh_sh4_register_type,
2460 sh_default_register_type): Likewise.
2461 * sparc64-tdep.c (sparc64_register_type): Likewise.
2462 * sparc-tdep.c (sparc32_register_type): Likewise.
2463 * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
2464 * v850-tdep.c (v850_register_type): Likewise.
2465 * vax-tdep.c (vax_register_type): Likewise.
2466 * xtensa-tdep.c (xtensa_register_type, xtensa_unwind_pc,
2467 xtensa_push_dummy_call): Likewise.
2469 * std-regs.c (value_of_builtin_frame_fp_reg,
2470 value_of_builtin_frame_pc_reg): Likewise.
2471 * target-descriptions.c (tdesc_register_type): Likewise.
2473 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2475 * ada-lang.c (ada_coerce_to_simple_array_type): Use builtin_type_int32
2476 instead of builtin_type_int as default unspecified integral type.
2477 (ada_index_type, ada_array_bound_from_type, ada_variant_discrim_type,
2478 assign_component, to_fixed_range_type): Likewise.
2479 * ada-typeprint.c (print_range, print_range_bound,
2480 print_range_type_named): Likewise.
2481 * ada-valprint.c (print_optional_low_bound, ada_val_print_1): Likewise.
2482 * eval.c (evaluate_subexp_standard): Likewise.
2483 * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2484 * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
2485 build_gdb_vtable_type): Likewise.
2486 * jv-lang.c (java_array_type): Likewise.
2487 * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Likewise.
2488 * m2-valprint.c (m2_print_long_set): Likewise.
2489 * parse.c (follow_types): Likewise.
2490 * p-typeprint.c (pascal_type_print_base): Likewise.
2491 * valops.c (value_one, value_array, value_string,
2492 value_bitstring): Likewise.
2493 * value.c (allocate_repeat_value, value_from_string): Likewise.
2494 * varobj.c (c_describe_child): Likewise.
2495 * mt-tdep.c (mt_register_type): Likewise.
2496 * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
2497 * sh64-tdep.c (sh64_build_float_register_type): Likewise.
2499 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2501 * defs.h (struct gdbarch): Add forward declaration.
2502 (set_next_address): Add GDBARCH argument.
2503 * printcmd.c (set_next_address): Use it to find pointer type.
2504 * breakpoint.c (breakpoint_1): Update call.
2505 * source.c (line_info): Likewise.
2506 * findcmd.c (find_command): Use current_gdbarch to find pointer type.
2508 * breakpoint.c (set_breakpoint_count): Use platform-neutral
2509 types for internal variable values.
2510 * infrun.c (handle_inferior_event): Likewise.
2511 * source.c (forward_search_command, reverse_search_command): Likewise.
2512 * tracepoint.c (set_tracepoint_count, set_traceframe_num,
2513 set_tracepoint_num, set_traceframe_context): Likewise.
2515 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2517 * gdbtypes.h (struct builtin_type): Remove builtin_true_char
2518 and builtin_true_unsigned_char.
2519 (builtin_type_true_char): Remove macro, add extern declaration.
2520 (builtin_type_true_unsigned_char): Add extern declaration.
2521 * gdbtypes.c (builtin_type_true_char): New global variable.
2522 (builtin_type_true_unsigned_char): Likewise.
2523 (_initialize_gdbtypes): Initialize them.
2524 (gdbtypes_post_init): Do not initialize builtin_true_char
2525 and builtin_true_unsigned_char members of struct builtin_type.
2527 * printcmd.c (print_scalar_formatted): Do not use builtin_type;
2528 use builtin_type_true_unsigned_char instead.
2530 * ada-valprint.c (ada_val_print_1): Use builtin_type_true_char
2531 instead of builtin_type_char for internal string.
2533 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2535 * gdbtypes.h (builtin_type_void): Remove macro, add declaration.
2536 (builtin_type_f_void): Remove macro.
2537 * gdbtypes.c (builtin_type_void): New global variable.
2538 (_initialize_gdbtypes): Initialize it.
2540 * gnu-v3-abi.c (build_gdb_vtable_type): Do not call
2541 lookup_pointer_type or lookup_function_type on builtin_type_void.
2542 * printcmd.c (set_next_address): Likewise.
2543 * objc-lang.c (value_nsstring): Likewise.
2544 * mt-tdep.c (mt_copro_register_type): Likewise.
2545 * xtensa-tdep.c (xtensa_register_type): Likewise.
2547 * symfile.c (syms_from_objfile): Remove special handling
2548 of builtin_type_void and builtin_type_char.
2550 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2552 * eval.c (evaluate_subexp_standard): Use exp->gdbarch types instead
2553 of builtin_type_ macros when handling OP_OBJC_ operations.
2554 * objc-lang.c (print_object_command): Likewise.
2556 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2558 * ada-valprint.c: Include "objfiles.h".
2559 (ada_val_print_1): Use the gdbarch associated with the objfile whether
2560 a System.Address type is defined to retrieve the proper pointer type
2563 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2565 * ada-lang.c (value_pos_atr): Add TYPE argument. Use it as
2566 result type instead of builtin_type_int.
2567 (value_subscript_packed): Use pos_atr instead of value_pos_atr.
2568 (ada_value_subscript): Update call to value_pos_atr.
2569 (ada_value_ptr_subscript): Likewise.
2570 (ada_evaluate_subexp): Likewise.
2572 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2574 * ada-lang.c (cast_to_fixed): Do not cast to builtin_type_double.
2575 (cast_from_fixed_to_double): Rename to ...
2576 (cast_from_fixed): ... this. Add TYPE parameter. Use it instead
2577 of builtin_type_double.
2578 (ada_value_cast): Use cast_from_fixed instead of casting result
2579 of cast_from_fixed_to_double.
2580 (ada_evaluate_subexp): Update calls to cast_from_fixed_to_double.
2582 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2584 * valops.c (value_ind): No longer allow dereferencing an
2586 * eval.c (evaluate_subexp_standard): Handle deferencing an
2588 * ada-lang.c (ada_evaluate_subexp): Likewise.
2590 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2592 * ada-valprint.c (ada_val_print_1): When implicitly dereferencing
2593 a reference type, pass the reference type directly to unpack_pointer.
2594 * c-valprint.c (c_val_print): Likewise.
2595 * f-valprint.c (f_val_print): Likewise.
2596 * m2-valprint.c (print_variable_at_address, m2_val_print): Likewise.
2597 * p-valprint.c (pascal_val_print): Likewise.
2599 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2601 * eval.c (evaluate_subexp_standard): Use builtin_type_int8
2602 to construct the EVAL_SKIP dummy return value.
2603 * ada-lang.c (ada_evaluate_subexp): Likewise.
2604 * jv-lang.c (evaluate_subexp_java): Likewise.
2605 * m2-lang.c (evaluate_subexp_modula2): Likewise.
2606 * scm-lang.c (evaluate_exp): Likewise.
2608 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2610 * value.h (coerce_enum, coerce_number): Remove prototypes.
2611 * value.c (coerce_enum, coerce_number): Remove.
2612 * valarith.c (value_x_binop): Do not call coerce_enum.
2613 (value_x_unop): Likewise.
2614 (value_logical_not): Call coerce_array instead of coerce_number.
2616 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2618 * ax-gdb.c: Include "language.h".
2619 (gen_frame_args_address): Add GDBARCH parameter; use it
2620 instead of current_gdbarch.
2621 (gen_frame_locals_address): Likewise.
2622 (gen_var_ref): Add GDBARCH parameter. Update calls to
2623 gen_frame_args_address and gen_frame_locals_address. Use
2624 pointer type from gdbarch.
2625 (gen_usual_unary): Add EXP parameter. Use integer type
2627 (gen_usual_arithmetic): Likewise.
2628 (gen_integral_promotions): Likewise.
2629 (gen_add, gen_sub): Remove.
2630 (gen_ptradd, gen_ptrsub, gen_ptrdiff): New functions.
2631 (gen_logical_not): Use passed-in boolean result type
2632 instead of builtin_type_int.
2633 (gen_complement): Do not call gen_usual_unary or
2634 gen_integral_promotions.
2635 (gen_struct_ref): Call require_rvalue instead of gen_usual_unary.
2636 (gen_repeat): Add EXP parameter. Update call to gen_expr.
2637 Use builtin_type_int32 as internal range type.
2638 (gen_sizeof): Add EXP and SIZE_TYPE parameters. Use SIZE_TYPE
2639 as result type. Update call to gen_expr.
2640 (gen_expr): Add EXP parameter. Update calls to gen_expr,
2641 gen_repeat, gen_var_ref, gen_usual_unary, gen_usual_arithmetic,
2642 and gen_integral_promotions. Call gen_ptradd, gen_ptrsub,
2643 gen_ptrdiff, or gen_binop instead of gen_add or gen_sub.
2644 Use exp->gdbarch instead of current_gdbarch.
2645 Call language_bool_type to determine result type of UNOP_LOGICAL_NOT.
2647 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2649 * eval.c (evaluate_subexp_standard): Add calls to binop_promote
2650 and unop_promote before calling value_binop et. al.
2651 * ada-lang.c (ada_evaluate_subexp): Add calls to binop_promote
2652 and unop_promote before calling value_binop et. al.
2654 * valarith.c (value_binop): Do not call binop_promote or unop_promote.
2655 (value_pos): Do not call unop_promote.
2656 (value_neg, value_complement): Likewise.
2658 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2660 * value.h (unop_promote, binop_promote): Add prototypes.
2661 * eval.c (unop_promote, binop_promote): New functions.
2662 * valarith.c (unop_result_type, binop_result_type): Remove.
2663 (value_binop): Call binop_promote or unop_promote.
2664 Inline remaining parts of binop_result_type. Remove special
2665 code to truncate integer values for unsigned operations.
2666 (value_pos): Call unop_promote. Inline remaining parts of
2668 (value_neg, value_complement): Likewise.
2670 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2672 * value.h (value_add, value_sub): Remove.
2673 (value_ptradd, value_ptrsub, value_ptrdiff): Add prototypes.
2674 * valarith.c (value_add, value_sub): Remove.
2675 (value_ptradd, value_ptrsub, value_ptrdiff): New functions.
2676 (find_size_for_pointer_math): Add assertion. Update comment.
2677 (value_binop): Update comment.
2679 * eval.c (ptrmath_type_p): New function.
2680 (evaluate_subexp_standard): Replace value_add and value_sub
2681 by value_ptradd, value_ptrsub, value_ptrdiff or value_binop.
2682 Use builtin_type_uint8 instead of builtin_type_char to hold
2683 the increment for BINOP_{PRE,POST}{IN,DE}CREMENT operations.
2684 * valarith.c (value_subscript): Replace value_add by
2685 value_ptradd. Replace value_sub by value_binop.
2686 * ada-lang.c (ada_value_ptr_subscript): Likewise.
2687 (ada_tag_name_2): Replace value_add by value_ptradd.
2688 (ada_evaluate_subexp): Replace value_add and value_sub by
2690 * m2-lang.c (evaluate_subexp_modula2): Replace value_add
2692 * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2693 * gnu-v3-abi.c (gnuv3_method_ptr_to_value): Likewise.
2695 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2697 * eval.c (evaluate_subexp_for_sizeof): Use builtin_int type of
2698 the expression architecture instead of builtin_type_int as the
2701 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2703 * expression.h (enum exp_opcode): Document OP_COMPLEX to take
2704 a type parameter as expression element.
2705 * eval.c (evaluate_subexp_standard) [OP_COMPLEX]: Retrieve result
2706 type as expression element.
2707 * f-exp.y: Pass in type when buildin OP_COMPLEX expression.
2708 * parse.c (operator_length_standard): Update length of OP_COMPLEX.
2710 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2712 * language.h (struct language_arch_info): New members
2713 bool_type_default and bool_type_symbol.
2714 (lang_bool_type): Remove prototype.
2715 (LA_BOOL_TYPE): Remove macro.
2716 (language_bool_type): Add prototype.
2717 * language.c (lang_bool_type): Remove.
2718 (language_bool_type): New function.
2720 * value.h (value_in): Change return value to int.
2721 * value.c (value_in): Return int instead of struct value *.
2723 * eval.c (evaluate_subexp_standard): Call language_bool_type instead
2724 of using LA_BOOL_TYPE. Update call to value_in.
2725 * ada-lang.c (ada_evaluate_subexp): Call language_bool_type instead
2726 of using LA_BOOL_TYPE or builtin_type_int for boolean values.
2728 * language.c (unknown_language_arch_info): Set bool_type_default member
2729 of struct language_arch_info.
2730 * ada-lang.c (ada_language_arch_info): Set bool_type_symbol and
2731 bool_type_default members of struct language_arch_info.
2732 * c-lang.c (c_language_arch_info): Set bool_type_default member
2733 of struct language_arch_info.
2734 (cplus_language_arch_info): Set bool_type_symbol and bool_type_default
2735 members of struct language_arch_info.
2736 * f-lang.c (f_language_arch_info): Set bool_type_symbol and
2737 bool_type_default members of struct language_arch_info.
2738 * jv-lang.c (java_language_arch_info): Set bool_type_symbol and
2739 bool_type_default members of struct language_arch_info.
2740 * m2-lang.c (m2_language_arch_info): Set bool_type_symbol and
2741 bool_type_default members of struct language_arch_info.
2742 * p-lang.c (p_language_arch_info): Set bool_type_symbol and
2743 bool_type_default members of struct language_arch_info.
2745 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2747 * jv-lang.c (enum java_primitive_types): New type.
2748 (java_language_arch_info): New function.
2749 (java_language): Use it instead of c_language_arch_info.
2751 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2753 * value.h (value_bitstring_subscript): New prototype.
2754 * valarith.h (value_bitstring_subscript): New function.
2755 (value_subscript): No longer handle TYPE_CODE_BITSTRING.
2756 * eval.c (evaluate_subexp_standard): Call value_bitstring_subscript
2757 instead of value_subscript to handle TYPE_CODE_BITSTRING.
2759 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2761 * expression.h (struct expression): New member GDBARCH.
2762 * parse.c (parse_exp_in_context): Initialize it.
2763 * parser-def.h (parse_gdbarch, parse_language): New macros.
2765 * ada-exp.y (parse_type): New macro.
2766 Replace builtin_type_ macros by using parse_type.
2767 Replace current_language by parse_language.
2768 * ada-lex.l (processInt): Replace current_gdbarch by parse_gdbarch.
2769 Replace builtin_type_ macros.
2771 * c-exp.y (parse_type): New macro.
2772 Replace builtin_type_ macros by using parse_type.
2773 (parse_number): Replace current_gdbarch by parse_gdbarch.
2774 (yylex): Replace current_language by parse_language.
2776 * f-exp.y (parse_type, parse_f_type): New macros.
2777 Replace builtin_type_ macros by using parse_{f_,}type.
2778 (parse_number): Replace current_gdbarch by parse_gdbarch.
2779 (yylex): Replace current_language by parse_language.
2781 * jv-exp.y (parse_type): New macro.
2782 (parse_number): Replace builtin_type_ macros by using parse_type.
2784 * m2-exp.y (parse_type, parse_m2_type): New macros.
2785 Replace builtin_type_ macros by using parse_{m2_,}type.
2787 * objc-exp.y (parse_type): New macro.
2788 Replace builtin_type_ macros by using parse_type.
2789 (parse_number): Replace current_gdbarch by parse_gdbarch.
2790 (yylex): Replace current_language by parse_language.
2792 * p-exp.y (parse_type): New macro.
2793 Replace builtin_type_ macros by using parse_type.
2794 (parse_number): Replace current_gdbarch by parse_gdbarch.
2795 (yylex): Replace current_language by parse_language.
2797 2008-09-11 Ulrich Weigand <uweigand@de.ibm.com>
2799 * parser-defs.h (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE
2800 and DATA_SYMBOL_TYPE arguments.
2801 * parse.c (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE and
2802 DATA_SYMBOL_TYPE arguments. Replace use of builtin_type_CORE_ADDR.
2803 (write_dollar_variable): Update call.
2805 * ada-exp.y (write_var_or_type): Update call.
2806 * c-exp.y: Likewise.
2807 * f-exp.y: Likewise.
2808 * jv-exp.y: Likewise.
2809 * m2-exp.y: Likewise.
2810 * objc-exp.y: Likewise.
2811 * p-exp.y: Likewise.
2813 2008-09-10 Joel Brobecker <brobecker@adacore.com>
2815 * ada-lang.c (ada_parent_type): Add handling of the case where
2816 the _parent field is a pointer and/or has a parallel XVS type.
2817 (ada_evaluate_subexp) [OP_VAR_VALUE]: When doing an
2818 EVAL_AVOID_SIDE_EFFECTS evaluation of a tagged type, return
2819 the type of the tag instead of doing forcing an EVAL_NORMAL
2820 expression evaluation.
2822 2008-09-10 Paul N. Hilfinger <hilfinger@adacore.com>
2823 Joel Brobecker <brobecker@adacore.com>
2825 * ada-lang.c (is_digits_suffix): New function.
2826 (is_dot_digits_suffix): Remove.
2827 (ada_lookup_symbol_list): Remove digits suffix from minimal symbols
2828 before looking up in symbol table, and do not use wild matches on them.
2829 (wild_match): Reimplement for speed and to allow matching of operator
2831 (is_valid_name_for_wild_match): Return zero for names that do not
2832 follow the GNAT encoding.
2834 (is_name_suffix): Fix typo in comment.
2835 (to_record_with_fixed_variant_part): Ditto.
2837 2008-09-10 Pedro Alves <pedro@codesourcery.com>
2839 * Makefile.in (gnu-nat.o): New rule.
2841 2008-09-10 Joel Brobecker <brobecker@adacore.com>
2843 * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Use
2844 archecture-neutral builtin_type_int32 instead of builtin_type_int.
2846 2008-09-10 Joel Brobecker <brobecker@adacore.com>
2848 * ada-lang.c (ada_evaluate_subexp) [BINOP_ADD, BINOP_SUB]:
2849 Add special handling for pointer types.
2851 2008-09-10 Pedro Alves <pedro@codesourcery.com>
2853 * inf-ttrace.c (inf_ttrace_follow_fork): Declare locals at the
2855 (inf_ttrace_resume, inf_ttrace_wait): Typos.
2857 2008-09-10 Ulrich Weigand <uweigand@de.ibm.com>
2859 * ada-lang.c (ada_array_length): Use builtin_type_int32 instead
2860 of builtin_type_int.
2861 (ada_evaluate_subexp) [UNOP_IN_RANGE]: Use operand range type
2862 instead of builtin_type_int.
2864 2008-09-09 Pedro Alves <pedro@codesourcery.com>
2866 * infrun.c (normal_stop): Run hook-stop last.
2868 2008-09-09 Pedro Alves <pedro@codesourcery.com>
2870 * gnu-nat.c (gnu_pid_to_exec_file): Delete.
2871 (init_gnu_ops): Don't register it.
2873 2008-09-09 Pedro Alves <pedro@codesourcery.com>
2875 * gnu-nat.c (gnu_attach): Push target before fetching the list of
2878 2008-09-08 Daniel Jacobowitz <dan@codesourcery.com>
2880 * valops.c (value_cast_structs): Return NULL for failure.
2881 (value_cast): Handle NULL from value_cast_structs.
2882 (value_fetch_lazy): Call check_typedef. Remove unused variable.
2884 2008-09-08 Pedro Alves <pedro@codesourcery.com>
2886 * inferior.h (context_switch_to): Delete.
2887 * infrun.c (context_switch): Don't save and load infrun state.
2888 (context_switch_to): Delete.
2890 * infcmd.c (proceed_thread_callback): Replace context_switch_to
2891 calls by switch_to_thread calls.
2893 * gdbthread.h (save_infrun_state, load_infrun_state): Delete.
2894 * thread.c (main_thread_state, main_thread_executing): Delete.
2895 (inferior_thread): Delete references to them.
2896 (add_thread_silent): Fix case where we're adding a thread with the
2897 same ptid as an exited thread. Remove references to
2899 (load_infrun_state, save_infrun_state): Delete.
2900 (thread_alive, is_thread_state, any_running, is_executing)
2901 (set_executing): Remove the special handling for targets that
2902 don't register any thread.
2903 (restore_current_thread, thread_apply_all_command)
2904 (do_captured_thread_select): Unconditionally call
2907 * mi/mi-main.c (mi_cmd_execute): Check for exited threads.
2908 Call switch_to_thread instead of context_switch_to.
2910 2008-09-08 Pedro Alves <pedro@codesourcery.com>
2912 Remove global continuations in favour of a per-thread
2915 * gdbthread.h (struct thread_info): Add comments around
2916 continuations and intermediate_continuations.
2917 (save_infrun_state, load_infrun_state): Delete continuations and
2918 intermediate_continuations arguments.
2919 * infrun.c (context_switch): Don't context-switch the continuations.
2920 * thread.c (clear_thread_inferior_resources): Discard all
2921 continuations of the thread we're clearing.
2922 (save_infrun_state, load_infrun_state): Delete continuations and
2923 intermediate_continuations arguments, and the code referencing
2925 * utils.c: Include "gdbthread.h".
2926 (cmd_continuation, intermediate_continuation): Delete.
2927 (add_continuation): Add thread_info* argument. Install the
2929 (restore_thread_cleanup): New.
2930 (do_all_continuations_ptid, do_all_continuations_thread_callback):
2932 (do_all_continuations): Reimplement.
2933 (discard_all_continuations_thread_callback,
2934 discard_all_continuations_thread): New.
2935 (discard_all_continuations): Reimplement.
2936 (add_intermediate_continuation): Add thread_info* argument.
2937 Install the continuation on it.
2938 (do_all_intermediate_continuations_thread_callback)
2939 (do_all_intermediate_continuations_thread): New.
2940 (do_all_intermediate_continuations): Reimplement.
2941 (discard_all_intermediate_continuations_thread_callback): New.
2942 (discard_all_intermediate_continuations_thread): New.
2943 (discard_all_intermediate_continuations): Reimplement.
2945 * breakpoint.c (until_break_command): Install the continuation on
2948 * defs.h (cmd_continuation, intermediate_continuation): Delete.
2949 (struct thread_info): Forward declare.
2950 (add_continuation, add_intermediate_continuation): Add
2951 thread_info* argument.
2952 (do_all_continuations_thread, discard_all_continuations_thread)
2953 (do_all_intermediate_continuations_thread)
2954 (discard_all_intermediate_continuations_thread): Declare.
2955 * inf-loop.c (inferior_event_handler): In non-stop only run
2956 continuations on the thread that stopped. In all-stop, run
2957 continuations on all threads.
2958 * infcmd.c (step_once, finish_command): Adjust.
2960 2008-09-08 Pedro Alves <pedro@codesourcery.com>
2962 Remove the global stop_step in favour of a per-thread
2965 * inferior.h (stop_step): Delete.
2967 * gdbthread.h (struct thread_info): Add comments to stop_step.
2968 (save_infrun_state, load_infrun_state): Remove stop_step argument.
2969 * thread.c (load_infrun_state, save_infrun_state): Remove
2970 stop_step argument, and references to it.
2972 * infrun.c (clear_proceed_status): Clear stop_step.
2973 (fetch_inferior_event): Adjust.
2974 (context_switch): Don't context-switch stop_step.
2975 (handle_inferior_event): Adjust.
2976 (normal_stop): Adjust.
2977 (save_inferior_status, restore_inferior_status): Adjust.
2979 * infcmd.c (stop_step): Delete.
2980 (step_1, step_1_continuation, step_once, until_next_command):
2983 2008-09-08 Pedro Alves <pedro@codesourcery.com>
2985 Remove the global step_multi in favour of a per-thread
2988 * inferior.h (step_multi): Delete.
2989 * gdbthread.h (struct thread_info): Add comments around
2991 (save_infrun_state, load_infrun_state): Remove step_multi
2993 * thread.c (load_infrun_state, save_infrun_state): Remove
2994 step_multi argument, and references to it.
2995 * infcmd.c (step_multi): Delete.
2997 (step_1_continuation, until_next_command): Adjust.
2998 * infrun.c (fetch_inferior_event): Adjust.
2999 (context_switch): Don't context-switch step_multi.
3000 (print_stop_reason, normal_stop): Adjust.
3002 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3004 Remove the global stop_signal in favour of a per-thread
3007 * inferior.h (stop_signal): Delete.
3008 * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3009 stop_signal argument.
3010 * thread.c (load_infrun_state, save_infrun_state): Remove
3011 stop_signal argument. Don't reference it.
3013 * infcmd.c (stop_signal): Delete.
3014 (program_info): Adjust.
3015 * infrun.c (resume): Clear stop_signal.
3016 (proceed): Adjust. Pass the last stop_signal to the thread we're
3018 (context_switch): Don't context-switch stop_signal.
3019 (handle_inferior_event, keep_going): Adjust.
3020 (save_inferior_status, restore_inferior_status): Adjust.
3022 * fbsd-nat.c: Include "gdbthread.h".
3023 (find_signalled_thread, find_stop_signal): New.
3024 (fbsd_make_corefile_notes): Use it.
3025 * fork-child.c (startup_inferior): Adjust.
3027 * linux-nat.c (get_pending_status): Adjust.
3028 (linux_nat_do_thread_registers): Adjust.
3029 (find_signalled_thread, find_stop_signal): New.
3030 (linux_nat_do_thread_registers): Add stop_signal parameter.
3031 (struct linux_nat_corefile_thread_data): Add stop_signal member.
3032 (linux_nat_corefile_thread_callback): Pass stop_signal.
3033 (linux_nat_do_registers): Delete.
3034 (linux_nat_make_corefile_notes): Use find_stop_signal. Assume
3035 there's always a thread.
3037 * procfs.c (find_signalled_thread, find_stop_signal): New.
3038 (find_stop_signal): New.
3039 (procfs_do_thread_registers): Add stop_signal parameter.
3040 (struct procfs_corefile_thread_data): Add stop_signal member.
3041 (procfs_corefile_thread_callback): Pass args->stop_signal.
3042 (procfs_make_note_section): Find the last stop_signal.
3044 * solib-irix.c: Include gdbthread.h.
3045 (irix_solib_create_inferior_hook): Adjust.
3046 * solib-osf.c: Include gdbthread.h.
3047 (osf_solib_create_inferior_hook): Adjust.
3048 * solib-sunos.c: Include gdbthread.h.
3049 (sunos_solib_create_inferior_hook): Adjust.
3050 * solib-svr4.c: Include gdbthread.h.
3051 (svr4_solib_create_inferior_hook): Adjust.
3053 * win32-nat.c (do_initial_win32_stuff): Adjust.
3055 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3057 * gdbthread.h (struct thread_info): Add comments around
3059 (save_infrun_state, load_infrun_state): Remove proceed_to_finish
3061 * thread.c (load_infrun_state, save_infrun_state): Delete
3062 proceed_to_finish argument and references to it.
3064 * infcall.c (call_function_by_hand): Adjust.
3065 * infcmd.c (finish_command): Adjust.
3066 * infrun.c (proceed_to_finish): Delete.
3067 (clear_proceed_status): Adjust.
3068 (context_switch): Don't context-switch proceed_to_finish.
3069 (normal_stop, save_inferior_status, restore_inferior_status):
3072 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3074 * inferior.h (stop_bpstat): Delete.
3076 * breakpoint.h (bpstat_do_actions): Remove bpstat* argument.
3078 * breakpoint.c (bpstat_do_actions): Rename to ...
3079 (bpstat_do_actions_1): ... this. Make static. Change return type
3080 to int. Return true if a breakpoint proceeded.
3081 (bpstat_do_actions): New, as wrapper around bpstat_do_actions_1.
3082 (delete_breakpoint): Don't reference the global stop_bpstat; it's
3085 * gdbthread.h (struct thread_info): Add stop_bpstat.
3086 (save_infrun_state, load_infrun_state): Remove stop_bpstat
3088 * thread.c (load_infrun_state, save_infrun_state): Remove
3089 stop_bpstat argument, and the code referencing it.
3091 * infcall.c: Include "gdbthread.h".
3092 (call_function_by_hand): Adjust.
3093 * exceptions.c: Include "gdbthread.h".
3094 (throw_exception): Adjust.
3095 * infcmd.c (stop_bpstat): Delete.
3096 (continue_command): In all-stop, set the ignore count on the
3097 thread that reported the stop. In non-stop, set it on the current
3099 (finish_command_continuation): Adjust.
3100 (program_info): Adjust.
3101 * infrun.c (clear_proceed_status): Adjust.
3102 (context_switch): Don't context-switch stop_bpstat.
3103 (handle_inferior_event): Adjust.
3104 (normal_stop): Adjust.
3105 (save_inferior_status, restore_inferior_status): Adjust.
3107 * inf-loop.c (inferior_event_handler): Remove parameter to
3108 bpstat_do_actions call.
3109 * top.c (command_loop): Remove parameter to bpstat_do_actions
3110 call. Call it unconditionally.
3111 * event-top.c (command_handler): Ditto.
3112 * python/python.c (execute_gdb_command): Ditto.
3114 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3116 * inferior.h (step_over_calls): Delete.
3118 * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3119 step_over_calls argument.
3120 * thread.c (save_infrun_state, load_infrun_state): Remove
3121 step_over_calls argument. Adjust.
3123 * infcmd.c (step_over_calls): Delete.
3125 * infrun.c (clear_proceed_status): Adjust.
3126 (context_switch): Don't context-switch step_over_calls.
3127 (handle_inferior_event, save_inferior_status)
3128 (restore_inferior_status): Adjust.
3130 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3132 Remove context switching in favour of accessing thread_info fields
3135 * infrun.c (stepping_over_breakpoint, step_resume_breakpoint):
3137 (struct thread_stepping_state): Delete.
3138 (gtss, tss): Delete.
3139 (follow_inferior_reset_breakpoints, follow_exec)
3140 (resume, clear_proceed_status): Adjust.
3142 (proceed, start_remote, init_wait_for_inferior): Adjust.
3143 (struct execution_control_state): Add event_thread member.
3144 (delete_step_resume_breakpoint_callback)
3145 (delete_step_thread_step_resume_breakpoint)
3146 (delete_step_thread_step_resume_breakpoint_cleanup)
3147 (delete_step_thread_step_resume_breakpoint): New.
3148 (wait_for_inferior, init_execution_control_state): Use
3149 delete_step_thread_step_resume_breakpoint_cleanup.
3150 (wait_for_inferior): Set the event_thread.
3151 (fetch_inferior_event): Ditto. Delete the step-resume breakpoint
3152 with delete_step_thread_step_resume_breakpoint.
3153 (init_thread_stepping_state): Change parameter type to
3154 thread_info. Adjust.
3155 (context_switch): Don't context switch prev_pc,
3156 stepping_over_breakpoint, step_resume_breakpoint,
3157 step_range_start, step_range_end, step_frame_id,
3158 tss->stepping_over_breakpoint,
3159 tss->stepping_through_solib_after_catch,
3160 tss->stepping_through_solib_catchpoints, tss->current_line, or
3161 tss->current_symtab.
3162 (adjust_pc_after_break, handle_inferior_event)
3163 (currently_stepping, step_into_function)
3164 (insert_step_resume_breakpoint_at_sal)
3165 (insert_longjmp_resume_breakpoint, keep_going): Adjust.
3166 (clear_stepping_state): New.
3167 (normal_stop): Adjust.
3168 (save_inferior_status, restore_inferior_status): Adjust.
3170 * gdbthread.h (struct thread_info): Comments describing the
3171 members moved here. Add step_after_step_resume_breakpoint.
3172 (delete_step_resume_breakpoint): Add thread_info argument.
3173 (save_infrun_state, load_infrun_state): Remove prev_pc,
3174 trap_expected, step_resume_breakpoint, step_range_start,
3175 step_range_end, step_frame_id, another_trap,
3176 stepping_through_solib_after_catch,
3177 stepping_through_solib_catchpoints, current_line and
3178 current_symtab function arguments.
3179 (inferior_thread): Declare.
3181 * thread.c (inferior_thread): New.
3182 (delete_step_resume_breakpoint): Add a thread_info parameter and
3184 (load_infrun_state, save_infrun_state): Remove prev_pc,
3185 trap_expected, step_resume_breakpoint, step_range_start,
3186 step_range_end, step_frame_id, stepping_over_breakpoint,
3187 stepping_through_solib_after_catch,
3188 stepping_through_solib_catchpoints, current_line and
3189 current_symtab args. Remove code referencing them.
3191 * infcmd.c (step_range_start, step_range_end, step_frame_id):
3193 (step_1, step_once, until_next_command): Adjust.
3195 * inferior.h (step_range_start, step_range_end, step_frame_id):
3198 * linux-nat.c (linux_child_follow_fork): If following the child,
3199 move the step state to it. Adjust.
3200 * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
3201 * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
3203 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3205 * bsd-uthread.c (bsd_uthread_find_new_threads): Claim the main
3208 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3210 * corelow.c (add_to_thread_list): If this is the first time we
3211 hear about thread info, update inferior_ptid.
3212 (core_open): Clear the thread list and set inferior_ptid before
3213 acknowledging a new inferior. Find threads before fetching
3214 register info. Give an upper target layer a chance to find and
3215 claim new threads. Print core generation and stop signal info
3216 after finding new threads.
3217 (get_core_register_section): Look at the lwp member of
3218 inferior_ptid for detecting if we have threads info, instead of
3220 (core_pid_to_str): New.
3221 (init_core_ops): Register core_pid_to_str.
3223 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3225 * spu-linux-nat.c (spu_child_post_startup_inferior)
3226 (spu_child_post_attach): Don't add the main thread here.
3228 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3230 Use ptid_t.tid to store thread ids instead of ptid_t.pid.
3232 * gnu-nat.c (inf_validate_procs): If this is the first time we're
3233 seeing a thread id, extend the main thread's ptid. If we still
3234 have pending execs, don't be verbose about new threads.
3235 (gnu_wait, gnu_resume, gnu_attach, gnu_thread_alive)
3236 (gnu_pid_to_str, cur_thread, sig_thread_cmd): Adjust.
3237 * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers):
3240 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3242 * procfs.c (to_attach): Create a procinfo for the current lwp.
3243 Add it to gdb's thread list.
3244 (procfs_fetch_registers, procfs_store_registers): Assume there's
3246 (procfs_wait): Don't add the main thread here.
3247 (procfs_init_inferior): Create a procinfo for the main lwp here.
3248 Change main thread's ptid with thread_change_ptid.
3249 (procfs_notice_thread): Check for exited threads.
3250 (procfs_corefile_thread_callback): Remove check for the main
3252 (procfs_make_note_section): Assume there is always a thread.
3254 * sol-thread.c (sol_thread_attach): Clear sol_thread_active before
3255 attaching. Change the main thread ptid with thread_change_ptid.
3256 (sol_thread_detach): Clear sol_thread_active.
3257 (sol_thread_wait): Check for exited threads.
3258 (sol_thread_create_inferior): Clear sol_thread_active before
3259 creating a new inferior. Change the main thread ptid with
3261 (sol_thread_mourn_inferior): Clear sol_thread_active.
3262 (sol_find_new_threads_callback): Check for exited threads.
3264 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3266 * inf-ttrace.c (inf_ttrace_wait): On TTEVT_LWP_CREATE and
3267 LWP_TERMINATE, resume the caller thread. On TTEVT_LWP_CREATE,
3268 TTEVT_LWP_EXIT and TTEVT_LWP_TERMINATE, don't stop the whole
3269 process, and return TARGET_WAITKIND_IGNORE.
3271 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3273 * inf-ttrace.c: Include <signal.h>
3274 (inf_ttrace_delete_dead_threads_callback): New.
3275 (inf_ttrace_resume_lwp): New.
3276 (inf_ttrace_resume_callback, inf_ttrace_resume): Rewrite. Don't
3277 delete dying threads until they are really dead.
3278 (inf_ttrace_wait): After stopping the whole process, delete any
3279 dying thread that is really dead by now.
3280 (inf_ttrace_thread_alive): Return 1.
3281 (inf_ttrace_extra_thread_info): New.
3282 (inf_ttrace_target): Register inf_ttrace_extra_thread_info.
3284 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3286 * inf-ttrace.c (inf_ttrace_follow_fork): Register the main thread
3288 (inf_ttrace_attach): Add the main thread.
3289 (inf_ttrace_resume_callback): Check for exited threads. Adjust
3290 for always a thread.
3291 (inf_ttrace_wait): Decorate the main thread's ptid with lwp info
3292 using thread_change_ptid, and set its private data. Don't add the
3294 (inf_ttrace_pid_to_str): Adjust.
3296 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3298 * bsd-uthread.c (bsd_uthread_wait): Decorate the main thread with
3299 thread_change_ptid. Check for exited threads.
3300 (bsd_uthread_find_new_threads): Check for exited threads.
3302 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3304 * inf-ptrace.c: Include "gdbthread.h".
3305 (inf_ptrace_attach): Add the main thread here.
3306 * linux-nat.c (linux_nat_attach): Don't add the main thread here.
3307 Decorate the main thread id with the lwp id.
3309 2008-09-08 Pedro Alves <pedro@codesourcery.com>
3311 * linux-nat.c (linux_nat_wait): Update inferior_ptid's ptid with
3312 thread_change_ptid. Don't add or mark the main thread as running
3314 * fork-child.c (fork_inferior): Add the main thread here.
3316 2008-09-08 Jerome Guitton <guitton@adacore.com>
3318 * rs6000-tdep.c (rs6000_fetch_instruction)
3319 (rs6000_skip_stack_check): New functions.
3320 (skip_prologue): Skip stack check sequence.
3322 2008-09-08 David Daney <ddaney@avtrex.com>
3324 * dummy-frame.h (frame.h): Include it.
3325 (struct frame_id): Remove declaration.
3327 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3329 * spu-tdep.c (spu_push_dummy_code): New function.
3330 (spu_gdbarch_init): Install it.
3332 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3334 * gdbarch.sh (gdbarch_dump): Use core_addr_to_string_nz
3335 instead of paddr_nz.
3336 * gdbarch.c: Regenerate.
3338 * target.c (target_xfer_partial, debug_print_register): Use
3339 core_addr_to_string_nz instead of paddr_nz.
3341 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3343 * rs6000-tdep.c (rs6000_gdbarch_init): Setup displaced stepping
3344 *before* calling gdbarch_init_osabi.
3345 (rs6000_aix_init_osabi): Disable displaced stepping.
3347 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3349 * target.c (update_current_target): Do not inherit to_open
3351 (pop_target): Call target_close on target_stack instead
3353 (pop_all_targets_above): Likewise.
3355 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3357 * gnu-v3-abi.c (gnuv3_decode_method_ptr): New function.
3358 (gnuv3_print_method_ptr): Use it.
3359 (gnuv3_method_ptr_to_value): Likewise.
3361 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3363 * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to
3364 register_area callback function.
3365 * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
3366 Use it instead of current_gdbarch.
3367 * nto-procfs.c (procfs_store_registers): Update call.
3369 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3371 * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
3372 regcache architecture instead of current_gdbarch.
3374 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3376 * mep-tdep.c (struct mep_prologue): Add gdbarch member.
3377 (check_for_saved): Use it instead of current_gdbarch.
3378 (is_arg_spill): Add gdbarch paramter. Use it instead
3380 (mep_analyze_prologue): Add gdbarch parameter. Pass it
3381 to is_arg_spill and check_for_saved.
3382 (mep_skip_prologue, mep_analyze_frame_prologue): Update calls.
3384 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3386 * hppa-tdep.c (internalize_unwinds): Use objfile architecture
3387 instead of current_gdbarch.
3389 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3391 * m68k-tdep.h (m68kbsd_fpreg_offset): Add gdbarch parameter.
3392 * m68kbsd-tdep.c (m68kbsd_fpreg_offset): Add gdbarch paramter.
3393 Use it instead of current_gdbarch.
3394 (m68kbsd_supply_fpregset): Update call.
3395 * m68kbsd-nat.c (m68kbsd_supply_fpregset): Likewise.
3396 (m68kbsd_collect_fpregset): Likewise.
3398 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3400 * cris-tdep.c (cris_version, cris_mode): Remove.
3401 (crisv32_single_step_through_delay): Use tdep->cris_mode.
3402 (cris_breakpoint_from_pc): Likewise.
3403 (cris_frame_unwind_cache): Use tdep->cris_version.
3404 (crisv32_scan_prologue): Likewise.
3405 (cris_spec_reg_applicable): Add gdbarch argument.
3406 Use tdep->cris_version.
3407 (cris_register_size, cris_special_register_name): Update calls.
3408 (cris_special_register_name): Add gdbarch argument.
3409 (cris_register_name, crisv32_register_name): Update calls.
3411 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3413 * m68hc11-tdep.c (gdb_print_insn_m68hc11): Use info->arch
3414 instead of current_gdbarch.
3416 * sh64-tdep.c (gdb_print_insn_sh64): Remove.
3417 (sh64_gdbarch_init): Install print_insn_sh64 directly.
3418 * sh-tdep.c (gdb_print_insn_sh): Remove.
3419 (sh_gdbarch_init): Install print_insn_sh directly.
3421 * mips-tdep.c (gdb_print_insn_mips): Do not check mips_abi
3422 from current_gdbarch.
3423 (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): New functions.
3424 (mips_gdbarch_init): Install them instead of gdb_print_insn_mips
3425 depending on mips_abi.
3427 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3429 * gdbarch.sh (addr_bits_remove): Change type to 'm'.
3430 (smash_text_address): Likewise.
3431 * gdbarch.c, gdbarch.h: Regenerate.
3433 * arch-utils.c (core_addr_identity): Add gdbarch parameter.
3434 * arch-utils.h (core_addr_identity): Likewise.
3435 * arm-tdep.c (arm_addr_bits_remove): Likewise.
3436 (arm_smash_text_address): Likewise.
3437 * hppa-tdep.c (hppa_smash_text_address): Likewise.
3438 * m88k-tdep.c (m88k_addr_bits_remove): Likewise.
3439 * s390-tdep.c (s390_addr_bits_remove): Likewise.
3441 * mips-tdep.c (mips_addr_bits_remove): Add gdbarch parameter.
3442 Use it instead of current_gdbarch.
3444 * arm-tdep.c (arm_prologue_prev_register, arm_unwind_pc,
3445 arm_dwarf2_prev_register): Update calls.
3446 * m88k-tdep.c (m88k_unwind_pc): Update call.
3448 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3450 * dwarf2expr.h (dwarf2_read_address): Add gdbarch argument.
3451 * dwarf2expr.c (dwarf2_read_address): Add gdbarch argument.
3452 Call gdbarch_integer_to_address directly instead of converting
3453 to value and back. Update comment.
3454 (execute_stack_op): Update call site.
3455 * dwarf2loc.c (find_location_expression): Likewise.
3456 (locexpr_describe_location): Update
3458 * dwarf2expr.h (struct dwarf_expr_context): Add gdbarch member.
3459 * dwarf2-frame.c (execute_stack_op): Initialize ctx->gdbarch.
3460 * dwarf2loc. (dwarf2_evaluate_loc_desc): Likewise.
3461 (dwarf2_loc_desc_needs_frame): Likewise.
3463 2008-09-05 Ulrich Weigand <uweigand@de.ibm.com>
3465 * breakpoint.h (struct bp_location): Change type of section
3466 member to "struct obj_section *".
3467 * tracepoint.h (struct tracepoint): Likewise.
3468 * symtab.h (struct general_symbol_info): Replace bfd_section
3469 member with obj_section.
3470 (struct symtab_and_line): Change type of section member to
3471 "struct obj_section *".
3472 (SYMBOL_BFD_SECTION): Remove macro, replace by ...
3473 (SYMBOL_OBJ_SECTION): ... this.
3475 * minsym.c (prim_record_minimal_symbol_and_info): Record symbol
3476 section as obj_section instead of bfd_section.
3478 * ada-lang.c (ada_decode_symbol): Use gsymbol->obj_section
3479 directly instead of looking of obj_section from bfd_section.
3481 * objfiles.h (find_pc_sect_section): Remove.
3482 * objfiles.c (find_pc_sect_section): Remove.
3483 (find_pc_section): Inline find_pc_sect_section code.
3485 * symfile.h (find_pc_overlay): Return struct obj_section *.
3486 (find_pc_mapped_section): Likewise.
3487 (section_is_overlay, section_is_mapped): Change type of section
3488 argument to struct obj_section *.
3489 (pc_in_mapped_range, pc_in_unmapped_range): Likewise.
3490 (overlay_mapped_address, overlay_unmapped_address): Likewise.
3491 (symbol_overlayed_address): Likewise.
3492 * symtab.h (symbol_overlayed_address): Likewise.
3493 * symfile.c (overlay_is_mapped): Remove.
3494 (section_is_mapped): Inline overlay_is_mapped code. Update.
3495 (overlay_invalidate_all): Update.
3496 (section_is_overlay): Change section argument to type
3497 "struct obj_section *". Use bfd_ methods.
3498 (pc_in_unmapped_range): Likewise. Handle relocated sections.
3499 (pc_in_mapped_range): Likewise. Handle relocated sections.
3500 (sections_overlap): Likewise.
3501 (overlay_unmapped_address): Likewise.
3502 (overlay_mapped_address): Likewise.
3503 (symbol_overlayed_address): Likewise.
3504 (find_pc_overlay): Return struct obj_section *.
3505 (find_pc_mapped_section): Likewise.
3506 (list_overlays_command): Update.
3507 (map_overlay_command, unmap_overlay_command): Update.
3508 (simple_overlay_update): Update.
3510 * block.h (blockvector_for_pc_sect): Change section argument
3511 to type "struct obj_section *".
3512 (block_for_pc_sect): Likewise.
3513 * block.c (blockvector_for_pc_sect): Change section argument
3514 to type "struct obj_section *".
3515 (block_for_pc_sect): Likewise.
3516 * symtab.h (find_pc_sect_function, find_pc_sect_psymtab,
3517 find_pc_sect_symtab, find_pc_sect_psymbol, find_pc_sect_line,
3518 lookup_minimal_symbol_by_pc_section, find_function_start_pc): Likewise.
3519 (matching_bfd_sections): Rename to ...
3520 (matching_obj_sections): ... this. Update argument types.
3521 * blockframe.c (find_pc_sect_function): Likewise.
3522 * breakpoint.c (describe_other_breakpoints): Likewise.
3523 (breakpoint_has_pc, check_duplicates_for): Likewise.
3524 * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3525 (lookup_minimal_symbol_by_pc_section): Likewise.
3526 * symtab.c (find_pc_sect_psymtab_closer): Likewise.
3527 (find_pc_sect_psymtab, find_pc_sect_psymbol, find_pc_sect_symtab,
3528 find_pc_sect_line, find_function_start_pc): Likewise.
3529 (matching_bfd_sections): Rename to ...
3530 (matching_obj_sections): ... this. Update argument types.
3532 * blockframe.c (find_pc_partial_function): Update to section
3533 type changes. No longer call find_pc_sect_section.
3534 (cache_pc_function_section): Change to type "struct obj_section *".
3535 * breakpoint.c (resolve_sal_pc): Update to section type changes.
3536 * exec.c (xfer_memory): Likewise.
3537 * findvar.c (read_var_value): Likewise.
3538 * infcmd.c (jump_command): Likewise.
3539 * linespec.c (minsym_found): Likewise.
3540 * maint.c (maintenance_translate_address): Likewise.
3541 * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3542 (lookup_solib_trampoline_symbol_by_pc): Likewise.
3543 * parse.c (write_exp_msymbol): Likewise.
3544 * printcmd.c (build_address_symbolic): Likewise.
3545 (address_info, sym_info): Likewise.
3546 * symmisc.c (dump_msymbols, print_symbol): Likewise.
3547 * symtab.c (fixup_section): Likewise.
3548 (fixup_symbol_section, fixup_psymbol_section): Likewise.
3549 (find_pc_line, find_function_start_sal): Likewise.
3550 * target.c (memory_xfer_partial): Likewise.
3551 * hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline): Likewise.
3552 * spu-tdep.c (spu_overlay_update): Likewise.
3554 2008-09-04 Doug Evans <dje@google.com>
3556 * defs.h (plongest,pulongest): Renamed from paddr_u,paddr_d.
3557 Change argument of pulongest from CORE_ADDR to ULONGEST.
3558 All callers updated.
3559 * utils.c (plongest): Renamed from paddr_d.
3560 (pulongest): Renamed from paddr_u, change arg type to ULONGEST.
3561 * remote-mips.c (send_srec): Use paddr_nz instead of paddr_u in
3562 `CORE_ADDR addr' arg of error message.
3564 2008-09-03 Angela Marie Thomas <angela@releasedominatrix.com>
3566 * ser-tcp.c (ser_tcp_send_break): New function.
3567 (_initialize_ser_tcp): Use ser_tcp_send_break.
3568 * ser-tcp.h (ser_tcp_send_break): New prototype.
3570 2008-09-03 Ulrich Weigand <uweigand@de.ibm.com>
3572 * spu-tdep.c (spu_push_dummy_call): Update all stack pointer slots
3573 when allocating stack frame for inferior call.
3575 2008-09-03 Ulrich Weigand <uweigand@de.ibm.com>
3577 * spu-tdep.c (spu_frame_unwind_cache): Do not attempt to unwind
3578 SP or return address if we failed to find a valid frame.
3580 2008-09-03 Aleksandar Ristovski <aristovski@qnx.com>
3582 * breakpoint.c (breakpoint_init_inferior): Mark as not inserted only
3583 non-permanent breakpoints.
3584 (bpstat_stop_status): Change enable_state to bp_disabled only for
3585 non-permanent breakpoints.
3586 (bp_loc_is_permanent): New function.
3587 (create_breakpoint): Check if the location points to a permanent
3588 breakpoint and if it does, make breakpoint permanent.
3589 (update_breakpoint_locations): Make sure new locations of permanent
3590 breakpoints are properly initialized.
3591 * i386-tdep.c (i386_skip_permanent_breakpoint): New function.
3592 (i386_gdbarch_init): Set gdbarch_skip_permanent_breakpoint.
3594 2008-09-02 Pedro Alves <pedro@codesourcery.com>
3596 * breakpoint.c (insert_breakpoints, update_global_location_list):
3597 Check breakpoints_always_inserted_mode instead of
3598 always_inserted_mode directly.
3600 2008-09-02 Andreas Schwab <schwab@suse.de>
3602 * ia64-tdep.c (ia64_get_dyn_info_list): Use obj_section_addr.
3604 2008-09-01 Jan Kratochvil <jan.kratochvil@redhat.com>
3606 Stay compatible after the GCC PR fortran/29635 fix.
3607 * dwarf2read.c (process_die <DW_TAG_imported_module>)
3608 (process_die <DW_TAG_imported_module>): Do not assert anything about
3609 these unsupported tags.
3611 2008-08-29 Tom Tromey <tromey@redhat.com>
3613 * maint.c (_initialize_maint_cmds): Fix typo.
3615 2008-08-29 Tom Tromey <tromey@redhat.com>
3617 * dwarf2read.c (dwarf2_build_psymtabs_hard): Copy dirname on
3620 2008-08-27 Ulrich Weigand <uweigand@de.ibm.com>
3622 * remote.c: Include "gdb_stat.h".
3624 2008-08-26 Ulrich Weigand <uweigand@de.ibm.com>
3626 * dummy-frame.h (dummy_frame_pop): Add prototype.
3627 * dummy-frame.c: Include "observer.h".
3628 (dummy_frame_push): Do not check for stale frames.
3629 (dummy_frame_pop): New function.
3630 (cleanup_dummy_frames): New function.
3631 (_initialize_dummy_frame): Install it as inferior_created observer.
3633 * frame.h (struct frame_id): Update comments.
3634 (frame_id_inner): Remove prototype.
3635 * frame.c (frame_id_inner): Make static. Add comments.
3636 (frame_find_by_id): Update frame_id_inner safety net check to avoid
3637 false positives for targets using non-contiguous stack ranges.
3638 (get_prev_frame_1): Update frame_id_inner safety net check.
3639 (frame_pop): Call dummy_frame_pop when popping a dummy frame.
3641 * stack.c (return_command): Directly pop the selected frame.
3642 * infrun.c (handle_inferior_event): Remove dead code.
3643 * i386-tdep.c (i386_push_dummy_call): Update comment.
3645 2008-08-26 Ulrich Weigand <uweigand@de.ibm.com>
3647 * breakpoint.c (remove_breakpoint): Do not fail if unable to remove
3648 breakpoint from shared library.
3650 2008-08-26 Ulrich Weigand <uweigand@de.ibm.com>
3652 * solib-svr4.c (read_program_header): New function.
3653 (scan_dyntag_auxv): New function.
3654 (elf_locate_base): Use it if scan_dyntag fails.
3655 (find_program_interpreter): New function.
3656 (enable_break): Use it instead of .interp section.
3658 2008-08-26 Ulrich Weigand <uweigand@de.ibm.com>
3660 * remote.h (remote_filename_p, remote_bfd_open): Add prototypes.
3661 * remote.c (remote_bfd_iovec_open, remote_bfd_iovec_close,
3662 remote_bfd_iovec_pread, remote_bfd_iovec_stat, remote_filename_p,
3663 remote_bfd_open): New functions.
3664 (remote_hostio_send_command): Fail safely if remote connection
3667 * solist.h (solib_open): Remove prototype.
3668 (solib_bfd_open): Add prototype.
3669 * solib.c: Include "remote.h".
3670 (solib_open): Remove, replace by ...
3671 (solib_bfd_open): ... this new function. Handle remote BFDs.
3672 (solib_map_sections): Replace solib_open by solib_bfd_open.
3673 * solib-frv.c: Include "exceptions.h".
3674 (enable_break2): Replace solib_open by solib_bfd_open.
3675 * solib-svr4.c: Include "exceptions.h".
3676 (enable_break): Replace solib_open by solib_bfd_open.
3678 * symfile.c: Include "remote.h".
3679 (build_id_verify): Handle remote BFDs.
3680 (separate_debug_file_exists): Use BFD to access file. Handle
3682 (symfile_bfd_open): Handle remote BFDs.
3683 (reread_symbols): Handle remote BFDs.
3685 * NEWS: Mention "remote:" argument prefix to "set sysroot".
3687 2008-08-26 Ulrich Weigand <uweigand@de.ibm.com>
3689 * gdbarch.sh (target_gdbarch): New global variable.
3690 (deprecated_current_gdbarch_select_hack): Set it.
3691 * gdbarch.c, gdbarch.h: Regenerate.
3693 * arch-utils.c (gdbarch_update_p): Use target_gdbarch instead
3695 * target-descriptions.c (target_find_description): Likewise.
3696 * arm-tdep.c (arm_update_current_architecture): Likewise.
3697 (show_fp_model, arm_show_abi, arm_show_fallback_mode,
3698 arm_show_force_mode): Likewise.
3699 * mips-tdep.c (show_mask_address, show_mipsfpu_command,
3700 show_mips_abi): Likewise.
3701 * mep-tdep.c (me_module_register_set, current_me_module): Likewise.
3703 * target.c (target_translate_tls_address): Use target_gdbarch
3704 instead of current_gdbarch.
3705 * remote.c (struct packet_reg): Likewise.
3706 (get_remote_arch_state, packet_reg_from_regnum,
3707 packet_reg_from_pnum, remote_check_symbols, remote_wait,
3708 remote_address_masked, remote_insert_breakpoint,
3709 remote_insert_hw_breakpoint, remote_read_description): Likewise.
3710 * remote-m32r-sdi.c (m32r_resume, m32r_wait): Likewise.
3711 * remote-mips.c (mips_open, mips_common_breakpoint): Likewise.
3712 * cris-tdep.c (cris_can_use_hardware_watchpoint): Likewise.
3714 * solib.c (solib_open, solib_map_sections, solib_read_symbols,
3715 solib_add, info_sharedlibrary_command, solib_address,
3716 solib_create_inferior_hook, in_solib_dynsym_resolve_code,
3717 solib_global_lookup): Likewise.
3718 * solib-frv.c (enable_break2, frv_relocate_main_executable): Likewise.
3719 * solib-irix.c (irix_current_sos, irix_open_symbol_file_object):
3721 * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
3722 * solib-svr4.c (exec_entry_point, enable_break, svr4_free_so,
3723 set_solib_svr4_fetch_link_map_offsets, svr4_fetch_link_map_offsets):
3725 * nto-tdep.c (nto_find_and_open_solib, nto_init_solib_absolute_prefix,
3726 nto_truncate_ptr): Likewise.
3727 * mips-linux-tdep.c (mips_linux_in_dynsym_stub): Likewise.
3729 2008-08-26 Luis Machado <luisgpm@br.ibm.com>
3731 * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections) New structure.
3732 (ppc_linux_vmx_regset_sections): New structure.
3733 (ppc_linux_fp_regset_sections): New structure.
3734 (ppc_linux_init_abi): Select core-file regset based on target
3737 2008-08-26 Ulrich Weigand <uweigand@de.ibm.com>
3739 * target.c (debug_print_register): Use regcache_raw_collect
3740 instead of regcache_cooked_read. Only handle raw registers.
3742 2008-08-25 Pedro Alves <pedro@codesourcery.com>
3744 * cp-name-parser.y: Include config.h before system headers.
3746 2008-08-25 Ulrich Weigand <uweigand@de.ibm.com>
3748 * m88k-tdep.c: Update for unwinder changes.
3750 2008-08-24 Tom Tromey <tromey@redhat.com>
3752 * s390-tdep.c (s390_address_class_type_flags): Use
3753 TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1.
3754 (s390_address_class_type_flags_to_name): Likewise.
3755 (s390_address_class_name_to_type_flags): Likewise.
3757 2008-08-24 Tom Tromey <tromey@redhat.com>
3759 * rs6000-tdep.c (rs6000_builtin_type_vec128): Don't use
3761 * features/rs6000/powerpc-vsx32l.c
3762 (initialize_tdesc_powerpc_vsx32l): Update.
3763 * features/rs6000/powerpc-vsx32.c
3764 (initialize_tdesc_powerpc_vsx32): Update.
3765 * features/rs6000/powerpc-vsx64.c
3766 (initialize_tdesc_powerpc_vsx64): Update.
3767 * features/rs6000/powerpc-vsx64l.c
3768 (initialize_tdesc_powerpc_vsx64l): Update.
3769 * target-descriptions.c (maint_print_c_tdesc_cmd): Emit
3770 TYPE_VECTOR, not TYPE_FLAGS.
3772 2008-08-24 Tom Tromey <tromey@redhat.com>
3774 * xml-tdesc.c (tdesc_end_union): Update.
3775 * stabsread.c (define_symbol): Update.
3776 (read_type): Update.
3777 (read_struct_type): Update.
3778 (read_enum_type): Update.
3779 * spu-tdep.c (spu_builtin_type_vec128): Update.
3780 * sh-tdep.c (sh_push_dummy_call_fpu): Update.
3781 (sh_push_dummy_call_nofpu): Update.
3782 * mdebugread.c (parse_symbol): Update.
3783 (parse_symbol): Update.
3784 (parse_symbol): Update.
3785 (upgrade_type): Update.
3786 * jv-lang.c (java_lookup_class): Update.
3787 * iq2000-tdep.c (iq2000_pointer_to_address): Update.
3788 * i386-tdep.c (i386_mmx_type): Update.
3789 (i386_sse_type): Update.
3790 * gdbtypes.h (enum type_flag_value): New enum.
3791 (enum type_instance_flag_value): New enum.
3792 (TYPE_FLAG_UNSIGNED, TYPE_FLAG_NOSIGN, TYPE_FLAG_STUB,
3793 TYPE_FLAG_TARGET_STUB, TYPE_FLAG_STATIC, TYPE_FLAG_PROTOTYPED,
3794 TYPE_FLAG_INCOMPLETE, TYPE_FLAG_VARARGS, TYPE_FLAG_VECTOR,
3795 TYPE_FLAG_FIXED_INSTANCE, TYPE_FLAG_STUB_SUPPORTED,
3796 TYPE_FLAG_NOTTEXT): Now enum constants.
3797 (TYPE_FLAG_CONST, TYPE_FLAG_VOLATILE, TYPE_FLAG_CODE_SPACE,
3798 TYPE_FLAG_DATA_SPACE, TYPE_FLAG_ADDRESS_CLASS_1,
3799 TYPE_FLAG_ADDRESS_CLASS_2): Remove.
3800 (TYPE_INSTANCE_FLAG_CONST, TYPE_INSTANCE_FLAG_VOLATILE,
3801 TYPE_INSTANCE_FLAG_CODE_SPACE, TYPE_INSTANCE_FLAG_DATA_SPACE,
3802 TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1,
3803 TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2): New constants.
3804 (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB, TYPE_TARGET_STUB,
3805 TYPE_STATIC, TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_VARARGS,
3806 TYPE_VECTOR, TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED,
3807 TYPE_NOTTEXT): Update.
3808 (TYPE_FLAG_ADDRESS_CLASS_ALL): Remove.
3809 (TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL): New define.
3810 (TYPE_VOLATILE, TYPE_CODE_SPACE, TYPE_DATA_SPACE,
3811 TYPE_ADDRESS_CLASS_1, TYPE_ADDRESS_CLASS_2,
3812 TYPE_ADDRESS_CLASS_ALL): Update.
3813 (struct main_type) <flags>: Remove.
3814 <flag_unsigned, flag_nosign, flag_stub, flag_target_stub,
3815 flag_static, flag_prototyped, flag_incomplete, flag_varargs,
3816 flag_vector, flag_stub_supported, flag_nottext,
3817 flag_fixed_instance>: New fields.
3818 <nfields, vptr_fieldno>: Move earlier.
3819 (TYPE_FLAGS): Remove.
3820 * gdbtypes.c (make_pointer_type): Update.
3821 (address_space_name_to_int): Update.
3822 (address_space_int_to_name): Update.
3823 (make_type_with_address_space): Update.
3824 (make_cv_type): Update.
3825 (create_range_type): Update.
3826 (get_discrete_bounds): Update.
3827 (create_set_type): Update.
3828 (make_vector_type): Update.
3829 (smash_to_method_type): Update.
3830 (check_typedef): Update.
3831 (check_stub_method): Update.
3832 (init_type): Individually assign flag fields.
3833 (recursive_dump_type): Don't print entire TYPE_FLAGS field. Do
3834 print TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED, and TYPE_NOTTEXT.
3835 (copy_type_recursive): Copy the entire main type. Don't use
3837 * features/rs6000/powerpc-altivec64l.c
3838 (initialize_tdesc_powerpc_altivec64l): Update.
3839 * features/rs6000/powerpc-altivec64.c
3840 (initialize_tdesc_powerpc_altivec64): Update.
3841 * features/rs6000/powerpc-altivec32l.c
3842 (initialize_tdesc_powerpc_altivec32l): Update.
3843 * features/rs6000/powerpc-altivec32.c
3844 (initialize_tdesc_powerpc_altivec32): Update.
3845 * features/rs6000/powerpc-7400.c (initialize_tdesc_powerpc_7400):
3847 * features/arm-with-iwmmxt.c (initialize_tdesc_arm_with_iwmmxt):
3849 * dwarf2read.c (read_structure_type): Update.
3850 (read_enumeration_type): Likewise.
3851 (process_enumeration_scope): Likewise.
3852 (read_tag_pointer_type): Likewise.
3853 (read_subroutine_type): Likewise.
3854 (read_subroutine_type): Likewise.
3855 (read_base_type): Likewise.
3856 * coffread.c (coff_read_enum_type): Update.
3857 * ada-valprint.c (adjust_type_signedness): Update.
3858 * ada-typeprint.c (print_record_field_types): Update.
3859 * ada-lang.c (packed_array_type): Update.
3860 (empty_record): Don't reset TYPE_FLAGS.
3861 (ada_template_to_fixed_record_type_1): Update.
3862 (ada_template_to_fixed_record_type_1): Likewise.
3863 (template_to_static_fixed_type): Likewise.
3864 (to_record_with_fixed_variant_part): Likewise.
3865 (to_fixed_record_type): Likewise.
3866 (to_fixed_array_type): Likewise.
3867 (to_static_fixed_type): Likewise.
3869 2008-08-23 Jim Blandy <jimb@redhat.com>
3872 * symmisc.c (print_symbol_bcache_statistics): Include statistics
3873 for the macro bcache.
3875 2008-08-23 Tom Tromey <tromey@redhat.com>
3877 * macrotab.h (struct macro_definition) <kind>: Shrink to one bit.
3878 (argc): Now 31 bits.
3880 2008-08-22 Tom Tromey <tromey@redhat.com>
3882 * NEWS: Move macro entries back under "New commands".
3884 2008-08-22 Ulrich Weigand <uweigand@de.ibm.com>
3886 * breakpoint.c (create_overlay_event_breakpoint): Rename to ...
3887 (create_overlay_event_breakpoint_1): ... this. Add OBJFILE parameter.
3888 (create_overlay_event_breakpoint): Loop over all objfiles to install
3889 multiple instances of the overlay event breakpoint if present.
3891 2008-08-22 Ulrich Weigand <uweigand@de.ibm.com>
3893 * spu-tdep.c (spu_overlay_new_objfile): Only consider SPU objfiles.
3894 (info_spu_event_command): Command only supported on SPU architecture.
3895 (info_spu_signal_command): Likewise.
3896 (info_spu_mailbox_command): Likewise.
3897 (info_spu_dma_command): Likewise.
3898 (info_spu_proxydma_command): Likewise.
3900 2008-08-22 Ulrich Weigand <uweigand@de.ibm.com>
3902 * infrun.c (adjust_pc_after_break): Do not call get_thread_regcache
3903 if the thread has already exited.
3905 2008-08-22 Pedro Alves <pedro@codesourcery.com>
3907 * infrun.c (proceed): Move back setting previous_inferior_ptid
3909 (wait_for_inferior): ... to here.
3910 (fetch_inferior_event): ... and here.
3912 2008-08-21 Ulrich Weigand <uweigand@de.ibm.com>
3914 * gdbarch.sh: Include "regcache.h" into gdbarch.c.
3915 (deprecated_current_gdbarch_select_hack): Call registers_changed
3916 instead of reinit_frame_cache.
3917 * gdbarch.c: Regenerate.
3919 2008-08-21 Ulrich Weigand <uweigand@de.ibm.com>
3921 * elfread.c (elf_symtab_read): Do not relocate thread-local symbols.
3923 2008-08-21 Daniel Jacobowitz <dan@codesourcery.com>
3925 * xcoffread.c (SYMNAME_ALLOC): Correct syntax.
3927 2008-08-21 Ulrich Weigand <uweigand@de.ibm.com>
3929 * findvar.c (locate_var_value): Do not call get_frame_arch
3930 with a NULL frame argument.
3932 2008-08-21 Ulrich Weigand <uweigand@de.ibm.com>
3934 * frame.h (frame_map_regnum_to_name): Remove prototype.
3935 (frame_map_name_to_regnum): Remove prototype.
3936 * frame.c (frame_map_regnum_to_name): Remove.
3937 (frame_map_name_to_regnum): Remove.
3938 (frame_unwind_register_value): Use user_reg_map_regnum_to_name
3939 instead of frame_map_regnum_to_name.
3940 * ax-gdb.c: Include "user-regs.h".
3941 (gen_expr): Use user_reg_map_name_to_regnum instead of
3942 frame_map_name_to_regnum.
3943 * eval.c: Include "user-regs.h".
3944 (evaluate_subexp_standard): Use user_reg_map_name_to_regnum
3945 instead of frame_map_name_to_regnum.
3946 * infcmd.c (registers_info): Likewise.
3947 * parse.c: Include "user-regs.h".
3948 (write_dollar_variable): Use user_reg_map_name_to_regnum
3949 instead of frame_map_name_to_regnum.
3950 * tracepoint.c: Include "user-regs.h".
3951 (encode_actions): Use user_reg_map_name_to_regnum
3952 instead of frame_map_name_to_regnum.
3953 * valops.c: Include "user-regs.h".
3954 (value_fetch_lazy): Use user_reg_map_regnum_to_name instead
3955 of frame_map_regnum_to_name.
3957 2008-08-21 Ulrich Weigand <uweigand@de.ibm.com>
3959 * ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read
3960 and manually relocate .opd contents from BFD instead of reading
3961 them from target memory.
3963 2008-08-21 Daniel Jacobowitz <dan@codesourcery.com>
3965 * dwarf2read.c (processing_current_prefix): Delete static
3967 (process_full_comp_unit): Do not set processing_current_prefix.
3968 (dwarf2_full_name): New function.
3969 (read_func_scope): Do not set processing_current_prefix. Use
3971 (read_structure_type): Do not set processing_current_prefix. Remove
3972 unused inner cleanup.
3973 (process_structure_scope): Do not set processing_current_prefix.
3974 (read_enumeration_type): Use dwarf2_full_name.
3975 (determine_class_name): Return a const char *. Put the result
3976 on the objfile obstack. Use dwarf2_full_name.
3977 (read_namespace_type): New function.
3978 (read_namespace): Do not create the type here. Use
3980 (read_typedef): Use dwarf2_full_name. Do not pass the name
3982 (read_base_type): Do not pass the name to init_type. Handle
3984 (read_unspecified_type): Do not pass the name to init_type.
3985 (new_symbol): Use dwarf2_full_name instead of
3986 processing_current_prefix.
3987 (read_type_die): Do not set processing_current_prefix. Handle
3989 (determine_prefix): Handle specifications. Return the result
3990 on the objfile obstack. Handle unions correctly.
3992 2008-08-21 Daniel Jacobowitz <dan@codesourcery.com>
3994 * buildsym.c (add_symbol_to_list): Do not call
3995 cp_scan_for_anonymous_namespaces here.
3996 (finish_block): Do not call cp_set_block_scope here.
3997 * cp-namespace.c (processing_has_namespace_info)
3998 (processing_current_prefix): Delete.
3999 (cp_initialize_namespace): Do not initialize
4000 processing_has_namespace_info.
4001 (cp_scan_for_anonymous_namespaces): Use SYMBOL_DEMANGLED_NAME. Do
4002 not check processing_has_namespace_info.
4003 (cp_set_block_scope): Take prefix and namespace info flag as
4004 arguments. Honor namespaces regardless of a demangled name.
4005 * cp-support.h (processing_has_namespace_info)
4006 (processing_current_prefix): Delete declarations.
4007 (cp_set_block_scope): Update prototype.
4008 * dwarf2read.c (processing_has_namespace_info)
4009 (processing_current_prefix): New static variables.
4010 (read_file_scope): Initialize processing_has_namespace_info.
4011 (read_func_scope): Call cp_set_block_scope for C++.
4012 (new_symbol): Call cp_scan_for_anonymous_namespaces for C++.
4013 * symtab.c (symbol_demangled_name): Accept a const argument.
4014 * symtab.h (symbol_demangled_name): Update prototype.
4016 2008-08-21 Daniel Jacobowitz <dan@codesourcery.com>
4018 * ax-gdb.c (gen_var_ref): Use SYMBOL_LINKAGE_NAME.
4019 * blockframe.c (find_pc_partial_function): Likewise.
4020 * buildsym.c (find_symbol_in_list): Likewise.
4021 * c-valprint.c (c_val_print): Likewise.
4022 * coffread.c (patch_opaque_types, process_coff_symbol): Likewise.
4023 (coff_read_enum_type): Likewise. Use SYMBOL_SET_LINKAGE_NAME.
4024 * cp-support.c (cp_remove_params): Renamed from remove_params and
4026 (overload_list_add_symbol): Update call to remove_params.
4027 * cp-support.h (cp_remove_params): Declare.
4028 * dwarf2read.c (process_enumeration_scope): Use SYMBOL_LINKAGE_NAME.
4029 (dwarf2_const_value): Use SYMBOL_PRINT_NAME.
4030 * expprint.c (dump_subexp_body_standard): Likewise.
4031 * f-valprint.c (info_common_command, there_is_a_visible_common_named):
4032 Use SYMBOL_LINKAGE_NAME to find symbols and SYMBOL_PRINT_NAME
4034 * findvar.c (read_var_value): Use SYMBOL_LINKAGE_NAME.
4035 * gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise.
4036 * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
4037 (hppa_hpux_skip_trampoline_code): Use SYMBOL_LINKAGE_NAME to find
4038 symbols and SYMBOL_PRINT_NAME for messages.
4039 * jv-lang.c (add_class_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4040 * linespec.c (decode_line_2): Use SYMBOL_LINKAGE_NAME.
4041 * mdebugread.c (parse_symbol): Use SYMBOL_LINKAGE_NAME and
4042 SYMBOL_SET_LINKAGE_NAME.
4043 (mylookup_symbol): Use SYMBOL_LINKAGE_NAME.
4044 * minsyms.c (add_minsym_to_demangled_hash_table): Use
4046 (lookup_minimal_symbol): Use SYMBOL_LINKAGE_NAME or
4047 SYMBOL_MATCHES_SEARCH_NAME, depending on the pass.
4048 * objfiles.h (ALL_OBJFILE_MSYMBOLS): Use SYMBOL_LINKAGE_NAME.
4049 * printcmd.c (build_address_symbolic): Use SYMBOL_LINKAGE_NAME.
4050 (address_info): Use SYMBOL_PRINT_NAME for messages and
4051 SYMBOL_LINKAGE_NAME for lookups.
4052 * sol-thread.c (info_cb): Use SYMBOL_PRINT_NAME for messages.
4053 * stabsread.c (patch_block_stabs, define_symbol)
4054 (read_type, read_enum_type, common_block_end)
4055 (cleanup_undefined_types_1, scan_file_globals): Use
4056 SYMBOL_LINKAGE_NAME, SYMBOL_SET_LINKAGE_NAME, ALL_OBJFILE_MSYMBOLS,
4057 and SYMBOL_PRINT_NAME.
4058 * stack.c (print_frame_args): Use SYMBOL_LINKAGE_NAME.
4059 (print_frame, frame_info): Use SYMBOL_PRINT_NAME for output. Use
4060 cp_remove_params instead of cplus_demangle.
4061 (print_block_frame_labels, print_frame_arg_vars): Use
4062 SYMBOL_LINKAGE_NAME.
4063 * symmisc.c (dump_msymbols): Use ALL_OBJFILE_MSYMBOLS and
4064 SYMBOL_LINKAGE_NAME.
4065 (dump_symtab_1, print_symbol, print_partial_symbols)
4066 (maintenance_check_symtabs): Use SYMBOL_LINKAGE_NAME.
4067 * symtab.h (DEPRECATED_SYMBOL_NAME): Delete.
4068 (SYMBOL_SET_LINKAGE_NAME): New.
4069 (SYMBOL_SET_NAMES): Add a comment.
4070 * tracepoint.c (set_traceframe_context, validate_actionline)
4071 (collect_symbol, scope_info): Use SYMBOL_LINKAGE_NAME for
4072 lookups and SYMBOL_PRINT_NAME for output.
4073 * typeprint.c (typedef_print): Use SYMBOL_LINKAGE_NAME.
4074 * xcoffread.c (process_xcoff_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4076 2008-08-21 Pedro Alves <pedro@codesourcery.com>
4078 * arm-tdep.c (arm_pc_is_thumb): Use obj_section_addr.
4079 * hppa-hpux-tdep.c (hppa_hpux_find_dummy_bpaddr): Likewise.
4080 * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Use
4081 obj_section_addr and obj_section_endaddr.
4082 * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Likewise.
4083 * hppabsd-tdep.c (hppabsd_find_global_pointer): Likewise.
4084 * ia64-tdep.c (ia64_find_global_pointer): Likewise.
4085 (find_extant_func_descr): Likewise.
4086 * solib-frv.c (frv_relocate_main_executable): Use
4088 * xstormy16-tdep.c (xstormy16_find_jmp_table_entry): Use
4089 obj_section_addr and obj_section_endaddr.
4091 2008-08-21 Paul N. Hilfinger <hilfinger@adacore.com>
4093 * NEWS: Amplify last entry on boolean types in Ada.
4095 2008-08-20 Daniel Jacobowitz <dan@codesourcery.com>
4097 * dwarf2read.c (die_specification, dwarf2_extension, follow_die_ref):
4098 Make the dwarf2_cu * parameter output as well as input. Update it if
4099 we follow a reference to another CU.
4100 (read_func_scope, determine_class_name, namespace_name, dwarf2_attr)
4101 (die_type, die_containing_type): Update calls to changed functions.
4102 Use the returned CU along with the returned DIE.
4103 (read_namespace): Use dwarf2_attr instead of dwarf2_extension.
4105 2008-08-20 Daniel Jacobowitz <dan@codesourcery.com>
4107 * dwarf2read.c (queue_comp_unit): Take an objfile argument. Read
4109 (process_queue): Do not read in the DIEs here.
4110 (psymtab_to_symtab_1): Update call to queue_comp_unit.
4111 (read_full_die): Do not call queue_comp_unit from here.
4112 (maybe_queue_comp_unit): New function.
4113 (follow_die_ref): Use it.
4115 2008-08-20 Daniel Jacobowitz <dan@codesourcery.com>
4117 * dwarf2read.c (struct attribute): Move earlier.
4118 (struct die_info): Change attrs to a trailing array.
4119 (dwarf_alloc_die): Take the number of attributes. Allocate space
4121 (read_full_die): Update call to dwarf_alloc_die. Do not manually
4122 allocate attributes.
4124 2008-08-20 Daniel Jacobowitz <dan@codesourcery.com>
4126 * dwarf2read.c (REF_HASH_SIZE): Delete.
4127 (struct dwarf2_cu): Replace die_ref_table with die_hash.
4128 (struct die_info): Remove next_ref.
4129 (store_in_ref_table): Remove offset argument. Rewrite to use
4130 htab_find_slot_with_hash.
4131 (die_hash, die_eq): New.
4132 (read_comp_unit): Allocate the die_hash.
4133 (read_die_and_children): Update call to store_die_ref.
4134 (follow_die_ref): Rewrite to use htab_find_with_hash.
4136 2008-08-20 Daniel Jacobowitz <dan@codesourcery.com>
4138 * dwarf2read.c (free_die_list, copy_die): Delete.
4139 (dwarf_alloc_die): Take a CU argument. Allocate the new DIE
4141 (read_full_die): Update call to dwarf_alloc_die. Allocate
4142 attributes on the CU obstack.
4143 (free_one_comp_unit): Do not call free_die_list.
4145 2008-08-20 Daniel Jacobowitz <dan@codesourcery.com>
4147 * dwarf2read.c (read_die_and_children): Ignore NULL DIEs.
4148 (read_die_and_siblings): Likewise. Do not add padding DIEs to the
4150 (read_full_die): Do not allocate DIEs for abbrev 0.
4151 (follow_die_ref): Correct error message.
4153 2008-08-20 Pedro Alves <pedro@codesourcery.com>
4155 * linespec.c (symtab_from_filename): Also throw NOT_FOUND_ERROR if
4156 there are no symbols loaded, instead of throwing a generic error.
4157 (decode_variable): Likewise.
4159 2008-08-20 Pedro Alves <pedro@codesourcery.com>
4161 * objfiles.h (struct obj_section): Remove addr and endaddr fields.
4162 (obj_section_offset, obj_section_addr, obj_section_endaddr): New
4164 * objfiles.c (add_to_objfile_sections): Don't set addr, endaddr
4165 and offset. Use size_t instead of unsigned long.
4166 (build_objfile_section_table): Use size_t instead of unsigned
4168 (objfile_relocate): Don't relocate s->addr and s->endaddr, they're
4170 (find_pc_sect_section): Use obj_section_addr and
4171 obj_section_endaddr.
4172 * symfile.c (symfile.c): Remove code that maps sections
4173 offsets in "addr" to the object's sections.
4174 * blockframe.c (find_pc_partial_function): Use obj_section_endaddr.
4175 * gcore.c (gcore_create_callback): Use obj_section_addr and
4176 obj_section_endaddr.
4177 * maint.c (print_objfile_section_info): Likewise.
4178 * printcmd.c (sym_info): Use obj_section_addr and
4179 obj_section_endaddr.
4180 * symtab.c (fixup_section): Likewise.
4182 2008-08-20 Mark Kettenis <kettenis@gnu.org>
4184 * sparc-tdep.c: Make some comments catch up with reality.
4186 2008-08-20 Vladimir Prus <vladimir@codesourcery.com>
4188 * NEWS: Mention 'set target-async'
4190 2008-08-19 Vladimir Prus <vladimir@codesourcery.com>
4192 * infrun.c (resume): If the thread is placed to the deferred step
4193 queue, mark it as running.
4195 2008-08-19 Vladimir Prus <vladimir@codesourcery.com>
4197 Make sure target supports non-stop.
4198 * infcmd.c (run_command_1, attach_command): If non-stop mode
4199 is requested, verify the target supports it.
4200 * linux-nat.c (linux_nat_supports_non_stop): New.
4201 (linux_nat_add_target): Register the above.
4202 * target.c (find_default_supports_non_stop)
4203 (target_supports_non_stop): New.
4204 (init_dummy_target): Register find_default_supports_non_stop.
4205 * target.h (struct target_ops): New field to_supports_non_stop.
4206 (target_supports_non_stop): New.
4208 2008-08-19 Pedro Alves <pedro@codesourcery.com>
4209 Vladimir Prus <vladimir@codesourcery.com>
4211 * target.c (target_async_permitted, target_async_permitted_1)
4212 (set_maintenance_target_async_permitted)
4213 (show_maintenance_target_async_permitted): New.
4214 (initialize_targets): Register 'set target-async'.
4215 * target.h (target_async_permitted): Declare.
4216 * linux-nat.c (linux_nat_async_enabled)
4217 (linux_nat_async_permitted, set_maintenance_linux_async_permitted)
4218 (show_maintenance_linux_async_permitted): Remove.
4219 (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p)
4220 (get_pending_events, linux_nat_async): Use target_async_permitted.
4221 (linux_nat_set_async_mode): Remove, moving the only used bits
4223 (linux_nat_setup_async): This.
4224 (_initialize_linux_nat): Do not register 'maint set linux-async'.
4225 Use linux_nat_setup_async.
4226 * remote.c (remote_async_permitted, remote_async_permitted_set)
4227 (set_maintenance_remote_async_permitted)
4228 (show_maintenance_remote_async_permitted): Remove.
4229 (remote_open_1, remote_terminal_inferior, remote_can_async_p)
4230 (remote_is_async_p): Use target_async_permitted.
4231 (_initialize_remote): Don't register 'main set remote-async'.
4232 * mi/mi-cmds.c (mi_cmds): Register -list-target-features.
4233 * mi/mi-cmds.h (mi_cmd_list_target_features): New.
4234 * mi/mi-main.c (mi_cmd_list_target_features): New.
4236 2008-08-19 Vladimir Prus <vladimir@codesourcery.com>
4238 * target.c (maybe_kill_then_attach)
4239 (maybe_kill_then_create_inferior): Remove.
4240 (update_current_target): Do not default to_attach,
4241 to_create_inferiour, to_is_async_p.
4243 2008-08-19 Paul N. Hilfinger <hilfinger@adacore.com>
4245 Changes for supporting boolean types in debugging data.
4246 * ada-lang.c (discrete_type_high_bound,discrete_type_low_bound): Change
4247 API to return LONGEST values rather than struct values.
4248 (ada_evaluate_subexp): Change to use new API of discrete_type_low_bound
4249 and discrete_type_high_bound.
4250 (to_fixed_range_type): Create a range type in cases where
4251 argument is base type and its limits are representable as ints.
4252 (ada_is_modular_type): Correct so that base type must be integral.
4253 * ada-lex.l (TRUEKEYWORD,FALSEKEYWORD): Make 'true' and 'false'
4254 keywords when they appear alone, since we are phasing out
4255 direct representation of these identifiers in debugging data.
4256 * ada-exp.y: Define 'true' and 'false' as primaries.
4257 (type_boolean): New function.
4258 (type_int,type_long,type_long_long,type_floattype_double)
4259 (type_long_double): Remove uses of current_gdbarch for consistency
4261 (write_int): Change comment to indicate that it might write boolean
4263 * ada-typeprint.c (ada_print_type): Print '(false, true)' for boolean
4264 type, since will no longer be represented as enumerated type in
4266 * ada-valprint.c (print_optional_low_bound): Handle boolean case
4268 * NEWS: Note support boolean types.
4270 2008-08-18 Pedro Alves <pedro@codesourcery.com>
4272 * bsd-uthread.c (bsd_uthread_close): New.
4273 (bsd_uthread_deactivate): Don't cleanup here, just unpush the
4275 (bsd_uthread_solib_loaded): Fix typo.
4276 (bsd_uthread_target): Register bsd_uthread_close.
4278 2008-08-18 Pedro Alves <pedro@codesourcery.com>
4280 * corelow.c (core_open): Assume there was no upper layer left
4281 behind from a previous inferior.
4282 * target.c (pop_all_targets): Rename to ...
4283 (pop_all_targets_above): ... this. Add a target stratum
4284 parameter. Use it instead of hardcoding the dummy_stratum.
4285 (pop_all_targets): New, defer to pop_all_targets_above.
4286 (target_preopen): Use pop_all_targets_above.
4287 * target.h (pop_all_targets_above): Declare.
4289 2008-08-18 Pedro Alves <pedro@codesourcery.com>
4291 * gdbthread.h (thread_change_ptid): Declare.
4292 * infrun.c (infrun_thread_ptid_changed): New.
4293 (_initialize_infrun): Attach infrun_thread_ptid_changed to the
4294 thread_ptid_changed observer.
4295 * regcache.c (regcache_thread_ptid_changed): New.
4296 (_initialize_regcache): Attach regcache_thread_ptid_changed to the
4297 thread_ptid_changed observer.
4298 * thread.c (thread_change_ptid): New.
4300 2008-08-18 Tom Tromey <tromey@redhat.com>
4302 * symfile.c (reread_symbols): Update.
4303 * solib-sunos.c (allocate_rt_common_objfile): Update.
4304 * objfiles.c (allocate_objfile): Update.
4305 * objfiles.h (struct objfile) <md, mmfd, deprecated_obj_private>:
4308 2008-08-18 Tom Tromey <tromey@redhat.com>
4310 * gdbtypes.c (copy_type_recursive): Allocate 'stored' on objfile's
4313 2008-08-18 Daniel Jacobowitz <dan@codesourcery.com>
4315 * rs6000-tdep.c (struct rs6000_framedata): Add gpr_mask, used_bl,
4317 (rs6000_in_function_epilogue_p): Check for bctr.
4318 (skip_prologue): Initialize lr_register. Set lr_reg to a register
4319 number. Set gpr_mask and used_bl. Continue scanning while some
4320 expected registers are not saved. Set lr_register if LR is not
4322 (rs6000_frame_cache): Handle gpr_mask and lr_register.
4324 2008-08-17 Tom Tromey <tromey@redhat.com>
4327 * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): New macros.
4328 (ep_find_event_name_end): Remove.
4329 (catch_fork_temporary, catch_vfork_temporary,
4330 catch_fork_permanent, catch_vfork_permanent): New constants.
4331 (catch_vfork, catch_fork): Remove.
4332 (catch_fork_command_1): Add 'command' argument. Remove
4333 'fork_kind' and 'tempflag'. Handle NULL 'arg'. Update switch for
4335 (catch_exec_command_1): Add 'command' argument; remove
4336 'tempflag'. Handle NULL 'arg'.
4337 (catch_load_command_1): Likewise.
4338 (catch_unload_command_1): Likewise.
4339 (catch_ada_exception_command): Likewise.
4340 (catch_assert_command): Likewise.
4341 (catch_catch_command): New function.
4342 (catch_throw_command): Likewise.
4343 (catch_command_1): Remove.
4344 (catch_command): Just call error.
4345 (tcatch_command): Likewise.
4346 (catch_cmdlist): New global.
4347 (tcatch_cmdlist): Likewise.
4348 (add_catch_command): New function.
4349 (_initialize_breakpoint): Create "catch" and "tcatch" as prefix
4350 commands. Create all catch sub-commands.
4352 2008-08-17 Pedro Alves <pedro@codesourcery.com>
4354 * gdbthread.h: Add comments.
4355 * stack.c (get_selected_block): Return 0 on an exited thread.
4356 * top.c (execute_command): Check for is_stopped, not !is_running.
4357 * event-top.c (command_handler): Likewise.
4359 2008-08-16 Pedro Alves <pedro@codesourcery.com>
4361 * mi/mi-main.c (mi_cmd_exec_next, mi_cmd_exec_next_instruction)
4362 (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
4363 (mi_cmd_exec_finish): Remove "return".
4365 2008-08-16 Pedro Alves <pedro@codesourcery.com>
4367 * target.h (pop_all_targets): Declare.
4368 * target.c (pop_all_targets): New.
4369 * top.c (quit_target): Pop all targets instead of just closing the
4372 2008-08-16 Vladimir Prus <vladimir@codesourcery.com>
4373 Thiago Jung Bauermann <bauerman@br.ibm.com>
4375 * cli-script.c (read_next_line): Add parse_commands argument.
4376 (recurse_read_control_structure): Adapt to new read_next_line
4378 (read_command_lines): Add parse_commands argument.
4379 (define_command): Adapt to new read_command_lines signature.
4380 (document_command): Likewise.
4381 * breakpoint.c (commands_command): Likewise.
4382 * defs.h (read_command_lines): Adjust function prototype.
4384 2008-08-16 Paul N. Hilfinger <hilfinger@adacore.com>
4386 * ada-lang.c (pos_atr): Account for the possibility that the
4387 argument may be a reference.
4389 2008-08-16 Paul N. Hilfinger <hilfingr@adacore.com>
4391 * xcoffread.c (scan_xcoff_symtab): Do not include global symbols
4392 ('F' format) for @FIX names generated by the loader, retaining only
4393 the minimal symbols (and no partial symbol tables) for these names.
4394 Fixes warning messages about symbols that are found in partial
4395 symbol tables, but not full symbol tables.
4397 2008-08-16 Pedro Alves <pedro@codesourcery.com>
4399 * infrun.c (fetch_inferior_event): Only call normal_stop if not
4402 2008-08-15 Luis Machado <luisgpm@br.ibm.com>
4404 * rs6000-tdep: Include "features/rs6000/powerpc-vsx32.c".
4405 Include "features/rs6000/powerpc-vsx64.c".
4406 (ppc_supply_vsxregset): New function.
4407 (ppc_collect_vsxregset): New function.
4408 (IS_VSX_PSEUDOREG): New macro.
4409 (IS_EFP_PSEUDOREG): New macro.
4410 (vsx_register_p): New function.
4411 (ppc_vsx_support_p): New function.
4412 (rs6000_builtin_type_vec128): New function.
4413 (rs6000_register_name): Hide upper halves of vs0~vs31. Return
4414 correct names for VSX registers and EFPR registers.
4415 (rs6000_pseudo_register_type): Return correct types for VSX
4417 (rs6000_pseudo_register_reggroup_p): Return correct group for
4418 VSX and EFPR registers.
4419 (ppc_pseudo_register_read): Rename to dfp_pseudo_register_read.
4420 (ppc_pseudo_register_write): Rename to dfp_pseudo_register_write.
4421 (vsx_pseudo_register_read): New function.
4422 (vsx_pseudo_register_write): New function.
4423 (efpr_pseudo_register_read): New function.
4424 (efpr_pseudo_register_write): New function.
4425 (rs6000_pseudo_register_read): Call new VSX and EFPR read functions.
4426 (rs6000_pseudo_register_write): Call new VSX and EFPR write functions.
4427 (rs6000_gdbarch_init): Declare have_vsx.
4428 Initialize new upper half VSX registers.
4429 Initialize VSX-related and EFPR-related pseudo-registers variables.
4430 Adjust the number of pseudo registers accordingly.
4432 * ppc-linux-nat.c: Define PTRACE_GETVSXREGS, PTRACE_SETVSXREGS
4434 (gdb_vsxregset_t): New type.
4435 (have_ptrace_getsetvsxregs): New variable.
4436 (fetch_vsx_register): New function.
4437 (fetch_register): Handle VSX registers.
4438 (fetch_vsx_registers): New function.
4439 (fetch_ppc_registers): Handle VSX registers.
4440 (store_ppc_registers): Handle VSX registers.
4441 (store_vsx_register): New function.
4442 (store_register): Handle VSX registers.
4443 (store_vsx_registers): New function.
4444 (ppc_linux_read_description): Handle VSX-enabled inferiors.
4445 (gdb_vsxregset_t): New type.
4446 (supply_vsxregset): New function.
4447 (fill_vsxregset): New function.
4449 * ppc-tdep.h (vsx_register_p): New prototype.
4450 (vsx_support_p): New prototype.
4451 (ppc_vsr0_regnum): New variable.
4452 (ppc_vsr0_upper_regnum): Likewise.
4453 (ppc_efpr0_regnum): Likewise.
4454 (ppc_builtin_type_vec128): New type.
4455 (ppc_num_vsrs): New constant.
4456 (ppc_num_vshrs): New constant.
4457 (ppc_num_efprs): Likewise.
4458 Define POWERPC_VEC_VSX PPC_VSR0_UPPER_REGNUM and PPC_VSR31_UPPER_REGNUM.
4459 (ppc_supply_vsxregset): New prototype.
4460 (ppc_collect_vsxregset): New prototype.
4462 * ppc-linux-tdep.c: Include "features/rs6000/powerpc-vsx32l.c"
4463 Include "features/rs6000/powerpc-vsx64l.c".
4464 (_initialize_ppc_linux_tdep): Initialize VSX-enabled targets.
4465 (ppc_linux_regset_sections): Add new ".reg-ppc-vsx" field.
4466 (ppc32_linux_vsxregset): New 32-bit VSX-enabled regset.
4467 (ppc_linux_regset_from_core_section): Handle VSX core section.
4468 (ppc_linux_core_read_description): Support VSX-enabled core files.
4470 * ppc-linux-tdep.h: Declare *tdesc_powerpc_vsx32l
4471 Declare tdesc_powerpc_vsx64l
4473 * corelow.c (get_core_register_section): Support VSX-enabled
4476 * features/rs6000/power-vsx.xml: New VSX descriptions.
4477 * features/rs6000/powerpc-vsx32.xml: New file.
4478 * features/rs6000/powerpc-vsx32l.xml: New file.
4479 * features/rs6000/powerpc-vsx64.xml: New file.
4480 * features/rs6000/powerpc-vsx64l.xml: New file.
4481 * features/rs6000/powerpc-vsx32.c: New file (generated).
4482 * features/rs6000/powerpc-vsx32l.c: New file (generated).
4483 * features/rs6000/powerpc-vsx64.c: New file (generated).
4484 * features/rs6000/powerpc-vsx64l.c: New file (generated).
4485 * features/Makefile: Updated with new descriptions.
4486 * regformats/rs6000/powerpc-vsx32l.dat: New file (generated).
4487 * regformats/rs6000/powerpc-vsx64l.dat: New file (generated).
4489 2008-08-15 Vladimir Prus <vladimir@codesourcery.com>
4491 * ia64-linux.nat (_initialize_ia64_linux_nat): Don't
4492 call linux_target twice.
4494 2008-08-14 Aleksandar Ristovski <aristovski@qnx.com>
4496 * nto-tdep.c (lm_info): Updated struct lm_info definition from
4498 (LM_ADDR): Use l_addr if available; if not, use link map and set
4501 2008-08-14 Tom Tromey <tromey@redhat.com>
4503 * macrocmd.c (macro_define_command): Check for NULL argument.
4504 (macro_undef_command): Likewise.
4506 2008-08-14 Pedro Alves <pedro@codesourcery.com>
4508 * infcmd.c (continue_1): Add an ERROR_NO_INFERIOR call.
4510 2008-08-13 Pedro Alves <pedro@codesourcery.com>
4512 * breakpoint.c (always_inserted_auto, always_inserted_on)
4513 (always_inserted_off, always_inserted_enums): New.
4514 (always_inserted_mode): Change type to char* and point to
4515 always_inserted_auto.
4516 (show_always_inserted_mode): In auto mode, also show the current
4517 effect of the option.
4518 (breakpoints_always_inserted_mode): Adjust for the new auto mode.
4519 (_initialize_breakpoint): Make the "set breakpoints
4520 always-inserted" command an enum command. Extend help to describe
4523 2008-08-13 Ulrich Weigand <uweigand@de.ibm.com>
4525 * spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status
4526 query valid) bit. Ignore bits outside the condition field.
4527 (info_spu_proxydma_command): Ignore bits outside the field.
4529 2008-08-12 Michael Snyder <msnyder@vmware.com>
4531 * MAINTAINERS: Update my email address.
4533 2008-08-12 Ulrich Weigand <uweigand@de.ibm.com>
4535 * ppc-linux-nat.c (ppc_linux_get_hwcap): Really get AT_HWCAP.
4537 2008-08-12 Pedro Alves <pedro@codesourcery.com>
4539 Add no-ack mode to the remote protocol --- optionally stop ACKing
4540 packets and responses when we have a reliable communication
4543 Based on Apple's GDB, by Jason Molenda <jmolenda@apple.com>
4545 * remote.c (struct remote_state): Add noack_mode field.
4546 (PACKET_QStartNoAckMode): New.
4547 (remote_start_remote): Don't any outstanding packet here.
4548 (remote_open_1): Clear noack_mode. Ack any outstanding packet
4549 here. Activate noack mode if requested.
4550 (remote_protocol_features): Add QStartNoAckMode.
4552 (putpkt_binary): Don't send ack in noack mode.
4553 (read_frame): Don't recompute the checksum in noack mode.
4554 (getpkt_sane): Skip sending ack if in noack mode.
4555 (_initialize_remote): Add set/show remote noack mode.
4556 * NEWS: Note the new features.
4558 2008-08-11 Kevin Buettner <kevinb@redhat.com>
4560 * rs6000-tdep.c (BL_MASK, BL_INSTRUCTION, BL_DISPLACEMENT_MASK):
4562 (rs6000_skip_main_prologue): New function.
4563 (rs6000_gdb_arch_init): Register rs6000_skip_main_prologue.
4565 2008-08-11 Sandra Loosemore <sandra@codesourcery.com>
4567 * MAINTAINERS (Write After Approval): Add self.
4569 2008-08-11 Stan Shebs <stan@codesourcery.com>
4572 * disasm.c (gdb_disassemble_info): Set endian_code.
4573 * gdbarch.sh (gdbarch_info): New field byte_order_for_code.
4574 * gdbarch.h, gdbarch.c: Regenerate.
4575 * arch-utils.c (initialize_current_architecture): Set the
4576 default byte_order_for_code.
4577 (gdbarch_info_init): Ditto.
4578 (gdbarch_info_fill): Ditto.
4579 * arm-tdep.c (SWAP_INT, SWAP_SHORT): New macros.
4580 (thumb_analyze_prologue): Swap halfword if code endianness is
4581 different from general endianness.
4582 (arm_skip_prologue): Similarly.
4583 (arm_scan_prologue): Ditto.
4584 (thumb_get_next_pc): Ditto.
4585 (arm_get_next_pc): Ditto.
4586 (arm_gdbarch_init): Set byte_order_for_code from BE8 flag,
4587 choose correct endianness for breakpoints.
4589 2008-08-10 Pedro Alves <pedro@codesourcery.com>
4591 * bsd-kvm.c: Include "gdbthread.h".
4592 (bsd_kvm_ptid): New.
4593 (bsd_kvm_open): Add a main thread.
4594 (bsd_kvm_close): Delete it.
4595 (bsd_kvm_thread_alive): New.
4596 (bsd_kvm_pid_to_str): New.
4597 (bsd_kvm_add_target): Register bsd_kvm_thread_alive and
4599 (bsd_kvm_add_target): Initialize bsd_kvm_ptid.
4601 2008-08-09 Pedro Alves <pedro@codesourcery.com>
4603 * buildsym.c (start_subfile): Properly cast sentinel in concat
4605 * cp-name-parser.y: Include "config.h".
4606 * xml-tdesc.c (fetch_xml_from_file): Properly cast sentinel in
4608 * gdb_select.h: Include sys/time.h if sys/select.h is not
4611 2008-08-09 Pedro Alves <pedro@codesourcery.com>
4613 * go32-nat.c: Include "gdbthread.h".
4614 (go32_stop, go32_kill_inferior): Delete the main thread.
4615 (go32_create_inferior): Add it.
4616 (go32_thread_alive, go32_pid_to_str): New.
4617 (init_go32_ops): Register go32_thread_alive and go32_pid_to_str.
4619 2008-08-09 Pedro Alves <pedro@codesourcery.com>
4621 * go32-nat.c (fetch_register, store_register): Pass the regcache
4622 gdbarch to i386_fp_regnum_p and i386_fpc_regnum_p.
4623 (go32_xfer_memory): Change type of myaddr parameter to gdb_byte.
4624 (struct seg_descr, struct seg_descr): pack the whole struct
4625 instead of each member individually.
4627 2008-08-09 Andreas Schwab <schwab@suse.de>
4629 * python/python.c (_initialize_python): Use unabbreviated commands
4632 2008-08-09 Daniel Jacobowitz <dan@codesourcery.com>
4634 * Makefile.in (stamp-h): Also create .deps.
4636 2008-08-09 Tom Tromey <tromey@redhat.com>
4638 * Makefile.in (generated_files): Add GNULIB_H.
4640 2008-08-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
4642 * solib-pa64.c (pa64_solib_create_inferior_hook): Don't set
4643 DT_HP_DEBUG_PRIVATE. Add warning if DT_HP_DEBUG_PRIVATE is not set.
4645 (pa64_current_sos): Remove map private warning warning.
4646 * solib-som.c: Include string.h and sys/utsname.h.
4647 (get_hpux_major_release): New function.
4648 (som_solib_create_inferior_hook): Read dynamic linker header. Warn
4649 about shared library private mapping on HP-UX 11 and later. Only force
4650 private mapping of shared libraries on HP-UX 10 and earlier.
4651 (link_map_start): Delete warning.
4653 2008-08-09 Xuepeng Guo <xuepeng.guo@intel.com>
4654 H.J. Lu <hongjiu.lu@intel.com>
4655 Mark Kettenis <kettenis@gnu.org>
4657 * amd64-tdep.c (amd64_frame_cache): Add saved_sp_reg.
4658 (amd64_init_frame_cache): Initialize saved_sp_reg.
4659 (amd64_analyze_stack_align): New.
4660 (amd64_analyze_prologue): Call it.
4661 (amd64_frame_cache): Use saved_sp_reg if it is invalid. Don't set
4662 %rip to 8 when halfway aligning the stack.
4664 * amd64-tdep.h (amd64_regnum): Add AMD64_R9_REGNUM to
4667 * i386-tdep.c (i386_frame_cache): Remove stack_align. Add
4669 (i386_alloc_frame_cache): Remove stack_align. Initialize
4671 (i386_analyze_stack_align): Rewrite.
4672 (i386_frame_cache): Use saved_sp_reg if it is valid.
4674 2008-08-09 Ulrich Weigand <uweigand@de.ibm.com>
4676 * target.c: Include "solib.h".
4677 (target_pre_inferior): Call no_shared_libraries.
4678 * infcmd.c (run_command_1): Do not call objfile_purge_solibs
4680 (attach_command): Do not call clear_solib.
4682 2008-08-09 Mark Kettenis <kettenis@gnu.org>
4684 * i386obsd-nat.c (i386obsd_supply_pcb): Supply the right bytes for
4687 2008-08-08 Tom Tromey <tromey@redhat.com>
4689 * Makefile.in (python.o): Remove dependencies. Use COMPILE and
4691 (python-utils.o): Likewise.
4693 2008-08-08 Andreas Schwab <schwab@suse.de>
4695 * corefile.c (_initialize_core): Remove spurious paren from set
4696 gnutarget doc string.
4698 2008-08-08 Luis Machado <luisgpm@br.ibm.com>
4700 * ppc-linux-nat.c: Include "auxv.h" and "elf/common.h".
4701 Define PPC_FEATURE_BOOKE.
4702 (ppc_linux_get_hwcap): New function.
4703 (ppc_linux_region_ok_for_hw_watchpoint): Handle PowerPC 440
4704 4-bytes alignment restrictions.
4705 (ppc_linux_insert_watchpoint): Handle PowerPC 440-specific
4706 positioning of the read/write flags.
4707 (ppc_linux_watchpoint_addr_within_range): Handle PowerPC 440
4710 2008-08-08 Pedro Alves <pedro@codesourcery.com>
4712 Use ptid_t.tid to store thread ids instead of ptid_t.pid.
4714 * win32-nat.c (win32_add_thread): Change thread argument type to
4716 (win32_add_thread): Adjust.
4717 (win32_delete_thread): Change thread argument type to ptid_t.
4719 (win32_fetch_inferior_registers, win32_store_inferior_registers)
4720 (win32_resume, get_win32_debug_event, get_win32_debug_event)
4721 (win32_wait, win32_pid_to_exec_file, win32_pid_to_str): Adjust.
4722 (init_win32_ops): Put to_magic last.
4723 (win32_win32_thread_alive): Adjust.
4725 2008-08-08 Pedro Alves <pedro@codesourcery.com>
4727 * remote-m32r-sdi.c (m32r_thread_alive, m32r_pid_to_str): New.
4728 (init_m32r_ops): Register m32r_thread_alive and m32r_pid_to_str.
4730 2008-08-08 Pedro Alves <pedro@codesourcery.com>
4732 * remote-m32r-sdi.c: Include "gdbthread.h".
4733 (remote_m32r_ptid): New.
4734 (m32r_close): Delete the main thread.
4735 (m32r_resume): Set inferior_ptid toA remote_m32r_ptid. Add the
4737 (m32r_kill, m32r_load, sdireset_command): Delete the main thread.
4738 (_initialize_remote_m32r): Initialize remote_m32r_ptid.
4740 2008-08-07 Tom Tromey <tromey@redhat.com>
4741 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4743 * aclocal.m4, configure: Rebuild.
4744 * configure.in: Call ZW_CREATE_DEPDIR,
4745 ZW_PROG_COMPILER_DEPENDENCIES, AC_PROG_MAKE_SET.
4746 (MAKE, GMAKE): New substs.
4747 * acinclude.m4: Include depstand.m4.
4748 * Makefile.in (DEPMODE, DEPDIR, COMPILE.post, COMPILE.pre,
4749 COMPILE, POSTCOMPILE, depcomp): New variables.
4750 Remove all _h variables.
4751 Remove many .o targets.
4752 ($(srcdir)/copying.c): avoid backslash-newline after comment
4753 sign (@maintainer_mode_true@).
4754 (HFILES_NO_SRCDIR): Regenerate.
4755 (generated_files): New variable.
4756 (all_gdbtk_cflags): Likewise.
4758 (init.o, version.o, copying.o): Remove.
4759 (distclean): Remove DEPDIR.
4760 (test-cp-name-parser.o, hpux-thread.o, main.o, monitor.o,
4761 printcmd.o, procfs.o, v850ice.o): Rewrite.
4762 (cli-cmds.o, cli-decode.o, cli-dump.o, cli-interp.o, cli-logging.o,
4763 cli-script.o, cli-setshow.o, cli-utils.o): Likewise.
4764 (gdbtk.o, gdbtk-bp.o, gdbtk-cmds.o, gdbtk-hooks.o, gdbtk-interp.o,
4765 gdbtk-main.o, gdbtk-register.o, gdbtk-stack.o, gdbtk-varobj.o,
4766 gdbtk-wrapper.o): Likewise.
4767 (mi-cmd-break.o, mi-cmd-disas.o, mi-cmd-env.o, mi-cmd-file.o,
4768 mi-cmds.o, mi-cmd-stack.o, mi-cmd-target.o, mi-cmd-var.o,
4769 mi-console.o, mi-getopt.o, mi-interp.o, mi-main.o, mi-out.o,
4770 mi-parse.o, mi-symbol-cmds.o, mi-common.o, signals.o, tui.o,
4771 tui-command.o, tui-data.o, tui-disasm.o, tui-file.o, tui-hooks.o,
4772 tui-interp.o, tui-io.o, tui-layout.o, tui-main.o, tui-out.o,
4773 tui-regs.o, tui-source.o, tui-stack.o, tui-win.o, tui-windata.o,
4774 tui-wingeneral.o, tui-winsource.o): Likewise.
4775 (all_object_files): New variable.
4776 ($(all_object_files)): New target.
4777 Include dependency files, when using GNU Make.
4779 2008-08-07 Ulrich Weigand <uweigand@de.ibm.com>
4781 * spu-tdep.c (info_spu_dma_cmdlist): Only show entries with
4782 the valid bit set. Ensure display order respects partial
4783 order defined by dependency bits.
4785 2008-08-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
4787 * solib-pa64.c (read_dld_descriptor): Return zero if load map is not
4790 2008-08-06 Mark Kettenis <kettenis@gnu.org>
4792 * i386obsd-nat.c (i386obsd_supply_pcb): Adjust for changes in
4795 2008-08-06 Vladimir Prus <vladimir@codesourcery.com>
4796 Tom Tromey <tromey@redhat.com>
4797 Thiago Jung Bauermann <bauerman@br.ibm.com>
4798 Doug Evans <dje@google.com>
4800 * Makefile.in (SUBDIR_PYTHON_OBS, SUBDIR_PYTHON_SRCS,
4801 SUBDIR_PYTHON_DEPS, SUBDIR_PYTHON_LDFLAGS, SUBDIR_PYTHON_CFLAGS,
4802 PYTHON_CFLAGS): New.
4803 (python_h, python_internal_h): New.
4804 (cli-script.o): Depend on python.h
4805 (python.o, python-utils.o): New.
4806 * cli/cli-script.c (print_command_lines): Handle python_control.
4807 (execute_control_command): Handle python_control.
4808 (execute_control_command_untraced): New function.
4809 (while_command): Call execute_control_command_untraced.
4810 (if_command): Likewise.
4811 (get_command_line): Remove static attribute.
4812 (read_next_line): Handle "python".
4813 (recurse_read_control_structure): Handle python_control.
4814 (read_command_lines): Handle python_control.
4816 * cli/cli-script.h (get_command_line): Add prototype.
4817 (execute_control_command_untraced): Likewise.
4818 * configure.ac: Add --with-python.
4819 * defs.h (enum command_control_type) <python_control>: New
4821 * python/python-internal.h: New file.
4822 * python/python.c: New file.
4823 * python/python.h: New file.
4824 * python/python-utils.c: New file.
4825 * NEWS: Mention Python scripting support and its new commands.
4827 2008-08-06 Ulrich Weigand <uweigand@de.ibm.com>
4829 * spu-tdep.c (spu_gdbarch_init): Call set_gdbarch_frame_red_zone_size.
4831 2008-08-06 Phil Muldoon <pmuldoon@redhat.com>
4833 * MAINTAINERS (Write After Approval): Add self.
4835 2008-08-06 Phil Muldoon <pmuldoon@redhat.com>
4837 * breakpoint.c (hw_breakpoint_used_count): Use breakpoint_enabled.
4838 (insert_breakpoint_locations): Likewise.
4840 2008-08-05 Phil Muldoon <pmuldoon@redhat.com>
4842 * breakpoint.c (create_longjmp_breakpoint): Remove unused struct
4844 (set_longjmp_breakpoint): Likewise.
4846 2008-08-04 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
4849 * solib-pa64.c: Only compile if both HAVE_ELF_HP_H and __LP64__ are
4852 2008-08-05 Tom Tromey <tromey@redhat.com>
4854 * bcache.c (deprecated_bcache_added): Initialize obstack.
4855 (bcache_xmalloc): Don't initialize obstack.
4856 (bcache_xfree): Conditionally free obstack.
4857 (bcache_memory_used): Update.
4859 2008-08-05 Tom Tromey <tromey@redhat.com>
4861 * symfile.c (add_psymbol_to_bcache): Return a const pointer. Use
4863 (append_psymbol_to_list): Accept a const pointer.
4864 (add_psymbol_to_list): Fix const correctness.
4865 * bcache.h: (deprecated_bcache_added, deprecated_bcache): Remove.
4866 (bcache_full): Declare.
4867 * bcache.c (bcache_data, deprecated_bcache): Remove.
4868 (bcache): Use bcache_full.
4869 (bcache_full): Rename from deprecated_bcache_added. Change return
4872 2008-08-04 Stan Shebs <stan@codesourcery.com>
4874 * solib-svr4.c (BKPT_AT_SYMBOL): Remove, always defined.
4875 (bkpt_names): Remove SOLIB_BKPT_NAME, never defined.
4876 (enable_break): Remove test of BKPT_AT_SYMBOL.
4878 2008-08-02 Keith Seitz <keiths@redhat.com>
4880 * acinclude.m4: Include ../config/tcl.m4 to pick up
4881 standard Tcl configury bits.
4882 Remove all Tcl, Tk, Itcl, Itk, etc definitions.
4883 * configure.ac: Don't check if ../itcl exists when building
4884 gdbtk. It could be installed.
4885 Rewrite gdbtk configury to allow for using system-supplied
4886 Tcl and Tk. Gdbtk no longer requires build-time access to
4888 * Makefile.in: Remove everything related to itcl and itk.
4889 Rewrite the Tcl bits for gdbtk to correspond to rewrite of
4891 Remove v850ice.o build rule.
4892 (ALL_TCL_CFLAGS): New convenience defintion. Change all
4893 gdbtk sources to use it.
4894 * configure: Regenerate.
4896 2008-07-31 Stan Shebs <stan@codesourcery.com>
4898 * coffread.c (coff_symtab_read): Remove FUNCTION_EPILOGUE_SIZE.
4900 2008-07-30 Stan Shebs <stan@codesourcery.com>
4902 * objfiles.c (TARGET_KEEP_SECTION): Remove.
4903 (add_to_objfile_sections): Remove use.
4905 2008-07-29 Tom Tromey <tromey@redhat.com>
4907 * cli/cli-decode.c (lookup_cmd_1): Use memcpy.
4908 (lookup_cmd_composition): Likewise.
4910 2008-07-29 Tom Tromey <tromey@redhat.com>
4912 * cli/cli-cmds.c (edit_command): Remove unused variables. Delete
4913 dead code. Fix indentation.
4915 2008-07-29 Stan Shebs <stan@codesourcery.com>
4917 * main.c (captured_main): Remove long-unused #if 0 blocks.
4919 2008-07-28 Tom Tromey <tromey@redhat.com>
4921 * annotate.h (deprecated_annotate_starting_hook): Remove.
4922 (deprecated_annotate_stopped_hook): Remove.
4923 (deprecated_annotate_exited_hook): Remove.
4924 * Makefile.in (annotate.o): Depend on observer_h.
4925 * top.c (deprecated_delete_breakpoint_hook): Remove.
4926 (deprecated_create_breakpoint_hook): Likewise.
4927 (deprecated_modify_breakpoint_hook): Likewise.
4928 * interps.c (clear_interpreter_hooks): Update for removed hooks.
4929 * breakpoint.c (mention): Don't call removed hook.
4930 (delete_breakpoint): Likewise.
4931 (disable_breakpoint): Likewise.
4932 (do_enable_breakpoint): Likewise.
4933 * annotate.c: Include observer.h.
4934 (breakpoint_changed): Change type of argument.
4935 (_initialize_annotate): Register observers.
4936 (deprecated_annotate_starting_hook): Remove.
4937 (deprecated_annotate_stopped_hook): Remove.
4938 (deprecated_annotate_exited_hook): Remove.
4939 (annotate_starting): Update for hook removal.
4940 (annotate_stopped): Likewise.
4941 (annotate_exited): Likewise.
4942 * defs.h (deprecated_delete_breakpoint_hook): Remove.
4943 (deprecated_create_breakpoint_hook): Likewise.
4944 (deprecated_modify_breakpoint_hook): Likewise.
4946 2008-07-28 Tom Tromey <tromey@redhat.com>
4948 * main.c (captured_main): Don't use BEFORE_MAIN_LOOP_HOOK.
4950 2008-07-27 Daniel Jacobowitz <dan@codesourcery.com>
4952 * configure.ac: Check for the GNU/Linux ptrace signature.
4953 * configure: Regenerated.
4955 2008-07-27 Daniel Jacobowitz <dan@codesourcery.com>
4957 * linux-nat.c (resume_callback): Add more debugging output.
4958 (linux_nat_has_pending_sigint): New function, based on
4959 linux_nat_has_pending.
4960 (set_ignore_sigint, maybe_clear_ignore_sigint): New functions.
4961 (stop_wait_callback): Remove flush_mask handling. Honor
4962 ignore_sigint. Call maybe_clear_ignore_sigint. Pass NULL
4964 (linux_nat_has_pending, flush_callback): Remove.
4965 (linux_nat_filter_event): Check for ignore_sigint.
4966 (linux_nat_wait): Remove flush_mask support and call to
4967 flush_callback. Use set_ignore_sigint and maybe_clear_ignore_sigint.
4968 * linux-nat.h (struct lwp_info): Add ignore_sigint field.
4970 2008-07-27 Daniel Jacobowitz <dan@codesourcery.com>
4972 * linux-nat.c (count_events_callback, select_event_lwp_callback): Only
4973 report events from resumed threads.
4975 2008-07-27 Daniel Jacobowitz <dan@codesourcery.com>
4977 * mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
4978 (mips_linux_init_abi): Set tdep->syscall_next_pc.
4979 * mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
4981 (mips32_next_pc): Handle the syscall instruction.
4982 * mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
4983 from mips-tdep.c. Add syscall_next_pc to gdbarch_tdep.
4985 2008-07-26 Tom Tromey <tromey@redhat.com>
4988 * valops.c (value_struct_elt): Treat function-valued field as a
4991 2008-07-26 Tom Tromey <tromey@redhat.com>
4994 * macroexp.c (get_punctuator) <punctuators>: Rearrange to put
4995 longer tokens first.
4997 2008-07-26 Vladimir Prus <vladimir@codesourcery.com>
5000 * cli/cli-decode.h (CMD_ASYNC_OK, set_cmd_async_ok)
5001 (get_cmd_async_ok): Remove.
5002 * cli/cli-decode.c (set_cmd_async_ok, get_cmd_async_ok): Remove.
5003 * cli/cli-cmds.c (init_cli_cmds): Don't use set_cmd_async_ok.
5004 * infcmd.c (_initialize_infcmd): Likewise.
5005 * thread.c (_initialize_thread): Likewise.
5007 2008-07-25 Joseph Myers <joseph@codesourcery.com>
5009 * mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
5010 128-bit long doubles in even-odd pairs of FPRs. Do not
5011 right-align float arguments for big-endian.
5012 (mips_n32n64_return_value): Apply return value convention for
5013 structs containing one or two floating-point values to soft-float
5014 as well as hard-float. Handle 128-bit long doubles in such
5016 (mips_o32_push_dummy_call): Only skip one integer register for a
5017 float argument passed in an FPR.
5019 2008-07-25 Tom Tromey <tromey@redhat.com>
5021 * tui/tui-hooks.c: Include observer.h.
5022 (tui_event_default, tui_old_event_hooks, tui_event_hooks):
5024 (tui_bp_created_observer, tui_bp_deleted_observer,
5025 tui_bp_modified_observer): New globals.
5026 (tui_install_hooks): Use observers, not events.
5027 (tui_remove_hooks): Likewise.
5028 * mi/mi-cmd-break.c: Include observer.h, not gdb-events.h.
5029 (mi_breakpoint_observers_installed, mi_can_breakpoint_notify): New
5031 (breakpoint_notify): Check mi_can_breakpoint_notify.
5032 (breakpoint_hooks): Remove.
5033 (mi_cmd_break_insert): Attach observers. Don't use events.
5034 * tracepoint.c: Include observer.h, not gdb-events.h.
5035 (tracepoint_operation, trace_pass_command): Notify observer.
5036 * interps.c: Don't include gdb-events.h.
5037 (clear_interpreter_hooks): Don't call clear_gdb_event_hooks.
5038 * gdbarch.c: Rebuild.
5039 * gdbarch.sh: Emit include for observer.h, not gdb-events.h.
5040 (deprecated_current_gdbarch_select_hack): Notify observer.
5041 * breakpoint.h: Don't include gdb-events.h.
5042 * breakpoint.c: Don't include gdb-events.h.
5043 (condition_command): Notify observer.
5044 (commands_command): Likewise.
5045 (commands_from_control_command): Likewise.
5046 (mention, delete_breakpoint, set_ignore_count): Likewise.
5047 (disable_breakpoint, do_enable_breakpoint): Likewise.
5048 * Makefile.in (gdb_events_h): Remove.
5049 (breakpoint_h): Update.
5050 (COMMON_OBS): Remove gdb-events.o.
5051 (gdb-events.o): Remove.
5052 (breakpoint.o, gdbarch.o, interps.o, tracepoint.o, gdbtk-bp.o,
5053 gdbtk-hooks.o, mi-cmd-break.o, tui-hooks.o): Update.
5054 * gdb-events.c: Remove.
5055 * gdb-events.h: Remove.
5056 * gdb-events.sh: Remove.
5058 2008-07-24 Pedro Alves <pedro@codesourcery.com>
5060 * remote.c (remote_threads_extra_info): Don't query the remote
5061 server about info on the internally added main thread.
5063 2008-07-24 Aleksandar Ristovski <aristovski@qnx.com>
5065 * nto-procfs.c (procfs_attach): Populate initial thread list.
5066 (procfs_wait): Return new pid, built from the inferior status.
5068 2008-07-23 Thiago Jung Bauermann <bauerman@br.ibm.com>
5070 * configure.ac (CONFIG_INITS): Delete long obsoleted variable.
5071 * configure: Regenerate.
5073 2008-07-23 Aleksandar Ristovski <aristovski@qnx.com>
5075 * nto-procfs.c (procfs_xfer_memory): Changed signature.
5076 (procfs_resume): Workaround for dereferencing type-punned pointer
5078 * nto-tdep.c (nto_parse_redirection): Change signature to be const
5080 * nto-tdep.h (nto_parse_redirection): Likewise.
5082 2008-07-21 Stan Shebs <stan@codesourcery.com>
5084 Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
5085 * gdbarch.sh: Adjust comment to refer to
5086 in_solib_dynsym_resolve_code().
5087 * gdbarch.h, gdbarch.c: Update.
5088 * solib-osf.c: Ditto.
5090 (handle_inferior_event): Use in_solib_dynsym_resolve_code
5092 * config/mips/nm-irix5.h: Remove undef of
5093 IN_SOLIB_DYNSYM_RESOLVE_CODE.
5095 2008-07-21 Tom Tromey <tromey@redhat.com>
5097 * symfile.c (reread_symbols): Don't pass argument to observer.
5098 * exec.c (exec_file_attach): Don't pass argument to observer.
5099 * ada-lang.c (ada_executable_changed_observer): Remove argument.
5100 * symtab.c (symtab_observer_executable_changed): Remove argument.
5101 * observer.sh: Handle functions with no arguments.
5103 2008-07-20 Sergei Poselenov <sposelenov@emcraft.com>
5104 Chris Demetriou <cgd@google.com>
5106 * elfread.c (elf_symfile_segments): Fix the check that each loadable
5107 section fits within an ELF segment to handle ELF segments that hit
5108 the end of the address space.
5110 2008-07-20 Chris Demetriou <cgd@google.com>
5112 * MAINTAINERS (Write After Approval): Add self.
5114 2008-07-18 Tom Tromey <tromey@redhat.com>
5117 * NEWS: Add entry for macro commands.
5118 * Makefile.in (macrocmd.o): Add gdb_string.h.
5119 * macroscope.h (user_macro_scope): Declare.
5120 (default_macro_scope): Update documentation.
5121 (macro_user_macros): Declare.
5122 * c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
5123 Use user_macro_scope.
5124 (null_macro_lookup): Remove.
5125 * macrotab.h (macro_callback_fn): Declare.
5126 (macro_for_each): Likewise.
5127 (macro_allow_redefinitions): Likewise.
5128 * macrotab.c (foreach_macro): New function
5129 (macro_for_each): Likewise.
5130 (struct macro_table) <redef_ok>: New field.
5131 (macro_allow_redefinitions): New function.
5132 (new_macro_table): Update.
5133 (macro_define_function): Likewise.
5134 (macro_define_object): Likewise.
5135 * macroscope.c (user_macro_scope): New function.
5136 (default_macro_scope): Use it.
5137 (macro_user_macros): New global.
5138 (standard_macro_lookup): Look in macro_user_macros.
5139 (_initialize_macroscope): New function.
5140 * macroexp.h (macro_is_whitespace, macro_is_digit,
5141 macro_is_identifier_nondigit): Declare.
5142 * macroexp.c (macro_is_whitespace): Rename. No longer static.
5143 (macro_is_digit): Likewise.
5144 (macro_is_identifier_nondigit): Likewise.
5145 (get_identifier): Update.
5146 (get_pp_number): Likewise.
5147 (get_token): Likewise.
5148 * macrocmd.c (skip_ws): New function.
5149 (extract_identifier): Likewise.
5150 (free_macro_definition_ptr): Likewise.
5151 (user_macros): Remove.
5152 (macro_define_command): Implement.
5153 (_initialize_macrocmd): Update.
5154 (macro_undef_command): Implement.
5155 (print_one_macro): New function.
5156 (macro_list_command): Implement.
5158 2008-07-18 Joseph Myers <joseph@codesourcery.com>
5160 * configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
5162 * configure: Regenerate.
5164 2008-07-17 Paul Pluzhnikov <ppluzhnikov@google.com>
5166 * auxv.c (fprint_target_auxv): Stop at AT_NULL.
5168 2008-07-15 Andreas Schwab <schwab@suse.de>
5170 * valops.c (value_cast_pointers): Follow typedefs when checking
5173 2008-07-15 Daniel Jacobowitz <dan@codesourcery.com>
5175 * block.c (block_function): Renamed to ...
5176 (block_linkage_function): ... this. All callers changed.
5177 * block.h (block_function): Renamed to ...
5178 (block_linkage_function): ... this.
5180 2008-07-15 Daniel Jacobowitz <dan@codesourcery.com>
5182 * mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.
5184 2008-07-15 Daniel Jacobowitz <dan@codesourcery.com>
5186 * frame.c (frame_sp_unwind): Delete.
5187 (get_frame_sp): Do not use it.
5188 * frame.h (frame_sp_unwind): Delete prototype.
5190 2008-07-15 Daniel Jacobowitz <dan@codesourcery.com>
5192 * ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.
5194 2008-07-15 Daniel Jacobowitz <dan@codesourcery.com>
5196 * dwarf2-frame.c (dwarf2_frame_cache): Update comment.
5197 * frame.c (frame_unwind_address_in_block): Delete.
5198 (get_frame_address_in_block): Do not use it. Check the type
5199 of the next frame first.
5200 (frame_cleanup_after_sniffer): Update comment.
5201 * frame.h (frame_unwind_address_in_block): Delete prototype.
5202 * hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
5204 2008-07-15 Daniel Jacobowitz <dan@codesourcery.com>
5206 * frame.c (frame_func_unwind): Delete.
5207 (get_frame_func): Do not use it.
5208 * frame.h (frame_func_unwind): Delete prototype.
5209 * hppa-tdep.c (hppa_frame_cache): Update comment.
5210 * rs6000-tdep.c (rs6000_frame_cache): Update comment.
5212 2008-07-14 Stan Shebs <stan@codesourcery.com>
5214 * remote-sim.c (init_gdbsim_ops): Remove
5215 TARGET_REDEFINE_DEFAULT_OPS.
5217 2008-07-15 Daniel Jacobowitz <dan@codesourcery.com>
5219 * findvar.c (read_var_value): Remove unused variable.
5221 2008-07-15 Luis Machado <luisgpm@br.ibm.com>
5223 * infrun.c (handle_inferior_event): Tag threads as stopped
5224 before inserting breakpoints.
5226 2008-07-15 Hui Zhu <teawater@gmail.com>
5228 * MAINTAINERS: Added myself to section Write After Approval.
5230 2008-07-14 Paul Pluzhnikov <ppluzhnikov@google.com>
5233 * cp-abi.c (value_virtual_fn_field): Handle invalid pointers.
5235 2008-07-14 Pedro Alves <pedro@codesourcery.com>
5237 * i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
5238 (i386_dicos_push_dummy_code): New.
5239 (i386_dicos_init_abi): Don't register i386_dicos_frame_align.
5240 Register i386_dicos_push_dummy_code.
5242 2008-07-14 Markus Deuling <deuling@de.ibm.com>
5244 * mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
5245 (mips_n32n64_push_dummy_call, mips_o64_return_value)
5246 (mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
5248 (MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
5249 (fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
5250 (mips_n32n64_fp_arg_chunk_p): Update caller.
5252 (mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
5253 (mips_n32n64_push_dummy_call): Update caller.
5255 (MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
5257 (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
5258 (mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
5261 (MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
5263 (mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
5264 (mips_o64_push_dummy_call): Update caller.
5266 (MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
5267 (fp_register_arg_p, mips_dump_tdep): Update caller.
5269 (set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
5270 (mips16_scan_prologue, mips32_scan_prologue): Update caller.
5272 (reset_saved_regs): Make static. Add gdbarch as parameter. Replace
5274 (mips32_scan_prologue): Update caller.
5276 (heuristic_proc_start): Add gdbarch as parameter. Replace
5278 (mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
5280 * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
5281 (mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
5282 the current architecture. Update call to getregs_supplies.
5283 (getregs_supplies): Add gdbarch as parameter and replace
5286 * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
5287 get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
5288 NBSD_MIPS_JB_ELEMENT_SIZE.
5289 (NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
5290 replace current_gdbarch.
5292 * remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
5294 (mips_fetch_registers, mips_store_registers): Update call
5296 (mips_load): Use get_regcache_arch to get at the current_architecture
5297 and replace current_gdbarch.
5299 2008-07-13 Pedro Alves <pedro@codesourcery.com>
5301 * thread.c (restore_selected_frame): On fail to restore, select
5302 the innermost frame, and don't crash when warning the user.
5304 2008-07-13 Hui Zhu <teawater@gmail.com>
5306 * symtab.c (expand_line_sal): Fix a memory leak.
5308 2008-07-13 Pedro Alves <pedro@codesourcery.com>
5310 * utils.c (struct continuation): Define as inheriting struct
5312 (add_continuation, do_all_continuations)
5313 (discard_all_continuations, add_intermediate_continuation)
5314 (do_all_intermediate_continuations)
5315 (discard_all_intermediate_continuations): Adjust.
5317 2008-07-13 Vladimir Prus <vladimir@codesourcery.com>
5319 Skip varobj in running threads.
5320 * mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
5321 thread is not stopped, skip the varobj.
5322 * Makefile.in: Update dependencies.
5324 2008-07-13 Vladimir Prus <vladimir@codesourcery.com>
5326 Enable all commands while inferiour is running
5327 * mi/mi-main.c (mi_cmd_execute): Don't check if
5328 inferiour is executing.
5330 2008-07-13 Vladimir Prus <vladimir@codesourcery.com>
5332 Allow all CLI command even if target is executing.
5333 * gdb/top.c (execute_command_1): Don't check if the inferiour
5336 2008-07-13 Vladimir Prus <vladimir@codesourcery.com>
5338 * mi/mi-main.c (mi_cmd_execute): Remove unused variable.
5339 Fix printing of frame, when frame is wrong.
5341 2008-07-12 Ulrich Weigand <uweigand@de.ibm.com>
5343 * spu-tdep.c (spu_frame_unwind_cache): Do not error if
5344 backchain is unreadable.
5346 2008-07-12 Ulrich Weigand <uweigand@de.ibm.com>
5348 * spu-linux-nat.c: Include "gdbthread.h".
5349 (spu_child_post_startup_inferior): Register main thread.
5350 (spu_child_post_attach): Likewise.
5351 * Makefile.in (spu-linux-nat.o): Update dependencies.
5353 2008-07-12 Pedro Alves <pedro@codesourcery.com>
5355 Rewrite continuations internals on top of cleanups and plug
5356 continuation arguments leaks.
5358 * defs.h (struct continuation): Make it opaque.
5359 (add_continuation, add_intermediate_continuation): Drop the int
5360 argument of the continuation hook argument. Add
5361 continuation_free_args argument.
5362 (do_all_continuations, do_all_intermediate_continuations): Drop
5363 the error_p argument.
5365 * utils.c (add_continuation): Drop the int argument of the
5366 continuation hook argument. Add continuation_free_args argument.
5367 Reimplement on top of cleanups.
5368 (do_all_continuations): Drop error argument. Reimplement on top
5370 (discard_all_continuations): Reimplement on top of cleanups.
5371 (add_intermediate_continuation): Drop the int argument of the
5372 continuation hook argument. Add continuation_free_args argument.
5373 Reimplement on top of cleanups.
5374 (do_all_intermediate_continuations): Drop error argument.
5375 Reimplement on top of cleanups.
5376 (discard_all_intermediate_continuations): Reimplement on top of
5379 * breakpoint.c (until_break_command_continuation): Drop error
5380 argument. Add xfree as continuation argument deleter.
5382 * inf-loop.c (inferior_event_handler): On error, discard all
5383 continuations. Adjust to new do_all_intermediate_continuations
5384 and do_all_continuations interfaces.
5386 * infcmd.c (step_1_continuation): Drop error_p argument. Adjust.
5387 Pass xfree as continuation argument deleter.
5388 (finish_command_continuation): Drop error_p argument. Adjust.
5389 (finish_command_continuation_free_arg): New.
5390 (finish_command): Pass finish_command_continuation_free_arg as
5391 continuation argument deleter. Adjust to new do_all_continuations
5393 (attach_command_continuation): Drop error_p argument.
5394 (attach_command_continuation_free_args): New.
5395 (attach_command): Pass attach_command_continuation_free_args as
5396 continuation argument deleter.
5398 * interps.c (interp_set): Adjust to new do_all_continuations
5401 * event-top.c (stdin_event_handler): In error, also discard the
5402 intermediate continuations.
5404 2008-07-12 Pedro Alves <pedro@codesourcery.com>
5406 Replace struct continuation_args by void* and per command structs.
5408 * top.c (execute_command): Remove unused arg1 and arg2 locals.
5410 * breakpoint.c (struct until_break_command_continuation_args):
5412 (until_break_command_continuation): Take a void* instead of a
5413 continuations_arg. Adjust.
5414 (until_break_command): Adjust to use struct
5415 until_break_command_continuation_args instead of struct
5418 * infcmd.c (struct step_1_continuation_args): New.
5419 (step_1_continuation): Take a void* instead of a
5420 continuations_arg. Adjust to use struct step_1_continuation_args.
5421 (step_once): Adjust to use struct step_1_continuation_args.
5423 (struct finish_command_continuation_args): New.
5424 (finish_command_continuation): Take a void* instead of a
5425 continuations_arg. Adjust to use struct
5426 finish_command_continuation_args.
5427 (finish_command): Adjust to use struct
5428 finish_command_continuation_args.
5429 (struct attach_command_continuation_args): New.
5430 (attach_command_continuation): Take a void* instead of a
5431 continuations_arg. Adjust to use struct
5432 attach_command_continuation_args.
5433 (attach_command): Adjust to use struct
5434 attach_command_continuation_args.
5436 * defs.h (struct continuation_arg): Delete.
5437 (struct continuation): Replace the struct continuation_arg*
5438 parameter of continuation_hook by a void*. Replace "arg_list"
5439 member by a new "args" member with void* type.
5440 (add_continuation, add_intermediate_continuation): Replace struct
5441 continuation_arg type usages by void* usages.
5443 * utils.c (add_continuation, do_all_continuations)
5444 (add_intermediate_continuation)
5445 (do_all_intermediate_continuations): Replace struct
5446 continuation_arg type usages by void* usages. Pass "args" instead
5449 2008-07-12 Pedro Alves <pedro@codesourcery.com>
5451 * infrun.c (struct thread_stepping_state): Delete sal member.
5452 (init_thread_stepping_state): Add local sal. Use it instead of
5454 (handle_inferior_event): New local stop_pc_sal. Use it instead of
5456 (step_into_function): Add local stop_func_sal. Use it instead of
5459 2008-07-12 Vladimir Prus <vladimir@codesourcery.com>
5461 Implement -exec-continue/-exec-interrupt --all.
5462 * infcmd.c (continue_1): New, extracted from
5463 (continue_command): ...here.
5464 (interrupt_target_1): New, extracted from
5465 (interrupt_target_command): ...here.
5466 * inferior.h (continue_1, interrupt_target_1): New.
5467 * mi/mi-main.c (mi_cmd_exec_continue)
5468 (mi_cmd_exec_interrupt): Handle --all.
5470 2008-07-12 Vladimir Prus <vladimir@codesourcery.com>
5472 Implement --thread and --frame.
5473 * gdbthread.h (find_thread_id): Declare.
5474 * thread.c (find_thread_id): Make non-static.
5475 * mi/mi-main.c (mi_cmd_execute): Switch to the right
5476 thread and frame, if necessary.
5477 * mi/mi-parse.c (mi_parse): Handle --thread and --frame.
5478 * mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
5480 2008-07-12 Vladimir Prus <vladimir@codesourcery.com>
5482 * infrun.c (resume): Discard cleanups on early exit path.
5484 2008-07-12 Vladimir Prus <vladimir@codesourcery.com>
5486 * infrun.c (normal_stop): For MI, report which threads
5489 2008-07-12 Vladimir Prus <vladimir@codesourcery.com>
5491 Report thread state in -thread-info output.
5492 * thread.c (print_thread_info): Add new field "state".
5494 2008-07-11 Pedro Alves <pedro@codesourcery.com>
5496 * infrun.c (handle_inferior_event): Also ignore a
5497 TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
5499 2008-07-11 Tom Tromey <tromey@redhat.com>
5501 * completer.c (complete_line_internal): New function, from
5502 complete_line. Add 'for_help' parameter.
5503 (complete_line): Use it.
5504 (command_completer): Move later. Rewrite.
5506 2008-07-11 Pedro Alves <pedro@codesourcery.com>
5508 * thread.c (thread_apply_command): Move making the cleanup out of
5511 2008-07-11 Pedro Alves <pedro@codesourcery.com>
5515 * thread.c (enum thread_state): New.
5516 (thread_state main_thread_running): Delete, in favor of...
5517 (thread_state main_thread_state): ... this. Update throughout.
5518 (clear_thread_inferior_resources): New, split from free_thread.
5519 (free_thread): Call clear_thread_inferior_resources.
5520 (init_thread_list): Set main thread to stopped state.
5521 (add_thread_silent): Take care of PTID reuses.
5522 (delete_thread): If deleting inferior_ptid or a thread with
5523 refcount > 0, mark it as exited, but still keep it in the list.
5524 Only notify of thread exits, if we haven't done so yet.
5525 (iterate_over_threads): Make it safe to delete threads while
5526 iterating over them.
5527 (do_captured_list_thread_ids): Don't account for exited threads.
5528 (thread_alive): Check for the THREAD_EXITED state, and don't set
5529 ptid to -1 on exited threads.
5530 (set_running): Update to account for extra possible states.
5531 (is_thread_state): New.
5532 (is_stopped, is_exited): New.
5533 (is_running): Implement in terms of is_thread_state.
5534 (any_running): Update.
5535 (print_thread_info): Update. Account for exited threads. Don't
5536 warn about missed frame restoring here, its done in the cleanup.
5537 (switch_to_thread): Don't read from a thread that has gone.
5538 (restore_current_thread): In non-stop mode, do a full context
5540 (restore_selected_frame): Add a frame_level argument. Rewrite.
5541 (struct current_thread_cleanup): Add selected_frame_level and
5542 was_stopped members.
5543 (do_restore_current_thread_cleanup): Check if thread was stopped
5544 and still is, and if the target has registers, stack and memory
5545 before restoring the selected frame. Don't delete the cleanup
5547 (restore_current_thread_cleanup_dtor): New.
5548 (make_cleanup_restore_current_thread): Remove all arguments.
5550 (thread_apply_all_command): Update. Prune threads.
5551 (thread_apply_command): Update.
5552 (thread_command): Account for currently selected exited thread.
5553 (do_captured_thread_select): Check for a running thread. Prune
5555 (_initialize_thread): Make "info threads", "thread", "thread
5556 apply", and "thread apply all" appliable without a selected thread.
5557 * gdbthread.h (struct thread_info): Replace running_ by state_.
5559 (is_exited, is_stopped): Declare.
5560 (make_cleanup_restore_current_thread): Remove all arguments.
5561 * infrun.c: Include "event-top.h".
5562 (fetch_inferior_event): In non-stop mode, restore selected thread
5563 and frame after handling the event and running breakpoint
5564 commands. Display GDB prompt if needed.
5565 (normal_stop): In non-stop mode, don't print thread switching
5567 * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
5568 (get_cmd_no_selected_thread_ok): New.
5569 * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
5570 (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
5572 * cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
5573 no-selected-thread ok.
5574 * top.c (execute_command): Check for non no-selected-thread-ok
5576 * linux-nat.c (struct saved_ptids, threads_to_delete)
5577 (record_dead_thread, prune_lwps): Delete.
5578 (exit_lwp): Unconditionally delete thread.
5579 (linux_nat_resume): Remove prune_lwps call.
5580 * infcmd.c (proceed_thread_callback): Check if !is_stopped instead
5581 of is_running. Adjust to make_cleanup_restore_current_thread
5583 * mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
5584 selected thread has exited.
5585 * inf-loop.c (inferior_event_handler): Don't display the prompt
5587 * varobj.c (c_value_of_root): Update.
5588 * defs.h (make_cleanup_dtor): Declare.
5589 * utils.c (make_cleanup_dtor): New.
5591 * Makefile.in (infrun.o): Depend on $(event_top_h).
5593 2008-07-11 Pedro Alves <pedro@codesourcery.com>
5595 Add "continue -a" and "interrupt -a" options for non-stop mode.
5597 * infcmd.c (proceed_thread_callback, do_context_switch_to): New.
5598 (continue_command): Add "-a" option.
5599 (interrupt_target_command): Add "-a" option.
5600 (_initialize_infcmd): Add extend help of continue and interrupt
5601 command to mention the new "-a" option. Mark "continue" async ok.
5603 2008-07-10 Doug Evans <dje@google.com>
5605 Add "set print symbol-loading on|off".
5606 * NEWS: Document new option.
5607 * symfile.h (print_symbol_loading): Declare.
5608 * symfile.c (print_symbol_loading): New global.
5609 (symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
5610 from ..." if print_symbol_loading.
5611 (_initialize_symfile): Add set/show print symbol-loading.
5612 * solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
5613 if print_symbol_loading.
5615 2008-07-10 Pedro Alves <pedro@codesourcery.com>
5617 Non-stop linux native.
5619 * linux-nat.c (linux_test_for_tracefork): Block events while we're
5621 (get_pending_status): Implement non-stop mode.
5622 (linux_nat_detach): Stop threads before detaching.
5623 (linux_nat_resume): In non-stop mode, always resume only a single
5625 (linux_handle_extended_wait): On a clone event, in non-stop mode,
5626 add new lwp to GDB's thread table, and mark as running, executing
5627 and stopped appropriately.
5628 (linux_nat_filter_event): Don't assume there are other running
5629 threads when a thread exits.
5630 (linux_nat_wait): Mark the main thread as running and executing.
5631 In non-stop mode, don't stop all lwps.
5632 (linux_nat_kill): Stop lwps before killing them.
5633 (linux_nat_thread_alive): Use signal 0 to detect if a thread is
5635 (send_sigint_callback): New.
5636 (linux_nat_stop): New.
5637 (linux_nat_add_target): Set to_stop to linux_nat_stop.
5639 * linux-nat.h (thread_db_attach_lwp): Declare.
5641 * linux-thread-db.c (thread_get_info_callback): Check for new
5642 threads if we have none.
5643 (thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
5644 stopped lwp. Check for new threads if we have none.
5645 (thread_db_attach_lwp): New.
5646 (thread_db_init): Set proc_handle.pid to inferior_ptid.
5647 (check_event): Set proc_handle.pid to the stopped lwp.
5648 (thread_db_find_new_threads): Set proc_handle.pid to any stopped
5649 lwp available, bail out if there is none.
5651 * linux-fork.c (linux_fork_killall): Use SIGKILL instead of
5654 2008-07-10 Kevin Buettner <kevinb@redhat.com>
5656 * rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
5657 `current_pc' from CORE_ADDR to ULONGEST.
5659 * remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
5662 2008-07-10 Jan Kratochvil <jan.kratochvil@redhat.com>
5664 * NEWS (New commands): Mention "set disable-randomization".
5665 * configure.ac: Add check for HAVE_PERSONALITY and
5666 HAVE_DECL_ADDR_NO_RANDOMIZE.
5667 * configure, config.in: Regenerate.
5668 * linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>.
5669 [HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set
5671 (disable_randomization, show_disable_randomization)
5672 (set_disable_randomization): New.
5673 (linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables
5674 PERSONALITY_ORIG and PERSONALITY_SET. Disable randomization upon the
5675 variable DISABLE_RANDOMIZATION.
5676 (_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable
5677 DISABLE_RANDOMIZATION.
5679 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5681 Adjust all targets to new target_stop interface.
5683 * gnu-nat.c (gnu_stop): Add ptid argument.
5684 * go32-nat.c (go32_stop): Add ptid argument.
5685 (go32_create_inferior): Pass inferior_ptid to go32_stop.
5686 * hpux-thread.c (hpux_thread_stop): Add ptid argument.
5687 * monitor.c (monitor_stop): Add ptid argument.
5688 (monitor_open): Pass inferior_ptid to monitor_stop.
5689 (monitor_interrupt): Pass inferior_ptid to target_stop.
5690 (monitor_stop): Add ptid argument.
5691 * nto-procfs.c (nto_interrupt): Pass inferior_ptid to target_stop.
5692 (procfs_create_inferior): Add ptid argument.
5693 * procfs.c (procfs_stop): Add ptid argument.
5694 * remote-m32r-sdi.c (m32r_stop): Add ptid argument.
5695 * remote-sim.c (gdbsim_stop): Add ptid argument.
5696 * sol-thread.c (sol_thread_stop): Add ptid argument.
5697 * win32-nat.c (win32_stop): Add ptid argument.
5699 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5701 Non-stop inferior control.
5703 * infrun.c (resume): In non-stop mode, always resume just one
5705 (proceed): Don't call prepare_to_proceed in non-stop mode.
5706 (fetch_inferior_event): In non-stop mode, switch context before
5708 (error_is_running, ensure_not_running): New.
5709 (handle_inferior_event): In non-stop mode: Mark only the event
5710 thread as stopped. Require that the target module manages adding
5711 threads to the thread list. Assert that there isn't a
5712 deferred_step_ptid set. Don't switch to infwait_thread_hop_state.
5713 (normal_stop): Only mark not-running if inferior hasn't exited.
5714 In non-stop mode, only mark the event thread.
5716 * thread.c:Include "cli/cli-decode.h".
5717 (print_thread_info): Don't read from a running thread.
5718 Output "(running)" if thread is running.
5719 (switch_to_thread): Don't read stop_pc if thread is executing.
5720 (do_restore_current_thread_cleanup): Don't write to a running
5722 (thread_apply_all_command): Don't read from a running thread. In
5723 non-stop mode, do a full context-switch instead of just switching
5725 (thread_apply_command): In non-stop mode, do a full context-switch
5726 instead of just switching threads.
5727 (do_captured_thread_select): Likewise. Inform user if selected
5729 (_initialize_thread): Mark "info threads" and "thread" and
5732 * inf-loop.c (inferior_event_handler): In non-stop mode, don't
5733 unregister the target from the event loop.
5735 * infcmd.c (continue_command, step_1, jump_command)
5736 (signal_command): Ensure the selected thread isn't running.
5737 (interrupt_target_command): In non-stop mode, interrupt only the
5740 * inferior.h (error_is_running, ensure_not_running): Declare.
5742 * target.h (struct target_ops): Add ptid argument to the to_stop
5744 (target_stop): Add ptid_t argument.
5746 * target.c (update_current_target): Add ptid argument to to_stop's
5748 (debug_to_stop): Add ptid_t argument.
5749 (debug_to_rcmd): Set to_stop_ptid.
5751 * remote.c (remote_stop): Add ptid_t argument.
5752 (async_remote_interrupt): Add inferior_ptid to target_stop.
5753 * inf-ptrace.c (inf_ptrace_stop): Add ptid argument.
5755 * Makefile.in (thread.o): Depend on $(cli_decode_h).
5757 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5759 Don't rely on ecs->wait_for_more.
5761 * infrun.c (proceed): Clear the stepping state, set
5762 previous_inferior_ptid and clear infwait state.
5763 (wait_for_inferior): Don't clear the stepping state, set
5764 previous_inferior_ptid, or clear the infwait state here.
5765 (fetch_inferior_event): Don't clear the stepping state, set
5766 previous_inferior_ptid, or clear the infwait state here. Don't
5767 condition on wait_for_more.
5769 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5771 Refactor infrun a bit.
5773 * infrun.c (currently_stepping): Take a struct
5774 thread_stepping_state instead of an execution_control_state.
5775 (struct thread_stepping_state): New, split from
5776 execution_control_state.
5777 (gtss, tss): New globals.
5778 (proceed): Clear the stepping state, set previous_inferior_ptid
5779 and clear infwait state.
5780 (init_wait_for_inferior): Clear the stepping state,
5781 previous_inferior_ptid and infwait state.
5782 (waiton_ptid, infwait_state): New, split from
5783 execution_control_state.
5784 (struct execution_control_state): Members that persist through
5785 events moved out to either struct thred_stepping_state or made
5786 global. Deleted unneeded wp, saved_inferior_ptid, tmpstatus.
5787 (wait_for_inferior, fetch_inferior_event): Use local
5788 execution_control_state. Update to execution_control_state split.
5789 (init_execution_control_state): Adjust.
5790 (init_thread_stepping_state): New, extracted from
5791 init_execution_control_state.
5792 (context_switch): Take a ptid instead of an
5793 execution_control_state.
5794 (context_switch_to): Adjust.
5795 (adjust_pc_after_break): Adjust.
5796 (init_infwait_state): New.
5797 (handle_inferior_event): Adjust.
5799 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5800 Vladimir Prus <vladimir@codesourcery.com>
5802 Per-thread commands.
5804 * gdbthread.h: Remove unneeded forward declarations.
5805 Include "inferior.h".
5806 (struct thread_info): Add continuations,
5807 intermediate_continuations, proceed_to_finish, step_over_calls,
5808 stop_step, step_multi and stop_signal members.
5809 (save_infrun_state): Add continuations,
5810 intermediate_continuations, proceed_to_finish, step_over_calls,
5811 stop_step, step_multi, stop_signal and stop_bpstat parameters.
5812 (load_infrun_state): Add continuations,
5813 intermediate_continuations, proceed_to_finish, step_over_calls,
5814 stop_step, step_multi, stop_signal and stop_bpstat parameters.
5816 * thread.c (load_infrun_state): In non-stop mode, load
5817 continuations, intermediate_continuations, proceed_to_finish,
5818 step_over_calls, stop_step, step_multi and stop_signal.
5819 (save_infrun_state): Store continuations,
5820 intermediate_continuations, proceed_to_finish, step_over_calls,
5821 stop_step, step_multi, stop_signal and stop_bpstat.
5822 (save_infrun_state): Store continuations,
5823 intermediate_continuations, proceed_to_finish, step_over_calls,
5824 stop_step, step_multi, stop_signal and stop_bpstat.
5825 (free_thread): Clear The thread's stop_bpstat.
5827 * inferior.h (context_switch_to): Declare.
5829 * infrun.c (ecss): New global.
5830 (context_switch): Context switch continuations,
5831 intermediate_continuations, proceed_to_finish, step_over_calls,
5832 stop_step, step_multi, stop_signal and stop_bpstat.
5833 (wait_for_inferior): Use global ecss.
5834 (async_ecss, async_ecs): Delete.
5835 (fetch_inferior_event): Use global ecss.
5836 (context_switch_to): New.
5838 * top.c (execute_command): In non-stop, only check if the current
5839 thread is running, in all-stop, check if there's any thread
5842 * breakpoint.c (bpstat_remove_breakpoint): New.
5843 (bpstat_remove_breakpoint_callback): New.
5844 (delete_breakpoint): Clear the stop_bpstats of all threads.
5846 * mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
5847 current thread is running, in all-stop, check if there's any
5850 * Makefile.in (gdbthread_h): Depend on $(inferior_h).
5852 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5854 Add non_stop global.
5856 * inferior.h (non_stop): Declare.
5857 * infrun.c (non_stop, non_stop_1): New.
5858 (set_non_stop, show_non_stop): New.
5859 (_initialize_infrun): Add "set/show non-stop" command.
5861 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5863 Adjust fork/vfork/exec to pass ptids around.
5865 * target.h (struct target_waitstatus): Store related_pid as a ptid.
5866 (inferior_has_forked, inferior_has_vforked, inferior_has_execd):
5868 * breakpoint.h (struct breakpoint): Change forked_inferior_pid
5870 * breakpoint.c (print_it_typical, bpstat_check_location)
5871 (print_one_breakpoint_location, set_raw_breakpoint_without_location)
5872 (create_fork_vfork_event_catchpoint): Adjust.
5873 * infrun.c (fork_event): Change parent_pid and child_pid types to
5875 (follow_exec, inferior_has_forked, inferior_has_vforked)
5876 (inferior_has_execd): Take a ptid_t and don't trim it.
5877 * linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
5878 * linux-nat.c (linux_child_follow_fork): Adjust.
5879 * inf-ptrace.c (inf_ptrace_wait): Adjust.
5880 * inf-ttrace.c (inf_ttrace_wait): Adjust.
5881 * win32-nat.c (get_win32_debug_event): Don't set related_pid.
5883 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5885 Add "executing" property to threads.
5887 * inferior.h (target_executing): Delete.
5888 * gdbthread.h (struct thread_info): Add executing_ field.
5889 (set_executing, is_executing): New.
5890 * thread.c (main_thread_executing): New.
5891 (init_thread_list): Clear it and also main_thread_running.
5892 (is_running): Return false if target has no execution.
5893 (any_running, is_executing, set_executing): New.
5895 * top.c: Include "gdbthread.h".
5896 (target_executing): Delete.
5897 (execute_command): Replace target_executing check by any_running.
5898 * event-top.c: Include "gdbthread.h".
5899 (display_gdb_prompt, command_handler): Replace target_executing by
5901 * inf-loop.c: Include "gdbthread.h". Don't mark as not executing
5902 here. Replace target_executing by is_running.
5903 * infrun.c (handle_inferior_event): Mark all threads as
5905 * linux-nat.c (linux_nat_resume): Don't mark thread as executing
5907 * stack.c (get_selected_block): Return null if inferior is
5909 * target.c (target_resume): Mark resumed ptid as executing.
5910 * breakpoint.c (until_break_command): Replace target_executing
5911 check by is_executing.
5912 * remote.c (remote_async_resume): Don't mark inferior as executing
5914 * mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
5917 * mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
5918 (mi_execute_async_cli_command): Replace target_executing by
5921 * frame.c (get_current_frame): Error out if the current thread is
5923 (has_stack_frames): New.
5924 (get_selected_frame, deprecated_safe_get_selected_frame): Check
5927 * Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
5930 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5932 * symfile.c (load_command): Reopen the exec file and reread
5933 symbols before anything else.
5935 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5937 * remote-sim.c: Include gdbthread.h.
5938 (remote_sim_ptid): New global.
5939 (gdbsim_create_inferior): Silently add the main task to GDB's
5941 (gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
5942 task from GDB's thread list.
5943 (gdbsim_resume): Adjust to use remote_sim_ptid.
5944 (gdbsim_thread_alive, gdbsim_pid_to_str): New.
5945 (init_gdbsim_ops): Register gdbsim_thread_alive and
5947 (_initialize_remote_sim): Initialize remote_sim_ptid.
5948 * Makefile.in (remote-sim.o): Depend on $(gdbthread_h).
5950 2008-07-09 Pedro Alves <pedro@codesourcery.com>
5952 * monitor (monitor_ptid): New global.
5953 (monitor_open): Silently add the main task to GDB's thread list.
5954 (monitor_close, monitor_mourn_inferior): Silently delete the main
5955 task from GDB's thread list.
5956 (monitor_thread_alive, monitor_pid_to_str): New.
5957 (init_base_monitor_ops): Register monitor_thread_alive and
5959 (_initialize_remote_monitors): Initialize monitor_ptid.
5961 * gdbthread.h (delete_thread_silent): Declare.
5962 * thread.c (delete_thread): Rename to ...
5963 (delete_thread_1): ... this. Add "silent" parameter. If silent,
5964 don't do exit notifications.
5965 (delete_thread, delete_thread_silent): New, as wrappers to
5968 2008-07-08 Pedro Alves <pedro@codesourcery.com>
5970 * breakpoint.c (update_global_location_list): Add boolean
5971 "should_insert" argument. Only insert locations if caller told it
5973 (update_global_location_list_nothrow): Add boolean "should_insert"
5974 argument. Pass it to update_global_location_list.
5975 (insert_breakpoints, create_longjmp_breakpoint)
5976 (create_overlay_event_breakpoint, enable_overlay_breakpoints)
5977 (create_thread_event_breakpoint, create_solib_event_breakpoint)
5978 (create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
5979 (enable_watchpoints_after_interactive_call_stop)
5980 (set_momentary_breakpoint, create_breakpoints)
5981 (break_command_really, watch_command_1)
5982 (create_ada_exception_breakpoint, update_breakpoint_locations)
5983 (do_enable_breakpoint, enable_command): Pass true to
5984 update_global_location_list.
5985 (bpstat_stop_status, disable_overlay_breakpoints)
5986 (disable_watchpoints_before_interactive_call_start)
5987 (delete_breakpoint, disable_breakpoint, disable_command): Pass
5988 false to update_global_location_list.
5989 (update_breakpoints_after_exec): Don't temporarily disable
5990 always-inserted mode.
5992 2008-07-08 Pedro Alves <pedro@codesourcery.com>
5994 * breakpoint.c (mark_breakpoints_out): Make public.
5995 (update_breakpoints_after_exec): Don't call mark_breakpoints_out
5996 here. Update comment.
5997 * breakpoint.h (mark_breakpoints_out): Declare.
5999 * linux-nat.c (linux_handle_extended_wait): On
6000 TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
6001 * inf-ttrace.c (inf_ttrace_wait): Likewise.
6003 2008-07-08 Pedro Alves <pedro@codesourcery.com>
6005 * infrun.c (follow_exec): Reset shared libraries before adding the
6008 2008-07-07 Jan Kratochvil <jan.kratochvil@redhat.com>
6010 * breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.
6012 2008-07-07 Pedro Alves <pedro@codesourcery.com>
6014 * i386-dicos-tdep.c: Include "inferior.h".
6015 (i386_dicos_frame_align): New.
6016 (i386_dicos_init_abi): Register i386_dicos_frame_align. Set call
6017 dummy location ON_STACK.
6018 * Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).
6020 2008-07-07 Joel Brobecker <brobecker@adacore.com>
6022 * gstdint.h: New file.
6024 2008-07-05 Vladimir Prus <vladimir@codesourcery.com>
6026 * mi/mi-interp.c (mi_on_resume): Don't try to report
6027 resumed thread it the thread list is empty.
6029 2008-07-05 Pierre Muller <muller@ics.u-strasbg.fr>
6031 * cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
6032 completer for set to filename_completer.
6036 2008-07-04 Vladimir Prus <vladimir@codesourcery.com>
6038 Implement -target-attach.
6039 * mi/mi-cmds.c (mi_cmds): Forward -target-attach to CLI attach.
6041 2008-06-21 Hui Zhu <teawater@gmail.com>
6043 * target-descriptions.c (maint_print_c_tdesc_cmd): Fix a memory leak.
6045 2008-07-03 Pedro Alves <pedro@codesourcery.com>
6047 * config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.
6048 * config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete.
6050 * target.h (struct target_ops): Add to_attach_no_wait member.
6051 (target_attach_no_wait): New.
6052 * target.c (update_current_target): Inherit to_attach_no_wait.
6054 * infcmd.c: Replace ATTACH_NO_WAIT compile time check by
6055 target_attach_no_wait runtime check.
6057 * gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops.
6058 * win32-nat.c (init_win32_ops): Set to_attach_no_wait in
6061 2008-07-03 Pedro Alves <pedro@codesourcery.com>
6063 * i386-tdep.c (i386_displaced_step_fixup): Condition log printing
6064 on debug_displaced being set.
6066 2008-06-30 Daniel Jacobowitz <dan@codesourcery.com>
6068 * frame.c (get_prev_frame_1): Call frame_unwind_find_by_frame
6069 directly instead of get_frame_id.
6071 2008-06-30 Luis Machado <luisgpm@br.ibm.com>
6073 * rs6000-tdep.c (ppc_displaced_step_fixup): New function.
6074 (deal_with_atomic_sequence): Update BC masks.
6075 (rs6000_gdbarch_init): Init displaced stepping infra-structure.
6076 Define BRANCH_MASK, B_INSN, BC_INSN, BXL_INSN, BP_MASK and BP_INSN.
6078 2008-06-30 Daniel Jacobowitz <dan@codesourcery.com>
6080 * cris-tdep.c (crisv32_single_step_through_delay): Get this frame's
6081 register, not the previous frame's.
6083 2008-06-30 Luis Machado <luisgpm@br.ibm.com>
6085 * source.c (select_source_symtab): Make sure we skip namespace
6086 symtabs when showing cpp source code.
6088 2008-06-30 Hans-Peter Nilsson <hp@axis.com>
6090 * MAINTAINERS (Authorized committers): Fix my email address.
6092 2008-06-28 Vladimir Prus <vladimir@codesourcery.com>
6094 * mi/mi-cmds.c (mi_cmds): Route -exec-run, -exec-until,
6095 -target-download and -target-select via CLI, so that
6096 the quoting rules are the same as they were (unfortunately)
6097 in all prior gdb releases.
6098 * mi/mi-cmds.h (mi_cmd_exec_run, mi_cmd_exec_until)
6099 (mi_cmd_target_download, mi_cmd_target_select): Remove.
6100 * mi/mi-main.c (mi_cmd_exec_run, mi_cmd_exec_until)
6101 (mi_cmd_target_download, mi_cmd_target_select): Remove.
6102 (mi_cmd_execute): Set current_token even for commands
6105 2008-06-28 Ulrich Weigand <uweigand@de.ibm.com>
6107 * alphafbsd-tdep.c: Update for unwinder changes.
6108 * alpha-linux-tdep.c: Likewise.
6109 * alphanbsd-tdep.c: Likewise.
6110 * alphaobsd-tdep.c: Likewise.
6111 * avr-tdep.c: Likewise.
6112 * cris-tdep.c: Likewise.
6113 * frv-linux-tdep.c: Likewise.
6114 * frv-tdep.c: Likewise.
6115 * h8300-tdep.c: Likewise.
6116 * hppa-linux-tdep.c: Likewise.
6117 * iq2000-tdep.c: Likewise.
6118 * m32c-tdep.c: Likewise.
6119 * m32r-linux-tdep.c: Likewise.
6120 * m32r-tdep.c: Likewise.
6121 * m68hc11-tdep.c: Likewise.
6122 * mep-tdep.c: Likewise.
6123 * mn10300-tdep.c: Likewise.
6124 * mt-tdep.c: Likewise.
6125 * score-tdep.c: Likewise.
6126 * sh64-tdep.c: Likewise.
6127 * sh-tdep.c: Likewise.
6128 * sparc64fbsd-tdep.c: Likewise.
6129 * sparc64nbsd-tdep.c: Likewise.
6130 * sparc64obsd-tdep.c: Likewise.
6131 * v850-tdep.c: Likewise.
6132 * vaxobsd-tdep.c: Likewise.
6133 * vax-tdep.c: Likewise.
6134 * xstormy16-tdep.c: Likewise.
6136 2008-06-28 Vladimir Prus <vladimir@codesourcery.com>
6138 * mi/mi-main.c (enum captured_mi_execute_command_actions)
6139 (captured_mi_execute_command_args): Remove.
6140 (captured_mi_execute_command): Cast the closure to mi_parse
6141 pointer, not to captured_mi_execute_command_args, and don't
6142 set the action field thereof.
6143 (mi_execute_command): Pass struct mi_parse, not
6144 captured_mi_execute_command_args to captured_mi_execute_command.
6145 (mi_execute_command): Remove (dead) code for suppressing
6148 2008-06-28 Pedro Alves <pedro@codesourcery.com>
6150 * linux-nat.c (enum sigchld_state): New.
6151 (linux_nat_async_events_state): Renamed from
6152 linux_nat_async_events_enabled.
6153 (linux_nat_event_pipe_push, my_waitpid): Adjust.
6154 (sigchld_default_action): New.
6155 (lin_lwp_attach_lwp): Adjust. Call linux_nat_async_events
6157 (linux_nat_create_inferior): Set events state to sigchld_default
6159 (linux_nat_resume): Adjust.
6160 (linux_nat_wait): Call linux_nat_async_events unconditionally.
6161 (sigchld_handler): Adjust.
6162 (linux_nat_async_mask): Don't set SIGCHLD actions here.
6163 (get_pending_events): Adjust.
6164 (linux_nat_async_events): Rewrite to handle enum sigchld_state
6165 instead of a boolean.
6166 (linux_nat_async): Adjust.
6167 (_initialize_linux_nat): Capture default SIGCHLD action into
6168 sigchld_default_action.
6170 2008-06-28 Vladimir Prus <vladimir@codesourcery.com>
6172 * breakpoint.c (moribund_locations): New.
6173 (bpstat_stop_status): Process moribund locations.
6174 (update_global_location_list): Add removed
6175 locations to moribund_locations.
6176 (breakpoint_retire_moribund): New.
6177 * breakpoint.h (struct bp_location): New field
6178 events_till_retirement.
6179 (breakpoint_retire_moribund): Declare.
6180 * thread.c (thread_count): New.
6181 * infrun.c (handle_inferior_event): Call
6182 breakpoint_retire_moribund.
6183 * gdbthread.h (thread_count): Declare.
6185 2008-06-27 Joseph Myers <joseph@codesourcery.com>
6187 * dfp.c (decimal_convert): Call match_endianness before and after
6190 2008-06-27 Jonathan Larmour <jifl@eCosCentric.com>
6192 * remote.c (remote_insert_breakpoint): Ensure that if Z0
6193 unsupported and we fall back to memory_insert_breakpoint, we
6194 use the unmodified requested address.
6196 2008-06-27 Joel Brobecker <brobecker@adacore.com>
6198 * dwarf2read.c (read_attribute_value): Issue a complaint when
6199 adjusting size attribute values of 0xffffffff as zero.
6201 2008-06-27 Joseph Myers <joseph@codesourcery.com>
6203 * i386-tdep.c (i386_16_byte_align_p): New.
6204 (i386_push_dummy_call): Determine stack space required for
6205 arguments going forwards allowing for 16-byte alignment, then push
6206 arguments going forwards.
6208 2008-06-27 Pedro Alves <pedro@codesourcery.com>
6210 * infrun.c (start_remote): Don't clear thread list here.
6211 * monitor.c (monitor_open): Include "gdbthread.h". Clear thread
6213 * remote.c (record_currthread): Upgrade the main thread and its
6214 entry in the thread list if this is the first time we hear about
6216 (remote_thread_alive): Consider magic_null_ptid or a ptid without
6217 a tid member always alive.
6218 (remote_find_new_threads): Don't update the main thread here.
6219 (remote_start_remote): Clear thread list here. Always add the
6221 (extended_remote_attach_1): Add the main thread here.
6222 (extended_remote_mourn_1): Re-add the main thread here.
6223 (extended_remote_create_inferior_1): Add a main thread.
6225 * Makefile.in (monitor.o): Depend on $(gdbthread_h).
6227 2008-06-27 Pedro Alves <pedro@codesourcery.com>
6229 Use ptid_t.tid to store thread ids instead of ptid_t.pid.
6231 * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
6233 (general_thread, continue_thread): Change type to ptid_t.
6234 (record_currthread): Take a ptid_t parameter instead of an
6236 (MAGIC_NULL_PID): Delete.
6237 (set_thread): Take a ptid_t parameter and adjust.
6238 (set_general_thread, set_continue_thread): New.
6239 (remote_thread_alive, remote_newthread_step)
6240 (remote_current_thread, remote_find_new_threads)
6241 (remote_threads_info, remote_start_remote, remote_vcont_resume)
6242 (remote_resume_1, remote_wait, extended_remote_create_inferior_1)
6243 (threadalive_test, remote_pid_to_str)
6244 (remote_get_thread_local_address): Adjust.
6245 (_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
6246 and any_thread_ptid.
6248 2008-06-26 Jan Kratochvil <jan.kratochvil@redhat.com>
6250 * configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
6251 * configure: Regenerated.
6253 2008-06-26 Joel Brobecker <brobecker@adacore.com>
6255 * dwarf2read.c (read_attribute_value): Treat size attribute
6256 values of 0xffffffff as if the attribute value was zero.
6258 2008-06-26 Vladimir Prus <vladimir@codesourcery.com>
6260 * linux-nat.c: Add description of overall logic.
6262 2008-06-26 Daniel Jacobowitz <dan@codesourcery.com>
6264 * Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
6265 (gdb_stdint_h, gdb_stdint.h, stamp-int): Delete. Remove
6266 all dependencies on $(gdb_stdint_h).
6267 (distclean): Do not delete gdb_stdint.h.
6268 * acinclude.m4: Do not use stdint.m4.
6269 * configure.ac: Set GNULIB_STDINT_H. Remove tests for stdint.h,
6270 uintptr_t, and gdb_stdint.h.
6271 * defs.h: Include <stdint.h>.
6272 * gdb_thread_db.h: Assume stdint.h is already included.
6273 * breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
6274 rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
6275 include gdb_stdint.h.
6276 * configure, config.in: Regenerate.
6278 2008-06-26 Joseph Myers <joseph@codesourcery.com>
6280 * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
6281 decimal floating-point values in GPRs for soft-float.
6282 (do_ppc_sysv_return_value): Handle returning decimal
6283 floating-point values in GPRs for soft-float.
6285 2008-06-26 Vladimir Prus <vladimir@codesourcery.com>
6287 * target.c (target_read_until_error): New.
6288 * target.h (target_read_until_error): Declare.
6289 * mi/mi-main.c (mi_cmd_data_read_memory): Use
6290 target_read_until_error.
6292 2008-06-25 Jan Kratochvil <jan.kratochvil@redhat.com>
6294 Fix a memory leak found by Hui Zhu <teawater@gmail.com>.
6295 * c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
6296 after the DECFLOAT detection to fix a memory leak. Remove the
6297 redundant NUM initialization. Protect the DECFLOAT detection memory
6298 access before the P block. Restore the P memory content for the
6301 2008-06-25 Vladimir Prus <vladimir@codesourcery.com>
6303 Kill the return value for all MI command functions.
6304 * mi/mi-cmds.h (enum mi_cmd_result): Remove.
6305 (mi_cmd_argv_ftype): Change return type to void.
6307 * mi/mi-main.c: Adjust all function that implement
6308 MI commands to return nothing.
6309 (struct captured_mi_execute_command_actions):
6310 Remove the rc field.
6311 (mi_cmd_execute): Return nothing.
6312 (mi_execute_async_cli_command): Return nothing.
6313 (mi_cmd_exec_interrupt): Don't print ^done here.
6314 (mi_cmd_target_select): Don't print ^connected here.
6315 (captured_mi_execute_command): Don't check for MI_CMD_DONE.
6316 Special-case -target-select and output ^connected, not ^done.
6318 * mi/mi-cmd-break.c: Adjust.
6319 * mi/mi-cmd-disas.c: Adjust.
6320 * mi/mi-cmd-env.c: Adjust.
6321 * mi/mi-cmd-file.c: Adjust.
6322 * mi/mi-cmd-stack.c: Adjust.
6323 * mi/mi-cmd-target.c: Adjust.
6324 * mi/mi-cmd-var.c: Adjust.
6325 * mi/mi-interp.c: Adjust.
6326 * mi/mi-symbol-cmds.c: Adjust.
6328 2008-06-25 Vladimir Prus <vladimir@codesourcery.com>
6330 Emit ^running via observer.
6331 * mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
6333 (mi_on_resume): Print ^running if not previously output.
6334 * mi/mi-main.c (running_result_record_printed): New.
6335 (captured_mi_execute_command): Reset
6336 running_result_record_printed. Use running_result_record_printed
6337 to decide if we should skip ^done.
6338 (mi_execute_async_cli_command): Don't print ^running here.
6339 * mi/mi-main.h (current_token, running_result_record_printed):
6342 2008-06-24 Michael Snyder <msnyder@specifix.com>
6344 * infrun.c (_initialize_infrun): White space and typo fix.
6346 2008-06-23 Christopher Faylor <me.gdb.changelog@cgf.cx>
6348 * win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
6349 (do_initial_win32_stuff): Fix problem with inability to set breakpoints
6350 when first loading DLL with "dll" command.
6352 2008-06-19 Pierre Muller <muller@ics.u-strasbg.fr>
6354 * gnu-nat.c (proc_string): Use capital T for "Thread".
6356 2008-06-19 Pierre Muller <muller@ics.u-strasbg.fr>
6358 * win32-nat.c (win32_pid_to_str): Use capital T for "Thread".
6360 2008-06-18 Joel Brobecker <brobecker@adacore.com>
6362 * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6363 the target cannot run.
6365 2008-06-18 Joel Brobecker <brobecker@adacore.com>
6367 * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6368 we're attaching to a running process.
6370 2008-06-18 Pierre Muller <muller@ics.u-strasbg.fr>
6372 * win32-nat.c (handle_load_dll): Give dll name and load address
6373 if debug_events is on.
6374 (handle_unload_dll): Likewise.
6376 2008-06-14 Vladimir Prus <vladimir@codesourcery.com>
6378 Don't suppress *running when doing finish.
6379 * infcall.c (call_function_by_hand): Set both
6380 suppress_resume_observer and suppress_stop_observer.
6381 * infcmd.c (suppress_run_stop_observers): Split into...
6382 (suppress_resume_observer, suppress_stop_observer): ...those.
6383 (finish_command_continuation): Clear suppress_stop_observer.
6384 (finish_command): Set suppress_stop_observer.
6385 * inferior.h (suppress_run_stop_observers): Split into...
6386 (suppress_resume_observer, suppress_stop_observer): ...those.
6387 * infrun.c (normal_stop): Check for suppress_stop_observer.
6388 * thread.c (set_running): Check for suppress_resume_observer.
6390 2008-06-12 Pedro Alves <pedro_alves@portugalmail.pt>
6391 Pierre Muller <muller@ics.u-strasbg.fr>
6393 * gdbarch.sh (gdbarch_skip_main_prologue): New.
6394 * gdbarch.h, gdbarch.c: Regenerate.
6395 * i386-tdep.h (i386_skip_main_prologue): Declare.
6396 * i386-tdep.c (i386_skip_main_prologue): New.
6397 * i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
6398 i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
6399 * symtab.c (find_function_start_sal): When pc points at the "main"
6400 function, call gdbarch_skip_main_prologue.
6402 2008-06-11 Daniel Jacobowitz <dan@codesourcery.com>
6404 * value.c (value_primitive_field): Fetch lazy register values.
6406 2008-06-11 Pedro Alves <pedro@codesourcery.com>
6408 * NEWS: Mention support removal of undocumented S AA p PID stop
6411 * remote.c (remote_wait): Remove undocumented S AA p PID support.
6413 2008-06-10 Stan Shebs <stan@codesourcery.com>
6415 * MAINTAINERS: Update my affiliation and address.
6417 2008-06-10 Andreas Schwab <schwab@suse.de>
6419 * top.c (print_gdb_version): Don't print final newline.
6421 2008-06-10 Vladimir Prus <vladimir@codesourcery.com>
6424 * Makefile.in: Update dependencies.
6425 * gdbthread.h (struct thread_info): New field
6427 (set_running, is_running): New.
6428 * thread.c (set_running, is_running): New.
6429 * inferior.h (suppress_normal_stop_observer): Rename to...
6430 (suppress_run_stop_observers): ..this.
6431 * infcmd.c (suppress_normal_stop_observer): Rename to...
6432 (suppress_run_stop_observers): ..this.
6433 (finish_command_continuation, finish_command): Adjust.
6434 * infcall.c (call_function_by_hand): Adjust.
6435 * infrun.c (normal_stop): Call set_running.
6436 * target.c (target_resume): New. Call set_running.
6437 * target.h (target_resume): Convert from macro to
6440 * mi/mi-interp.c (mi_on_resume): New.
6441 (mi_interpreter_init): Register mi_on_resume.
6443 2008-06-10 Vladimir Prus <vladimir@codesourcery.com>
6445 Use observers to report stop events in MI.
6446 * mi/mi-interp.c (mi_on_normal_stop): New.
6447 (mi_interpreter_init): Register mi_on_normal_stop.
6448 (mi_interpreter_exec_continuation): Remove.
6449 (mi_cmd_interpreter_exec): Don't register the above.
6450 * mi/mi-main.c (captured_mi_execute_command): Don't care
6451 about sync_execution.
6452 (mi_execute_async_cli_command): Don't install continuation. Don't
6454 (mi_exec_async_cli_cmd_continuation): Remove.
6456 2008-06-10 Vladimir Prus <vladimir@codesourcery.com>
6458 Suppress normal stop observer when it's problematic.
6459 * inferior.h (suppress_normal_stop_observer): New.
6460 * infcall.c (call_function_by_hand): Disable stop events when
6461 doing function calls.
6462 * infmcd.c (suppress_normal_stop_observer): New.
6463 (finish_command_continuation): Call normal_stop observer
6465 (finish_command): Disable stop events inside proceed.
6466 * infrun.c (normal_stop): Don't call normal stop observer if
6467 suppressed of if multi-step is in progress.
6469 2008-06-10 Vladimir Prus <vladimir@codesourcery.com>
6472 * infrun.c (finish_command): Don't pass cleanup
6474 (finish_command_continuation): Don't grab cleanup from
6475 the passed data, as we don't use, and cannot, use it anyway.
6477 2008-06-10 Vladimir Prus <vladimir@codesourcery.com>
6479 Introduce common cleanup for restoring integers.
6480 * defs.h (make_cleanup_restore_integer): New declaration.
6481 (struct cleanup): New field free_arg.
6482 (make_my_cleanup_2): New.
6483 * utils.c (restore_integer_closure, restore_integer)
6484 (make_cleanup_restore_integer): New.
6485 (make_my_cleanup): Initialize the free_arg field and
6486 renamed to make_my_cleanup_2.
6487 (do_my_cleanups): Call free_arg.
6488 (discard_cleanups): Call free_arg.
6489 * breakpoint.c (restore_always_inserted_mode): Remove.
6490 (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
6492 2008-06-09 Doug Evans <dje@google.com>
6494 * remote.c (remote_wait): Include beginning of malformed packet
6497 2008-06-09 Tom Tromey <tromey@redhat.com>
6499 * completer.c (complete_line): Don't special-case
6500 expression_completer.
6501 (expression_completer): Only pass last word to
6503 * c-exp.y (yylex): Check 'token', not 'operator'.
6505 2008-06-09 Daniel Jacobowitz <dan@codesourcery.com>
6507 * configure.ac (build_warnings): Add -Wno-format for mingw.
6508 * configure: Regenerated.
6510 2008-06-07 Daniel Jacobowitz <dan@codesourcery.com>
6512 * NEWS: Make indentation consistent. Move exec tracing entry out
6513 of remote packet list.
6515 2008-06-06 Tom Tromey <tromey@redhat.com>
6517 * value.h (evaluate_subexpression_type, extract_field_op):
6519 * printcmd.c (_initialize_printcmd): Use expression_completer for
6520 'p', 'inspect', 'call'.
6521 * parser-defs.h (parse_field_expression): Declare.
6522 * parse.c: Include exceptions.h.
6523 (in_parse_field, expout_last_struct): New globals.
6524 (mark_struct_expression): New function.
6525 (prefixify_expression): Return int.
6526 (prefixify_subexp): Return int. Use expout_last_struct.
6527 (parse_exp_1): Update.
6528 (parse_exp_in_context): Add 'out_subexp' argument. Handle
6530 (parse_field_expression): New function.
6531 * expression.h (parse_field_expression): Declare.
6532 (in_parse_field): Likewise.
6533 * eval.c (evaluate_subexpression_type): New function.
6534 (extract_field_op): Likewise.
6535 * completer.h (expression_completer): Declare.
6536 * completer.c (expression_completer): New function.
6537 (count_struct_fields, add_struct_fields): New functions.
6538 * c-exp.y (yyparse): Redefine.
6539 (COMPLETE): New token.
6540 (exp): New productions.
6541 (saw_name_at_eof, last_was_structop): New globals.
6542 (yylex): Return COMPLETE when needed. Recognize in_parse_field.
6543 (c_parse): New function.
6544 * breakpoint.c (_initialize_breakpoint): Use expression_completer
6545 for watch, awatch, and rwatch.
6546 * Makefile.in (parse.o): Depend on exceptions_h.
6548 2008-06-06 Paul Pluzhnikov <ppluzhnikov@google.com>
6551 * gdb/valopts.c (find_overload_match): Handle references
6554 2008-06-06 Paul N. Hilfinger <hilfinger@adacore.com>
6556 * ada-lang.c (ada_value_assign): Correct big-endian case to take into
6557 account the bitsize of the 'from' operand.
6559 2008-06-06 Pedro Alves <pedro@codesourcery.com>
6561 * annotate.h (annotate_thread_changed): Declare.
6563 2008-06-06 Nick Roberts <nickrob@snap.net.nz>
6565 * annotate.c (annotate_thread_changed): New function.
6566 * thread.c (thread_command) : Use it.
6567 * infrun.c (normal_stop): Use it.
6569 2008-06-05 Vladimir Prus <vladimir@codesourcery.com>
6570 Nathan Sidwell <nathan@codesourcery.com>
6571 Joseph Myers <joseph@codesourcery.com>
6573 * acinclude.m4: Include ../config/acx.m4.
6574 * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
6575 * configure, config.in: Regenerate.
6576 * main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
6578 * top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.
6580 2008-06-05 Pedro Alves <pedro@codesourcery.com>
6582 Replace 'target async' by 'maintenance set remote-async' and
6583 'target remote' combination.
6585 * remote.c (remote_async_wait): Merge into remote_wait, and
6587 (remote_async_permitted, remote_async_permitted_set): New
6589 (set_maintenance_remote_async_permitted)
6590 (show_maintenance_remote_async_permitted): New functions.
6591 (remote_async_ops, extended_async_remote_ops): Delete.
6592 (remote_async_open, extended_remote_async_open): Delete.
6593 (remote_open_1): Drop async_p parameter. Update callers. Replace
6594 async_p with remote_async_permitted checks.
6595 (extended_async_remote_attach): Delete.
6596 (remote_resume, remote_async_resume): Merge and leave remote_resume.
6597 (remote_async_terminal_inferior): Rename to...
6598 (remote_terminal_inferior): ... this, and add
6599 remote_async_termitted check.
6600 (remote_async_terminal_ours): Rename to...
6601 (remote_terminal_ours): ... this, and add remote_async_termitted
6603 (remote_wait, remote_async_wait): Merge and leave remote_wait
6605 (remote_kill, remote_async_kill): Merge and leave remote_kill
6607 (remote_async_mourn, extended_async_remote_mourn): Delete.
6608 (extended_remote_create_inferior_1): Drop async_p parameter.
6609 Update callers. Always use extended_remote_ops.
6610 (extended_remote_async_create_inferior): Delete.
6611 (remote_return_zero): Delete.
6612 (init_remote_ops): Register remote_can_async_p, remote_async,
6613 remote_async_mask, remote_terminal_inferior and
6614 remote_terminal_ours.
6615 (remote_can_async_p, remote_is_async_p): Check for
6616 remote_async_permitted.
6617 (init_remote_async_ops, init_extended_async_remote_ops): Remove.
6618 (set_remote_cmd): Don't add async and extended-async targets.
6619 (_initialize_remote): Add set/show remote-async maintenance
6622 2008-06-05 Pedro Alves <pedro@codesourcery.com>
6624 * remote.c (kill_kludge): Delete.
6625 (remote_wait, remote_async_wait): Don't set it.
6626 (remote_kill, remote_async_kill): Don't do anything with it.
6628 2008-06-05 Pedro Alves <pedro@codesourcery.com>
6630 * linux-thread-db.c (thread_db_wait): Don't trim event ptid.
6632 2008-06-05 Aleksandar Ristovski <aristovski@qnx.com>
6634 * bcache.c (bcache_data): Call deprecated_bcache_added function.
6635 (deprecated_bcache_added): New function name. Body of function
6636 bcache_data is used here with the addition of 'added' argument.
6637 * bcache.h (deprecated_bcache_added): New function.
6638 * symfile.c (add_psymbol_to_bcache): New helper function, takes part of
6639 work from add_psymbol_to_list - initialises partial symbol and stashes
6640 it in objfile's cache.
6641 (append_psymbol_to_list): New helper function, takes other part of
6642 work from add_psymbol_to_list - adds partial symbol to the given list.
6643 (add_psymbol_to_list): Call helper functions instead of doing work
6644 here. If adding to global list, do not duplicate partial symbols in the
6647 2008-06-05 Aleksandar Ristovski <aristovski@qnx.com>
6649 * breakpoint.c (print_exception_catchpoint): Put 'exception' back to
6650 'exception caught|thrown' message.
6652 2008-06-05 Jan Kratochvil <jan.kratochvil@redhat.com>
6654 * Makefile.in: Update dependencies.
6655 * dwarf2expr.c: New include "gdb_assert.h".
6656 (new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
6657 (dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
6658 (execute_stack_op): Error out on too large RECURSION_DEPTH.
6659 Increase/decrease RECURSION_DEPTH around the function.
6661 2008-06-05 Daniel Jacobowitz <dan@codesourcery.com>
6663 * remote.c (get_offsets): Handle a single segment.
6664 * symfile.c (symfile_map_offsets_to_segments): Allow more bases
6667 2008-06-03 Daniel Jacobowitz <dan@codesourcery.com>
6669 * solib-svr4.c (struct lm_info): Add lm_addr.
6670 (main_lm_addr): New.
6671 (svr4_default_sos): Set lm_addr.
6672 (svr4_current_sos): Set lm_addr and main_lm_addr.
6673 (svr4_fetch_objfile_link_map): Rewrite.
6674 (svr4_clear_solib): Clear main_lm_addr.
6676 2008-06-03 Michael Snyder <msnyder@redhat.com>
6677 Joseph Myers <joseph@codesourcery.com>
6679 * mips-tdep.c (mips_eabi_return_value): Replace stub that always
6680 returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
6682 2008-06-02 Roman Zippel <zippel@linux-m68k.org>
6684 * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.
6686 2008-06-02 Roman Zippel <zippel@linux-m68k.org>
6688 * m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.
6690 2008-06-01 Joel Brobecker <brobecker@adacore.com>
6692 * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
6693 treat pointers in data space as function descriptors if the
6694 target address is also in the data space.
6696 2008-05-30 Joel Brobecker <brobecker@adacore.com>
6698 * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
6699 the trad-frame register value for the SP register.
6701 2008-05-29 Mark Kettenis <kettenis@gnu.org>
6703 * sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.
6705 2008-05-28 Joel Brobecker <brobecker@adacore.com>
6707 * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
6708 that identifies function descriptors outside of the .opd section.
6710 2008-05-28 Aleksandar Ristovski <aristovski@qnx.com>
6712 * breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
6713 temporary catchpoints. In MI add missing fields 'reason', 'disp',
6715 (print_mention_exception_catchpoint): Add 'Temporary' for temporary
6717 (handle_gnu_v3_exceptions): Use tempflag.
6719 2008-05-28 Vladimir Prus <vladimir@codesourcery.com>
6721 Refactor varobj_update interface.
6722 * varobj.c (varobj_update): Report changes as vector. Also
6723 return not just a list of varobj, but a list of special structures
6724 that tell what exactly has changed.
6725 * varobj.h (enum varobj_update_error): Rename to
6726 varobj_scope_status.
6727 (struct varobj_update_result_t): New.
6728 (varobj_update): Adjust prototype.
6729 * mi/mi-cmd-var.c: Adjust for changes.
6731 2008-05-28 Vladimir Prus <vladimir@codesourcery.com>
6733 * varobj.c (varobj_update): Fix comment typo.
6736 2008-05-26 Joel Brobecker <brobecker@adacore.com>
6738 Set the symtab field of symbols read from ECOFF debugging entries.
6739 * mdebugread.c (add_symbol): Add new parameter symtab.
6740 (parse_symbol): Update calls to add_symbol throughout.
6742 2008-05-27 Andreas Schwab <schwab@suse.de>
6744 * symtab.h (enum address_class): Remove LOC_REGPARM and
6746 (struct symbol): Add is_argument.
6747 (SYMBOL_IS_ARGUMENT): Define.
6749 * ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
6750 * buildsym.c (finish_block): Likewise.
6751 * stack.c (print_frame_args, print_block_frame_locals)
6752 (print_frame_arg_vars): Likewise.
6753 * symtab.c (lookup_block_symbol): Likewise.
6754 * tracepoint.c (add_local_symbols): Likewise.
6755 * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
6757 * coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
6758 * dwarf2read.c (new_symbol): Likewise.
6759 * mdebugread.c (parse_symbol): Likewise.
6760 * stabsread.c (define_symbol): Likewise.
6762 * ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
6763 and LOC_COMPUTED_ARG.
6764 * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
6765 * ax-gdb.c (gen_var_ref): Likewise.
6766 * eval.c (evaluate_subexp_for_address): Likewise.
6767 * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
6768 * m2-exp.y (yylex): Likewise.
6769 * printcmd.c (address_info): Likewise.
6770 * symmisc.c (print_symbol, print_partial_symbols): Likewise.
6771 * tracepoint.c (collect_symbol, scope_info): Likewise.
6773 2008-05-24 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
6775 * gdbarch.sh: Added new gdbarch struct
6776 core_regset_sections.
6777 * gdbarch.c: Refreshed.
6778 * gdbarch.h: Refreshed.
6779 * regset.h (core_regset_section): Declared.
6780 * linux-nat.c (linux_nat_do_thread_registers): Added
6781 support for the new gdbarch struct core_regset_sections.
6782 * utils.c (host_address_to_string): New function.
6783 * defs.h (host_address_to_string): New prototype.
6784 * i386-linux-tdep.c (i386_regset_rections): New register
6785 sections list for i386.
6786 (i386_linux_init_abi): Initialized new gdbarch struct
6787 core_regset_sections.
6788 * Makefile.in: Updated to reflect dependency changes.
6789 * ppc-linux-tdep.c (ppc_regset_sections): Register
6790 sections list for ppc.
6791 (ppc_linux_init_abi): Initialized new gdbarch struct
6792 core_regset_sections
6794 2008-05-24 Andreas Schwab <schwab@suse.de>
6796 * linespec.c (decode_objc): Save current language around call to
6799 2008-05-23 Joel Brobecker <brobecker@adacore.com>
6801 * valprint.h (get_array_bounds): Renames get_array_low_bound.
6802 * valprint.c (get_array_bounds): Renames get_array_low_bound.
6803 Return the proper bound value if the array index type is an
6804 enumerated type. Compute the high bound if requested.
6805 (val_print_array_elements): Handle the case when the array
6806 element has a null size.
6807 * ada-valprint.c (print_optional_low_bound): Add handling
6808 for empty arrays or arrays of zero-size elements.
6809 (ada_val_print_array): New function, extracted out from
6810 ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
6811 handle empty arrays and arrays of zero-size elements.
6812 (ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
6813 code by call to ada_val_print_array.
6814 (ada_value_print): Remove handling of null array. The handling
6815 was incomplete and is now better handled by ada_val_print_array.
6817 2008-05-23 Markus Deuling <deuling@de.ibm.com>
6819 * annotate.c (annotate_source, annotate_frame_begin): Replace
6820 deprecated_print_address_numeric with paddress.
6821 * cli/cli-cmds.c (list_command, edit_command): Likewise.
6822 * tui/tui-stack.c (tui_make_status_line): Likewise.
6824 * defs.h (deprecated_print_address_numeric): Remove.
6825 * printcmd.c (deprecated_print_address_numeric): Remove.
6826 * maint.c (maint_print_section_info): Fix comment.
6828 2008-05-23 Markus Deuling <deuling@de.ibm.com>
6830 * valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
6831 print_binary_chars, print_char_chars): Add byte_order parameter and
6832 replace gdbarch_byte_order.
6833 (print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
6834 expressions and remove them. Remove unused TWO_TO_FOURTH.
6835 (val_print_type_code_int): Introduce gdbarch_byte_order to get at the
6836 endianness. Update call to print_hex_chars.
6837 * valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
6838 print_binary_chars, print_char_chars): Add byte_order parameter.
6839 * printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
6840 get at the endianness. Update print_*_char calls to use byte_order.
6842 2008-05-22 Ulrich Weigand <uweigand@de.ibm.com>
6844 * symtab.h (struct symbol): Make "aux_value" member a void pointer
6846 (SYMBOL_LOCATION_BATON): Update.
6848 2008-05-22 Ulrich Weigand <uweigand@de.ibm.com>
6850 * symtab.h (enum address_class): Remove LOC_BASEREG and
6852 (struct symbol): Remove "basereg" member of "aux_value" union.
6853 (SYMBOL_BASEREG): Remove.
6855 * ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
6857 * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
6858 (ada_add_block_symbols): Likewise.
6859 * ax-gdb.c (gen_var_ref): Likewise.
6860 * buildsym.c (finish_block): Likewise.
6861 * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
6862 * m2-exp.y (yylex): Likewise.
6863 * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
6864 * printcmd.c (address_info): Likewise.
6865 * stack.c (print_frame_args, print_block_frame_locals): Likewise.
6866 (print_frame_arg_vars): Likewise.
6867 * symmisc.c (print_symbol): Likewise.
6868 * symtab.c (lookup_block_symbol): Likewise.
6869 * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
6870 (scope_info): Likewise.
6872 2008-05-22 Ulrich Weigand <uweigand@de.ibm.com>
6874 * symtab.h (enum address_class): Remove LOC_LOCAL_ARG.
6876 * ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
6877 * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
6878 (ada_add_block_symbols): Likewise.
6879 * ax-gdb.c (gen_var_ref): Likewise.
6880 * buildsyms.c (finish_block): Likewise.
6881 * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
6882 * m2-exp.y (yylex): Likewise.
6883 * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
6884 * printcmd.c (address_info): Likewise.
6885 * stack.c (print_frame_args, print_frame_arg_vars): Likewise.
6886 * symmisc.c (print_symbol, print_partial_symbols): Likewise.
6887 * symtab.c (lookup_block_symbol): Likewise.
6888 * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
6889 (scope_info): Likewise.
6891 2008-05-22 Ulrich Weigand <uweigand@de.ibm.com>
6893 * symtab.h (enum address_class): Remove LOC_INDIRECT and
6894 LOC_HP_THREAD_LOCAL_STATIC.
6896 * findvar.c (symbol_read_needs_frame, read_var_value): Do not
6897 handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
6898 (read_var_value): Likewise.
6899 * buildsym.c (finish_block): Likewise.
6900 * objfiles.c (objfile_relocate): Likewise.
6901 * printcmd.c (address_info): Likewise.
6902 * symmisc.c (print_symbol, print_partial_symbols): Likewise.
6903 * tracepoint.c (scope_info): Likewise.
6905 2008-05-21 Markus Deuling <deuling@de.ibm.com>
6906 Maxim Grigoriev <maxim2405@gmail.com>
6908 * xtensa-tdep.c (xtensa_read_register): Remove.
6909 (xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
6910 argument litbase to call0_frame_cache().
6911 (call0_track_op, call0_analyze_prologue)
6912 (call0_frame_cache): Use extra argument litbase.
6914 2008-05-21 Joel Brobecker <brobecker@adacore.com>
6916 * infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
6918 2008-05-21 Ulrich Weigand <uweigand@de.ibm.com>
6920 * frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
6922 2008-05-21 Ulrich Weigand <uweigand@de.ibm.com>
6924 * alpha-mdebug-tdep.c: Include "trad-frame.h".
6925 (struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
6926 struct trad_frame_saved_reg *.
6927 (alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
6928 trad_frame_alloc_saved_regs. Update accesses. Record previous
6929 value of SP as being vfp.
6930 (alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
6931 * Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
6933 2008-05-21 Markus Deuling <deuling@de.ibm.com>
6935 * score-tdep.c (score_print_insn): Get the current endianess from
6936 disassemble_info instead of gdbarch_byte_order.
6938 2008-05-21 Pedro Alves <pedro@codesourcery.com>
6940 * frame.c (get_prev_frame_1): Build frame id before setting
6941 this_frame->prev_p, not after.
6943 2008-05-21 Nick Roberts <nickrob@snap.net.nz>
6945 * annotate.c (annotate_new_thread): New function for new-thread
6947 * annotate.h: (annotate_new_thread): New extern.
6948 * thread.c (add_thread_with_info): Use it.
6949 * Makefile.in (thread.o): Add dependency on annotate.h.
6951 2008-05-20 Joel Brobecker <brobecker@adacore.com>
6953 * win32-nat.c (win32_wait): Block the control-c event while
6954 waiting for a debug event.
6956 2008-05-19 Pedro Alves <pedro@codesourcery.com>
6958 * symtab.h (lookup_symbol_in_language): Update comment.
6959 * symtab.c (lookup_symbol_aux_block): Update comment.
6960 * ada-lang.c (ada_lookup_symbol_list): Update comment.
6962 2008-05-19 Ulrich Weigand <uweigand@de.ibm.com>
6964 * symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
6965 (lookup_symbol): Likewise.
6966 * symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
6967 (lookup_symbol): Likewise.
6968 (search_symbols): Update.
6970 * linespec.c (find_methods, collect_methods): Update.
6971 (add_matching_methods, add_constructors): Update.
6972 (decode_compound, decode_dollar, decode_variable): Update.
6973 (lookup_prefix_sym): Update.
6975 (symbol_found): Remove SYM_SYMTAB parameter.
6976 Use SYMBOL_SYMTAB (sym) instead.
6978 * gdbtypes.c (lookup_typename): Update.
6979 (lookup_struct, lookup_union, lookup_enum): Update.
6980 (lookup_template_type): Update.
6981 (check_typedef): Update.
6982 * language.c (lang_bool_type): Update.
6983 * mdebugread.c (parse_procedure): Update.
6984 * mi/mi-cmd-stack.c (list_args_or_locals): Update.
6985 * parse.c (write_dollar_variable): Update.
6986 * printcmd.c (address_info): Update.
6987 * source.c (select_source_symtab): Update.
6988 * stack.c (print_frame_args, print_frame_arg_vars): Update.
6989 * valops.c (find_function_in_inferior): Update.
6990 (value_struct_elt_for_reference): Update.
6991 * value.c (value_static_field, value_fn_field): Update.
6993 * alpha-mdebug-tdep.c (find_proc_desc): Update.
6994 * arm-tdep.c (arm_skip_prologue): Update.
6995 * mt-tdep.c (mt_skip_prologue): Update.
6996 * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
6998 * ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
6999 * ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
7000 (add_defn_to_vec): Likewise.
7001 (ada_add_block_symbols): Likewise.
7002 (lookup_cached_symbol, cache_symbol): Likewise.
7003 (standard_lookup): Update.
7004 (ada_lookup_symbol_list): Update.
7006 * c-valprint.c (c_val_print): Update.
7007 * cp-support.c (cp_lookup_rtti_type): Update.
7008 * jv-lang.c (java_lookup_class, get_java_object_type): Update.
7009 * objc-lang.c (lookup_struct_typedef, find_imps): Update.
7010 * p-valprint.c (pascal_val_print): Update.
7011 * scm-lang.c (scm_lookup_name): Update.
7017 * objc-exp.y: Update.
7020 2008-05-19 Ulrich Weigand <uweigand@de.ibm.com>
7022 * language.h (struct language_defn): Remove SYMTAB parameter from
7023 la_lookup_symbol_nonlocal callback function pointer.
7025 * ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7026 (ada_lookup_encoded_symbol): Likewise.
7027 * ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7028 Always call fixup_symbol_section.
7029 (ada_lookup_symbol): Remove SYMTAB parameter.
7030 (ada_lookup_symbol_nonlocal): Likewise.
7031 * ada-exp.y (write_object_renaming): Update.
7032 (find_primitive_type): Likewise.
7034 * cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7035 (cp_lookup_symbol_namespace): Likewise.
7036 * cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
7037 (lookup_symbol_file): Likewise.
7038 (lookup_possible_namespace_symbol): Likewise.
7039 (cp_lookup_symbol_nonlocal): Likewise.
7040 (cp_lookup_symbol_namespace): Likewise.
7041 (cp_lookup_nested_type): Update.
7043 * scm-valprint.c (scm_inferior_print): Update.
7044 * valops.c (value_maybe_namespace_elt): Update.
7046 * solist.h (struct target_so_ops): Remove SYMTAB parameter from
7047 lookup_lib_global_symbol callback function pointer.
7048 (solib_global_lookup): Remove SYMTAB parameter.
7049 * solib.c (solib_global_lookup): Remove SYMTAB parameter.
7050 * solib-svr4.c (elf_lookup_lib_symbol): Likewise.
7052 * symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7053 (lookup_symbol_static): Likewise.
7054 (lookup_symbol_global): Likewise.
7055 (lookup_symbol_aux_block): Likewise.
7056 (lookup_global_symbol_from_objfile): Likewise.
7057 * symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
7058 (lookup_symbol_aux_local): Likewise.
7059 (lookup_symbol_aux_block): Likewise.
7060 (lookup_symbol_aux_symtabs): Likewise.
7061 (lookup_symbol_aux_psymtabs): Likewise.
7062 (lookup_global_symbol_from_objfile): Likewise.
7063 (basic_lookup_symbol_nonlocal): Likewise.
7064 (lookup_symbol_static): Likewise.
7065 (lookup_symbol_global): Likewise.
7067 (lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
7069 2008-05-17 Pedro Alves <pedro@codesourcery.com>
7071 * remote.c (init_extended_remote_ops): Fix typo.
7073 2008-05-16 Pedro Alves <pedro@codesourcery.com>
7075 * NEWS: Mention new DICOS x86 target configuration.
7077 2008-05-16 Pedro Alves <pedro@codesourcery.com>
7078 Ulrich Weigand <uweigand@de.ibm.com>
7080 * minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
7081 * symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
7083 * symtab.c (fixup_section): Remove prototype. Add ADDR parameter;
7084 use it instead of ginfo->value.address. Look up minimal symbol by
7085 address and name. Assume OBJFILE is non-NULL.
7086 (fixup_symbol_section): Ensure we always have an objfile to look
7087 into. Extract and pass to fixup_section the symbol's address that
7088 will match the minimal symbol's address.
7089 (fixup_psymbol_section): Likewise.
7091 (find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
7092 overlays and the addrmap returned the wrong section.
7094 * dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
7095 calling fixup_symbol_section.
7097 2008-05-16 Ulrich Weigand <uweigand@de.ibm.com>
7099 * minsyms.c: Include "target.h".
7100 (find_solib_trampoline_target): Handle minimal symbols pointing
7101 to function descriptors as well.
7102 * Makefile.in (minsyms.o): Update dependencies.
7104 * ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
7105 (ppc64_standard_linkage1): ... this. Fix optional instructions.
7106 (PPC64_STANDARD_LINKAGE_LEN): Rename to ...
7107 (PPC64_STANDARD_LINKAGE1_LEN): ... this.
7108 (ppc64_standard_linkage2, ppc64_standard_linkage3): New.
7109 (PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
7110 (ppc64_standard_linkage_target): Rename to ...
7111 (ppc64_standard_linkage1_target): ... this.
7112 (ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
7113 (ppc64_skip_trampoline_code): Support three variants of standard
7114 linkage stubs. Call find_solib_trampoline_target to handle
7117 2008-05-16 Ulrich Weigand <uweigand@de.ibm.com>
7119 * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
7120 ppc64_sysv_abi_adjust_breakpoint_address.
7121 * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7122 * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7124 2008-05-16 Ulrich Weigand <uweigand@de.ibm.com>
7126 * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
7127 (ppc_linux_init_abi): Install find_solib_trampoline_target instead
7128 of ppc_linux_skip_trampoline_code.
7130 2008-05-15 Daniel Jacobowitz <dan@codesourcery.com>
7132 * gdbarch.sh: Delete dwarf_reg_to_regnum.
7133 * gdbarch.c, gdbarch.h: Regenerated.
7134 * amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
7135 hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
7136 s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
7138 2008-05-15 Pedro Alves <pedro@codesourcery.com>
7140 * linux-nat.c (trap_ptid): Delete.
7141 (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
7143 * linux-thread-db.c (thread_db_wait): Adjust.
7145 2008-05-15 Joel Brobecker <brobecker@adacore.com>
7147 * linespec.c (decode_line_1): Fix a couple of comments.
7149 2008-05-15 Alan Modra <amodra@bigpond.net.au>
7151 * dbxread.c: Formatting.
7152 (INTERNALIZE_SYMBOL): Init n_other.
7153 (set_namestring): Take pointer to nlist arg rather than struct
7154 copy. Update all callers.
7156 2008-05-15 Andreas Schwab <schwab@suse.de>
7158 * Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
7159 (dwarf2read.o): Add $(addrmap_h).
7161 2008-05-14 Ulrich Weigand <uweigand@de.ibm.com>
7163 * ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
7164 (ppc64_linux_convert_from_func_ptr_addr): ... to this. No longer try
7165 to handle ppc32 PLT entries.
7166 (ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
7169 2008-05-14 Daniel Jacobowitz <dan@codesourcery.com>
7171 * elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
7172 * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
7173 lookup_minimal_symbol_by_pc_section. Prefer trampolines if requested.
7174 (lookup_minimal_symbol_by_pc_section): Use
7175 lookup_minimal_symbol_by_pc_section_1.
7176 (lookup_solib_trampoline_symbol_by_pc): Likewise.
7178 2008-05-13 Joel Brobecker <brobecker@adacore.com>
7180 * findcmd.c: Add #include "gdb_stdint.h".
7181 * Makefile.in (findcmd.o): Update dependencies.
7183 2008-05-11 David S. Miller <davem@davemloft.net>
7185 * sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
7186 long double size override, Linux does use 128-bit now.
7188 * sparc-linux-tdep.c (PSR_SYSCALL): Define.
7189 (sparc_linux_write_pc): New function.
7190 (sparc32_linux_init_abi): Register it.
7191 * sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
7192 (sparc64_linux_write_pc): New function.
7193 (sparc64_linux_init_abi): Register it.
7195 * sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
7196 dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
7198 2008-05-11 Ulrich Weigand <uweigand@de.ibm.com>
7200 * rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
7201 and info.tdep_info before calling gdbarch_init_osabi.
7203 2008-05-09 Joel Brobecker <brobecker@adacore.com>
7205 * ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
7206 the type of the right hand side of the assignment to the type
7207 of the left hand side if the left hand side is a convenience
7210 2008-05-09 Ulrich Weigand <uweigand@de.ibm.com>
7212 * NEWS: Mention gdbserver bi-arch capability.
7214 2008-05-09 Doug Evans <dje@google.com>
7217 * NEWS: Document find command and qSearch:memory packet.
7218 * Makefile.in (SFILES): Add findcmd.c.
7219 (COMMON_OBJS): Add findcmd.o.
7220 (findcmd.o): New rule.
7221 * findcmd.c: New file.
7222 * target.h (target_ops): New member to_search_memory.
7223 (simple_search_memory): Declare.
7224 (target_search_memory): Declare.
7225 * target.c (simple_search_memory): New fn.
7226 (target_search_memory): New fn.
7227 * remote.c (PACKET_qSearch_memory): New packet kind.
7228 (remote_search_memory): New fn.
7229 (init_remote_ops): Init to_search_memory.
7230 (init_extended_remote_ops): Ditto.
7231 (_initialize_remote): Add qSearch:memory packet config command.
7233 2008-05-09 Eli Zaretskii <eliz@gnu.org>
7235 * thread.c (_initialize_thread): Don't use commas and periods in
7236 first line of doc string of "set/show print thread-events".
7238 2008-05-08 Joel Brobecker <brobecker@adacore.com>
7240 * alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
7241 Update for unwinder changes.
7243 2008-05-08 Joel Brobecker <brobecker@adacore.com>
7245 * frame.c (get_frame_base_address, get_frame_locals_address)
7246 (get_frame_args_address): Pass the correct frame when calling
7247 frame_base_find_by_frame.
7249 2008-05-08 Ulrich Weigand <uweigand@de.ibm.com>
7251 * remote.c (extended_remote_attach_1): Call target_find_description.
7253 2008-05-08 Daniel Jacobowitz <dan@codesourcery.com>
7255 * remote.c (extended_remote_create_inferior_1): Clean up
7256 before marking the target running.
7258 2008-05-08 Joel Brobecker <brobecker@adacore.com>
7260 * hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
7263 2008-05-07 Joel Brobecker <brobecker@adacore.com>
7265 * sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
7266 sparc64-sol2-tdep.c: Update for unwinder changes.
7268 2008-05-07 Daniel Jacobowitz <dan@codesourcery.com>
7270 * cp-support.c (mangled_name_to_comp): Initialize storage.
7271 (unqualified_name_from_comp): Likewise.
7273 2008-05-07 Jie Zhang <jie.zhang@analog.com>
7275 * remote.c (remote_insert_breakpoint): Call get_remote_state
7276 after gdbarch_breakpoint_from_pc is called.
7277 (remote_insert_hw_breakpoint): Likewise.
7279 2008-05-06 Joel Brobecker <brobecker@adacore.com>
7281 * valprint.c (val_print): Add new language parameter and use it
7282 instead of using the current_language. Update calls to val_print
7284 (common_val_print): Add new langauge parameter and pass it to
7286 * value.h (struct language_defn): Add opaque declaration.
7287 (val_print, common_val_print): Update declarations.
7288 * stack.c (print_frame_args): Update call to common_val_print
7289 using the appropriate language.
7290 * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7291 * c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
7292 mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
7293 scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
7294 #include "language.h" if necessary.
7295 Update calls to val_print and common_val_print.
7296 * Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
7297 Update dependencies.
7299 2008-05-06 Joel Brobecker <brobecker@adacore.com>
7301 * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
7302 pointing inside a non-executable section as function descriptors.
7304 2008-05-06 Pedro Alves <pedro@codesourcery.com>
7306 * inf-loop.c (inferior_event_handler): Run all continuations and
7307 print any language change before running the breakpoint commands.
7309 2008-05-06 Joel Brobecker <brobecker@adacore.com>
7311 * frame-unwind.c (frame_unwind_got_bytes): New function.
7312 * frame-unwind.h (frame_unwind_got_bytes): Add declaration.
7313 * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
7314 for unwinder changes.
7316 2008-05-05 Doug Evans <dje@google.com>
7318 * NEWS: Mention new /m modifier for disassemble command.
7319 * cli/cli-cmds.c (print_disassembly): New function.
7320 (disassemble_current_function): New function
7321 (disassemble_command): Recognize /m modifier, print mixed
7323 (init_cli_cmds): Update disassemble help text.
7325 2008-05-05 Maxim Grigoriev <maxim2405@gmail.com>
7327 * xtensa-tdep.c: Update for unwinder changes.
7329 2008-05-05 Andreas Schwab <schwab@suse.de>
7331 Update m68k port for unwinder changes.
7332 * m68k-tdep.c (m68k_frame_cache): Expect this_frame.
7333 (m68k_frame_this_id, m68k_frame_prev_register): Update signature.
7334 (m68k_frame_unwind): Use default_frame_sniffer.
7335 (m68k_frame_sniffer): Remove.
7336 (m68k_frame_base_address): Expect this_frame.
7337 (m68k_dummy_id): Renamed from m68k_unwind_dummy_id. Expect
7339 (m68k_gdbarch_init): Use set_gdbarch_dummy_id,
7340 dwarf2_append_unwinders, and frame_unwind_append_unwinder.
7341 * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
7342 parameter instead of pc value.
7343 (m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
7345 (m68k_linux_sigtramp_frame_this_id)
7346 (m68k_linux_sigtramp_frame_prev_register)
7347 (m68k_linux_sigtramp_frame_sniffer): Update signature.
7348 (m68k_linux_sigtramp_frame_unwind): Use
7349 m68k_linux_sigtramp_frame_sniffer.
7350 (m68k_linux_init_abi): Use frame_unwind_append_unwinder.
7352 * m68klinux-nat.c (store_register): Fix typo.
7354 2008-05-05 Pedro Alves <pedro@codesourcery.com>
7356 * infcmd.c (step_1): Put thread id on the stack to avoid possible
7359 2008-05-05 Luis Machado <luisgpm@br.ibm.com>
7361 * symfile.c (reread_symbols): Update objfile's entry point.
7363 2008-05-05 Aleksandar Ristovski <aristovski@qnx.com>
7364 Joel Brobecker <brobecker@adacore.com>
7366 * ada-lang.c: Update throughout to use symbol_matches_domain
7367 instead of matching the symbol domain explictly.
7368 * dwarf2read.c (add_partial_symbol): Do not add new psym for
7369 STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
7370 class as typedefs. See lookup_partial_symbol function.
7371 (new_symbol): Similar to add_partial_symbol, do not create
7372 symbol for the typedef. See lookup_block_symbol.
7373 * symtab.c (symbol_matches_domain): New function, takes care
7374 of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
7375 (lookup_partial_symbol): Use symbol_matches_domain to see if the
7376 found psym domain matches the given domain.
7377 (lookup_block_symbol): Likewise.
7379 2008-05-05 Vladimir Prus <vladimir@codesourcery.com>
7381 * top.c (command_line_handler_continuation): Remove.
7382 (execute_command): Do not install the above.
7384 2008-05-05 Vladimir Prus <vladimir@codesourcery.com>
7386 * inf-loop.c (inferior_event_handler): Call bpstat_do_action,
7387 and catch all exceptions from it.
7388 * top.c (command_line_handler_continuation): Don't
7389 call bpstat_do_action here.
7391 2008-05-04 Daniel Jacobowitz <dan@codesourcery.com>
7393 * dwarf2read.c (struct dwarf2_cu): Add type_hash.
7394 (struct die_info): Remove type.
7395 (read_type_die, read_typedef, read_base_type, read_subrange_type)
7396 (read_structure_type, read_enumeration_type, read_array_type)
7397 (read_tag_pointer_type, read_tag_ptr_to_member_type)
7398 (read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
7399 (read_tag_string_type, read_subroutine_type, read_set_type)
7400 (read_unspecified_type): Delete prototypes. Remove check for
7401 already-loaded type. Return the new type.
7402 (set_die_type): Return the new type.
7403 (reset_die_and_siblings_types): Delete.
7404 (load_comp_unit, load_full_comp_unit): Set type_hash.
7405 (process_queue): Remove call to reset_die_and_siblings_types.
7406 (process_die): Do not read most types here. Use read_type_die
7408 (read_func_scope, dwarf2_add_member_fn): Use read_type_die.
7409 (quirk_gcc_member_function_pointer): Return the new type.
7410 (process_structure_scope, process_enumeration_scope): Use
7411 get_die_type and read the DIE's type.
7412 (read_full_die): Do not initialize die->type.
7413 (tag_type_to_type): Use read_type_die.
7414 (read_type_die): Check for already defined types. Return the
7416 (determine_prefix): Use get_die_type.
7417 (set_die_type): Return the type.
7418 (get_die_type): Take a CU argument. Check for no type_hash.
7420 2008-05-04 Daniel Jacobowitz <dan@codesourcery.com>
7422 * dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
7425 2008-05-04 Pedro Alves <pedro@codesourcery.com>
7427 * breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
7428 and bp_longjmp_resume breakpoints.
7429 (breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
7431 (create_longjmp_breakpoint): Don't create bp_longjmp_resume
7432 breakpoints. Create bp_longjmp breakpoints as momentary
7434 (enable_longjmp_breakpoint): Delete.
7435 (set_longjmp_breakpoint): New.
7436 (disable_longjmp_breakpoint): Delete.
7437 (delete_longjmp_breakpoint): New.
7438 (set_longjmp_resume_breakpoint): Delete.
7439 (set_momentary_breakpoint_at_pc): New.
7440 (breakpoint_re_set_one): Don't delete bp_longjmp and
7441 bp_longjmp_resume breakpoints.
7442 (breakpoint_re_set): Don't create longjmp and longjmp-resume
7445 * infrun.c (step_resume_breakpoint): Add comment.
7446 (struct execution_control_state): Delete handling_longjmp member.
7447 (init_execution_control_state). Don't clear handling_longjmp.
7448 (context_switch): Don't context switch handling_longjmp.
7449 (handle_inferior_event): If handling a bp_longjmp breakpoint,
7450 create a bp_longjmp_resume breakpoint, and set it as current
7451 step_resume_breakpoint, then step over the longjmp breakpoint. If
7452 handling a bp_longjmp_resume breakpoint, don't delete the longjmp
7453 breakpoint, delete the longjmp-resume breakpoint, and stop
7455 (currently_stepping): Remove handling_longjmp from expression.
7456 (insert_step_resume_breakpoint_at_sal): Update comment.
7457 (insert_longjmp_resume_breakpoint): New.
7459 * breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
7460 (enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
7462 (set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
7463 (set_longjmp_resume_breakpoint): Delete declaration.
7465 * gdbthread.h (save_infrun_state): Remove handling_longjmp
7467 (load_infrun_state): Delete *handling_longjmp parameter.
7468 * thread.c (save_infrun_state): Remove handling_longjmp parameter.
7470 (load_infrun_state): Delete *handling_longjmp parameter. Update
7473 * infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
7474 (delete_longjmp_breakpoint_cleanup): New.
7475 (step_1): Call set_longjmp_breakpoint instead of
7476 enable_longjmp_breakpoint. Use delete_longjmp_breakpoint_cleanup
7477 instead of disable_longjmp_breakpoint_cleanup when making cleanup.
7478 (step_1_continuation): Pass thread id in the continuation args to
7480 (step_once): Add thread parameter. Pass thread id the the
7483 2008-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
7485 Set CU BASE_ADDRESS already from partial DIEs.
7486 * dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
7487 BASE_ADDRESS_TYPE. Set these variables from DW_AT_LOW_PC and
7488 DW_AT_ENTRY_PC. Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
7489 from these variables if it was still unset.
7491 * Makefile.in: Update dependencies.
7492 * dwarf2read.c: Include "addrmap.h"
7493 (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
7494 (dwarf2_ranges_read): New prototype.
7495 (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
7496 Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
7497 HAS_RANGES_OFFSET, otherwise add there the contiguous range.
7498 (dwarf2_ranges_read): New parameter RANGES_PST, update the function
7499 comment for it. Add the found ranges to RANGES_PST. New variable
7500 BASEADDR, initialize it the common way.
7501 (dwarf2_get_pc_bounds): Update the caller for the new parameter.
7502 (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
7503 HAS_RANGES_OFFSET for the later processing.
7504 * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
7505 * symtab.c: Include "addrmap.h"
7506 (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
7507 Move the psymtab locator into ...
7508 (find_pc_sect_psymtab_closer): ... a new function.
7510 2008-05-04 Ulrich Weigand <uweigand@de.ibm.com>
7512 * arch-utils.c (gdbarch_update_p): Use default values for
7513 info.abfd and info.target_desc if they are NULL.
7514 (gdbarch_from_bfd): Remove assertion.
7515 (set_gdbarch_from_file): Call gdbarch_find_by_info directly,
7516 using the current target description.
7517 (gdbarch_info_fill): Do not use default values for info->abfd
7518 and info->target_desc.
7520 2008-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
7522 * symfile.c (reread_symbols): Reload EXEC_BFD on its change.
7524 2008-05-04 Ulrich Weigand <uweigand@de.ibm.com>
7526 * inferior.h (read_pc_pid, write_pc_pid): Remove.
7527 * regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.
7529 * regcache.c (read_pc_pid): Remove, replace by ...
7530 (regcache_read_pc): ... this function.
7531 (write_pc_pid): Remove, replace by ...
7532 (regcache_write_pc): ... this function.
7533 (read_pc, write_pc): Update.
7535 * infrun.c (displaced_step_prepare): Replace read_pc_pid and
7536 write_pc_pid by regcache_read_pc and regcache_write_pc.
7537 (displaced_step_fixup): Likewise.
7538 (resume): Likewise. Use regcache arch instead of current_gdbarch.
7539 (prepare_to_proceed): Likewise.
7540 (proceed): Likewise.
7541 (adjust_pc_after_break): Likewise.
7542 (handle_inferior_event): Likewise.
7544 * linux-nat.c (cancel_breakpoint): Likewise.
7545 * linux-thread-db.c (check_event): Likewise.
7546 * aix-thread.c (aix_thread_wait): Likewise.
7547 * tracepoint.c (trace_dump_command): Likewise.
7549 2008-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
7551 * dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
7552 SYMBOL_LOCATION_BATON.
7554 2008-05-04 Vladimir Prus <vladimir@codesourcery.com>
7556 * target.h (struct target_ops): New field to_auxv_parse.
7557 * auxv.c (default_auxv_parse): New, renamed from previous
7559 (target_auxv_parse): Try to call target method. Fallback to
7560 default_auxv_parse if not found.
7561 * procfs.c (procfs_auxv_parse): New.
7562 (init_procfs_ops): On Solaris, in 64-bit mode, install
7565 2008-05-03 Adam Nemet <anemet@caviumnetworks.com>
7567 * symfile.c (add_symbol_file_command): Use paddress rather than
7568 hex_string to print the address.
7570 2008-05-03 Ulrich Weigand <uweigand@de.ibm.com>
7572 * rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
7573 return the null frame ID to terminate the backtrace.
7575 2008-05-03 Ulrich Weigand <uweigand@de.ibm.com>
7577 * rs6000-tdep.c: Do not include "rs6000-tdep.h".
7578 (rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
7579 (SIG_FRAME_PC_OFFSET): Likewise.
7580 (SIG_FRAME_LR_OFFSET): Likewise.
7581 (SIG_FRAME_FP_OFFSET): Likewise.
7582 (rs6000_push_dummy_call): Likewise.
7583 (rs6000_return_value): Likewise.
7584 (rs6000_convert_from_func_ptr_addr): Likewise.
7585 (branch_dest, rs6000_software_single_step): Likewise.
7586 (deal_with_atomic_sequence): Rename to ...
7587 (ppc_deal_with_atomic_sequence): ... this. Adapt all callers.
7588 Do not call branch_dest; inline required parts of that function.
7589 (rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
7590 with SYMBOL_LINKAGE_NAME.
7591 (struct reg, regsize): Delete.
7592 (read_memory_addr): Delete; inline into callers.
7593 (rs6000_skip_prologue): Move after skip_prologue.
7594 (skip_prologue): Remove prototype.
7595 (rs6000_gdbarch_init): Remove sysv_abi variable; perform all
7596 initialization as if this variable were true. Do not install
7597 ppc64_sysv_abi_adjust_breakpoint_address.
7599 * rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
7600 "gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
7602 (rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
7603 (SIG_FRAME_PC_OFFSET): Likewise.
7604 (SIG_FRAME_LR_OFFSET): Likewise.
7605 (SIG_FRAME_FP_OFFSET): Likewise.
7606 (rs6000_push_dummy_call): Likewise.
7607 (rs6000_return_value): Likewise.
7608 (rs6000_convert_from_func_ptr_addr): Likewise.
7609 (branch_dest, rs6000_software_single_step): Likewise. Replace
7610 tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
7611 (rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
7612 rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
7613 Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
7614 Set tdep->lr_frame_offset. Do not set tdep->text_segment_base.
7616 * rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
7617 (AIX_TEXT_SEGMENT_BASE): New macro.
7618 * rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
7619 by AIX_TEXT_SEGMENT_BASE.
7621 * ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
7622 (struct gdbarch_tdep): Remove text_segment_base member.
7623 * ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
7624 ppc64_sysv_abi_adjust_breakpoint_address.
7626 * Makefile.in (rs6000-tdep.o): Update dependencies.
7627 (rs6000-aix-tdep.o): Likewise.
7629 2008-05-03 Luis Machado <luisgpm@br.ibm.com>
7630 Thiago Jung Bauermann <bauerman@br.ibm.com>
7632 * cli/cli-decode.c (lookup_cmd_1): Fix indentation.
7633 * doublest.c (convert_typed_floating): Fix typo in comment.
7634 * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
7635 * frame-unwind.h (frame_sniffer_ftype): Likewise.
7636 * frame.c (frame_unwind_address_in_block): Likewise.
7637 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
7638 * symtab.h (struct symbol): Likewise.
7639 * tramp-frame.h (struct trad_frame_cache): Likewise.
7640 * value.c (allocate_repeat_value): Likewise.
7642 2008-05-03 Ulrich Weigand <uweigand@de.ibm.com>
7644 * infrun.c (handle_inferior_event): Do not insert breakpoints at
7645 TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).
7647 2008-05-03 Pedro Alves <pedro@codesourcery.com>
7649 * parse.c (parse_exp_in_context): Don't override
7650 expression_context_pc if get_selected_block returned a valid
7653 2008-05-03 Daniel Jacobowitz <dan@codesourcery.com>
7655 * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
7656 * arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
7657 * breakpoint.c (args_for_catchpoint_enable, current_exception_event):
7659 * c-typeprint.c (c_type_print_base): Delete handling of template
7661 * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
7662 (METHOD_PTR_TO_VOFFSET): Delete.
7663 * defs.h (QUIT_FIXME): Delete.
7664 * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
7665 (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
7666 * gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
7667 ninstantiations, and instantiations.
7668 (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
7669 (TYPE_FN_FIELD_INLINED): Delete.
7670 * srec.h (SREC_BINARY): Delete.
7671 * symtab.c (symbol_init_demangled_name): Delete.
7672 * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
7673 (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
7674 (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
7675 (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
7676 (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
7677 (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
7678 * target.h (enum thread_control_capabilities): Delete tc_switch.
7679 (target_can_switch_threads): Delete.
7681 2008-05-03 Daniel Jacobowitz <dan@codesourcery.com>
7683 * Makefile.in (objfiles.o): Update.
7684 * exec.c (exec_set_section_address): Support p->addr != 0.
7685 * objfiles.c (objfile_relocate): Update exec_ops section
7687 * symfile.c (place_section): Move exec_set_section_address call...
7688 (default_symfile_offsets): ...to here.
7690 2008-05-03 Ulrich Weigand <uweigand@de.ibm.com>
7692 * Makefile.in (ppc_linux_tdep_h): New macro.
7693 (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
7694 (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
7695 (powerpc_e500l_c): Likewise.
7696 (ppc-linux-nat.o): Update dependencies.
7697 (ppc-linux-tdep.o): Update dependencies.
7698 (rs6000-tdep.o): Update dependencies.
7700 * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
7701 (ppc_linux_svr4_fetch_link_map_offsets): Remove.
7702 (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
7703 (ppc_supply_reg, ppc_collect_reg): Add prototypes.
7704 (tdesc_powerpc_e500): Remove.
7706 * rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
7707 and "features/rs6000/powerpc-altivec64.c".
7708 (ppc_supply_reg, ppc_collect_reg): Make global.
7709 (variants): Use tdesc_powerpc_32 for "powerpc" and
7710 tdesc_powerpc_altivec64 for "powerpc64".
7711 (_initialize_rs6000_tdep): Initialize AltiVec descriptions.
7713 * ppc-linux-tdep.h: New file.
7715 * ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
7716 Include "features/rs6000/powerpc-32l.c".
7717 Include "features/rs6000/powerpc-altivec32l.c".
7718 Include "features/rs6000/powerpc-64l.c".
7719 Include "features/rs6000/powerpc-altivec64l.c".
7720 Include "features/rs6000/powerpc-e500l.c".
7721 (ppc_linux_supply_gregset): New function.
7722 (ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
7723 (ppc32_linux_gregset): Use ppc_linux_supply_gregset.
7724 (ppc64_linux_gregset): Likewise.
7725 (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
7726 (ppc_linux_trap_reg_p): New function.
7727 (ppc_linux_write_pc): New function.
7728 (ppc_linux_core_read_description): New function.
7729 (ppc_linux_init_abi): Install ppc_linux_write_pc and
7730 ppc_linux_core_read_description. Install orig_r3 and trap
7731 registers if present in the target description.
7732 (_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
7734 * ppc-linux-nat.c: Include "ppc-linux-tdep.h".
7735 (PT_ORIG_R3, PT_TRAP): Define if necessary.
7736 (ppc_register_u_addr): Handle orig_r3 and trap registers.
7737 (fetch_ppc_registers): Likewise.
7738 (store_ppc_registers): Likewise.
7739 (store_register): Likewise.
7740 (ppc_linux_read_description): Check whether AltiVec is supported.
7741 Check whether inferior is 32-bit or 64-bit. Return the appropriate
7742 Linux target description.
7744 * features/Makefile (WHICH): Use rs6000/powerpc-32l and
7745 rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
7746 Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
7747 of rs6000/powerpc-64. Use rs6000/powerpc-e500l instead of
7748 rs6000/powerpc-e500. Update -expedite variables accordingly.
7750 * features/rs6000/power-spe.xml: Use regnum 73 for "acc".
7751 * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
7752 * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
7753 * features/rs6000/powerpc-e500.c: Regenerate.
7754 * features/rs6000/powerpc-32.c: Regenerate.
7755 * features/rs6000/powerpc-64.c: Regenerate.
7757 * features/rs6000/power-linux.xml: New file.
7758 * features/rs6000/power64-linux.xml: New file.
7759 * features/rs6000/powerpc-32l.xml: New file.
7760 * features/rs6000/powerpc-altivec32l.xml: New file.
7761 * features/rs6000/powerpc-64l.xml: New file.
7762 * features/rs6000/powerpc-altivec64l.xml: New file.
7763 * features/rs6000/powerpc-e500l.xml: New file.
7764 * features/rs6000/powerpc-32l.c: New (generated) file.
7765 * features/rs6000/powerpc-altivec32l.c: New (generated) file.
7766 * features/rs6000/powerpc-64l.c: New (generated) file.
7767 * features/rs6000/powerpc-altivec64l.c: New (generated) file.
7768 * features/rs6000/powerpc-e500l.xml: New (generated) file.
7770 * regformats/reg-ppc.dat: Remove.
7771 * regformats/reg-ppc64.dat: Remove.
7772 * regformats/rs6000/powerpc-32.dat: Remove.
7773 * regformats/rs6000/powerpc-64.dat: Remove.
7774 * regformats/rs6000/powerpc-e500.dat: Remove.
7775 * regformats/rs6000/powerpc-32l.dat: New (generated) file.
7776 * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
7777 * regformats/rs6000/powerpc-64l.dat: New (generated) file.
7778 * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
7779 * regformats/rs6000/powerpc-e500l.dat: New (generated) file.
7781 2008-05-03 Pedro Alves <pedro@codesourcery.com>
7783 * thread.c (delete_thread): Call observer_notify_thread_exit.
7784 * mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
7785 thread_exit observer.
7786 (mi_thread_exit): New.
7788 2008-05-03 Thiago Jung Bauermann <bauerman@br.ibm.com>
7790 * breakpoint.c (create_exception_catchpoint): Remove prototype
7791 for already deleted function.
7792 * breakpoint.h (ep_is_exception_catchpoint): Likewise.
7793 * frame.h (show_stack_frame): Remove prototype.
7794 * stack.c (show_stack_frame): Remove empty, unused function.
7795 * source.c (symtab_to_fullname, print_source_lines): Small fix
7797 * value.c (show_values): Update comments to mention "show values"
7798 command instead of "info history".
7800 2008-05-02 Ulrich Weigand <uweigand@de.ibm.com>
7802 * linespec.c: Include "target.h".
7803 (minsym_found): Handle minimal symbols pointing to function
7804 descriptors. Use find_function_start_pc.
7805 * minsyms.c (msymbol_objfile): New function.
7806 * parse.c (write_exp_msymbol): Handle minimal symbols pointing
7807 to function descriptors.
7808 * symtab.c (fixup_section): Only use minimal symbol at the same
7809 address to determine section of a symbol.
7810 (find_function_start_pc): New function.
7811 (find_function_start_sal): Use it.
7812 * symtab.h (msymbol_objfile): Add prototype.
7813 (find_function_start_pc): Likewise.
7814 * value.c: Include "objfiles.h".
7815 (value_fn_field): Handle minimal symbols pointing to function
7817 * Makefile.in (linespec.o): Update dependencies.
7818 (value.o): Likewise.
7820 2008-05-02 Joel Brobecker <brobecker@adacore.com>
7822 * ada-lang.c (unwrap_value): Handle the case where the "F" field
7823 inside a PAD type is a bitfield.
7825 2008-05-02 Ulrich Weigand <uweigand@de.ibm.com>
7827 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
7828 TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
7829 Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
7830 Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
7831 Allow typedefs when checking for function pointer arguments.
7832 Right-align small structs passed on the stack.
7833 (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
7834 TYPE_CODE_CHAR the same as TYPE_CODE_INT.
7835 Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
7837 2008-05-02 Daniel Jacobowitz <dan@codesourcery.com>
7839 * Makefile.in (arm-tdep.o): Update.
7840 * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
7841 (struct arm_per_objfile, arm_compare_mapping_symbols): New.
7842 (arm_pc_is_thumb): Use mapping symbols.
7843 (arm_objfile_data_cleanup, arm_record_special_symbol): New.
7844 (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
7845 (_initialize_arm_tdep): Initialize arm_objfile_data_key.
7846 * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
7847 * gdbarch.sh: Add record_special_symbol.
7848 * gdbarch.c, gdbarch.h: Regenerated.
7849 * objfiles.c (struct objfile_data): Add cleanup member.
7850 (register_objfile_data_with_cleanup): New function, from
7851 register_objfile_data.
7852 (register_objfile_data): Use it.
7853 (objfile_free_data): Call clear_objfile_data.
7854 (clear_objfile_data): Call cleanup functions.
7855 * objfiles.h (register_objfile_data_with_cleanup): Declare.
7857 2008-05-02 Daniel Jacobowitz <dan@codesourcery.com>
7859 * objfiles.c (init_entry_point_info): Handle shared libraries.
7861 2008-05-02 Daniel Jacobowitz <dan@codesourcery.com>
7863 * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
7866 2008-05-02 Jim Blandy <jimb@codesourcery.com>
7867 Pedro Alves <pedro@codesourcery.com>
7869 Implement displaced stepping.
7871 * gdbarch.sh (max_insn_length): New 'variable'.
7872 (displaced_step_copy, displaced_step_fixup)
7873 (displaced_step_free_closure, displaced_step_location): New
7875 (struct displaced_step_closure): Add forward declaration.
7876 * gdbarch.c, gdbarch.h: Regenerated.
7878 * arch-utils.c: #include "objfiles.h".
7879 (simple_displaced_step_copy_insn)
7880 (simple_displaced_step_free_closure)
7881 (displaced_step_at_entry_point): New functions.
7882 * arch-utils.h (simple_displaced_step_copy_insn)
7883 (simple_displaced_step_free_closure)
7884 (displaced_step_at_entry_point): New prototypes.
7886 * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
7887 (I386_MAX_MATCHED_INSN_LEN): ... this.
7888 (i386_absolute_jmp_p, i386_absolute_call_p)
7889 (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
7890 (i386_displaced_step_fixup): New functions.
7891 (struct i386_insn, i386_match_insn): Update.
7892 (i386_gdbarch_init): Set gdbarch_max_insn_length.
7893 * i386-tdep.h (I386_MAX_INSN_LEN): New.
7894 (i386_displaced_step_fixup): New prototype.
7895 * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
7896 Register gdbarch_displaced_step_copy,
7897 gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
7898 and gdbarch_displaced_step_location functions.
7900 * infrun.c (debug_displaced): New variable.
7901 (show_debug_displaced): New function.
7902 (struct displaced_step_request): New struct.
7903 (displaced_step_request_queue, displaced_step_ptid)
7904 (displaced_step_gdbarch, displaced_step_closure)
7905 (displaced_step_original, displaced_step_copy)
7906 (displaced_step_saved_copy, can_use_displaced_stepping): New
7908 (show_can_use_displaced_stepping, use_displaced_stepping)
7909 (displaced_step_clear, cleanup_displaced_step_closure)
7910 (displaced_step_dump_bytes, displaced_step_prepare)
7911 (displaced_step_clear_cleanup, write_memory_ptid)
7912 (displaced_step_fixup): New functions.
7913 (resume): Call displaced_step_prepare.
7914 (proceed): Call read_pc once, and remember the value. If using
7915 displaced stepping, don't remove breakpoints.
7916 (handle_inferior_event): Call displaced_step_fixup. Add some
7917 debugging output. When we try to step over a breakpoint, but get
7918 a signal to deliver to the thread instead, ensure the step-resume
7919 breakpoint is actually inserted. If a thread hop is needed, and
7920 displaced stepping is enabled, don't remove breakpoints.
7921 (init_wait_for_inferior): Call displaced_step_clear.
7922 (_initialize_infrun): Add "set debug displaced" command. Add
7923 "maint set can-use-displaced-stepping" command. Clear
7924 displaced_step_ptid.
7925 * inferior.h (debug_displaced): Declare variable.
7926 (displaced_step_dump_bytes): Declare function.
7928 * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
7931 2008-05-02 Daniel Jacobowitz <dan@codesourcery.com>
7933 * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
7934 (arm_force_mode_string, arm_show_fallback_mode)
7935 (arm_show_force_mode): New.
7936 (arm_pc_is_thumb): Honor fallback-mode and force-mode. Use
7938 (_initialize_arm_tdep): Add "set arm fallback-mode"
7939 and "set arm force-mode".
7940 * NEWS: Document new commands.
7942 2008-05-02 Andrew Stubbs <andrew.stubbs@st.com>
7944 * main.h (batch_silent): Declare.
7945 * event-top.c: Include main.h.
7946 (gdb_setup_readline): Remove extern batch_silent declaration.
7947 * infrun.c (normal_stop): Don't print source location when running in
7948 --batch-silent mode.
7949 * Makefile.in (event-top.o): Add main.h dependency.
7951 2008-05-02 Andreas Schwab <schwab@suse.de>
7953 * target.h (struct target_ops): Add
7954 to_watchpoint_addr_within_range.
7955 (target_watchpoint_addr_within_range): New function.
7956 * target.c (update_current_target): Inherit
7957 to_watchpoint_addr_within_range, defaulting to
7958 default_watchpoint_addr_within_range.
7959 (default_watchpoint_addr_within_range): New function.
7960 (debug_to_watchpoint_addr_within_range): New function.
7961 (setup_target_debug): Set to_watchpoint_addr_within_range.
7962 * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
7964 (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
7965 * breakpoint.c (watchpoints_triggered): Use
7966 target_watchpoint_addr_within_range.
7968 2008-05-01 Pedro Alves <pedro@codesourcery.com>
7970 * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
7971 (i[34567]86-*-dicos*, x86_64-*-dicos*):
7972 Set gdb_osabi to GDB_OSABI_DICOS.
7974 * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
7975 * osabi.c (gdb_osabi_name): Add "DICOS".
7977 * i386-dicos-tdep.c: New file.
7979 * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
7980 (ALLDEPFILES): Add i386-dicos-tdep.c.
7981 (i386-dicos-tdep.o): New rule.
7983 2008-05-01 Pedro Alves <pedro@codesourcery.com>
7985 * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
7986 and register the fork's PTID as a thread.
7988 2008-05-01 Aleksandar Ristovski <aristovski@qnx.com>
7991 * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
7992 assign its value to the breakpoint created.
7993 (create_breakpoints): Add breakpoint_ops argument and pass it
7994 to create_breakpoint call.
7995 (break_command_really): Add breakpoint_ops argument and pass/assign
7997 (break_command_1): Pass NULL as ops argument.
7998 (set_breakpoint): Pass NULL as ops argument.
7999 (print_one_exception_catchpoint): Print <PENDING> if no loc available.
8000 (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
8001 catch and throw catchpoints.
8003 2008-05-01 Aleksandar Ristovski <aristovski@qnx.com>
8006 * corelow.c (core_open): Use gdbarch_target_signal_from_host to
8007 translate signal numeric value from the target to GDB's enum
8009 * gdbarch.c, gdbarch.h: Regenerated.
8010 * gdbarch.sh: Added two new functions target_signal_from_host and
8011 target_signal_to_host.
8012 * target.h (default_target_signal_from_host,
8013 default_target_signal_to_host): New functions - declarations.
8014 * signals/signals.c (struct gdbarch): New declaration.
8015 (default_target_signal_to_host, default_target_signal_from_host): New
8018 2008-05-01 Daniel Jacobowitz <dan@codesourcery.com>
8019 Pedro Alves <pedro@codesourcery.com>
8021 Based on work by Jan Kratochvil <jan.kratochvil@redhat.com> and Jeff
8022 Johnston <jjohnstn@redhat.com>.
8024 * NEWS: Mention attach to stopped process fix.
8025 * infcmd.c (detach_command, disconnect_command): Discard the thread
8027 * infrun.c (handle_inferior_event): Do not ignore non-SIGSTOP while
8028 attaching. Use signal_stop_state.
8029 (signal_stop_state): Check stop_soon.
8030 * linux-nat.c (kill_lwp): Declare earlier.
8031 (pid_is_stopped, linux_nat_post_attach_wait): New.
8032 (lin_lwp_attach_lwp): Use linux_nat_post_attach_wait. Update
8034 (linux_nat_attach): Use linux_nat_post_attach_wait.
8035 (detach_callback, linux_nat_detach): Improve handling for signalled
8037 (linux_nat_pid_to_str): Always print out the LWP ID if it differs
8038 from the process ID.
8039 * Makefile.in (infcmd.o): Update.
8041 2008-05-01 Daniel Jacobowitz <dan@codesourcery.com>
8043 * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
8044 * arm-tdep.c (arm_frame_is_thumb): New.
8045 (arm_pc_is_thumb): Clarify comment.
8046 (thumb_analyze_prologue): Remove PC special case.
8047 (thumb_scan_prologue): Take a block_addr argument. Use it for
8048 find_pc_partial_function. Remove unused variables.
8049 (arm_scan_prologue): Use arm_frame_is_thumb. Use the block address
8050 for find_pc_partial_function. Remove PC special case.
8051 (arm_prologue_prev_register): Add special handling for PC and CPSR.
8052 (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
8053 (arm_get_next_pc): Use arm_frame_is_thumb.
8054 (arm_write_pc): Use CPSR_T instead of 0x20.
8055 (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
8056 * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
8058 * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
8059 DWARF2_FRAME_REG_FN.
8060 * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
8061 DWARF2_FRAME_REG_FN.
8062 (struct dwarf2_frame_state_reg): Add FN to loc union.
8064 2008-05-01 Nick Roberts <nickrob@snap.net.nz>
8066 * exec.c (print_section_info): Add missing '\n'.
8068 2008-05-01 Vladimir Prus <vladimir@codesourcery.com>
8070 * thread.c (add_thread): Move observer call to ...
8071 (add_thread_silent): ... here.
8073 2008-04-30 Ulrich Weigand <uweigand@de.ibm.com>
8075 * rs6000-tdep.c: Update for unwinder changes.
8076 * ppcobsd-tdep.c: Likewise.
8078 2008-04-30 Ulrich Weigand <uweigand@de.ibm.com>
8080 * s390-tdep.c: Update for unwinder changes.
8082 2008-04-30 Ulrich Weigand <uweigand@de.ibm.com>
8084 * spu-tdep.c: Update for unwinder changes.
8086 2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
8088 * hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
8089 ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
8090 sparc64-linux-tdep.c: Update for unwinder changes.
8092 2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
8094 * mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
8095 for unwinder changes.
8096 * mips-tdep.c: Likewise.
8097 (mips_stub_frame_cache): Unwind the ABI stack pointer, not the
8100 2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
8102 * arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
8105 2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
8107 Update i386 and amd64 ports for unwinder changes.
8109 * amd64-tdep.c (amd64_frame_cache): Expect this_frame.
8110 (amd64_frame_this_id, amd64_frame_prev_register): Update signature.
8111 (amd64_frame_unwind): Use default_frame_sniffer.
8112 (amd64_frame_sniffer): Delete.
8113 (amd64_sigtramp_frame_cache): Expect this_frame.
8114 (amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
8115 (amd64_sigtramp_frame_sniffer): Update signature.
8116 (amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
8117 (amd64_frame_base_address): Expect this_frame.
8118 (amd64_dummy_id): Renamed from amd64_unwind_dummy_id. Expect
8120 (amd64_init_abi): Use set_gdbarch_dummy_id and
8121 frame_unwind_append_unwinder.
8122 * i386-tdep.c (i386_frame_cache): Expect this_frame.
8123 (i386_frame_this_id, i386_frame_prev_register): Update signature.
8124 (i386_frame_unwind): Use default_frame_sniffer.
8125 (i386_frame_sniffer): Delete.
8126 (i386_sigtramp_frame_cache): Expect this_frame.
8127 (i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
8128 (i386_sigtramp_frame_sniffer): Update signature.
8129 (i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
8130 (i386_frame_base_address): Update signature.
8131 (i386_dummy_id): Rename from i386_unwind_dummy_id. Expect this_frame.
8132 (i386_push_dummy_call): Update comment.
8133 (i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
8135 (i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
8136 and frame_unwind_append_unwinder.
8137 * amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
8138 amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
8139 i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
8140 i386nbsd-tdep.c: Update for unwinder changes.
8142 2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
8144 * trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
8145 (trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
8147 (trad_frame_get_prev_register, trad_frame_get_register): Update signature.
8148 * trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
8149 (trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
8151 * tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
8153 (tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
8155 * tramp-frame.h (struct tramp_frame): Update signature of init.
8156 * Makefile.in (trad-frame.o): Update.
8158 2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
8160 * dwarf2-frame.c (read_reg): Expect this_frame in the baton.
8161 (execute_stack_op): Put this_frame in the baton.
8162 (execute_cfa_program): Take this_frame.
8163 (struct dwarf2_frame_ops): Update comment for signal_frame_p.
8164 (dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
8165 (dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
8166 (dwarf2_frame_this_id): Adjust to work on this_frame.
8167 (dwarf2_signal_frame_this_id): Delete.
8168 (dwarf2_frame_prev_register): Update signature. Use new frame
8170 (dwarf2_frame_sniffer): Update signature. Expect this_frame.
8171 (dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
8172 dwarf2_frame_sniffer.
8173 (dwarf2_append_unwinders): New.
8174 (dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
8176 * sparc-tdep.c (sparc32_dwarf2_struct_return_p)
8177 (sparc32_dwarf2_frame_init_reg): Expect this_frame.
8178 * cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
8179 * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
8180 * s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
8181 * sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
8182 * sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
8183 * dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
8184 (dwarf2_append_unwinders): Declare.
8185 (dwarf2_frame_base_sniffer): Update declaration.
8186 * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
8189 2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
8191 Convert frame unwinders to use the current frame and
8194 * frame.c (frame_debug): Make global.
8195 (get_frame_id): Pass this frame to unwinder routines.
8196 (frame_pc_unwind): Remove unused unwind->prev_pc support.
8197 (do_frame_register_read): Do not discard the return value of
8198 frame_register_read.
8199 (frame_register_unwind): Remove debug messages. Use
8200 frame_unwind_register_value.
8201 (frame_unwind_register_value, get_frame_register_value): New
8203 (create_new_frame, get_frame_base_address, get_frame_locals_address)
8204 (get_frame_args_address, get_frame_type): Pass this frame to
8206 (frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
8208 * frame.h: Update comments.
8209 (frame_debug, frame_unwind_register_value, get_frame_register_value)
8210 (frame_prepare_for_sniffer): Declare.
8211 * frame-unwind.h: Update comments and parameter names.
8212 (default_frame_sniffer): Declare.
8213 (frame_prev_register_ftype): Return a struct value *.
8214 (struct frame_unwind): Remove prev_pc member.
8215 (frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
8216 (frame_unwind_append_unwinder, frame_unwind_got_optimized)
8217 (frame_unwind_got_register, frame_unwind_got_memory)
8218 (frame_unwind_got_constant, frame_unwind_got_address): Declare.
8219 * frame-base.h: Update comments and parameter names.
8220 * valops.c (value_fetch_lazy): Use get_frame_register_value. Iterate
8221 if necessary. Add debugging output.
8222 * sentinel-frame.c (sentinel_frame_prev_register)
8223 (sentinel_frame_this_id): Update for new signature.
8224 (sentinel_frame_prev_pc): Delete.
8225 (sentinel_frame_unwinder): Remove prev_pc.
8226 * ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
8228 * libunwind-frame.c (libunwind_frame_unwind): Likewise.
8229 * frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
8230 (frame_unwind_append_sniffer): Delete.
8231 (frame_unwind_append_unwinder): New function.
8232 (frame_unwind_find_by_frame): Take this frame. Only use sniffers
8233 from unwinders. Use frame_prepare_for_sniffer.
8234 (default_frame_sniffer, frame_unwind_got_optimized)
8235 (frame_unwind_got_register, frame_unwind_got_memory)
8236 (frame_unwind_got_constant, frame_unwind_got_address): New functions.
8237 * dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
8238 (dummy_frame_prev_register, dummy_frame_this_id): Update for new
8240 * gdbarch.sh: Replace unwind_dummy_id with dummy_id.
8241 * gdbarch.c, gdbarch.c: Regenerated.
8242 * frame-base.c (default_frame_base_address)
8243 (default_frame_locals_address, default_frame_args_address): Update
8245 (frame_base_find_by_frame): Pass this frame to unwinder routines.
8246 * infcall.c (call_function_by_hand): Update comments.
8247 * Makefile.in (frame-unwind.o): Update dependencies.
8249 2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
8251 * ada-lang.c (ada_value_primitive_packed_val): Only check
8252 value_lazy for memory lvals.
8253 * findvar.c (value_of_register_lazy): New function.
8254 (locate_var_value): Only check value_lazy for memory lvals.
8255 * valarith.c (value_subscripted_rvalue): Likewise.
8256 * valops.c (value_fetch_lazy): Handle both memory and register
8258 (search_struct_field, value_slice): Only check value_lazy for memory
8260 * value.c (struct value): Update comment for lazy.
8261 (value_primitive_field): Only check value_lazy for memory lvals.
8262 * value.h (value_lazy): Update comment.
8263 (value_of_register_lazy): Declare.
8265 2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
8267 * corefile.c (reopen_exec_file): Close any open files.
8269 2008-04-29 Joel Brobecker <brobecker@adacore.com>
8271 * ia64-tdep.c (ia64_memory_remove_breakpoint): Set
8272 show_memory_breakpoints to 1 while reading the instruction bundle.
8274 2008-04-29 Joel Brobecker <brobecker@adacore.com>
8276 * gdbarch.sh: Document the return_value method. Explain that
8277 the FUNCTYPE parameter might be NULL.
8278 * gdbarch.h: Regenerated.
8279 * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
8280 type when calling using_struct_return, as this is unnecessary
8283 2008-04-28 Joel Brobecker <brobecker@adacore.com>
8285 * terminal.h (create_tty_session): Fix return type.
8287 2008-04-26 Vladimir Prus <vladimir@codesourcery.com>
8289 * mi/mi-interp.c (mi_new_thread): Quote the thread id.
8291 2008-04-26 Joel Brobecker <brobecker@adacore.com>
8293 * breakpoint.c (condition_command, commands_from_control_command)
8294 (break_command_really): Minor reformatting.
8296 2008-04-25 Pedro Alves <pedro@codesourcery.com>
8298 * dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.
8300 2008-04-25 Pedro Alves <pedro@codesourcery.com>
8302 * amd64-tdep.c (amd64_get_longjmp_target): New.
8303 (amd64_init_abi): Register amd64_get_longjmp_target as
8304 gdbarch_get_longjmp_target callback.
8305 * i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
8307 2008-04-25 Pedro Alves <pedro@codesourcery.com>
8309 * breakpoint.h (enum bpstat_what_main_action): Delete
8310 BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
8312 * breakpoint.c (clrs): Delete.
8313 (bpstat_what): Update table.
8315 * infrun.c (handle_inferior_event): Remove
8316 BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
8318 2008-04-24 Vladimir Prus <vladimir@codesourcery.com>
8320 * mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
8321 Adjust all prototypes using mi_cmd_args_ftype to use
8323 (struct mi_cmd): Remove the args_func field.
8324 * mi/mi-cmds.c: Don't provide value for the args_func field.
8325 * mi/mi-main.c (mi_execute_async_cli_command)
8326 (mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
8327 (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
8328 (mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
8329 (mi_cmd_exec_continue, mi_cmd_exec_interrupt)
8330 (mi_cmd_target_download): Adjust.
8331 (mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
8332 (mi_cmd_execute): Do not check for args_func.
8333 (mi_execute_async_cli_command): Adjust.
8334 * mi/mi-parse.c: Don't check for args_func.
8336 2008-04-24 Vladimir Prus <vladimir@codesourcery.com>
8338 * breakpoint.c (bpstat_check_location)
8339 (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
8340 New, extracted from bpstat_stop_status.
8341 (bpstat_stop_status): Use the above.
8343 2008-04-24 Vladimir Prus <vladimir@codesourcery.com>
8345 * mi/mi-main.c (last_async_command): Rename to current_token.
8346 (previous_async_command): Remove.
8347 (mi_cmd_gdb_exit): Adjust.
8348 (mi_cmd_exec_interrupt): Don't dance with previous_async_command.
8349 (mi_cmd_target_select): Adjust.
8350 (mi_cmd_execute): Don't set previous_async_command. Free token
8351 here even in async mode.
8352 (mi_execute_async_cli_command): Adjust.
8353 (mi_exec_async_cli_cmd_continuation): Adjust. Do not free the
8355 (mi_load_progress): Adjust.
8357 2008-04-24 Vladimir Prus <vladimir@codesourcery.com>
8359 * infcmd.c (step_1_continuation): Always disable longjmp
8360 breakpoint if we're not going to do another step.
8362 2008-04-24 Vladimir Prus <vladimir@codesourcery.com>
8364 exec_cleanup murder.
8365 * breakpoint.c (until_break_command_continuation): Add
8366 the 'error' parameter. Directly delete the breakoint as
8367 opposed to running cleanups.
8368 (until_break_command): Install continuation only
8369 after starting the target. Don't use exec cleanups,
8370 use ordinary cleanups. Discard cleanups is successfully
8371 started the target in async mode.
8372 (make_cleanup_delete_breakpoint): Remove.
8373 * breakpoint.h (make_cleanup_delete_breakpoint): Remove
8375 * defs.h (do_exec_cleanups, make_exec_cleanup): Remove
8377 (struct continations): Add the 'error' parameter to the
8378 continuation_hook field.
8379 (add_continuation, do_all_continuations)
8380 (add_intermediate_continuation)
8381 (do_all_intermediate_continuations): Add the 'error' parameter.
8382 * exceptions.c (throw_exception): Don't call do_exec_cleanups.
8383 * inf-loop.c (inferior_event_handler): Instead of calling
8384 discard_all_continuations, use do_all_continuations with 1 as
8385 'error' parameter. Pass 0 as 'error' parameter in existing uses
8386 of discard_all_continuations.
8387 * infcmd.c (step_1): Do not use exec cleanup. For async case, discard
8389 (step_once): Install continuation only after resuming the target.
8390 (step_1_continuation): Disable longjmp breakpoint on error.
8391 (finish_command_continuation): Add the error parameter. Delete
8392 the finish breakpoint directly, do not use cleanups.
8393 (finish_command): Do not use exec_cleanups. Always setup
8394 continuation. For sync case, immediately run them.
8395 (attach_command_continuation): Add the error parameter.
8396 * infrun.c (fetch_inferior_event): Do not use exec cleanups to
8397 remove step_resume_breakpoint -- adjust delete it directly.
8398 * interps.c (interp_set): Adjust call to do_all_continations.
8399 * mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
8401 * mi/mi-main.c (mi_cmd_target_select): Do not do exec
8403 (mi_cmd_execute): Do not use exec_cleanup.
8404 (mi_execute_async_cli_command): Simplify the string concatenation
8405 logic. Do no use exec cleanup.
8406 (mi_exec_async_cli_cmd_continuation): New parameter error.
8407 Free last_async_command.
8408 * top.c (command_line_handler_continuation): New parameter error.
8409 * utils.c (exec_cleanup_chain, make_exec_cleanup)
8410 (do_exec_cleanups): Remove.
8411 (add_continuation, do_all_continations)
8412 (add_intermediate_continuation)
8413 (do_all_intermediate_continuations): New parameter error.
8415 2008-04-24 Vladimir Prus <vladimir@codesourcery.com>
8417 * breakpoint.h (bp_location_p): New typedef.
8418 Register a vector of bp_location_p.
8419 * breakpoint.c (always_inserted_mode)
8420 (show_always_inserted_mode): New.
8421 (unlink_locations_from_global_list): Remove.
8422 (update_global_location_list)
8423 (update_global_location_list_nothrow): New.
8424 (update_watchpoint): Don't free locations.
8425 (should_insert_location): New.
8426 (insert_bp_location): Use should_insert_location.
8427 (insert_breakpoint_locations): Copied from
8429 (insert_breakpoint): Use insert_breakpoint_locations.
8430 (bpstat_stop_status): Call update_global_location_list
8431 when disabling breakpoint.
8432 (allocate_bp_location): Don't add to bp_location_chain.
8433 (set_raw_breakpoint)
8434 (create_longjmp_breakpoint, enable_longjmp_breakpoint)
8435 (disable_longjmp_breakpoint, create_overlay_event_breakpoint)
8436 (enable_overlay_breakpoints, disable_overlay_breakpoints)
8437 (set_longjmp_resume_breakpoint)
8438 (enable_watchpoints_after_interactive_call_stop)
8439 (disable_watchpoints_before_interactive_call_start)
8440 (create_internal_breakpoint)
8441 (create_fork_vfork_event_catchpoint)
8442 (create_exec_event_catchpoint, set_momentary_breakpoint)
8443 (create_breakpoints, break_command_1, watch_command_1)
8444 (create_exception_catchpoint)
8445 (handle_gnu_v3_exceptions)
8446 (disable_breakpoint, breakpoint_re_set_one)
8447 (create_thread_event_breakpoint, create_solib_event_breakpoint)
8448 (create_ada_exception_breakpoint): : Don't call check_duplicates.
8449 Call update_global_location_list.
8450 (delete_breakpoint): Don't remove locations and don't
8451 try to reinsert them. Call update_global_location_list.
8452 (update_breakpoint_locations): Likewise.
8453 (restore_always_inserted_mode): New.
8454 (update_breakpoints_after_exec): Temporary disable
8455 always inserted mode.
8456 * Makefile.in: Update dependencies.
8458 * infrun.c (proceed): Remove breakpoints while stepping
8460 (handle_inferior_event): Don't remove or insert
8462 * linux-fork.c (checkpoint_command): Remove breakpoints
8463 before fork and insert after.
8464 (linux_fork_context): Remove breakpoints before switch
8466 * target.c (target_disconnect, target_detach): Remove
8467 breakpoints from target.
8470 2008-04-24 Vladimir Prus <vladimir@codesourcery.com>
8472 * breakpoint.c (print_one_breakpoint_location): In MI
8473 mode, report the location string the breakpoint was
8474 originally created with.
8476 2008-04-23 Maxim Grigoriev <maxim2405@gmail.com>
8478 * Makefile.in (xtensa-tdep.o): Update dependencies.
8479 * configure.tgt (xtensa*): Update dependencies.
8480 * xtensa-tdep.c (arreg_number): Renamed from areg_number.
8481 Local variable areg renamed to arreg.
8482 (areg_number): New function.
8483 (xtensa_pseudo_register_read, xtensa_pseudo_register_write)
8484 (xtensa_extract_return_value, xtensa_store_return_value): areg_number
8485 replaced by arreg_number.
8486 (xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
8487 (xtensa_alloc_frame_cache): Initialize cache->wd.ws.
8488 (xtensa_scan_prologue): New function.
8489 (xtensa_frame_cache): New local fp_regnum. Handle separately the case,
8490 when ENTRY instraction hasn't been executed yet. Get the frame pointer
8491 value based on prologue analysis. Fix the bugs preventing WS and
8492 AR4-AR7/A11 registers from getting right values for intermediate frames,
8493 whose registers have been already spilled.
8494 (xtensa_frame_prev_register): Fix WS register value. Use are_number
8495 and arreg_number appropriately.
8496 (xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
8497 svr4_ilp32_fetch_link_map_offsets.
8499 2008-04-23 Andrew Stubbs <andrew.stubbs@st.com>
8501 * printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
8502 (printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
8504 2008-04-23 Paolo Bonzini <bonzini@gnu.org>
8506 * acinclude.m4: Add override.m4.
8507 * configure: Regenerate.
8509 2008-04-22 Jan Kratochvil <jan.kratochvil@redhat.com>
8511 * ada-lang.c (get_selections): Variable PROMPT made non-const and
8512 initialized with a trailing space now. Use PROMPT_ARG of
8513 COMMAND_LINE_INPUT instead of printing it ourselves.
8515 2008-04-22 Joel Brobecker <brobecker@adacore.com>
8517 * NEWS: Document support for 64-bit core file.
8519 2008-04-22 Corinna Vinschen <vinschen@redhat.com>
8521 * NEWS: Add information on calling convention and new SH CLI options.
8523 * sh-tdep.c (sh_cc_gcc): New static string.
8524 (sh_cc_renesas): Ditto.
8525 (sh_cc_enum): New static string array.
8526 (sh_active_calling_convention): New static string pointer denoting
8527 active user chosen ABI.
8528 (sh_is_renesas_calling_convention): New function to return function
8529 specific ABI, or user choice if necessary.
8530 (sh_use_struct_convention): Rename first argument and turn around its
8531 meaning. Check for renesas ABI and return accordingly.
8532 (sh_use_struct_convention_nofpu): New function.
8533 (sh_next_flt_argreg): Get function type as third parameter. Check
8534 for renesas ABI and choose floating registers accordingly.
8535 (sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
8536 struct return slot accordingly.
8537 (sh_push_dummy_call_nofpu): Ditto.
8538 (sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
8539 Evaluate ABI and give to sh_use_struct_convention_nofpu.
8540 (sh_return_value_fpu): Evaluate ABI and give to
8541 sh_use_struct_convention.
8542 (show_sh_command): New function.
8543 (set_sh_command): Ditto.
8544 (_initialize_sh_tdep): Initialize `set/show sh calling-convention
8547 * gdbarch.sh (return_value): Add func_type argument.
8548 * gdbarch.c: Regenerate.
8550 * eval.c (evaluate_subexp_standard): Rename local variable value_type to
8551 val_type so as not to collide with value_type function. Call
8552 using_struct_return with additional function type argument.
8553 * infcall.c (call_function_by_hand): Call using_struct_return and
8554 gdbarch_return_value with additional function type argument.
8555 * infcmd.c (print_return_value): Take addition func_type argument.
8556 Call gdbarch_return_value with additional function type argument.
8557 (finish_command_continuation): Call print_return_value with additional
8558 function type argument.
8559 (finish_command): Ditto.
8560 * sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
8561 additional function type argument.
8562 * stack.c (return_command): Call using_struct_return and
8563 gdbarch_return_value with additional function type argument.
8564 * value.c (using_struct_return): Take additional function type argument.
8565 * value.h (using_struct_return): Accommodate declaration.
8566 * alpha-tdep.c (alpha_return_value): Add func_type argument.
8567 * amd64-tdep.c (amd64_return_value): Ditto.
8568 * arm-tdep.c (arm_return_value): Ditto.
8569 * avr-tdep.c (avr_return_value): Ditto.
8570 * cris-tdep.c (cris_return_value): Ditto.
8571 * frv-tdep.c (frv_return_value): Ditto.
8572 * h8300-tdep.c (h8300_return_value): Ditto.
8573 (h8300h_return_value): Ditto.
8574 * hppa-tdep.c (hppa32_return_value): Ditto.
8575 (hppa64_return_value): Ditto.
8576 * i386-tdep.c (i386_return_value): Ditto.
8577 * ia64-tdep.c (ia64_return_value): Ditto.
8578 * iq2000-tdep.c (iq2000_return_value): Ditto.
8579 * m32c-tdep.c (m32c_return_value): Ditto.
8580 * m32r-tdep.c (m32r_return_value): Ditto.
8581 * m68hc11-tdep.c (m68hc11_return_value): Ditto.
8582 * m68k-tdep.c (m68k_return_value): Ditto.
8583 (m68k_svr4_return_value): Ditto.
8584 * m88k-tdep.c (m88k_return_value): Ditto.
8585 * mep-tdep.c (mep_return_value): Ditto.
8586 * mips-tdep.c (mips_eabi_return_value): Ditto.
8587 (mips_n32n64_return_value): Ditto.
8588 (mips_o32_return_value): Ditto.
8589 (mips_o64_return_value): Ditto.
8590 * mn10300-tdep.c (mn10300_return_value): Ditto.
8591 * mt-tdep.c (mt_return_value): Ditto.
8592 * ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
8593 * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
8594 (ppc_sysv_abi_broken_return_value): Ditto.
8595 (ppc64_sysv_abi_return_value): Ditto.
8596 * ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
8597 (ppc_sysv_abi_broken_return_value): Ditto.
8598 (ppc64_sysv_abi_return_value): Ditto.
8599 * ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
8600 * rs6000-tdep.c (rs6000_return_value): Ditto.
8601 * s390-tdep.c (s390_return_value): Ditto.
8602 * score-tdep.c (score_return_value): Ditto.
8603 * sh-tdep.c (sh_return_value_nofpu): Ditto.
8604 (sh_return_value_fpu): Ditto.
8605 * sh64-tdep.c (sh64_return_value): Ditto.
8606 * sparc-tdep.c (sparc32_return_value): Ditto.
8607 * sparc64-tdep.c (sparc64_return_value): Ditto.
8608 * spu-tdep.c (spu_return_value): Ditto.
8609 * v850-tdep.c (v850_return_value): Ditto.
8610 * vax-tdep.c (vax_return_value): Ditto.
8611 * xstormy16-tdep.c (xstormy16_return_value): Ditto.
8612 * xtensa-tdep.c (xtensa_return_value): Ditto.
8614 * gdbtypes.h (struct type): Add calling_convention member.
8615 * dwarf2read.c (read_subroutine_type): Add calling convention read
8616 from DW_AT_calling_convention attribute to function type.
8618 2008-04-22 Markus Deuling <deuling@de.ibm.com>
8620 * eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
8621 multi_f77_subscript to support values from registers.
8622 * valarith.c (value_subscripted_rvalue): Remove prototype and static.
8623 * value.h (value_subscripted_rvalue): Add prototype.
8625 * f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
8627 * f-valprint.c (f_val_print): Likewise.
8629 2008-04-21 Craig Silverstein <csilvers@google.com>
8631 * dwarf2read.c (zlib_decompress_section): Define abfd in the
8634 2008-04-21 Pedro Alves <pedro@codesourcery.com>
8636 * symfile.c (syms_from_objfile): Don't warn if lowest loadable
8637 section is not a code section.
8639 2008-04-19 Craig Silverstein <csilvers@google.com>
8641 * NEWS: Add information on compressed debug sections.
8643 2008-04-19 Vladimir Prus <vladimir@codesourcery.com>
8645 * mi/mi-cmd-var.c (varobj_update_one): Print new
8646 value for variable objects that changed type.
8648 2008-04-19 Vladimir Prus <vladimir@codesourcery.com>
8650 * varobj.c (varobj_invalidate): Don't touch floating
8653 2008-04-19 Mark Kettenis <kettenis@gnu.org>
8655 * symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
8656 (multiple_symbols_cancel): Remove extra const.
8657 * symtab.h: Likewise.
8659 2008-04-19 Nick Roberts <nickrob@snap.net.nz>
8661 * interps.c (top_level_interpreter): Rename static variable...
8662 (top_level_interpreter_ptr): ...to this.
8663 (top_level_interpreter): New function.
8665 * interps.h: New extern for top_level_interpreter.
8667 * linespec.c: Include interps.h and mi/mi-cmds.h.
8668 (decode_line_2): When using MI, always set all breakpoints in menu.
8670 * Makefile.in (linespec.o, mi-interp.o): Add dependencies.
8672 2008-04-18 Craig Silverstein <csilvers@google.com>
8674 * configure.ac (AC_SEARCH_LIBS): Add check for zlib.
8675 * config.in, configure: Regenerate.
8676 * dwarf2read.c: Include zlib.h if present.
8677 Modified *_SECTION macros.
8678 (section_is_p): New.
8679 (dwarf2_locate_sections): Use section_is_p instead of strcmp
8680 (dwarf2_resize_section): New.
8681 to determine whether a given section has a given name.
8682 (zlib_decompress_section): New.
8683 (dwarf2_read_section): Read the compressed section if present
8685 * MAINTAINERS: Added myself to section Write After Approval.
8687 2008-04-18 Thiago Jung Bauermann <bauerman@br.ibm.com>
8689 * defs.h (exec_set_section_offsets): Remove prototype.
8690 * exec.c (exec_set_section_offsets): Remove function.
8692 2008-04-18 Joel Brobecker <brobecker@adacore.com>
8694 * stabsread.c (cleanup_undefined_types_1): Add instance flags check
8695 in the search for the matching symbol.
8697 2008-04-17 Marc Khouzam <marc.khouzam@ericsson.com>
8699 * breakpoint.c (update_watchpoint): Always reparse
8702 2008-04-17 Joel Brobecker <brobecker@adacore.com>
8704 * breakpoint.c (print_one_breakpoint_location): Make sure to print
8705 the breakpoint address only once.
8707 2008-04-17 Dennis Roberts <dennis.roberts@sunquestinfo.com>
8709 * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
8710 rather than a hard-coded architecture, for xcoff executables.
8712 2008-04-17 Doug Evans <dje@google.com>
8714 * buildsym.c (watch_main_source_file_lossage): New fn.
8715 (end_symtab): Call it.
8717 * source.c (find_and_open_source): Add some comments clarifying
8718 handling of FULLNAME argument. Make static. Remove pointless
8721 2008-04-17 Pedro Alves <pedro@codesourcery.com>
8723 * inf-loop.c (inferior_event_handler): Also run the intermediate
8724 continuations in the INF_EXEC_COMPLETE case.
8726 2008-04-16 Tom Tromey <tromey@redhat.com>
8728 * cli/cli-decode.h (CMD_ASYNC_OK): New define.
8729 (set_cmd_async_ok, get_cmd_async_ok): Declare.
8730 * cli/cli-decode.c (set_cmd_async_ok): New function.
8731 (get_cmd_async_ok): New function.
8732 * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
8734 * top.c (execute_command): Use get_cmd_async_ok.
8735 * infcmd.c: Include cli/cli-decode.h.
8736 (_initialize_infcmd): Mark "interrupt" as async-ok.
8737 * Makefile.in (infcmd.o): Depend on cli_decode_h.
8739 2008-04-16 Daniel Jacobowitz <dan@codesourcery.com>
8742 * exec.c: Correct "arch-utils.h" include.
8744 2008-04-15 Aleksandar Ristovski <aristovski@qnx.com>
8747 * infrun.c (normal_stop) Move breakpoint_auto_delete further down
8748 to allow printing to 'see' real reason of stop. This fixes PR 2424.
8749 * breakpoint.c (bpdisp_texst): New function. The function takes over
8750 the role of bpstats static array in print_one_breakpoint_location.
8751 (print_it_typical): Print "Temporary breakpoint" instead
8752 of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
8753 protocols, print disp field.
8754 (print_one_breakpoint_location): Removed bpdisps static definition.
8755 Call new bpstat_text function to get value for 'disp' field.
8756 (mention): Print "Temporary breakpoint" instead of just "Breakpoint".
8758 2008-04-15 Daniel Jacobowitz <dan@codesourcery.com>
8760 * gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
8761 gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
8762 by rerunning gnulib-tool with --aux-dir=gnulib/extra.
8763 * gnulib/Makefile.in: Regenerate.
8765 2008-04-14 Daniel Jacobowitz <dan@codesourcery.com>
8767 * Makefile.in (GNULIB_H): New. Trigger all-lib.
8768 (defs_h): Use $(GNULIB_H).
8769 (all-lib): Depend on gnulib/Makefile.
8770 (gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
8771 * config.in, gnulib/Makefile.in: Regenerated.
8773 2008-04-14 Daniel Jacobowitz <dan@codesourcery.com>
8775 * Makefile.in (LIBGNU, INCGNU): Define.
8776 (INTERNAL_CFLAGS_BASE): Add INCGNU.
8777 (INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
8779 ($(LIBGNU), all-lib): New rules.
8780 (clean, distclean, do-maintainer-clean): Use CLEANDIRS.
8781 * configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
8782 Simplify AC_CONFIG_AUX_DIR. Generate gnulib/Makefile.
8783 * gnulib: New directory, from gnulib-tool.
8784 * configure, aclocal.m4: Regenerated.
8786 2008-04-14 Daniel Jacobowitz <dan@codesourcery.com>
8788 * linux-thread-db.c (have_threads_callback): Check thread->private.
8790 2008-04-13 Nick Roberts <nickrob@snap.net.nz>
8791 Vladimir Prus <vladimir@codesourcery.com>
8794 * varobj.c (value_of_root): Update the expression for
8796 * mi/mi-cmd-var.c (varobj_update_one): If type has changed,
8799 2008-04-09 Marc Khouzam <marc.khouzam@ericsson.com>
8801 * mi/mi-cmd-var.c: Include "mi-getopt.h".
8802 (mi_parse_format): New. Factored out from mi_cmd_var_set_format.
8803 (mi_cmd_var_set_format): Use new mi_parse_format.
8804 (mi_cmd_var_evaluate_expression): Support for -f option to specify
8806 * Makefile.in (mi-cmd-var.o): Update dependencies.
8808 * varobj.h (varobj_get_formatted_value): Declare.
8809 * varobj.c (my_value_of_variable): Added format parameter.
8810 (cplus_value_of_variable): Likewise.
8811 (java_value_of_variable): Likewise.
8812 (c_value_of_variable): Likewise. Evaluate expression based
8813 on format parameter.
8814 (struct language_specific): Add format parameter to function member
8816 (varobj_get_formatted_value): New.
8817 (varobj_get_value): Added format parameter to method call.
8819 2008-04-08 Joel Brobecker <brobecker@adacore.com>
8821 * stabsread.c (cleanup_undefined_types_noname): Manually set the
8822 instance flags of the undefined type before calling replace_type.
8824 2008-04-08 Vladimir Prus <vladimir@codesourcery.com>
8826 * target.h (enum strata): Remove the download_stratum.
8828 2008-04-07 Doug Evans <dje@google.com>
8830 * buildsym.h (last_source_file): Add dwarf info to comment.
8831 (last_source_start_addr): Ditto.
8833 2008-04-07 Pedro Alves <pedro@codesourcery.com>
8835 * alphanbsd-tdep.c: Include "target.h".
8836 * mn10300-tdep.c: Include "target.h".
8837 * Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.
8839 2008-04-06 Vladimir Prus <vladimir@codesourcery.com>
8841 Fix breakpoint condition that use member variables.
8842 * valops.c (check_field): Remove.
8843 (check_field_in): Rename to check_field.
8844 (value_of_this): Use la_name_of_this.
8845 * value.h (check_field): Adjust prototype.
8847 * language.h (la_value_of_this): Rename to la_name_of_this.
8848 * language.c (unknown_language_defn): Specify "this" for
8850 (auto_language_defn): Likewise.
8851 (local_language_defn): Likewise.
8852 * ada-lang.c (ada_language_defn): Adjust comment.
8853 * c-lang.c (c_language_defn): Adjust comment.
8854 (cplus_language_defn): Specify "this" for name_of_this.
8855 (asm_language_defn): Adjust comment.
8856 (minimal_language_defn): Adjust comment.
8857 * f-lang.c (f_language_defn): Specify NULL for name_of_this.
8858 * jv-lang.c (java_language_defn): Specify "this" for name_of_this.
8859 * m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
8860 * objc-lang.c (objc_language_defn): Specify "self" for
8862 * p-lang.c (pascal_language_defn): Specify "this" for
8864 * scm-lang.c (scm_language_defn): Specify NULL for name_of_this.
8866 * symtab.c (lookup_symbol_aux): Lookup "this" in the
8867 proper scope, and check for field in type of "this", without
8868 trying to create a value.
8870 2008-04-04 Pedro Alves <pedro@codesourcery.com>
8872 * mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
8873 (mi_error_message): Delete declaration.
8874 * mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
8875 returning MI_CMD_ERROR.
8876 * mi/mi-main.c (mi_error_message): Delete.
8877 (mi_cmd_exec_interrupt):
8878 (mi_cmd_thread_select, mi_cmd_thread_list_ids)
8879 (mi_cmd_thread_info): Call error instead of returning
8881 (mi_cmd_data_list_register_values): Call error instead of
8882 returning MI_CMD_ERROR. Adapt to new get_register interface.
8883 (get_register): Change return typo to void. Call error instead of
8884 returning MI_CMD_ERROR.
8885 (mi_cmd_data_write_register_values): Call error instead of
8886 returning MI_CMD_ERROR.
8887 (mi_cmd_list_features): Return MI_CMD_DONE.
8888 (captured_mi_execute_command): Remove MI_CMD_ERROR handling.
8889 (mi_execute_command): Always print exceptions with -error.
8891 2008-04-04 Joel Brobecker <brobecker@adacore.com>
8893 * NEWS: Mention new commands set/show multiple-symbols.
8895 2008-04-03 Joel Brobecker <brobecker@adacore.com>
8897 * symtab.c (multiple_symbols_ask, multiple_symbols_all)
8898 (multiple_symbols_cancel): New constants.
8899 (multiple_symbols_modes, multiple_symbols_mode): New static globals.
8900 (multiple_symbols_select_mode): New function.
8901 (_initialize_symtab): Add new set/show multiple-symbols commands.
8902 * symtab.h (multiple_symbols_ask, multiple_symbols_all)
8903 (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
8904 * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
8906 * linespec.c (decode_line_2): Likewise.
8908 2008-04-03 Doug Evans <dje@sebabeach.org>
8910 * symtab.h (enum free_code): Delete free_contents, unused.
8911 * symmisc.c (free_symtab_block): Delete.
8912 (free_symtab, case free_code): Delete.
8914 2008-04-01 Aleksandar Ristovski <aristovski@qnx.com>
8916 * valops.c (value_cast_structs): New function. Cast related
8917 STRUCT types up/down and return cast value. The body of this
8918 function comes mostly from value_cast_pointers.
8919 (value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
8920 to value_cast_structs. Now value_cast_pointers needs only create
8921 appropriate reference after using value_cast_structs for actual
8923 (value_cast): Handle references.
8925 2008-04-01 Marc Khouzam <marc.khouzam@ericsson.com>
8927 * MAINTAINERS: Added myself to section Write After Approval.
8929 2008-03-30 Daniel Jacobowitz <dan@codesourcery.com>
8931 * ia64-tdep.c (examine_prologue): Correct array access.
8933 2008-03-28 Aleksandar Ristovski <aristovski@qnx.com>
8935 * cp-support.c (first_component_command): Return if no arguments.
8937 2008-03-28 Carlos O'Donell <carlos@codesourcery.com>
8939 * ser-mingw.c (ser_windows_open): Open requested name.
8941 2008-03-28 Aleksandar Ristovski <aristovski@qnx.com>
8943 * MAINTAINERS: Added myself.
8945 2008-03-28 Pedro Alves <pedro@codesourcery.com>
8947 * target.c (find_default_run_target): Allow a NULL `do_mesg'
8948 parameter. If it is NULL, don't call error.
8949 (find_default_can_async_p, find_default_is_async_p): Pass NULL as
8950 `do_mesg' parameter to find_default_run_target. If no target was
8953 2008-03-28 Daniel Jacobowitz <dan@codesourcery.com>
8955 * mips-linux-tdep.c: Update N32/N64 signal frame comments.
8956 (N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
8957 (N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
8959 (mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.
8961 2008-03-27 Joel Brobecker <brobecker@adacore.com>
8965 2008-03-27 Ulrich Weigand <uweigand@de.ibm.com>
8967 * features/Makefile (%.dat): Set xmltarget to the base filename
8968 of the XML source, without subdirectory.
8969 * regformats/rs6000/powerpc-32.dat: Regenerate.
8970 * regformats/rs6000/powerpc-64.dat: Regenerate.
8971 * regformats/rs6000/powerpc-e500.dat: Regenerate.
8973 2008-03-27 Markus Deuling <deuling@de.ibm.com>
8975 * xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
8978 2008-03-27 Nick Roberts <nickrob@snap.net.nz>
8980 * mi/mi-main.c (enum captured_mi_execute_command_actions):
8981 Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.
8983 2008-03-26 Ulrich Weigand <uweigand@de.ibm.com>
8985 * objfiles.h (struct objfile): New GDBARCH member.
8986 (get_objfile_arch): Add prototype.
8987 * objfiles.c: Include "arch-utils.h".
8988 (allocate_objfile): Look up gdbarch associated with bfd.
8989 (get_objfile_arch): New function.
8990 * Makefile (objfiles.o): Update dependencies.
8992 * dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
8994 * dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
8996 (locexpr_describe_location): Replace current_gdbarch by
8998 * dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
8999 (dwarf2_add_field): Likewise.
9000 (read_tag_pointer_type): Likewise.
9001 (read_base_type): Likewise.
9002 (new_symbol): Likewise.
9004 * coffread.c (decode_type): Add OBJFILE argument. Update callers.
9005 (decode_base_type, decode_function_type): Likewise.
9006 (coff_read_struct_type, coff_read_enum_type): Likewise.
9007 (coff_symtab_read): Replace current_gdbarch by objfile arch.
9008 (decode_base_type): Likewise.
9009 (coff_read_enum_type): Likewise.
9010 (coff_read_struct_type): Replace current_objfile by OBJFILE argument.
9011 (coff_read_enum_type): Likewise.
9013 * dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
9014 (end_psymtab): Likewise.
9015 (process_one_symbol): Likewise.
9017 * mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
9018 (parse_procedure): Likewise.
9019 (parse_partial_symbols): Likewise.
9021 * somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.
9023 * stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
9024 Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
9026 (read_range_type): Replace current_gdbarch by objfile arch. Replace
9027 static range_index_type by built-in type.
9028 (read_one_struct_field): Replace current_gdbarch by objfile arch.
9029 (read_enum_type): Likewise.
9031 * xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
9034 2008-03-26 Vladimir Prus <vladimir@codesourcery.com>
9036 * varobj.h (varobj_floating_p): Declare.
9037 * varobj.c (varobj_floating_p): New.
9038 * mi/mi-cmd-var.c (mi_cmd_var_update): When passed
9039 '@' as the name, update all floating varobjs.
9041 2008-03-26 Vladimir Prus <vladimir@codesourcery.com>
9043 * varobj.c (struct varobj_root): Rename use_selected_frame to
9044 floating, and clarify the meaning.
9045 (varobj_create, varobj_update, new_root_variable): Adjust.
9046 (value_of_root): Don't use type_changed as in variable,
9048 (c_value_of_root): Adjust.
9050 2008-03-25 Pedro Alves <pedro@codesourcery.com>
9052 * linux-nat.c (linux_nat_attach): Add the pid we attached to, to
9054 (linux_nat_wait): Add main lwp to gdb's thread list.
9055 * linux-thread-db.c (find_new_threads_callback): Also attach to
9056 already listed threads which thread_db didn't know about yet.
9058 2008-03-25 Pedro Alves <pedro@codesourcery.com>
9060 * linux-nat.c (drain_queued_events): Fix comment typo.
9061 (linux_nat_attach): In async mode, don't rely on storing a pending
9062 status. Instead place the wait status on the pipe.
9063 (linux_nat_resume): Remove unreacheable shortcut code in async
9065 (stop_wait_callback): In async mode, don't store pending status.
9066 Instead, cancel breakpoints or resend the signal appropriatelly.
9067 (cancel_breakpoint): New, refactored from
9068 cancel_breakpoints_callback.
9069 (cancel_breakpoints_callback): Call cancel_breakpoint.
9070 (pipe_to_local_event_queue): Remove special token processing.
9071 (linux_nat_wait): Issue an internal error if a pending status is
9072 found in async mode.
9074 2008-03-24 Daniel Jacobowitz <dan@codesourcery.com>
9076 * inflow.c (gdb_has_a_terminal): Guard access to our_process_group.
9078 2008-03-24 Nick Roberts <nickrob@snap.net.nz>
9079 Vladimir Prus <vladimir@codesourcery.com>
9081 * varobj.c (struct varobj_root): New component thread_id.
9082 (varobj_get_thread_id, check_scope): New functions.
9083 (c_value_of_root): Use check_scope. Switch to the
9084 proper thread if necessary.
9086 * varobj.h (varobj_get_thread_id): New extern.
9088 * mi/mi-cmd-var.c (print_varobj): Add thread-id field.
9090 2008-03-23 Daniel Jacobowitz <dan@codesourcery.com>
9093 * top.c: Revert 2008-03-21 changes.
9095 2008-03-23 Vladimir Prus <vladimir@codesourcery.com>
9097 * thread.c (make_cleanup_restore_current_thread): Make it
9099 * gdbthread.h (make_cleanup_restore_current_thread): Declare.
9100 * varobj.c (varobj_update): Don't save/restore frame.
9101 (c_value_of_root): Save/restore thread and frame here,
9102 using make_cleanup_restore_current_thread.
9103 * Makefile.in: Update dependecies.
9105 2008-03-23 Vladimir Prus <vladimir@codesourcery.com>
9107 * varobj.c (struct varobj_root): Clarify
9108 comment on the frame field.
9109 (varobj_create): Don't set frame if we have no
9112 2008-03-21 Daniel Jacobowitz <dan@codesourcery.com>
9115 Suggested by Jan Kratochvil:
9116 * top.c (gdb_rl_operate_and_get_next_completion): Call
9117 rl_redisplay_function.
9118 (gdb_rl_redisplay): New.
9119 (init_main): Set rl_redisplay_function.
9121 2008-03-21 Thomas Mittelstaedt <T.Mittelstaedt@cadenas.de> (tiny change)
9123 * aix-thread.c (pdc_read_regs): Fix compiler warning.
9124 (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
9125 (store_regs_kernel_thread): Likewise.
9127 2008-03-21 Pedro Alves <pedro@codesourcery.com>
9129 Linux native async support.
9131 * target.h (struct target_ops): Delete to_async_mask_value and add
9133 (target_is_async_p, target_async): Formatting.
9134 (target_async_mask_value): Delete.
9135 (target_async_mask): Delete function declaration, and add new
9136 target macro with the same name.
9138 * target.c (update_current_target): Replace to_async_mask_value by
9139 to_async_mask. Default to_async_mask to return_one.
9140 (target_async_mask): Delete.
9141 (find_default_can_async_p, find_default_is_async_p): New.
9142 (init_dummy_target): register find_default_can_async_p and
9143 find_default_is_async_p on the dummy target.
9145 * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
9146 (debug_linux_nat_async): New global.
9147 (show_debug_linux_nat_async): New function.
9148 (linux_nat_async_enabled, linux_nat_async_mask_value)
9149 (linux_nat_event_pipe, linux_nat_num_queued_events)
9150 (linux_nat_async_events_enabled): New globals.
9151 (struct waitpid_result): New struct.
9152 (waitpid_queue): New global.
9153 (queued_waitpid, push_waitpid, drain_queued_events): New.
9154 (my_waitpid): Call queued_waitpid.
9155 (linux_child_follow_fork): Disable async events during the call.
9156 (blocked_mask): Delete.
9157 (sync_sigchld_action, async_sigchld_action): New globals.
9158 (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD. In
9159 async mode, block events during the call.
9160 (linux_nat_create_inferior): New.
9161 (linux_nat_attach): In sync mode, restore the mask states. In
9162 async mode, wake the event loop immediatelly.
9163 (detach_callback): Drain all queued events of the lwp we're
9165 (linux_nat_detach): Block async mode, and drain events of the main
9167 (linux_nat_resume): If in async mode, mask async events during the
9168 call. If short circuiting, force event loop to wake up. If
9169 resuming, set target_executing, and register target events in the
9171 (pipe_to_local_event_queue, local_event_queue_to_pipe): New.
9172 (linux_nat_wait): In async mode, block events during the call.
9173 Only enable/disable passing SIGINT to the inferior in sync mode.
9174 Get events from local waitpid queue. If no interesting events was
9175 found, return to events loop. Reregister target events in the
9176 event loop on exit. In sync mode, no need to reblock SIGCHLD.
9177 (linux_nat_kill): Disable events on entry.
9178 (linux_nat_mourn_inferior): In sync mode, don't restore the masks
9179 here. Detach async mode from the event loop if there are no more
9180 forks available, otherwise leave it on.
9181 (sigchld_handler): Assure this is called only in sync mode.
9182 (linux_async_permitted, linux_async_permitted_1): New globals.
9183 (set_maintenance_linux_async_permitted)
9184 (show_maintenance_linux_async_permitted): New functions.
9185 (linux_nat_is_async_p, linux_nat_can_async_p)
9186 (linux_nat_async_mask): New.
9187 (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
9188 (get_pending_events, async_sigchld_handler): New.
9189 (linux_nat_async_events): New.
9190 (async_terminal_is_ours): New global.
9191 (linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
9192 (async_client_callback, async_client_context): New.
9193 (linux_nat_async_file_handler, linux_nat_async)
9194 (linux_nat_disable_async, linux_nat_enable_async): New.
9195 (linux_nat_add_target): Register linux_nat_create_inferior,
9196 linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
9197 linux_nat_async_mask, linux_nat_terminal_inferior and
9198 linux_nat_terminal_ours.
9199 (_initialize_linux_nat): Remove local action variable, and update
9200 code that used it to use sync_sigchld_action. Add new
9201 "lin-lwp-async" debug set/show command. Put the "lin-lwp" debug
9202 set/show command in the maintenance class. Add new "linux-async"
9203 maintenance set/show command. Block SIGCHLD by default. Setup
9204 async_sichld_action, and sync_sigchld_action. Install the default
9206 (lin_thread_get_thread_signals): Use a local sigset_t for blocking
9209 * linux-thread-db.c (re_check_for_thread_db): New.
9210 (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
9211 (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
9212 (thread_db_async_mask): New.
9213 (init_thread_db_ops): Register thread_db_can_async_p,
9214 thread_db_is_async_p, thread_db_async and thread_db_async_mask.
9216 * remote.c (remote_async_mask_value): New.
9217 (remote_return_zero): New.
9218 (init_remote_ops): Register remote_return_zero as callbacks of
9219 to_can_async_p and to_is_async_p.
9220 (remote_can_async_p, remote_is_async_p, remote_async): Update to
9221 use remote_async_mask_value.
9222 (remote_async_mask): New.
9223 (init_remote_async_ops): Remove to_async_mask_value setting and
9224 register remote_async_mask as to_async_mask callback in
9227 * Makefile.in (linux-nat.o): Update.
9229 2008-03-21 Daniel Jacobowitz <dan@codesourcery.com>
9231 * gdbthread.h (add_thread_with_info): New.
9232 * linux-thread-db.c: Add some documentation.
9233 (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
9234 (struct private_thread_info): Remove th_valid and ti_valid.
9235 Replace ti with tid.
9236 (thread_get_info_callback): Do not add TID to the new ptid. Do
9238 (thread_db_map_id2thr, lwp_from_thread): Delete functions.
9239 (thread_from_lwp): Assert that the LWP is set. Do not add TID to the
9241 (attach_thread): Handle an already-existing thread. Use
9242 add_thread_with_info. Cache the th and tid.
9243 (detach_thread): Verify that private was set. Remove verbose
9244 argument and printing. Update caller.
9245 (thread_db_detach): Do not adjust inferior_ptid.
9246 (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
9247 (check_event, find_new_threads_callback): Do not add TID to the new PTID.
9248 (thread_db_wait): Do not use lwp_from_thread.
9249 (thread_db_pid_to_str): Use the cached TID.
9250 (thread_db_extra_thread_info): Check that private is set.
9251 (same_ptid_callback): Delete.
9252 (thread_db_get_thread_local_address): Do not use it or check
9253 is_thread. Check that private is set. Assume that the thread
9254 handle is already cached.
9255 (init_thread_db_ops): Remove to_resume and to_kill.
9256 * thread.c (add_thread_with_info): New.
9257 (add_thread): Use it.
9258 * linux-nat.c (find_thread_from_lwp): Delete.
9259 (exit_lwp): Do not use it. Check print_thread_events. Print before
9260 deleting the thread.
9261 (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
9262 * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
9263 * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
9264 printf_unfiltered for thread exits.
9265 * procfs.c (procfs_wait): Likewise.
9267 2008-03-21 Chris Demetriou <cgd@google.com>
9269 * symtab.c (rbreak_command): Quote symbol name before passing
9270 it to break_command.
9272 2008-03-21 Daniel Jacobowitz <dan@codesourcery.com>
9274 * eval.c (evaluate_subexp_for_address): Clarify error message.
9275 Use value_must_coerce_to_target.
9276 * infcall.c (value_arg_coerce): Call value_coerce_to_target.
9277 * valops.c (value_assign): Call value_coerce_to_target when
9278 assigning to anything but internalvars. Leave GDB-side arrays
9279 as arrays when assigning to internalvars.
9280 (value_must_coerce_to_target, value_coerce_to_target): New.
9281 (value_coerce_array, value_addr): Call value_coerce_to_target.
9282 (value_array): Create the array in GDB's memory instead of
9284 * value.h (value_must_coerce_to_target, value_coerce_to_target):
9287 2008-03-21 Daniel Jacobowitz <dan@codesourcery.com>
9289 * top.c (quit_confirm): Warn that we will kill the program.
9291 2008-03-19 Pedro Alves <pedro@codesourcery.com>
9293 * inflow.c (terminal_ours_1): Guard access to
9294 inferior_process_group with #ifdef PROCESS_GROUP_TYPE.
9296 2008-03-18 Ulrich Weigand <uweigand@de.ibm.com>
9297 Jim Blandy <jimb@codesourcery.com>
9298 Daniel Jacobowitz <drow@false.org>
9300 * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
9301 (dwarf2_read_address): Update prototype.
9303 * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
9304 (signed_address_type): Likewise.
9305 (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
9306 (execute_stack_op): Update calls to unsigned_address_type,
9307 signed_address_type and dwarf2_read_address. Fix implementation
9308 of DW_OP_deref_size.
9310 * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
9311 (dwarf2_per_cu_addr_size): Likewise.
9312 (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
9313 (struct dwarf2_loclist_baton): Likewise.
9315 * dwarf2loc.c (find_location_expression): Update calls to
9316 dwarf2_read_address. Use dwarf2_per_cu_objfile and
9317 dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
9318 (locexpr_describe_location): Likewise.
9319 (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
9320 Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
9321 (dwarf2_loc_desc_needs_frame): Add PER_CU parameter. Set ctx->addr_size
9322 to dwarf2_per_cu_addr_size (per_cu).
9323 (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
9324 (loclist_read_variable): Likewise.
9325 (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.
9327 * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
9328 instead of baton->objfile.
9329 (dwarf2_per_cu_obfile): New function.
9330 (dwarf2_per_cu_addr_size): Likewise.
9332 * dwarf2-frame.c (struct comp_unit): Move higher.
9333 (struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
9334 (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
9335 (execute_cfa_program): Add FDE parameter. Replace EH_FRAME_P
9336 parameter by using fde->eh_frame_p. Use read_encoded_value
9337 to implement DW_CFA_set_loc.
9338 (struct dwarf2_frame_cache): Add ADDR_SIZE member.
9339 (dwarf2_frame_cache): Set cache->addr_size. Update calls to
9340 execute_stack_op and execute_cfa_program.
9341 (dwarf2_frame_prev_register): Update calls to execute_stack_op.
9342 (size_of_encoded_value): Remove.
9343 (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
9344 Remove call to size_of_encoded_value. Implement DW_EH_PE_funcrel.
9345 (add_cie): Set cie->unit backlink.
9346 (decode_frame_entry_1): Set cie->addr_size. Update calls to
9348 (dwarf2_build_frame_info): Allocate UNIT on objfile obstack.
9350 2008-03-17 Markus Deuling <deuling@de.ibm.com>
9352 * i386-tdep.c (i386_print_insn): Remove unnecessary call to
9353 gdbarch_bfd_arch_info.
9355 2008-03-17 Joel Brobecker <brobecker@adacore.com>
9357 * aix-thread.c (pdc_read_regs): Minor reformatting.
9359 2008-03-17 Vladimir Prus <vladimir@codesourcery.com>
9361 * thread.c (print_thread_info): Don't insist
9362 on having current thread if there are no
9365 2008-03-17 Pedro Alves <pedro@codesourcery.com>
9367 * infcmd.c (attach_command_post_wait)
9368 (attach_command_continuation): New.
9369 (attach_command): Support background async execution, and async
9370 execution in synchronous mode.
9372 2008-03-17 Daniel Jacobowitz <dan@codesourcery.com>
9374 * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
9375 * symmisc.c (dump_symtab_1): Likewise.
9376 * wrapper.c (gdb_value_struct_elt): Likewise.
9378 2008-03-17 Pedro Alves <pedro@codesourcery.com>
9380 * linux-nat.c (linux_nat_filter_event): Fix comment typo.
9382 2008-03-17 Pedro Alves <pedro@codesourcery.com>
9384 * linux-nat.c (linux_nat_filter_event): New, refactored from
9386 (linux_nat_wait): Call linux_nat_filter_event.
9388 2008-03-17 Ulrich Weigand <uweigand@de.ibm.com>
9390 * top.c (execute_command): Fix uninitialized variable error.
9392 2008-03-16 Nick Hudson <nick.hudson@dsl.pipex.com>
9394 * Makefile.in (amd64nbsd-nat.o): New dependency.
9395 * amd64nbsd-nat.c: Include "nbsd-nat.h".
9396 (_initialize_amd64nbsd_nat): Update target vector to use
9397 nbsd_pid_to_exec_file.
9398 * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
9400 2008-03-15 Vladimir Prus <vladimir@codesourcery.com>
9402 Remove ignoring leading exec events code.
9403 * fork-child.c (startup_inferior): Do not set
9404 inferior_ignoring_leading_exec_events.
9405 * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
9406 (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
9407 * infrun.c (inferior_ignoring_leading_exec_events): Remove.
9408 (handle_inferior_event): Remove code for ignoring leading exec
9410 * target.c (update_current_target): Do not inherit, or default,
9411 to_reported_exec_events_per_exec_call.
9412 (debug_to_reported_exec_events_per_exec_call): Remove.
9413 (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
9414 * target.h (target_reported_exec_events_per_exec_call): Remove.
9415 (struct target): Remove the to_reported_exec_events_per_exec_call
9418 2008-03-15 Vladimir Prus <vladimir@codesourcery.com>
9420 Implement -thread-info.
9421 * gdbthread.h (print_thread_info): Declare.
9423 * thread.c (print_thread_info): New, extracted
9424 from info_threads_command and adjusted to
9425 work for CLI and MI.
9426 (info_threads_command): Use print_thread_info.
9427 * Makefile.in: Update dependencies.
9429 * mi/mi-cmds.c (mi_cmds): Specify a handler
9431 * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
9432 * mi/mi-main.c (mi_cmd_thread_info): New.
9433 (mi_cmd_list_features): Include 'thread-info'.
9435 2008-03-14 Kevin Buettner <kevinb@redhat.com>
9437 * mips-tdep.c (mips32_scan_prologue): Use the ABI register size
9438 to decide whether to match instruction patterns using "sw" and "sd".
9440 2008-03-14 Pedro Alves <pedro@codesourcery.com>
9442 * infcmd.c (jump_command): Postpone disabling stdin until after
9445 2008-03-14 Pedro Alves <pedro@codesourcery.com>
9447 * inflow.c (gdb_getpgrp): New.
9448 (gdb_has_a_terminal): Use get_getpgrp.
9449 (terminal_ours_1): If attach_flag is set, don't refetch
9450 inferior_process_group.
9452 2008-03-14 Pedro Alves <pedro@codesourcery.com>
9454 * features/library-list.dtd: Allow "section" elements as children
9455 of "library". Add "section" element and describe its attributes.
9457 * solib-target.c (struct lm_info): Add section_bases member.
9458 (library_list_start_segment): Error out if seen a section element.
9459 (library_list_start_section): New.
9460 (library_list_end_library): New.
9461 (solib_target_free_library_list): Free section_bases.
9462 (section_attributes): New.
9463 (library_children): Make "segment" optional. Add "section" child.
9464 (library_list_children): Register library_list_end_library.
9465 (solib_target_relocate_section_addresses): Handle section bases.
9467 * NEWS: Mention new qXfer:libraries:read section offsets support.
9469 2008-03-14 Vladimir Prus <vladimir@codesourcery.com>
9471 * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
9472 (make_exec_error_cleanup): Remove declarations.
9473 * utils.c (exec_error_cleanup_chain): Remove.
9474 (do_exec_error_cleanups, discard_exec_error_cleanups)
9475 (make_exec_error_cleanup): Remove.
9476 * event-loop.c (start_event_loop): Adjust call to
9478 * event-top.c (async_enable_stdin): Remove the paramater dummy.
9479 (async_disable_stdin): Don't register async_enable_stdin via
9481 * inf-loop.c (inferior_event_handler): Don't
9482 call do_exec_error_cleanups. Call async_enable_stdin instead.
9483 * event-loop.c (start_event_loop): Adjust call to
9485 * tui/tui-interp.c (tui_command_loop): Adjust call to
9488 2008-03-14 Vladimir Prus <vladimir@codesourcery.com>
9491 * Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
9492 * breakpoint.c (bpstat_do_actions): In async mode,
9493 don't jump to top expecting stop_bpstat to be already
9495 * event-loop.c (start_event_loop): Call async_enable_stdin
9497 * event-top.c (async_enable_stdin): Do nothing if sync_execution
9499 (command_handler): Do not setup continuation here.
9500 (command_line_handler_continuation): Move to...
9501 * top.c (command_line_handler_continuation): ... here.
9502 (execute_command): In async mode, register continuation.
9503 Don't check frame's language in running in async mode.
9504 * exceptions.c (throw_exception): Don't do exec_error_cleanups.
9505 * inf-loop.c (complete_execution): Inline into...
9506 (inferior_event_handler): ... here. Clear target_executing before
9507 doing any cleanups. Don't try to show prompt if the target was
9509 * infcmd.c (signal_command): Add support for async mode.
9510 (finish_command): Only add continuation if the target was
9511 successfully resumed.
9512 * remote.c (init_async_opts): Register to_get_thread_local_address
9514 * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
9515 with sync_execution.
9516 * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
9519 2008-03-14 Daniel Jacobowitz <dan@codesourcery.com>
9521 * corefile.c (reopen_exec_file): Use exec_bfd_mtime.
9522 * exec.c (exec_bfd_mtime): Define.
9523 (exec_close): Clear it.
9524 (exec_file_attach): Set it.
9525 * gdbcore.h (exec_bfd_mtime): Declare.
9526 * source.c (find_source_lines): Do not use bfd_get_mtime.
9528 2008-03-14 Vladimir Prus <vladimir@codesourcery.com>
9530 * top.c (simplified_command_loop): Remove.
9532 2008-03-14 Vladimir Prus <vladimir@codesourcery.com>
9534 Remove unused remote.c hooks.
9535 * remote.c (deprecated_target_resume_hook)
9536 (deprecated_target_wait_loop_hook): Remove.
9537 (remote_resume): Do not call deprecated_target_resume_hook.
9538 (remote_wait): Do not call deprecated_target_wait_loop_hook.
9539 (remote_async_wait): Likewise.
9541 2008-03-14 Vladimir Prus <vladimir@codesourcery.com>
9543 Implement MI notification for new threads.
9544 * doc/observer.texi (new_thread): Document.
9545 * observer.sh: Forward declare struct thread_info.
9546 * thread.c (add_thread): Notify observer.
9548 * interps.h (interp_init_ftype): New parameter
9550 (interp_set): Likewise.
9551 (top_level_interpreter_data): Declare.
9552 * interps.c (interp_set): New parameter top_level.
9553 Pass it to interpreter's init function. Remember
9554 top level interpreter.
9555 (interpreter_exec_cmd): Adjust.
9556 (top_level_interpreter_data): New.
9557 * main.c (captured_main): Pass 1 for top_level
9558 parameter of interp_set.
9559 * cli/cli-interp.c (cli_interpreter_init): New
9560 parameter top_level.
9561 * tui/tui-interp.c (tui_init): New parameter top_level.
9563 * mi/mi-interp.c (mi_new_thread): New.
9564 (mi_interpreter_init): If top level, register
9565 observer for new threads.
9567 * Makefile.in (mi-interp.o, thread.o): Update dependencies.
9569 2008-03-14 Pedro Alves <pedro@codesourcery.com>
9571 * top.c (execute_command): Disable break and stop
9572 commands in async mode.
9574 2008-03-14 Pedro Alves <pedro@codesourcery.com>
9577 2008-03-14 Pedro Alves <pedro@codesourcery.com>
9578 * inf-loop.c (inferior_event_handler): Don't include remote.h.
9579 Call target_stop in the INF_QUIT_REQ case.
9580 * Makefile.in (inf-loop.o): Update.
9582 2008-03-14 Pedro Alves <pedro@codesourcery.com>
9584 * inf-loop.c (inferior_event_handler): Don't include remote.h.
9585 Call target_stop in the INF_QUIT_REQ case.
9586 * Makefile.in (inf-loop.o): Update.
9588 2008-03-14 Pedro Alves <pedro@codesourcery.com>
9590 * top.c (execute_command): Enable break, info and interrupt
9591 commands in async mode.
9593 2008-03-13 Vladimir Prus <vladimir@codesourcery.com>
9594 Daniel Jacobowitz <dan@codesourcery.com>
9596 * breakpoint.h (breakpoint_restore_shadows): New
9598 * breakpoint.c (breakpoint_restore_shadows): New.
9599 (read_memory_nobpt): Delete.
9600 * gdbcore.h (read_memory_nobpt): Delete declaration.
9601 * target.c (memory_xfer_partial): Call
9602 breakpoint_restore_shadows.
9603 (restore_show_memory_breakpoints)
9604 (make_show_memory_breakpoints_cleanup): New.
9605 (show_memory_breakpoints): New.
9606 * target.h (make_show_memory_breakpoints_cleanup): Declare.
9607 * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
9608 Make sure we see memory breakpoints when checking if
9609 breakpoint is still there.
9610 * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
9611 hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
9612 m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
9613 sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
9615 2008-03-12 Pedro Alves <pedro@codesourcery.com>
9617 * thread.c (add_thread): Use printf_unfiltered to print.
9619 2008-03-12 Joel Brobecker <brobecker@gnat.com>
9621 * sol-thread.c: Replace use of TM_I386SOL2_H by an expression
9622 that is true only on x86-solaris and x86_64-solaris.
9623 * procfs.c: Likewise. Move procfs_find_LDT_entry up together
9624 with proc_get_LDT_entry.
9626 2008-03-12 Thiago Jung Bauermann <bauerman@br.ibm.com>
9628 * configure.ac (AC_CHECK_FUNCS): Add check for setsid.
9629 * config.in, configure: Regenerate.
9630 * fork-child.c (fork_inferior): Call create_tty_session.
9631 * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
9632 (create_tty_session): New function.
9633 * terminal.h: Declare create_tty_session.
9635 2008-03-12 Alan Modra <amodra@bigpond.net.au>
9638 * elfread.c (elf_symtab_read): Make shndx an unsigned int.
9639 * mipsread.c: Include elf/internal.h.
9640 (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
9643 2008-03-11 Markus Deuling <deuling@de.ibm.com>
9645 * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
9646 to get at the current architecture and at the target specific vector.
9647 Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
9648 remove define of I387_ST0_REGNUM.
9650 * amd64-tdep.c (I387_ST0_REGNUM): Remove define.
9652 (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
9653 get at the current architecture
9654 (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
9657 * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
9658 I387_NUM_XMM_REGS and I387_MM0_REGNUM.
9660 (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
9661 I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
9662 (I387_FSTAT_REGNUM): Add target specific vector as parameter.
9664 (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
9665 at the target specific vector.
9667 (i386_get_longjmp_target): Use get_frame_arch to get at the current
9668 architecture. Use gdbarch_tdep to get at the target specific vector.
9670 (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
9671 update caller. Use gdbarch_tdep to get at the target specific vector.
9673 (i386_register_to_value: Use get_frame_arch to get at the current
9676 * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
9679 * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
9680 I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
9681 I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
9682 FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.
9684 (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
9687 (i387_convert_register_p, i387_register_to_value,
9688 i387_value_to_register): Update call for i386_fp_regnum_p.
9690 * i387-tdep.h: Remove comment.
9691 (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
9692 (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
9693 I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
9694 I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
9695 I387_MXCSR_REGNUM): Add target specific vector as parameter.
9697 2008-03-10 Daniel Jacobowitz <dan@codesourcery.com>
9699 * Makefile.in (fork-child.o): Update.
9700 * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
9701 argument. Gather all gdbserver features together.
9702 * fork-child.c (exec_wrapper): New variable.
9703 (fork_inferior): Use it.
9704 (startup_inferior): Skip an extra trap if using "set exec-wrapper".
9705 (unset_exec_wrapper_command, _initialize_fork_child): New.
9707 2008-03-10 Hidetaka Takano <hidetaka.takano@glb.toshiba.co.jp>
9709 * source.c (directory_command): Modify the determination of
9710 condition of terminal "from_tty".
9712 2008-03-10 Matt Rice <ratmice@gmail.com>
9714 * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.
9716 2008-03-10 Hidetaka Takano <hidetaka.takano@glb.toshiba.co.jp>
9718 * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
9719 of the data passing to strtoulst function.
9720 (info_spu_signal_command): Likewise.
9722 2008-03-08 Vladimir Prus <vladimir@codesourcery.com>
9724 * mi/mi-interp.c (mi_command_loop): Remove
9727 2008-03-07 Joel Brobecker <brobecker@adacore.com>
9729 * remote.c (extended_remote_attach_1): Make local variable pid an int
9732 2008-03-07 Joel Brobecker <brobecker@adacore.com>
9734 * solib-svr4.c (svr4_same_1): New function, originally extracted
9735 from svr4_same and expanded to handle the sparc64 case.
9736 (svr4_same): Move up and reimplement using svr4_same_1.
9737 (enable_break): Use svr4_same_1 to do shared library name comparisons.
9739 2008-03-07 Ramana Radhakrishnan <ramana.r@gmail.com>
9741 * MAINTAINERS: Move self to Paper trail.
9743 2008-03-05 Daniel Jacobowitz <dan@codesourcery.com>
9745 * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
9746 * event-loop.c (call_async_signal_handler): New.
9747 * event-loop.h (call_async_signal_handler)
9748 (gdb_call_async_signal_handler): Declare.
9749 (mark_async_signal_handler): Add comments.
9750 * event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
9751 * mingw-hdep.c (sigint_event, sigint_handler): New.
9752 (gdb_select): Use them. Wait for the readline signal handler
9754 (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
9755 * posix-hdep.c (gdb_call_async_signal_handler): New function.
9756 * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
9758 (remote_fileio_ctrl_c_signal_handler): Use
9759 gdb_call_async_signal_handler.
9760 (initialize_remote_fileio): Initialize sigint_fileio_token.
9761 * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
9762 not initialize tokens here.
9763 (handle_remote_sigint_twice): Likewise. Reinstall
9764 handle_remote_sigint.
9765 (async_remote_interrupt_twice): Just call interrupt_query.
9766 (cleanup_sigint_signal_handler): Do not delete tokens.
9767 (remote_interrupt, remote_interrupt_twice): Use
9768 gdb_call_async_signal_handler.
9769 (interrupt_query): Reinstall the default signal handler.
9770 (_initialize_remote): Initialize tokens here.
9772 2008-03-04 Joel Brobecker <brobecker@adacore.com>
9774 * features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
9775 features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
9776 Change the type of the lr register to code_ptr.
9777 * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
9778 features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
9779 features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
9780 features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
9781 features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
9782 features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
9783 features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.
9785 2008-03-03 James E. Wilson <wilson@tuliptree.org>
9787 * MAINTAINERS: Update my email address.
9789 2008-03-03 Keith Seitz <keiths@redhat.com>
9791 From Dave Murphy <davem@devkitpro.org>:
9792 * configure.ac: Set tcl configdir to win under mingw.
9793 * configure: Regenerate.
9795 2008-03-03 Daniel Jacobowitz <dan@codesourcery.com>
9797 * breakpoint.c (fetch_watchpoint_value): New function.
9798 (update_watchpoint): Set and clear val_valid. Use
9799 fetch_watchpoint_value. Handle unreadable values on the
9800 value chain. Correct check for user-requested array watchpoints.
9801 (breakpoint_init_inferior): Clear val_valid.
9802 (watchpoint_value_print): New function.
9803 (print_it_typical): Use it. Do not free or clear old_val. Print
9804 watchpoints even if old_val == NULL.
9805 (watchpoint_check): Use fetch_watchpoint_value. Check for values
9806 becoming readable or unreadable.
9807 (watch_command_1): Use fetch_watchpoint_value. Set val_valid.
9808 (do_enable_watchpoint): Likewise.
9809 * breakpoint.h (struct breakpoint): Update comment for val. Add
9811 * NEWS: Mention watchpoints on inaccessible memory.
9813 2008-02-29 Daniel Jacobowitz <dan@codesourcery.com>
9815 * Makefile.in (i386-nat.o): Update.
9816 * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
9817 i386_use_watchpoints.
9818 * i386-linux-nat.c (_initialize_i386_linux_nat): Call
9819 i386_use_watchpoints.
9820 * i386-nat.c (i386_stopped_data_address): Take two arguments.
9821 (i386_stopped_by_watchpoint): Update call.
9822 (i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
9823 * config/i386/nm-i386.h: Conditionalize definitions on
9824 ! I386_WATCHPOINTS_IN_TARGET_VECTOR.
9825 (i386_use_watchpoints): Declare.
9826 (i386_stopped_data_address): Update.
9827 * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
9828 * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
9830 2008-02-29 Joel Brobecker <brobecker@adacore.com>
9832 GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
9833 * version.in: Bump version to 6.8.50.20080229-cvs.
9835 2008-02-28 Markus Deuling <deuling@de.ibm.com>
9837 * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
9840 2008-02-28 Tom Tromey <tromey@redhat.com>
9842 * infcmd.c (notice_args_read): Print result of get_inferior_args.
9844 2008-02-28 Daniel Jacobowitz <dan@codesourcery.com>
9846 * infcmd.c (kill_if_already_running): Make static. Use
9847 target_require_runnable.
9848 * target.c (target_require_runnable): New.
9849 * target.h (target_require_runnable): Declare.
9851 2008-02-28 Daniel Jacobowitz <dan@codesourcery.com>
9853 * frame.c (reinit_frame_cache): Only annotate if frames were
9856 2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
9858 * regformats/reg-ppc.dat: Rename "ps" to "msr".
9859 * regformats/reg-ppc64.dat: Likewise.
9861 2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
9863 * features/Makefile (%.dat): Emit xmltarget statement.
9865 * regformats/regdat.sh: Support xmltarget and xmlarch statments.
9866 Generate code to set gdbserver_xmltarget in init_registers_${name}.
9868 * regformats/arm-with-iwmmxt.dat: Regenerate.
9869 * regformats/mips64-linux.dat: Regenerate.
9870 * regformats/mips-linux.dat: Regenerate.
9871 * regformats/rs6000/powerpc-32.dat: Regenerate.
9872 * regformats/rs6000/powerpc-64.dat: Regenerate.
9873 * regformats/rs6000/powerpc-e500.dat: Regenerate.
9875 * regformats/reg-arm.dat: Add xmlarch statement.
9876 * regformats/reg-i386.dat: Likewise.
9877 * regformats/reg-i386-linux.dat: Likewise.
9878 * regformats/reg-x86-64-linux.dat: Likewise.
9879 * regformats/reg-spu.dat: Likewise.
9881 2008-02-27 Daniel Jacobowitz <dan@codesourcery.com>
9883 * remote.c (remote_wait, remote_async_wait): Stop if we receive
9886 2008-02-27 Daniel Jacobowitz <dan@codesourcery.com>
9888 * utils.c (debug_timestamp): New.
9889 (vfprintf_unfiltered): Print timestamps if requested.
9890 (show_debug_timestamp): New.
9891 (initialize_utils): Register "set debug timestamp".
9892 * NEWS: Mention "set debug timestamp". Add GDB 6.8 section.
9894 2008-02-27 Joel Brobecker <brobecker@adacore.com>
9896 * breakpoint.c (skip_prologue_sal): New function.
9897 (resolve_sal_pc): Adjust SAL past prologue if the SAL was
9898 computed from a line number.
9900 2008-02-27 Joel Brobecker <brobecker@adacore.com>
9902 * features/rs6000/power-core.xml, features/rs6000/power64-core.xml
9903 features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
9904 Set PC register type to "code_ptr".
9905 * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
9906 features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
9907 features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
9908 features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
9909 features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
9910 features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
9911 features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
9914 2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
9916 * regformats/regdat.sh: Rename init_registers function in
9917 generated file to init_registers_${name}.
9919 * regformats/reg-crisv32.dat: Set "name" to crisv32.
9920 * regformats/reg-ppc64.dat: Set "name" to ppc64.
9921 * regformats/reg-s390x.dat: Set "name" to s390x.
9923 2008-02-26 Greg Law <glaw@undo-software.com>
9925 * regcache.c (registers_changed): Call reinit_frame_cache.
9927 2008-02-26 Daniel Jacobowitz <dan@codesourcery.com>
9929 * configure.tgt (sh-*-linux*): Match sh*. Add glibc-tdep.o.
9930 * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
9931 and svr4_fetch_objfile_link_map.
9932 * Makefile.in (sh-linux-tdep.o): Update.
9934 2008-02-26 Thiago Jung Bauermann <bauerman@br.ibm.com>
9936 * amd64-tdep.c (amd64_classify): Add support for decimal float
9938 * i386-tdep.c (i386_return_value): Make 128-bit decimal float
9939 use the struct return convention.
9941 2008-02-26 Nick Roberts <nickrob@snap.net.nz>
9943 * breakpoint.c (print_one_breakpoint_location): Revert Enb field
9944 to old format. Discard breakpoint address if shared library is
9946 (breakpoint_1): Adjust formatting of table header accordingly.
9948 2008-02-25 Vladimir Prus <vladimir@codesourcery.com>
9950 * remote.c (remote_get_threadlist): If the response
9951 is empty, don't try to parse it.
9953 2008-02-23 Vladimir Prus <vladimir@codesourcery.com>
9955 Unbreak 'target async'.
9956 * serial.c (serial_async): Set the
9957 handler function before enabling async
9960 2008-02-22 Daniel Jacobowitz <dan@codesourcery.com>
9962 * solib-svr4.c (enable_break): Convert r_brk to a code address.
9964 2008-02-21 Pedro Alves <pedro@codesourcery.com>
9966 * remote.c (extended_remote_attach_1): Set attach_flag.
9967 (extended_remote_create_inferior_1): Clear attach_flag.
9969 2008-02-20 Daniel Jacobowitz <dan@codesourcery.com>
9971 * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
9973 (mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
9974 * solib-svr4.c (solib_svr4_r_brk): New.
9975 (open_symbol_file_object, svr4_current_sos): Always check the
9977 (svr4_fetch_objfile_link_map): Do not set debug_base.
9978 (enable_break): Use r_brk if it is set.
9979 (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
9980 (svr4_lp64_fetch_link_map_offsets): Likewise.
9981 * solib-svr4.h (struct link_map_offsets): Add r_brk_offset.
9983 2008-02-20 Markus Deuling <deuling@de.ibm.com>
9984 Mark Kettenis <kettenis@gnu.org>
9986 * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
9987 trad_frame_saved_reg.
9988 (trad-frame.h): New include.
9990 (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
9991 instead of frame_obstack_zalloc.
9992 (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.
9994 * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
9996 2008-02-20 Markus Deuling <deuling@de.ibm.com>
9998 * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
9999 from disassemble_info instead of gdbarch_byte_order.
10001 * mips-tdep.c (gdb_print_insn_mips): Likewise.
10002 * arm-tdep.c (gdb_print_insn_arm): Likewise.
10004 2008-02-20 Markus Deuling <deuling@de.ibm.com>
10006 * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
10007 gdbarch as parameter.
10009 * gdbarch.{c,h}: Regenerate.
10011 * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10013 * mem-break.c (default_memory_insert_breakpoint)
10014 (default_memory_remove_breakpoint): Likewise.
10015 * target.h (default_memory_remove_breakpoint)
10016 (default_memory_insert_breakpoint): Likewise.
10018 * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10019 parameter. Replace current_gdbarch by gdbarch.
10020 * m32r-tdep.c (m32r_memory_insert_breakpoint)
10021 (m32r_memory_remove_breakpoint): Likewise.
10023 2008-02-19 Daniel Jacobowitz <dan@codesourcery.com>
10025 * MAINTAINERS: Add Vladimir Prus as MI maintainer.
10027 2008-02-19 Joel Brobecker <brobecker@adacore.com>
10029 * NEWS: Add entry describing Add support improvements.
10031 2008-02-18 Markus Deuling <deuling@de.ibm.com>
10033 * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
10036 2008-02-18 Markus Deuling <deuling@de.ibm.com>
10038 * sentinel-frame.c (sentinel_frame_prev_register): Do not call
10039 register_offset_hack anymore.
10041 * regcache.{c,h} (register_offset_hack): Remove.
10043 2008-02-18 Markus Deuling <deuling@de.ibm.com>
10045 * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.
10047 * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
10048 current_gdbarch by gdbarch.
10049 (hppa64_hpux_find_global_pointer): Likewise.
10050 * hppa-tdep.c (hppa_find_global_pointer): Likewise.
10051 (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
10052 find_global_pointer.
10054 * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
10056 * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.
10058 * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
10059 of gdbarch_num_regs.
10061 * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
10062 replace current_gdbarch by gdbarch.
10063 (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.
10065 2008-02-18 Markus Deuling <deuling@de.ibm.com>
10067 * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
10068 and replace current_gdbarch by gdbarch.
10070 (store_register): Update call for exec_one_dummy_insn.
10071 (fetch_register, store_register): Update call of regmap.
10073 * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
10074 parameter and replace current_gdbarch by gdbarch.
10076 (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
10077 the current architecture. Update call for getregs_supplies and
10078 getfpregs_supplies.
10079 (ppcnbsd_fetch_inferior_registers): Likewise.
10081 * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
10082 replace current_gdbarch by gdbarch.
10083 (ppcobsd_fetch_registers, ppcobsd_store_registers): Use
10084 get_regcache_arch to get at the current architecture. Update call for
10085 getfpregs_supplies.
10087 2008-02-18 Markus Deuling <deuling@de.ibm.com>
10089 * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
10092 2008-02-15 Markus Deuling <deuling@de.ibm.com>
10094 * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.
10096 2008-02-14 Vladimir Prus <vladimir@codesourcery.com>
10098 * NEWS: Mention pending breakpints in MI.
10100 2008-02-14 Markus Deuling <deuling@de.ibm.com>
10102 * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.
10104 2008-02-13 Markus Deuling <deuling@de.ibm.com>
10106 Add script to build and test GDB using enable-targets=all.
10108 * gdb_buildall.sh: New file.
10110 2008-02-11 Maxim Grigoriev <maxim2405@gmail.com>
10112 * NEWS (New native configurations): Xtensa GNU/Linux.
10113 (New targets): Xtensa GNU/Linux.
10114 * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and
10115 xtensa-linux-tdep.o
10116 (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c
10117 (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies.
10118 * configure.tgt (xtensa*-*-linux*): New entry.
10119 * xtensa-config.c (xtensa_tdep): New variable.
10120 (xtensa_config_byte_order, xtensa_config_tdep): Removed.
10121 (rmap): Change format based on new macro XTREG.
10122 (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h.
10123 * xtensa-linux-nat.c: New.
10124 * xtensa-linux-tdep.c: New.
10125 * xtensa-xtregs.c: New.
10126 * xtensa-tdep.h (xtensa_elf_gregset_t): Update.
10127 (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE)
10128 (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros.
10129 (xtensa_register_t): New field coprocessor.
10130 (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected.
10131 * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed.
10132 (xtensa_pseudo_register_read, xtensa_pseudo_register_write):
10133 Update to handle privileged registers.
10134 (xtensa_supply_gregset) Remove exccause and excvaddr registers.
10135 (xtensa_push_dummy_call): Set windowstart register correctly.
10136 (call0_analyze_prologue): Initialize xtensa_default_isa.
10137 (xtensa_derive_tdep): New.
10138 (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and
10139 xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead.
10140 Call xtensa_derive_tdep().
10141 * config/xtensa/linux.mh: New.
10142 * regformats/reg-xtensa.dat: New.
10144 2008-02-09 Aleksandar Ristovski <aristovski@qnx.com> (tiny change)
10146 * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
10147 (filenames.h): New include.
10148 * Makefile.in (corelow.o): Add dependency for filenames.h.
10150 2008-02-08 Doug Evans <dje@google.com>
10152 * source.c (find_and_open_source): Always rewrite absolute filenames.
10154 2008-02-07 Doug Evans <dje@google.com>
10156 * breakpoint.c: #include "hashtab.h".
10157 (ambiguous_names_p): New fn.
10158 (update_breakpoint_locations): When restoring bp enable status, don't
10159 compare function names if any functions have same name.
10160 * Makefile.in (breakpoint.o): Add hashtab.h dependency.
10162 2008-02-07 Joel Brobecker <brobecker@adacore.com>
10164 * ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
10165 instead of just a VEC*. Update use of SV.
10166 (ada_make_symbol_completion_list): Update symbol_completion_add calls.
10168 2007-02-07 Joel Brobecker <brobecker@adacore.com>
10170 * NEWS: Put all new commands since gdb-6.7 together.
10172 2007-02-07 Joel Brobecker <brobecker@adacore.com>
10174 * ada-lang.c: #include "vec.h".
10175 (struct string_vector, new_string_vector, string_vector_append):
10177 (char_ptr): New typedef.
10178 (DEF_VEC_P (char_ptr)): New VEC type.
10179 (symbol_completion_add): Update profile to take the new VEC type
10180 instead of the old string_vector structure. Update code accordingly.
10181 (ada_make_symbol_completion_list): Use the new VEC type instead of
10182 the old string_vector structure, and update the code accordingly.
10183 * Makefile.in (ada-lang.o): Add dependency on vec.h.
10185 2008-02-06 Pierre Muller <muller@ics.u-strasbg.fr>
10187 * p-exp.y: Set current_type in missing places.
10188 (leftdiv_is_integer): New static variable.
10189 Typecast right operand of BINOP_DIV to long_double if both operands
10192 2008-02-06 Maciej W. Rozycki <macro@mips.com>
10194 * remote-mips.c (set_breakpoint): Rename to...
10195 (mips_set_breakpoint): ... this.
10196 (clear_breakpoint): Rename to...
10197 (mips_clear_breakpoint): ... this.
10198 (common_breakpoint): Rename to...
10199 (mips_common_breakpoint): ... this.
10200 (check_lsi_error): Rename to...
10201 (mips_check_lsi_error): ... this.
10203 2007-02-05 Joel Brobecker <brobecker@adacore.com>
10205 * language.h (struct language_defn): Add new field
10206 la_make_symbol_completion_list.
10207 * symtab.c (default_make_symbol_completion_list): Renames
10208 make_symbol_completion_list.
10209 (make_symbol_completion_list): New function.
10210 * symtab.h (default_make_symbol_completion_list): Add declaration.
10211 * langauge.c (unknown_language): Set la_make_symbol_completion_list.
10212 (auto_language, local_language): Likewise.
10213 * objc-lang.c (objc_language_defn): Likewise.
10214 * scm-lang.c (scm_language_defn): Likewise.
10215 * m2-lang.c (m2_language_defn): Likewise.
10216 * f-lang.c (f_language_defn): Likewise.
10217 * jv-lang.c (java_language_defn): Likewise.
10218 * p-lang.c (pascal_language_defn): Likewise.
10219 * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
10220 (minimal_language_defn): Likewise.
10221 * ada-lang.c (struct string_vector): New structure.
10222 (new_string_vector, string_vector_append, ada_unqualified_name)
10223 (add_angle_brackets, symbol_completion_match, symbol_completion_add)
10224 (ada_make_symbol_completion_list): New functions.
10225 (ada_language_defn): Set la_make_symbol_completion_list.
10226 * ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
10227 this function is static.
10229 2008-02-05 Kevin Buettner <kevinb@redhat.com>
10231 * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
10232 to account for call site optimizations.
10234 2008-02-05 Andrzej Zaborowski <balrogg@gmail.com>
10236 * tracepoint.c (read_actions): Handle end-of-text indicator
10237 in action list properly. (Committed by Jim Blandy)
10239 2008-02-05 Jim Blandy <jimb@red-bean.com>
10241 * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
10242 pseudoregister, not an internal error.
10243 Reported by: Andrzej Zaborowski
10245 2008-02-04 Vladimir Prus <vladimir@codesourcery.com>
10247 * varobj.c (c_value_of_variable): Use xstrdup.
10249 2008-02-04 Vladimir Prus <vladimir@codesourcery.com>
10251 Update stored rendition of varobj value when format changes.
10252 * varobj.c (varobj_set_display_format): Recomputed
10254 (c_value_of_variable): Return print_value.
10256 2008-02-03 Doug Evans <dje@google.com>
10258 * eval.c (evaluate_subexp_standard): Fix type of result of mixed
10259 integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
10260 * valops.c (value_one): New function.
10261 * value.h (value_one): Declare.
10263 Fix argument promotion for binary arithmetic ops for C.
10264 * valarith.c (unop_result_type): New fn.
10265 (binop_result_type): New fn.
10266 (value_binop): Move result type computation to binop_result_type.
10267 (value_pos, value_neg, value_complement): Move result type
10268 computation to unop_result_type.
10271 * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10272 Return basetype, fieldno if found. All callers updated.
10273 Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
10275 * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10276 * symfile.h (fill_in_vptr_fieldno): Delete.
10278 2008-02-02 Doug Evans <dje@google.com>
10280 * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.
10282 * typeprint.c (*): Whitespace cleanup.
10284 2008-02-02 Mark Kettenis <kettenis@gnu.org>
10285 Luis Machado <luisgpm@br.ibm.com>
10286 Thiago Jung Bauermann <bauerman@br.ibm.com>
10288 * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
10289 don't fit into registerson the stack the way GCC does.
10291 2008-02-01 Joel Brobecker <brobecker@adacore.com>
10293 * symtab.c (symbol_set_names): Do not add an entry in the demangling
10294 hash table for Ada symbols. Just store the linkage name as is,
10295 and leave the demangled_name as NULL.
10297 2007-02-01 Joel Brobecker <brobecker@adacore.com>
10299 * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
10300 in the global scope.
10301 (new_symbol): Likewise.
10303 2008-02-01 Vladimir Prus <vladimir@codesourcery.com>
10305 * breakpoint.c (break_command_1): Return void.
10306 (break_command_really): Return void. Rethrow
10307 exceptions instead of returning.
10308 (gdb_breakpoint): Remove the error_message parameter.
10309 Return void. Rename to set_breakpoint.
10310 * gdb.h (gdb_breakpoint): Rename and move to...
10311 * breakpoint.h (set_breakpoint): ...here.
10312 * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
10313 event hooks even if exception is thrown. Adjust to
10314 gdb_breakpoint interface changes.
10317 2008-02-01 Thiago Jung Bauermann <bauerman@br.ibm.com>
10319 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
10320 float in both first and second word in the doubleword, to support
10323 2008-02-01 Vladimir Prus <vladimir@codesourcery.com>
10325 Properly rethrow exception. This fixes errors
10326 about non-existent functions for -break-insert.
10327 * breakpoint.c (break_command_really): Use throw_exception
10328 for rethrowing. If rethrowing, don't print the exception.
10330 2008-01-31 Thiago Jung Bauermann <bauerman@br.ibm.com>
10332 * NEWS: Mention Decimal Floating Point support.
10334 2008-01-31 Joel Brobecker <brobecker@adacore.com>
10336 * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
10337 value type to builtin_type_void_func_ptr.
10339 2008-01-31 Andreas Krebbel <krebbel1@de.ibm.com>
10341 * s390-tdep.c (is_float_singleton, is_float_like,
10342 alignment_of, s390_return_value): Make checks for
10343 TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.
10345 2008-01-31 Luis Machado <luisgpm@br.ibm.com>
10346 Thiago Jung Bauermann <bauerman@br.ibm.com>
10348 * infcmd.c (default_print_registers_info): Also print hex
10349 raw contents for TYPE_CODE_DECFLOAT registers.
10350 * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
10351 * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
10352 (rs6000_register_name): Add support for DFP pseudo-registers.
10353 (rs6000_pseudo_register_type): Likewise.
10354 rs6000_pseudo_register_reggroup_p): Likewise.
10355 (ppc_pseudo_register_read): New function.
10356 (ppc_pseudo_register_write): Likewise.
10357 (rs6000_pseudo_register_read): Likewise.
10358 (rs6000_pseudo_register_write): Likewise.
10359 (e500_pseudo_register_read): Move checks to
10360 rs6000_pseudo_register_read.
10361 (e500_pseudo_register_write): Move checks to
10362 rs6000_pseudo_register_write.
10363 (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum. Install
10364 rs6000_pseudo_register_read and rs6000_pseudo_register_write
10365 in gdbarch if SPE or DFP is available. Adjust gdbarch's
10366 num_pseudo_regs to account for DFP pseudo regs.
10368 2008-01-31 Thiago Jung Bauermann <bauerman@br.ibm.com>
10370 * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
10371 * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
10372 (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
10373 rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
10374 e500_pseudo_register_read, e500_pseudo_register_write): Use
10375 IS_SPE_PSEUDOREG macro.
10376 (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
10377 (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
10378 Remove initialization of tdep->ppc_ev31_regnum.
10380 2008-01-08 Paul Hilfinger <hilfinger@adacore.com>
10382 * printcmd.c (print_formatted): Handle references as for unformatted
10385 2008-01-30 Joel Brobecker <brobecker@adacore.com>
10387 * eval.c (evaluate_subexp_standard): Add handling of user
10388 registers when in EVAL_AVOID_SIDE_EFFECTS mode.
10390 2008-01-30 Pierre Muller <muller@ics.u-strasbg.fr>
10392 * eval.c (evaluate_subexp_standard): Support
10393 BINOP_INTDIV opcode.
10395 2008-01-30 Paul N. Hilfinger <hilfinger@adacore.com>
10397 * valarith.c (value_binop): Add floating-point BINOP_MIN and
10399 For BINOP_EXP, use length and signedness of left operand only for
10400 result, as for shifts.
10401 For integral operands to BINOP_EXP, use new integer_pow and
10402 uinteger_pow functions so as to get full range of results.
10403 (integer_pow): New function.
10404 (uinteger_pow): New function.
10406 2008-01-30 Vladimir Prus <vladimir@codesourcery.com>
10408 Use vector for varobj_list_children interface.
10409 * gdb/varobj.c (varobj_list_children): Return vector
10411 * gdb/varobj.h (varobj_list_children): Adjust
10413 (varobj_p): Declare. Declare vector thereof.
10414 * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
10415 for varobj_list_children change.
10416 * Makefile.in (varobj_h): Update dependencies.
10418 2008-01-30 Thiago Jung Bauermann <bauerman@br.ibm.com>
10420 * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
10421 TYPE_CODE_DECFLOAT arguments.
10422 (ppc64_sysv_abi_push_dummy_call) Likewise.
10423 (get_decimal_float_return_value): New function.
10424 (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
10425 values by calling get_decimal_float_return_value.
10426 (ppc64_sysv_abi_return_value): Likewise.
10428 2008-01-30 Nick Roberts <nickrob@snap.net.nz>
10430 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file): Add field
10431 for preprocessor macro information. Formatting changes.
10433 2008-01-29 Daniel Jacobowitz <dan@codesourcery.com>
10435 * remote.c (struct remote_state): Add cached_wait_status.
10436 (remote_exec_file): New variable.
10437 (PACKET_vAttach, PACKET_vRun): New constants.
10438 (extended_remote_restart): Do not query for status.
10439 (struct start_remote_args): New.
10440 (remote_start_remote): Take it as a second argument. Check
10441 whether the target is running. Issue an error for non-running
10442 non-extended targets. Cache the wait status. Set inferior_ptid
10444 (remote_open_1): Prompt to disconnect non-running targets. Make
10445 sure the target is marked running. Do not set inferior_ptid here.
10446 Update call to remote_start_remote. Do not call remote_check_symbols
10447 if the target is not running.
10448 (remote_detach_1): Rename from remote_detach. Take an EXTENDED
10449 argument. Handle a non-running target.
10450 (remote_detach): Use it.
10451 (extended_remote_detach): New.
10452 (remote_disconnect): Fix typo. Use remoute_mourn_1.
10453 (extended_remote_attach_1, extended_remote_attach)
10454 (extended_async_remote_attach): New.
10455 (remote_vcont_resume): Remove unused variable.
10456 (remote_wait, remote_async_wait): Use any cached wait status.
10457 (putpkt_binary, getpkt): Clear any cached wait status.
10458 (extended_remoute_mourn_1): New.
10459 (extended_remote_mourn): Use it.
10460 (extended_async_remote_mourn, extended_remote_run): New.
10461 (extended_remote_create_inferior_1): New.
10462 (extended_remote_create_inferior): Use it.
10463 (extended_remote_async_create_inferior): Likewise.
10464 (remote_xfer_partial): Skip for non-executing targets.
10465 (init_extended_remote_ops): Set to_detach and to_attach.
10466 (init_extended_async_remote_ops): Likewise. Use
10467 extended_async_remote_mourn.
10468 (_initialize_remote): Register vAttach, vRun, and
10469 set remote exec-file.
10470 * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.
10472 2008-01-29 Daniel Jacobowitz <dan@codesourcery.com>
10474 * Makefile.in (symfile.o): Update.
10475 * NEWS: Mention exec tracing support.
10476 * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
10478 * infcmd.c (kill_if_already_running, detach_command)
10479 (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
10480 * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
10481 (follow_exec): Do not check may_follow_exec. Do not mourn and push
10482 targets. Apply the sysroot path to the loaded executable. Use
10483 no_shared_libraries.
10484 * linux-nat.c (linux_child_follow_fork): Print fork following
10485 messages if verbose.
10486 (kill_wait_callback): Kill again before waiting a second time.
10487 * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
10488 no_shared_libraries.
10490 2008-01-29 Joel Brobecker <brobecker@adacore.com>
10492 * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.
10494 2008-01-29 Joel Brobecker <brobecker@adacore.com>
10496 * nto-tdep.h: Remove #include "defs.h".
10497 * nto-tdep.c: Add #include "defs.h".
10498 * Makefile.in (nto_tdep_h): Update dependencies.
10499 (nto-tdep.o): Likewise.
10501 2008-01-29 Joel Brobecker <brobecker@adacore.com>
10503 * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
10505 (proceed, start_remote): Update call to wait_for_inferior.
10506 * inferior.h (wait_for_inferior): Update declaration.
10507 * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
10508 solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
10509 * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
10510 TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.
10512 2008-01-29 Aleksandar Ristovski <aristovski@qnx.com>
10514 * varobj (adjust_value_for_child_access): Added checking for
10515 returned value from gdb_value_ind.
10516 (c_describe_child): Likewise.
10517 (cplus_describe_child): Fixed a typo.
10519 2008-01-29 Jim Blandy <jimb@red-bean.com>
10521 * MAINTAINERS: Update my info.
10523 2008-01-29 Vladimir Prus <vladimir@codesourcery.com>
10525 Use multiple locations for hardware watchpoints.
10526 This eliminates the need to traverse value chain, doing
10527 various checks, in three different places.
10529 * breakpoint.h (struct bp_location): New fields
10530 lengths and watchpoint_type.
10531 (struct breakpoint): Remove the val_chain field.
10532 * breakpoint.c (is_hardware_watchpoint): New.
10533 (free_valchain): Remove.
10534 (update_watchpoint): New.
10535 (insert_bp_location): For hardware watchpoint, just
10536 directly insert it.
10537 (insert_breakpoints): Call update_watchpoint_locations
10538 on all watchpoints. If we have failed to insert
10539 any location of a hardware watchpoint, remove all inserted
10541 (remove_breakpoint): For hardware watchpoints, directly
10543 (watchpoints_triggered): Iterate over locations.
10544 (bpstat_stop_status): Use only first location of
10545 a resource watchpoint.
10546 (delete_breakpoint): Don't call free_valchain.
10547 (print_one_breakpoint): Don't print all
10548 locations for watchpoints.
10549 (breakpoint_re_set_one): Use update_watchpoint for
10552 2008-01-29 Vladimir Prus <vladimir@codesourcery.com>
10554 Don't reset watchpoint block on solib load.
10556 * breakpoint.c (insert_bp_location): For watchpoints,
10557 recompute condition.
10558 (breakpoint_re_set_one): Instead of recomputing value
10559 and condition for watchpoints, just reset value and
10560 let insert_breakpoints/insert_bp_location recompute it.
10561 Don't do anything about disabled watchpoint.
10563 2008-01-29 Pierre Muller <muller@ics.u-strasbg.fr>
10565 * valarith.c (value_binop): Handle unsigned integer
10568 2008-01-28 Kevin Buettner <kevinb@redhat.com>
10570 * mn10300-tdep.c (mn10300_analyze_prologue): Check for an
10571 instruction pattern that appears frequently in position
10572 independent code. Fix bug in code which looks for "fmov" and
10573 backtracks if no "fmov" is found.
10575 2008-01-28 Doug Evans <dje@google.com>
10577 * dbxread.c (read_dbx_symtab): Fix indentation.
10578 Reformat comments to 80 columns.
10579 Move local var def closer to only use.
10581 2008-01-28 Daniel Jacobowitz <dan@codesourcery.com>
10583 * fork-child.c (SHELL_FILE): Remove #ifndef.
10584 (fork_inferior): Remove SHELL_COMMAND_CONCAT.
10586 2008-01-25 Pierre Muller <muller@ics.u-strasbg.fr>
10588 * i386-tdep.c (i386_skip_noop): New function.
10589 (i386_analyze_prologue): Call i386_skip_noop function.
10591 2008-01-24 Michael Snyder <msnyder@specifix.com>
10593 * procfs.c (procfs_xfer_partial): Comment, cut/paste error.
10594 * win32-nat.c (win32_xfer_partial): Ditto.
10595 * target.c (default_xfer_partial): Minor whitespace adjustment.
10597 2008-01-24 Pedro Alves <pedro@codesourcery.com>
10599 * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
10600 strip bit 1 even if pc doesn't point to thumb code.
10602 2008-01-23 Daniel Jacobowitz <dan@codesourcery.com>
10604 * remote.c (remote_wait): Handle SIGINT between packets.
10605 (remote_async_wait): Likewise.
10607 2008-01-23 Vladimir Prus <vladimir@codesourcery.com>
10608 Chris Demetriou <cgd@google.com>
10610 * thread.c (add_thread_silent): Renamed
10612 (print_thread_events): New variable definition.
10613 (show_print_thread_events): New function.
10614 (_initialize_thread): Add "set print thread-events" and
10615 "show print thread-events" commands.
10616 (add_thread): Announce new thread.
10617 * gdbthread.h (add_thread_silent): Declare.
10618 (print_thread_events): New variable declaration.
10619 * inf-ttrace.c (inf_ttrace_wait): Don't
10620 inform about new thread, as add_thread is always
10621 called too, and will take care of that.
10622 * infrun.c (handle_inferior_event): Likewise.
10623 * procfs.c (procfs_wait): Likewise.
10624 * remote.c (remote_currthread): Likewise.
10625 * sol-thread.c (sol_thread_wait): Likewise.
10626 * win32-nat.c (get_win32_debug_event): Likewise.
10627 * linux-thread-db.c (attach_thread): Likewise.
10628 Remove the verbose parameter.
10629 (check_event): Make detach_thread be verbose
10630 only if print_thread_events is set.
10631 * linux-nat.c (lin_lwp_attach_lwp): Don't inform
10632 about new thread. This is called only from
10633 linux-thread-db.c:attach_thread, which will take care.
10634 Remove the verbose parameter.
10635 * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.
10637 2008-01-23 Nick Roberts <nickrob@snap.net.nz>
10639 * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.
10641 2008-01-22 Vladimir Prus <vladimir@codesourcery.com>
10643 * breakpoint.c (break_command_really): New parameter
10645 (break_command_1): Pass 0 as
10646 ignore_count to break_command_really.
10647 (gdb_breakpoint): Pass ignore_count to
10648 break_command_really.
10650 2008-01-21 Kevin Buettner <kevinb@redhat.com>
10652 * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
10653 sigcontext struct via pointer.
10654 (struct sigframe comment): Update to show new field `psc'.
10656 2008-01-21 Vladimir Prus <vladimir@codesourcery.com>
10658 * infrun.c (handle_inferior_event): If
10659 we failed to remove breakpoints, error,
10660 don't try to increment PC by hand.
10662 2008-01-18 Nick Hudson <nick.hudson@dsl.pipex.com>
10664 Add NetBSD/hppa target and host support.
10666 * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
10667 (hppabsd_gregset): Move to ...
10668 (hppabsd_regset_from_core_section): Rename
10669 hppaobsd_regset_from_core_section and move to ...
10670 (hppabsd_find_global_pointer): Update comment.
10671 (hppabsd_init_abi): Make global. Do not register
10672 hppabsd_regset_from_core_section.
10673 (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
10675 (_initialize_hppabsd_tdep): Move to ...
10676 * hppaobsd-tdep.c: ... here. New file.
10677 * hppnbsd-tdep.c: New file.
10678 * hppnbsd-nat.c: New file.
10679 * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
10680 (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
10681 (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
10682 (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
10683 * configure.host (hppa*-*-netbsd*): New entry.
10684 * configure.tgt (hppa*-*-netbsd*): New entry.
10685 (hppa*-*-openbsd*): Update.
10686 * NEWS (New native configuration): Mention NetBSD/hppa.
10687 (New targets): Mention NetBSD/hppa.
10689 2008-01-18 Markus Deuling <deuling@de.ibm.com>
10691 * gdbarch.sh (function_list): Add new property bits_big_endian to
10693 * gdbarch.{c,h}: Regenerate.
10695 * value.c (struct value): Replace BITS_BIG_ENDIAN by
10696 gdbarch_bits_big_endian (comment).
10697 (unpack_field_as_long, modify_field): Likewise.
10698 * value.h: Likewise (comment).
10699 * valops.c (value_slice): Likewise.
10700 * valarith.c (value_subscript, value_bit_index): Likewise.
10701 * gdbtypes.h (field): Likewise (comment).
10702 * eval.c (evaluate_subexp_standard): Likewise.
10703 * dwarf2read.c (dwarf2_add_field): Likewise.
10704 * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
10705 (move_bits, ada_value_assign, value_assign_to_component): Likewise.
10707 * defs.h (BITS_BIG_ENDIAN): Remove.
10709 2008-01-18 Markus Deuling <deuling@de.ibm.com>
10711 * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
10713 * m2-exp.y (yylex): Likewise.
10714 * objc-exp.y (yylex): Likewise.
10716 * defs.h (DEPRECATED_STREQN): Remove.
10718 2008-01-17 H.J. Lu <hjl.tools@gmail.com>
10720 * MAINTAINERS: Update my email address.
10722 2008-01-17 Jim Blandy <jimb@codesourcery.com>
10724 * README: Mention gdbserver/README.
10726 2008-01-17 Pierre Muller <muller@ics.u-strasbg.fr>
10728 * valarith.c (value_binop): Handle BINOP_INTDIV
10729 for unsigned and signed integers.
10731 2008-01-17 Ulrich Weigand <uweigand@de.ibm.com>
10733 * s390-tdep.c (s390_gdbarch_init): Set default long double
10734 type to 128-bit IEEE quad.
10736 2008-01-17 Joel Brobecker <brobecker@adacore.com>
10738 * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
10740 2008-01-16 Mark Kettenis <kettenis@gnu.org>
10742 * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.
10744 * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
10745 * value.c: All callers changed.
10747 2008-01-16 Markus Deuling <deuling@de.ibm.com>
10749 * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
10750 DEPRECATED_STREQ by its expression.
10751 * coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
10752 * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
10753 (scan_xcoff_symtab): Likewise.
10754 * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
10755 * f-lang.c (find_common_for_function): Likewise.
10756 * objc-exp.y (parse_number): Likewise.
10758 * defs.h (DEPRECATED_STREQ): Remove.
10760 2008-01-16 Markus Deuling <deuling@de.ibm.com>
10762 * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
10763 * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
10764 get_frame_arch to get at the current_architecture. Update AM33_MODE
10766 (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
10767 (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
10769 (set_reg_offsets, mn10300_analyze_prologue): Fix indentation.
10771 2008-01-16 Markus Deuling <deuling@de.ibm.com>
10773 * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
10775 * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.
10777 (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
10778 current_gdbarch by gdbarch. Update caller.
10780 * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
10781 (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
10782 the current architecture. Update calls of
10783 amd64_native_gregset_supplies_p.
10784 * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
10785 (amd64bsd_store_inferior_registers): Likewise.
10787 2008-01-16 Markus Deuling <deuling@de.ibm.com>
10789 * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
10790 Replace current_gdbarch by gdbarch. Update caller.
10792 2008-01-16 Markus Deuling <deuling@de.ibm.com>
10794 * dbxread.c (repeated_header_complaint, dbx_symfile_init)
10795 (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
10796 (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
10797 (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
10798 (stabsect_build_psymtabs): Fix indentation.
10800 2008-01-15 Michael Snyder <msnyder@specifix.com>
10802 * corelow.c (core_xfer_partial): Comment, cut/paste error.
10804 2008-01-14 Pierre Muller <muller@ics.u-strasbg.fr>
10806 * win32-nat.c (win32_create_inferior): Restore code calling
10807 CloseHandle on ProcessInformation structure.
10809 2008-01-13 Nick Hudson <nick.hudson@dsl.pipex.com>
10811 * configure.ac: Check for void * as 3 argument of ptrace.
10812 * configure: regenerate.
10814 2008-01-11 Markus Deuling <deuling@de.ibm.com>
10816 * alpha-tdep.c (alpha_heuristic_proc_start)
10817 (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
10818 current_gdbarch by gdbarch.
10820 (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
10821 current architecture by frame_info. Update alpha_heuristic_proc_start
10824 (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
10825 get_frame_arch to get at the current architecture by frame_info. Update
10826 alpha_sigtramp_register_address call.
10828 * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
10829 current_gdbarch by gdbarch. Update caller.
10830 (convert_to_extended, convert_from_extended): Add endianess parameter
10831 for comparison. Update caller.
10832 (arm_extract_return_value, arm_store_return_value): Use
10833 get_regcache_arch to get at the current architecture.
10835 * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
10836 current_gdbarch by gdbarch. Update caller.
10837 (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
10838 gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.
10840 * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
10841 gdbarch as parameter. Update caller.
10842 (h8300_init_frame_cache): Add gdbarch as parameter. Replace
10843 current_gdbarch by gdbarch. Update caller.
10845 * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
10846 update caller. Replace current_gdbarch by gdbarch.
10848 * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
10849 the current architecture. Replace current_gdbarch by gdbarch.
10850 * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
10851 (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
10852 expression. Add gdbarch as parameter and replace current_gdbarch with
10854 (M6811_TDEP): Remove.
10855 (m68hc11_frame_prev_register): Use get_frame_arch to get at the current
10857 (m68hc11_scan_prologue): Add gdbarch as parameter. Replace
10858 current_gdbarch by gdbarch. Update caller.
10860 * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
10862 (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
10865 * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
10866 caller. Relace current_gdbarch by gdbarch.
10867 (altivec_register_p, spe_register_p): Likewise.
10868 * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
10870 * ppc-linux-nat.c (fetch_register, store_register): Update caller of
10871 altivec_register_p and spe_register_p.
10873 * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
10874 caller. Replace current_gdbarch by gdbarch.
10875 (score_analyze_prologue): use get_frame_arch to get at the current
10878 * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
10879 * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
10880 current_gdbarch by gdbarch. Update caller.
10881 (sparc_frame_cache): Use get_frame_arch to get at the current
10883 * sparce64-tdep.c (sparc64_skip_prologue): Update call of
10884 sparc_analyze_prologue.
10886 * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
10889 2008-01-11 Markus Deuling <deuling@de.ibm.com>
10891 * exec.c: #include "arch-utils.h"
10892 (print_section_info): Use gdbarch_from_bfd to get at the
10893 current architecture. Replace current_gdbarch. Fix indention. Replace
10894 deprecated_print_address_numeric by paddress.
10895 * Makefile.in (exec.o) Add dependency to arch-utils.h.
10897 * valprint.c (val_print_string): Replace
10898 deprecated_print_address_numeric.
10899 * tracepoint.c (trace_mention, scope_info): Likewise.
10900 * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
10901 (print_symbol, print_partial_symbols, maintenance_info_psymtabs)
10902 (maintenance_check_symtabs): Likewise.
10903 * symfile.c (list_overlays_command): Likewise.
10904 * stack.c (frame_info, print_block_frame_labels): Likewise.
10905 * printcmd.c (print_address, print_address_demangle)
10906 (address_info): Likewise.
10907 * corefile.c (memory_error): Likewise.
10908 * infcmd.c (jump_command): Likewise.
10909 * breakpoint.c (insert_bp_location, describe_other_breakpoints)
10910 (mention, delete_breakpoint): Likewise.
10911 * c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
10912 * dwarf2read.c (dump_die): Likewise.
10913 * ada-valprint.c (ada_val_print_1): Likewise.
10914 * f-valprint.c (f_val_print): Likewise.
10915 * linux-fork.c (info_forks_command): Likewise.
10916 * m32r-com.c (m32r_load_section, m32r_load)
10917 (m32r_upload_command): Likewise.
10919 * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
10921 2008-01-11 Markus Deuling <deuling@de.ibm.com>
10923 * gdbarch.sh (skip_prologue): Add gdbarch
10925 * gdbarch.{c,h}: Regenerate.
10927 * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
10928 * amd64-tdep.c (amd64_skip_prologue): Likewise.
10929 * avr-tdep.c (avr_skip_prologue): Likewise.
10930 * cris-tdep.c (cris_skip_prologue): Likewise.
10931 * frv-tdep.c (frv_skip_prologue): Likewise.
10932 * h8300-tdep.c (h8300_skip_prologue): Likewise.
10933 * hppa-tdep.c (hppa_skip_prologue): Likewise.
10934 * i386-tdep.c (i386_skip_prologue): Likewise.
10935 * ia64-tdep.c (ia64_skip_prologue): Likewise.
10936 * iq2000-tdep.c (iq2000_skip_prologue): Likewise.
10937 * m32r-tdep.c (m32r_skip_prologue): Likewise.
10938 * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
10939 * m68k-tdep.c (m68k_skip_prologue): Likewise.
10940 * m88k-tdep.c (m88k_skip_prologue): Likewise.
10941 * mep-tdep.c (mep_skip_prologue): Likewise.
10942 * mips-tdep.c (mips_skip_prologue): Likewise.
10943 * mn10300-tdep.c (mn10300_skip_prologue): Likewise.
10944 * mt-tdep.c (mt_skip_prologue): Likewise.
10945 * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
10946 * score-tdep.c (score_skip_prologue): Likewise.
10947 * sh64-tdep.c (sh64_skip_prologue): Likewise.
10948 * sh-tdep.c (sh_skip_prologue): Likewise.
10949 * sparc64-tdep.c (sparc64_skip_prologue): Likewise.
10950 * sparc-tdep.c (sparc32_skip_prologue): Likewise.
10951 * spu-tdep.c (spu_skip_prologue): Likewise.
10952 * v850-tdep.c (v850_skip_prologue): Likewise.
10953 * vax-tdep.c (vax_skip_prologue): Likewise.
10954 * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
10955 * xtensa-tdep.c (xtensa_skip_prologue): Likewise.
10957 * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
10958 current_gdbarch by gdbarch.
10959 * m32c-tdep.c (m32c_skip_prologue): Likewise.
10960 * s390-tdep.c (s390_skip_prologue): Likewise.
10962 2008-01-10 Doug Evans <dje@google.com>
10964 * defs.h (struct continuation_arg): Fix typo in comment.
10965 * target.c (target_translate_tls_address): Fix comment spelling error.
10967 2008-01-09 Thiago Jung Bauermann <bauerman@br.ibm.com>
10969 * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
10970 (DOUBLEST_SCAN_FORMAT): Likewise.
10971 * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
10972 * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
10973 * c-exp.y (parse_number): Likewise.
10974 * jv-exp.y (parse_number): Likewise.
10975 * objc-exp.y (parse_number): Likewise.
10976 * p-exp.y (parse_number): Likewise.
10978 2008-01-09 Joel Brobecker <brobecker@adacore.com>
10980 * gdbtypes.c (create_array_type): Add handling of null Ada arrays.
10981 (check_typedef): Likewise.
10983 2008-01-09 Luis Machado <luisgpm@br.ibm.com>
10985 * printcmd.c (printf_command): Add seen_big_h, seen_big_d and
10986 seen_double_big_d, treat the new H, D, and DD modifiers as length
10989 2008-01-08 Joel Brobecker <brobecker@adacore.com>
10991 * dwarf2read.c (read_enumeration_type): Add comment.
10993 2008-01-08 Thiago Jung Bauermann <bauerman@br.ibm.com>
10995 * config.in: Regenerate.
10997 2008-01-08 Joel Brobecker <brobecker@adacore.com>
10999 * ada-lang.c (ada_convert_actual): Renames convert_actual.
11001 (ada_convert_actuals): Delete.
11002 * ada-lang.h (ada_convert_actual): Add declaration.
11003 (ada_convert_actuals): Remove declaration.
11004 * infcall.c: #include "ada-lang.h".
11005 (value_arg_coerce): Add new parameter sp. Update function
11006 documetnation. Add handling of Ada function call parameters.
11007 * Makefile.in (infcall.o): Update dependencies.
11009 2008-01-08 Paul Hilfinger <hilfinger@adacore.com>
11011 * ada-lang.c (ensure_lval): Fix value lval kind.
11012 (convert_actual): Add handling for arguments passed by reference.
11014 2008-01-08 Doug Evans <dje@google.com>
11016 * dbxread.c (read_dbx_symtab): Fix indentation.
11018 2008-01-07 Thiago Jung Bauermann <bauerman@br.ibm.com>
11020 * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
11021 (valarith.o): Depend on dfp.h.
11022 (valops.o): Likewise.
11023 * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
11024 (set_decnumber_context): New function.
11025 (decimal_check_errors): Likewise.
11026 (decimal_from_number): Likewise.
11027 (decimal_to_number): Likewise.
11028 (decimal_from_string): Use set_decnumber_context and
11029 decimal_check_errors.
11030 (decimal_from_integral): New function.
11031 (decimal_from_floating): Likewise.
11032 (decimal_to_double): Likewise.
11033 (promote_decimal): Likewise.
11034 (decimal_binop): Likewise.
11035 (decimal_is_zero): Likewise.
11036 (decimal_compare): Likewise.
11037 (decimal_convert): Likewise.
11038 * dfp.h (decimal_from_integral): New prototype.
11039 (decimal_from_floating): Likewise.
11040 (decimal_to_double): Likewise.
11041 (decimal_binop): Likewise.
11042 (decimal_is_zero): Likewise.
11043 (decimal_compare): Likewise.
11044 (decimal_convert): Likewise.
11045 * eval.c (evaluate_subexp_standard): Remove expect_type argument from
11046 call to value_from_decfloat.
11047 * valarith.c: Include dfp.h.
11048 (value_args_as_decimal): New function.
11049 (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
11050 (value_logical_not): Likewise.
11051 (value_equal): Likewise.
11052 (value_less): Likewise.
11053 (value_pos): Likewise.
11054 (value_neg): Formatting fix.
11055 * valops.c: Include dfp.h.
11056 (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
11057 * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
11058 (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
11059 (value_from_decfloat): Remove expect_type argument.
11060 * value.h (value_from_decfloat): Update prototype.
11062 2008-01-07 Vladimir Prus <vladimir@codesourcery.com>
11064 Ignore change in name of dynamic linker during
11065 execution on Solaris. This also unbreaks pending breakpoints.
11067 * solist.h (struct target_so_ops): New field same.
11068 * solib-svr4.c (svr4_same): New.
11069 (_initialize_svr4_solib): Register svr4_same.
11070 * solib.c (update_solib_list): Use ops->same, if available.
11072 2008-01-06 Christopher Faylor <me+cygwin@cgf.cx>
11074 * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
11075 when using MS-DOS paths.
11077 2008-01-05 Pedro Alves <pedro@codesourcery.com>
11079 * NEWS: Mention --pid and --core command line behaviour changes.
11081 2008-01-05 Pedro Alves <pedro@codesourcery.com>
11083 * main.c (captured_main): Remove 'count' varible and the
11084 ALIGN_STACK_ON_ENTRY block that used it. Error out if --core and
11085 --pid options were issued simultaneously. If an explicit pid
11086 option was passed, don't fallback to core file. Detect extra
11087 arguments better in the presence of explicit pid or core
11090 2008-01-05 Joel Brobecker <brobecker@adacore.com>
11092 * ada-lang.c (ada_which_variant_applies): Correctly compute
11093 the value of the discriminant when the variant record is packed.
11095 2008-01-04 Joel Brobecker <brobecker@adacore.com>
11097 * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
11098 that are used to differentiate homonyms.
11100 2008-01-04 Jerome Guitton <guitton@adacore.com>
11102 * ada-lang.c (decode_packed_array_type): Avoid a seg fault
11103 when the type is an anonymous pointer type.
11104 (ada_check_typedef): Avoid a seg fault when the type is null.
11105 * ada-typeprint.c (print_array_type): Add support for pointer
11108 2008-01-04 Paul N. Hilfinger <hilfinger@adacore.com>
11110 * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.
11112 2008-01-04 Joel Brobecker <brobecker@adacore.com>
11114 * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
11115 EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.
11117 2008-01-04 Joel Brobecker <brobecker@adacore.com>
11119 * ada-exp.y (chop_separator): New function.
11120 (write_selectors): Rewrite to re-use chop_separator.
11121 (ada_nget_field_index, get_symbol_field_type): New functions.
11122 (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
11125 2008-01-03 Thiago Jung Bauermann <bauerman@br.ibm.com>
11127 * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
11128 of SYMBOL_VALUE when working with function symbols.
11130 2008-01-03 Joel Brobecker <brobecker@adacore.com>
11132 * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
11133 expressions. These expressions do not need to be rewriten.
11135 2008-01-03 Joel Brobecker <brobecker@adacore.com>
11137 * dwarf2read.c (read_enumeration_type): Flag type as stub if
11138 the given die is a declaration.
11140 2008-01-03 Joel Brobecker <brobecker@adacore.com>
11142 * ada-lang.c (ada_array_bound_from_type): Make non-static.
11143 Handle properly the case when the index type is an enumerated type.
11144 Do not return the subtype of the bounds type, just return the
11145 bounds type directly - this is not needed and is more consistent
11146 with what we do for arrays when no XA parallel type exists.
11148 2008-01-03 Joel Brobecker <brobecker@adacore.com>
11150 * ada-lang.c (static_unwrap_type): Add forward declaration.
11151 (template_to_static_fixed_type): Fields of dynamic types sometimes
11152 also need to be unwrapped. Take this into account.
11153 (ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
11154 (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
11155 * ada-typeprint.c (ada_print_type): Get the typename from
11156 the original type, not the base type.
11158 2008-01-03 Jerome Guitton <guitton@adacore.com>
11160 * ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
11161 (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
11162 Update calls to ada_to_fixed_type.
11163 (ada_template_to_fixed_record_type_1): Ditto, but without looking
11165 (ada_to_fixed_type): Add check_tag parameter; do not look for
11166 tag if null. When looking for a tag, use a fixed record type.
11167 * ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
11168 * ada-valprint.c (printable_val_type, ada_value_print): Update
11169 calls to ada_to_fixed_type.
11171 2008-01-03 Luis Machado <luisgpm@br.ibm.com>
11173 * doublest.c (convert_floatformat_to_doublest): Call
11174 floatformat_to_doublest instead of floatformat_to_double and use
11175 DOUBLEST variables.
11176 (convert_doublest_to_floatformat): Call floatformat_from_doublest
11177 instead of floatformat_from_double and use DOUBLEST variables.
11179 2008-01-03 Nick Hudson <nick.hudson@dsl.pipex.com>
11181 * MAINTAINERS (Write After Approval): Add self.
11183 2008-01-03 Joel Brobecker <brobecker@adacore.com>
11185 * symfile.c (set_initial_language): Make non-static.
11186 * symfile.h (set_initial_language): Add declaration.
11187 * language.c: #include "symfile.h".
11188 (set_language): Call set_initial_language if the frame language
11189 could not be determined.
11191 2008-01-03 Paul N. Hilfinger <hilfinger@adacore.com>
11193 * eval.c (evaluate_subexp_for_address): Provide frame address to
11194 locate_var_value only if it will be needed.
11196 2008-01-02 Jan Kratochvil <jan.kratochvil@redhat.com>
11198 * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.
11200 2008-01-02 Joel Brobecker <brobecker@adacore.com>
11202 * ada-lang.c (ada_evaluate_subexp): Modify the value returned
11203 when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
11204 This is needed to make sure that any other treatment applied
11205 to the resulting value does not fail for spurious reason,
11206 such as trying to take the address of this value.
11208 2008-01-02 Joel Brobecker <brobecker@adacore.com>
11210 * ada-lang.c (ada_value_equal): Dereference reference types when
11213 2008-01-01 Daniel Jacobowitz <dan@codesourcery.com>
11215 Updated copyright notices for most files.
11217 2008-01-01 Christopher Faylor <me+gdb@cgf.cx>
11219 * win32-nat.c (psapi_module_handle): Remove static.
11220 (get_module_name): Rename from psapi_get_dll_name. Revamp slightly to
11221 return first module found if base_address is zero. Don't initialize
11222 psapi function pointers here. Convert to cygwin paths when
11224 (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
11225 executable name. Use get_module_name when that fails or when
11227 (_initialize_psapi): New function. Initialize psapi stuff before it is
11228 needed or issue a warning if it is not found. Move psapi_module_handle
11231 2008-01-01 Joel Brobecker <brobecker@adacore.com>
11233 * ada-lang.c (ada_remove_trailing_digits): New function.
11234 (ada_remove_po_subprogram_suffix): New function.
11235 (ada_decode): Improve. Move the description of the algorithm
11236 directly inside the code, instead of in the function global
11239 2008-01-01 Joel Brobecker <brobecker@adacore.com>
11241 * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
11242 and always print the dereferenced value.
11244 2008-01-01 Joel Brobecker <brobecker@adacore.com>
11246 * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
11247 of the case where the first argument is a reference.
11248 (ada_evaluate_subexp, case BINOP_ADD): Likewise.
11250 2008-01-01 Joel Brobecker <brobecker@adacore.com>
11252 Implement support for Ada interface types.
11254 * ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
11255 (ada_is_ignored_field): Ignore fields that are a dispatch table
11258 2008-01-01 Joel Brobecker <brobecker@adacore.com>
11260 * top.c (print_gdb_version): Update copyright year.
11262 2008-01-01 Joel Brobecker <brobecker@adacore.com>
11264 * ChangeLog-2007: New ChangeLog rotation.
11265 * ChangeLog: Reset for 2008.
11266 * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
11269 For older changes see ChangeLog-2007.
11275 version-control: never