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