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