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