OSDN Git Service

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