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