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