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