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