OSDN Git Service

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