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