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