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