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