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