Initial python support.
[platform/upstream/binutils.git] / gdb / ChangeLog
1 2008-08-06  Vladimir Prus  <vladimir@codesourcery.com>
2             Tom Tromey  <tromey@redhat.com>
3             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4             Doug Evans  <dje@google.com>
5
6         * Makefile.in (SUBDIR_PYTHON_OBS, SUBDIR_PYTHON_SRCS,
7         SUBDIR_PYTHON_DEPS, SUBDIR_PYTHON_LDFLAGS, SUBDIR_PYTHON_CFLAGS,
8         PYTHON_CFLAGS): New.
9         (python_h, python_internal_h): New.
10         (cli-script.o): Depend on python.h
11         (python.o, python-utils.o): New.
12         * cli/cli-script.c (print_command_lines): Handle python_control.
13         (execute_control_command): Handle python_control.
14         (execute_control_command_untraced): New function.
15         (while_command): Call execute_control_command_untraced.
16         (if_command): Likewise.
17         (get_command_line): Remove static attribute.
18         (read_next_line): Handle "python".
19         (recurse_read_control_structure): Handle python_control.
20         (read_command_lines): Handle python_control.
21         Include python.h.
22         * cli/cli-script.h (get_command_line): Add prototype.
23         (execute_control_command_untraced): Likewise.
24         * configure.ac: Add --with-python.
25         * defs.h (enum command_control_type) <python_control>: New
26         constant.
27         * python/python-internal.h: New file.
28         * python/python.c: New file.
29         * python/python.h: New file.
30         * python/python-utils.c: New file.
31         * NEWS: Mention Python scripting support and its new commands.
32
33 2008-08-06  Ulrich Weigand  <uweigand@de.ibm.com>
34
35         * spu-tdep.c (spu_gdbarch_init): Call set_gdbarch_frame_red_zone_size.
36
37 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
38
39         * MAINTAINERS (Write After Approval): Add self.
40
41 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
42
43         * breakpoint.c (hw_breakpoint_used_count): Use breakpoint_enabled.
44         (insert_breakpoint_locations): Likewise.
45
46 2008-08-05  Phil Muldoon  <pmuldoon@redhat.com>
47
48         * breakpoint.c (create_longjmp_breakpoint): Remove unused struct
49         breakpoint.
50         (set_longjmp_breakpoint): Likewise.
51
52 2008-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
53
54         PR build/2490
55         * solib-pa64.c: Only compile if both HAVE_ELF_HP_H and __LP64__ are
56         defined.
57
58 2008-08-05  Tom Tromey  <tromey@redhat.com>
59
60         * bcache.c (deprecated_bcache_added): Initialize obstack.
61         (bcache_xmalloc): Don't initialize obstack.
62         (bcache_xfree): Conditionally free obstack.
63         (bcache_memory_used): Update.
64
65 2008-08-05  Tom Tromey  <tromey@redhat.com>
66
67         * symfile.c (add_psymbol_to_bcache): Return a const pointer.  Use
68         bcache_full.
69         (append_psymbol_to_list): Accept a const pointer.
70         (add_psymbol_to_list): Fix const correctness.
71         * bcache.h: (deprecated_bcache_added, deprecated_bcache): Remove.
72         (bcache_full): Declare.
73         * bcache.c (bcache_data, deprecated_bcache): Remove.
74         (bcache): Use bcache_full.
75         (bcache_full): Rename from deprecated_bcache_added.  Change return
76         type.
77
78 2008-08-04  Stan Shebs  <stan@codesourcery.com>
79
80         * solib-svr4.c (BKPT_AT_SYMBOL): Remove, always defined.
81         (bkpt_names): Remove SOLIB_BKPT_NAME, never defined.
82         (enable_break): Remove test of BKPT_AT_SYMBOL.
83
84 2008-08-02  Keith Seitz  <keiths@redhat.com>
85
86         * acinclude.m4: Include ../config/tcl.m4 to pick up
87         standard Tcl configury bits.
88         Remove all Tcl, Tk, Itcl, Itk, etc definitions.
89         * configure.ac: Don't check if ../itcl exists when building
90         gdbtk. It could be installed.
91         Rewrite gdbtk configury to allow for using system-supplied
92         Tcl and Tk. Gdbtk no longer requires build-time access to 
93         itcl and itk.
94         * Makefile.in: Remove everything related to itcl and itk.
95         Rewrite the Tcl bits for gdbtk to correspond to rewrite of
96         configure.ac.
97         Remove v850ice.o build rule.
98         (ALL_TCL_CFLAGS): New convenience defintion. Change all
99         gdbtk sources to use it.
100         * configure: Regenerate.
101         
102 2008-07-31  Stan Shebs  <stan@codesourcery.com>
103
104         * coffread.c (coff_symtab_read): Remove FUNCTION_EPILOGUE_SIZE.
105
106 2008-07-30  Stan Shebs  <stan@codesourcery.com>
107
108         * objfiles.c (TARGET_KEEP_SECTION): Remove.
109         (add_to_objfile_sections): Remove use.
110
111 2008-07-29  Tom Tromey  <tromey@redhat.com>
112
113         * cli/cli-decode.c (lookup_cmd_1): Use memcpy.
114         (lookup_cmd_composition): Likewise.
115
116 2008-07-29  Tom Tromey  <tromey@redhat.com>
117
118         * cli/cli-cmds.c (edit_command): Remove unused variables.  Delete
119         dead code.  Fix indentation.
120
121 2008-07-29  Stan Shebs  <stan@codesourcery.com>
122
123         * main.c (captured_main): Remove long-unused #if 0 blocks.
124
125 2008-07-28  Tom Tromey  <tromey@redhat.com>
126
127         * annotate.h (deprecated_annotate_starting_hook): Remove.
128         (deprecated_annotate_stopped_hook): Remove.
129         (deprecated_annotate_exited_hook): Remove.
130         * Makefile.in (annotate.o): Depend on observer_h.
131         * top.c (deprecated_delete_breakpoint_hook): Remove.
132         (deprecated_create_breakpoint_hook): Likewise.
133         (deprecated_modify_breakpoint_hook): Likewise.
134         * interps.c (clear_interpreter_hooks): Update for removed hooks.
135         * breakpoint.c (mention): Don't call removed hook.
136         (delete_breakpoint): Likewise.
137         (disable_breakpoint): Likewise.
138         (do_enable_breakpoint): Likewise.
139         * annotate.c: Include observer.h.
140         (breakpoint_changed): Change type of argument.
141         (_initialize_annotate): Register observers.
142         (deprecated_annotate_starting_hook): Remove.
143         (deprecated_annotate_stopped_hook): Remove.
144         (deprecated_annotate_exited_hook): Remove.
145         (annotate_starting): Update for hook removal.
146         (annotate_stopped): Likewise.
147         (annotate_exited): Likewise.
148         * defs.h (deprecated_delete_breakpoint_hook): Remove.
149         (deprecated_create_breakpoint_hook): Likewise.
150         (deprecated_modify_breakpoint_hook): Likewise.
151
152 2008-07-28  Tom Tromey  <tromey@redhat.com>
153
154         * main.c (captured_main): Don't use BEFORE_MAIN_LOOP_HOOK.
155
156 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
157
158         * configure.ac: Check for the GNU/Linux ptrace signature.
159         * configure: Regenerated.
160
161 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
162
163         * linux-nat.c (resume_callback): Add more debugging output.
164         (linux_nat_has_pending_sigint): New function, based on
165         linux_nat_has_pending.
166         (set_ignore_sigint, maybe_clear_ignore_sigint): New functions.
167         (stop_wait_callback): Remove flush_mask handling.  Honor
168         ignore_sigint.  Call maybe_clear_ignore_sigint.  Pass NULL
169         to recursive calls.
170         (linux_nat_has_pending, flush_callback): Remove.
171         (linux_nat_filter_event): Check for ignore_sigint.
172         (linux_nat_wait): Remove flush_mask support and call to
173         flush_callback.  Use set_ignore_sigint and maybe_clear_ignore_sigint.
174         * linux-nat.h (struct lwp_info): Add ignore_sigint field.
175
176 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
177
178         * linux-nat.c (count_events_callback, select_event_lwp_callback): Only
179         report events from resumed threads.
180
181 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
182
183         * mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
184         (mips_linux_init_abi): Set tdep->syscall_next_pc.
185         * mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
186         mips-tdep.h.
187         (mips32_next_pc): Handle the syscall instruction.
188         * mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
189         from mips-tdep.c.  Add syscall_next_pc to gdbarch_tdep.
190
191 2008-07-26  Tom Tromey  <tromey@redhat.com>
192
193         PR gdb/1158:
194         * valops.c (value_struct_elt): Treat function-valued field as a
195         static method.
196
197 2008-07-26  Tom Tromey  <tromey@redhat.com>
198
199         PR gdb/1136:
200         * macroexp.c (get_punctuator) <punctuators>: Rearrange to put
201         longer tokens first.
202
203 2008-07-26  Vladimir Prus  <vladimir@codesourcery.com>
204
205         Kill cmd_async_ok.
206         * cli/cli-decode.h (CMD_ASYNC_OK, set_cmd_async_ok)
207         (get_cmd_async_ok): Remove.
208         * cli/cli-decode.c (set_cmd_async_ok, get_cmd_async_ok): Remove.
209         * cli/cli-cmds.c (init_cli_cmds): Don't use set_cmd_async_ok.
210         * infcmd.c (_initialize_infcmd): Likewise.
211         * thread.c (_initialize_thread): Likewise.
212
213 2008-07-25  Joseph Myers  <joseph@codesourcery.com>
214
215         * mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
216         128-bit long doubles in even-odd pairs of FPRs.  Do not
217         right-align float arguments for big-endian.
218         (mips_n32n64_return_value): Apply return value convention for
219         structs containing one or two floating-point values to soft-float
220         as well as hard-float.  Handle 128-bit long doubles in such
221         structs.
222         (mips_o32_push_dummy_call): Only skip one integer register for a
223         float argument passed in an FPR.
224
225 2008-07-25  Tom Tromey  <tromey@redhat.com>
226
227         * tui/tui-hooks.c: Include observer.h.
228         (tui_event_default, tui_old_event_hooks, tui_event_hooks):
229         Remove.
230         (tui_bp_created_observer, tui_bp_deleted_observer,
231         tui_bp_modified_observer): New globals.
232         (tui_install_hooks): Use observers, not events.
233         (tui_remove_hooks): Likewise.
234         * mi/mi-cmd-break.c: Include observer.h, not gdb-events.h.
235         (mi_breakpoint_observers_installed, mi_can_breakpoint_notify): New
236         globals.
237         (breakpoint_notify): Check mi_can_breakpoint_notify.
238         (breakpoint_hooks): Remove.
239         (mi_cmd_break_insert): Attach observers.  Don't use events.
240         * tracepoint.c: Include observer.h, not gdb-events.h.
241         (tracepoint_operation, trace_pass_command): Notify observer.
242         * interps.c: Don't include gdb-events.h.
243         (clear_interpreter_hooks): Don't call clear_gdb_event_hooks.
244         * gdbarch.c: Rebuild.
245         * gdbarch.sh: Emit include for observer.h, not gdb-events.h.
246         (deprecated_current_gdbarch_select_hack): Notify observer.
247         * breakpoint.h: Don't include gdb-events.h.
248         * breakpoint.c: Don't include gdb-events.h.
249         (condition_command): Notify observer.
250         (commands_command): Likewise.
251         (commands_from_control_command): Likewise.
252         (mention, delete_breakpoint, set_ignore_count): Likewise.
253         (disable_breakpoint, do_enable_breakpoint): Likewise.
254         * Makefile.in (gdb_events_h): Remove.
255         (breakpoint_h): Update.
256         (COMMON_OBS): Remove gdb-events.o.
257         (gdb-events.o): Remove.
258         (breakpoint.o, gdbarch.o, interps.o, tracepoint.o, gdbtk-bp.o,
259         gdbtk-hooks.o, mi-cmd-break.o, tui-hooks.o): Update.
260         * gdb-events.c: Remove.
261         * gdb-events.h: Remove.
262         * gdb-events.sh: Remove.
263
264 2008-07-24  Pedro Alves  <pedro@codesourcery.com>
265
266         * remote.c (remote_threads_extra_info): Don't query the remote
267         server about info on the internally added main thread.
268
269 2008-07-24  Aleksandar Ristovski  <aristovski@qnx.com>
270
271         * nto-procfs.c (procfs_attach): Populate initial thread list.
272         (procfs_wait): Return new pid, built from the inferior status.
273
274 2008-07-23  Thiago Jung Bauermann  <bauerman@br.ibm.com>
275
276         * configure.ac (CONFIG_INITS): Delete long obsoleted variable.
277         * configure: Regenerate.
278
279 2008-07-23  Aleksandar Ristovski  <aristovski@qnx.com>
280
281         * nto-procfs.c (procfs_xfer_memory): Changed signature.
282         (procfs_resume): Workaround for dereferencing type-punned pointer
283         warning.
284         * nto-tdep.c (nto_parse_redirection): Change signature to be const 
285         correct.
286         * nto-tdep.h (nto_parse_redirection): Likewise.
287
288 2008-07-21  Stan Shebs  <stan@codesourcery.com>
289
290         Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
291         * gdbarch.sh: Adjust comment to refer to
292         in_solib_dynsym_resolve_code().
293         * gdbarch.h, gdbarch.c: Update.
294         * solib-osf.c: Ditto.
295         * infrun.c: Ditto.
296         (handle_inferior_event): Use in_solib_dynsym_resolve_code
297         unconditionally.
298         * config/mips/nm-irix5.h: Remove undef of
299         IN_SOLIB_DYNSYM_RESOLVE_CODE.
300
301 2008-07-21  Tom Tromey  <tromey@redhat.com>
302
303         * symfile.c (reread_symbols): Don't pass argument to observer.
304         * exec.c (exec_file_attach): Don't pass argument to observer.
305         * ada-lang.c (ada_executable_changed_observer): Remove argument.
306         * symtab.c (symtab_observer_executable_changed): Remove argument.
307         * observer.sh: Handle functions with no arguments.
308
309 2008-07-20  Sergei Poselenov  <sposelenov@emcraft.com>
310             Chris Demetriou  <cgd@google.com>
311
312         * elfread.c (elf_symfile_segments): Fix the check that each loadable
313         section fits within an ELF segment to handle ELF segments that hit
314         the end of the address space.
315
316 2008-07-20  Chris Demetriou  <cgd@google.com>
317
318         * MAINTAINERS (Write After Approval): Add self.
319
320 2008-07-18  Tom Tromey  <tromey@redhat.com>
321
322         PR gdb/855:
323         * NEWS: Add entry for macro commands.
324         * Makefile.in (macrocmd.o): Add gdb_string.h.
325         * macroscope.h (user_macro_scope): Declare.
326         (default_macro_scope): Update documentation.
327         (macro_user_macros): Declare.
328         * c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
329         Use user_macro_scope.
330         (null_macro_lookup): Remove.
331         * macrotab.h (macro_callback_fn): Declare.
332         (macro_for_each): Likewise.
333         (macro_allow_redefinitions): Likewise.
334         * macrotab.c (foreach_macro): New function
335         (macro_for_each): Likewise.
336         (struct macro_table) <redef_ok>: New field.
337         (macro_allow_redefinitions): New function.
338         (new_macro_table): Update.
339         (macro_define_function): Likewise.
340         (macro_define_object): Likewise.
341         * macroscope.c (user_macro_scope): New function.
342         (default_macro_scope): Use it.
343         (macro_user_macros): New global.
344         (standard_macro_lookup): Look in macro_user_macros.
345         (_initialize_macroscope): New function.
346         * macroexp.h (macro_is_whitespace, macro_is_digit,
347         macro_is_identifier_nondigit): Declare.
348         * macroexp.c (macro_is_whitespace): Rename.  No longer static.
349         (macro_is_digit): Likewise.
350         (macro_is_identifier_nondigit): Likewise.
351         (get_identifier): Update.
352         (get_pp_number): Likewise.
353         (get_token): Likewise.
354         * macrocmd.c (skip_ws): New function.
355         (extract_identifier): Likewise.
356         (free_macro_definition_ptr): Likewise.
357         (user_macros): Remove.
358         (macro_define_command): Implement.
359         (_initialize_macrocmd): Update.
360         (macro_undef_command): Implement.
361         (print_one_macro): New function.
362         (macro_list_command): Implement.
363
364 2008-07-18  Joseph Myers  <joseph@codesourcery.com>
365
366         * configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
367         in BFD ELF check.
368         * configure: Regenerate.
369
370 2008-07-17  Paul Pluzhnikov  <ppluzhnikov@google.com>
371
372         * auxv.c (fprint_target_auxv): Stop at AT_NULL.
373
374 2008-07-15  Andreas Schwab  <schwab@suse.de>
375
376         * valops.c (value_cast_pointers): Follow typedefs when checking
377         result of coercion.
378
379 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
380
381         * block.c (block_function): Renamed to ...
382         (block_linkage_function): ... this.  All callers changed.
383         * block.h (block_function): Renamed to ...
384         (block_linkage_function): ... this.
385
386 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
387
388         * mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.
389
390 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
391
392         * frame.c (frame_sp_unwind): Delete.
393         (get_frame_sp): Do not use it.
394         * frame.h (frame_sp_unwind): Delete prototype.
395
396 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
397
398         * ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.
399
400 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
401
402         * dwarf2-frame.c (dwarf2_frame_cache): Update comment.
403         * frame.c (frame_unwind_address_in_block): Delete.
404         (get_frame_address_in_block): Do not use it.  Check the type
405         of the next frame first.
406         (frame_cleanup_after_sniffer): Update comment.
407         * frame.h (frame_unwind_address_in_block): Delete prototype.
408         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
409
410 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
411
412         * frame.c (frame_func_unwind): Delete.
413         (get_frame_func): Do not use it.
414         * frame.h (frame_func_unwind): Delete prototype.
415         * hppa-tdep.c (hppa_frame_cache): Update comment.
416         * rs6000-tdep.c (rs6000_frame_cache): Update comment.
417
418 2008-07-14  Stan Shebs  <stan@codesourcery.com>
419
420         * remote-sim.c (init_gdbsim_ops): Remove
421         TARGET_REDEFINE_DEFAULT_OPS.
422
423 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
424
425         * findvar.c (read_var_value): Remove unused variable.
426
427 2008-07-15  Luis Machado  <luisgpm@br.ibm.com>
428
429         * infrun.c (handle_inferior_event): Tag threads as stopped
430         before inserting breakpoints.
431
432 2008-07-15  Hui Zhu  <teawater@gmail.com>
433
434         * MAINTAINERS: Added myself to section Write After Approval.
435
436 2008-07-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
437
438         PR gdb/2477
439         * cp-abi.c (value_virtual_fn_field): Handle invalid pointers.
440
441 2008-07-14  Pedro Alves  <pedro@codesourcery.com>
442
443         * i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
444         (i386_dicos_push_dummy_code): New.
445         (i386_dicos_init_abi): Don't register i386_dicos_frame_align.
446         Register i386_dicos_push_dummy_code.
447
448 2008-07-14  Markus Deuling  <deuling@de.ibm.com>
449
450         * mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
451         (mips_n32n64_push_dummy_call, mips_o64_return_value)
452         (mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
453
454         (MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
455         (fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
456         (mips_n32n64_fp_arg_chunk_p): Update caller.
457
458         (mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
459         (mips_n32n64_push_dummy_call): Update caller.
460
461         (MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
462         current_gdbarch.
463         (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
464         (mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
465
466
467         (MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
468         current_gdbarch.
469         (mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
470         (mips_o64_push_dummy_call): Update caller.
471
472         (MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
473         (fp_register_arg_p, mips_dump_tdep): Update caller.
474
475         (set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
476         (mips16_scan_prologue, mips32_scan_prologue): Update caller.
477
478         (reset_saved_regs): Make static.  Add gdbarch as parameter.  Replace
479         current_gdbarch.
480         (mips32_scan_prologue): Update caller.
481
482         (heuristic_proc_start): Add gdbarch as parameter. Replace
483         current_gdbarch.
484         (mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
485
486         * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
487         (mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
488         the current architecture. Update call to getregs_supplies.
489         (getregs_supplies): Add gdbarch as parameter and replace
490         current_gdbarch.
491
492         * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
493         get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
494         NBSD_MIPS_JB_ELEMENT_SIZE.
495         (NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
496         replace current_gdbarch.
497
498         * remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
499         current_gdbarch.
500         (mips_fetch_registers, mips_store_registers): Update call
501         to mips_map_regno.
502         (mips_load): Use get_regcache_arch to get at the current_architecture
503         and replace current_gdbarch.
504
505 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
506
507         * thread.c (restore_selected_frame): On fail to restore, select
508         the innermost frame, and don't crash when warning the user.
509
510 2008-07-13  Hui Zhu  <teawater@gmail.com>
511
512         * symtab.c (expand_line_sal): Fix a memory leak.
513
514 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
515
516         * utils.c (struct continuation): Define as inheriting struct
517         cleanup.
518         (add_continuation, do_all_continuations)
519         (discard_all_continuations, add_intermediate_continuation)
520         (do_all_intermediate_continuations)
521         (discard_all_intermediate_continuations): Adjust.
522
523 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
524
525         Skip varobj in running threads.
526         * mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
527         thread is not stopped, skip the varobj.
528         * Makefile.in: Update dependencies.
529
530 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
531
532         Enable all commands while inferiour is running
533         * mi/mi-main.c (mi_cmd_execute): Don't check if
534         inferiour is executing.
535
536 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
537
538         Allow all CLI command even if target is executing.
539         * gdb/top.c (execute_command_1): Don't check if the inferiour
540         is running.
541
542 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
543
544         * mi/mi-main.c (mi_cmd_execute): Remove unused variable.
545         Fix printing of frame, when frame is wrong.
546
547 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
548
549         * spu-tdep.c (spu_frame_unwind_cache): Do not error if
550         backchain is unreadable.
551
552 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
553
554         * spu-linux-nat.c: Include "gdbthread.h".
555         (spu_child_post_startup_inferior): Register main thread.
556         (spu_child_post_attach): Likewise.
557         * Makefile.in (spu-linux-nat.o): Update dependencies.
558
559 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
560
561         Rewrite continuations internals on top of cleanups and plug
562         continuation arguments leaks.
563
564         * defs.h (struct continuation): Make it opaque.
565         (add_continuation, add_intermediate_continuation): Drop the int
566         argument of the continuation hook argument.  Add
567         continuation_free_args argument.
568         (do_all_continuations, do_all_intermediate_continuations): Drop
569         the error_p argument.
570
571         * utils.c (add_continuation): Drop the int argument of the
572         continuation hook argument.  Add continuation_free_args argument.
573         Reimplement on top of cleanups.
574         (do_all_continuations): Drop error argument.  Reimplement on top
575         of cleanups.
576         (discard_all_continuations): Reimplement on top of cleanups.
577         (add_intermediate_continuation): Drop the int argument of the
578         continuation hook argument.  Add continuation_free_args argument.
579         Reimplement on top of cleanups.
580         (do_all_intermediate_continuations): Drop error argument.
581         Reimplement on top of cleanups.
582         (discard_all_intermediate_continuations): Reimplement on top of
583         cleanups.
584
585         * breakpoint.c (until_break_command_continuation): Drop error
586         argument.  Add xfree as continuation argument deleter.
587
588         * inf-loop.c (inferior_event_handler): On error, discard all
589         continuations.  Adjust to new do_all_intermediate_continuations
590         and do_all_continuations interfaces.
591
592         * infcmd.c (step_1_continuation): Drop error_p argument.  Adjust.
593         Pass xfree as continuation argument deleter.
594         (finish_command_continuation): Drop error_p argument.  Adjust.
595         (finish_command_continuation_free_arg): New.
596         (finish_command): Pass finish_command_continuation_free_arg as
597         continuation argument deleter.  Adjust to new do_all_continuations
598         interfaces.
599         (attach_command_continuation): Drop error_p argument.
600         (attach_command_continuation_free_args): New.
601         (attach_command): Pass attach_command_continuation_free_args as
602         continuation argument deleter.
603
604         * interps.c (interp_set): Adjust to new do_all_continuations
605         interfaces.
606
607         * event-top.c (stdin_event_handler): In error, also discard the
608         intermediate continuations.
609
610 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
611
612         Replace struct continuation_args by void* and per command structs.
613
614         * top.c (execute_command): Remove unused arg1 and arg2 locals.
615
616         * breakpoint.c (struct until_break_command_continuation_args):
617         New.
618         (until_break_command_continuation): Take a void* instead of a
619         continuations_arg.  Adjust.
620         (until_break_command): Adjust to use struct
621         until_break_command_continuation_args instead of struct
622         continuation_arg.
623
624         * infcmd.c (struct step_1_continuation_args): New.
625         (step_1_continuation): Take a void* instead of a
626         continuations_arg.  Adjust to use struct step_1_continuation_args.
627         (step_once): Adjust to use struct step_1_continuation_args.
628
629         (struct finish_command_continuation_args): New.
630         (finish_command_continuation): Take a void* instead of a
631         continuations_arg.  Adjust to use struct
632         finish_command_continuation_args.
633         (finish_command): Adjust to use struct
634         finish_command_continuation_args.
635         (struct attach_command_continuation_args): New.
636         (attach_command_continuation): Take a void* instead of a
637         continuations_arg.  Adjust to use struct
638         attach_command_continuation_args.
639         (attach_command): Adjust to use struct
640         attach_command_continuation_args.
641
642         * defs.h (struct continuation_arg): Delete.
643         (struct continuation): Replace the struct continuation_arg*
644         parameter of continuation_hook by a void*.  Replace "arg_list"
645         member by a new "args" member with void* type.
646         (add_continuation, add_intermediate_continuation): Replace struct
647         continuation_arg type usages by void* usages.
648
649         * utils.c (add_continuation, do_all_continuations)
650         (add_intermediate_continuation)
651         (do_all_intermediate_continuations): Replace struct
652         continuation_arg type usages by void* usages.  Pass "args" instead
653         of "arg_list".
654
655 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
656
657         * infrun.c (struct thread_stepping_state): Delete sal member.
658         (init_thread_stepping_state): Add local sal.  Use it instead of
659         tss->sal.
660         (handle_inferior_event): New local stop_pc_sal.  Use it instead of
661         tss->sal.
662         (step_into_function): Add local stop_func_sal.  Use it instead of
663         tss->sal.
664
665 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
666
667         Implement -exec-continue/-exec-interrupt --all.
668         * infcmd.c (continue_1): New, extracted from
669         (continue_command): ...here.
670         (interrupt_target_1): New, extracted from
671         (interrupt_target_command): ...here.
672         * inferior.h (continue_1, interrupt_target_1): New.
673         * mi/mi-main.c (mi_cmd_exec_continue)
674         (mi_cmd_exec_interrupt): Handle --all.
675
676 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
677
678         Implement --thread and --frame.
679         * gdbthread.h (find_thread_id): Declare.
680         * thread.c (find_thread_id): Make non-static.
681         * mi/mi-main.c (mi_cmd_execute): Switch to the right
682         thread and frame, if necessary.
683         * mi/mi-parse.c (mi_parse): Handle --thread and --frame.
684         * mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
685
686 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
687
688         * infrun.c (resume): Discard cleanups on early exit path.
689
690 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
691
692         * infrun.c (normal_stop): For MI, report which threads
693         were stopped.
694
695 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
696
697         Report thread state in -thread-info output.
698         * thread.c (print_thread_info): Add new field "state".
699
700 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
701
702         * infrun.c (handle_inferior_event): Also ignore a
703         TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
704
705 2008-07-11  Tom Tromey  <tromey@redhat.com>
706
707         * completer.c (complete_line_internal): New function, from
708         complete_line.  Add 'for_help' parameter.
709         (complete_line): Use it.
710         (command_completer): Move later.  Rewrite.
711
712 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
713
714         * thread.c (thread_apply_command): Move making the cleanup out of
715         the loop.
716
717 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
718
719         Exited threads.
720
721         * thread.c (enum thread_state): New.
722         (thread_state main_thread_running): Delete, in favor of...
723         (thread_state main_thread_state): ... this.  Update throughout.
724         (clear_thread_inferior_resources): New, split from free_thread.
725         (free_thread): Call clear_thread_inferior_resources.
726         (init_thread_list): Set main thread to stopped state.
727         (add_thread_silent): Take care of PTID reuses.
728         (delete_thread): If deleting inferior_ptid or a thread with
729         refcount > 0, mark it as exited, but still keep it in the list.
730         Only notify of thread exits, if we haven't done so yet.
731         (iterate_over_threads): Make it safe to delete threads while
732         iterating over them.
733         (do_captured_list_thread_ids): Don't account for exited threads.
734         (thread_alive): Check for the THREAD_EXITED state, and don't set
735         ptid to -1 on exited threads.
736         (set_running): Update to account for extra possible states.
737         (is_thread_state): New.
738         (is_stopped, is_exited): New.
739         (is_running): Implement in terms of is_thread_state.
740         (any_running): Update.
741         (print_thread_info): Update.  Account for exited threads.  Don't
742         warn about missed frame restoring here, its done in the cleanup.
743         (switch_to_thread): Don't read from a thread that has gone.
744         (restore_current_thread): In non-stop mode, do a full context
745         switch.
746         (restore_selected_frame): Add a frame_level argument.  Rewrite.
747         (struct current_thread_cleanup): Add selected_frame_level and
748         was_stopped members.
749         (do_restore_current_thread_cleanup): Check if thread was stopped
750         and still is, and if the target has registers, stack and memory
751         before restoring the selected frame.  Don't delete the cleanup
752         argument here.
753         (restore_current_thread_cleanup_dtor): New.
754         (make_cleanup_restore_current_thread): Remove all arguments.
755         Rewrite.
756         (thread_apply_all_command): Update.  Prune threads.
757         (thread_apply_command): Update.
758         (thread_command): Account for currently selected exited thread.
759         (do_captured_thread_select): Check for a running thread.  Prune
760         threads.
761         (_initialize_thread): Make "info threads", "thread", "thread
762         apply", and "thread apply all" appliable without a selected thread.
763         * gdbthread.h (struct thread_info): Replace running_ by state_.
764         Add refcount.
765         (is_exited, is_stopped): Declare.
766         (make_cleanup_restore_current_thread): Remove all arguments.
767         * infrun.c: Include "event-top.h".
768         (fetch_inferior_event): In non-stop mode, restore selected thread
769         and frame after handling the event and running breakpoint
770         commands.  Display GDB prompt if needed.
771         (normal_stop): In non-stop mode, don't print thread switching
772         notice.
773         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
774         (get_cmd_no_selected_thread_ok): New.
775         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
776         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
777         Declare.
778         * cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
779         no-selected-thread ok.
780         * top.c (execute_command): Check for non no-selected-thread-ok
781         commands.
782         * linux-nat.c (struct saved_ptids, threads_to_delete)
783         (record_dead_thread, prune_lwps): Delete.
784         (exit_lwp): Unconditionally delete thread.
785         (linux_nat_resume): Remove prune_lwps call.
786         * infcmd.c (proceed_thread_callback): Check if !is_stopped instead
787         of is_running.  Adjust to make_cleanup_restore_current_thread
788         interface change.
789         * mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
790         selected thread has exited.
791         * inf-loop.c (inferior_event_handler): Don't display the prompt
792         here.
793         * varobj.c (c_value_of_root): Update.
794         * defs.h (make_cleanup_dtor): Declare.
795         * utils.c (make_cleanup_dtor): New.
796
797         * Makefile.in (infrun.o): Depend on $(event_top_h).
798
799 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
800
801         Add "continue -a" and "interrupt -a" options for non-stop mode.
802
803         * infcmd.c (proceed_thread_callback, do_context_switch_to): New.
804         (continue_command): Add "-a" option.
805         (interrupt_target_command): Add "-a" option.
806         (_initialize_infcmd): Add extend help of continue and interrupt
807         command to mention the new "-a" option.  Mark "continue" async ok.
808
809 2008-07-10  Doug Evans  <dje@google.com>
810
811         Add "set print symbol-loading on|off".
812         * NEWS: Document new option.
813         * symfile.h (print_symbol_loading): Declare.
814         * symfile.c (print_symbol_loading): New global.
815         (symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
816         from ..." if print_symbol_loading.
817         (_initialize_symfile): Add set/show print symbol-loading.
818         * solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
819         if print_symbol_loading.
820
821 2008-07-10  Pedro Alves  <pedro@codesourcery.com>
822
823         Non-stop linux native.
824
825         * linux-nat.c (linux_test_for_tracefork): Block events while we're
826         here.
827         (get_pending_status): Implement non-stop mode.
828         (linux_nat_detach): Stop threads before detaching.
829         (linux_nat_resume): In non-stop mode, always resume only a single
830         PTID.
831         (linux_handle_extended_wait): On a clone event, in non-stop mode,
832         add new lwp to GDB's thread table, and mark as running, executing
833         and stopped appropriately.
834         (linux_nat_filter_event): Don't assume there are other running
835         threads when a thread exits.
836         (linux_nat_wait): Mark the main thread as running and executing.
837         In non-stop mode, don't stop all lwps.
838         (linux_nat_kill): Stop lwps before killing them.
839         (linux_nat_thread_alive): Use signal 0 to detect if a thread is
840         alive.
841         (send_sigint_callback): New.
842         (linux_nat_stop): New.
843         (linux_nat_add_target): Set to_stop to linux_nat_stop.
844
845         * linux-nat.h (thread_db_attach_lwp): Declare.
846
847         * linux-thread-db.c (thread_get_info_callback): Check for new
848         threads if we have none.
849         (thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
850         stopped lwp.  Check for new threads if we have none.
851         (thread_db_attach_lwp): New.
852         (thread_db_init): Set proc_handle.pid to inferior_ptid.
853         (check_event): Set proc_handle.pid to the stopped lwp.
854         (thread_db_find_new_threads): Set proc_handle.pid to any stopped
855         lwp available, bail out if there is none.
856
857         * linux-fork.c (linux_fork_killall): Use SIGKILL instead of
858         PTRACE_KILL.
859
860 2008-07-10  Kevin Buettner  <kevinb@redhat.com>
861
862         * rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
863         `current_pc' from CORE_ADDR to ULONGEST.
864
865         * remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
866         gdbsim_stop().
867
868 2008-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
869
870         * NEWS (New commands): Mention "set disable-randomization".
871         * configure.ac: Add check for HAVE_PERSONALITY and
872         HAVE_DECL_ADDR_NO_RANDOMIZE.
873         * configure, config.in: Regenerate.
874         * linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>.
875         [HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set
876         ADDR_NO_RANDOMIZE.
877         (disable_randomization, show_disable_randomization)
878         (set_disable_randomization): New.
879         (linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables
880         PERSONALITY_ORIG and PERSONALITY_SET.  Disable randomization upon the
881         variable DISABLE_RANDOMIZATION.
882         (_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable
883         DISABLE_RANDOMIZATION.
884
885 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
886
887         Adjust all targets to new target_stop interface.
888
889         * gnu-nat.c (gnu_stop): Add ptid argument.
890         * go32-nat.c (go32_stop): Add ptid argument.
891         (go32_create_inferior): Pass inferior_ptid to go32_stop.
892         * hpux-thread.c (hpux_thread_stop): Add ptid argument.
893         * monitor.c (monitor_stop): Add ptid argument.
894         (monitor_open): Pass inferior_ptid to monitor_stop.
895         (monitor_interrupt): Pass inferior_ptid to target_stop.
896         (monitor_stop): Add ptid argument.
897         * nto-procfs.c (nto_interrupt): Pass inferior_ptid to target_stop.
898         (procfs_create_inferior): Add ptid argument.
899         * procfs.c (procfs_stop): Add ptid argument.
900         * remote-m32r-sdi.c (m32r_stop): Add ptid argument.
901         * remote-sim.c (gdbsim_stop): Add ptid argument.
902         * sol-thread.c (sol_thread_stop): Add ptid argument.
903         * win32-nat.c (win32_stop): Add ptid argument.
904
905 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
906
907         Non-stop inferior control.
908
909         * infrun.c (resume): In non-stop mode, always resume just one
910         thread.
911         (proceed): Don't call prepare_to_proceed in non-stop mode.
912         (fetch_inferior_event): In non-stop mode, switch context before
913         handling the event.
914         (error_is_running, ensure_not_running): New.
915         (handle_inferior_event): In non-stop mode: Mark only the event
916         thread as stopped.  Require that the target module manages adding
917         threads to the thread list.  Assert that there isn't a
918         deferred_step_ptid set.  Don't switch to infwait_thread_hop_state.
919         (normal_stop): Only mark not-running if inferior hasn't exited.
920         In non-stop mode, only mark the event thread.
921
922         * thread.c:Include "cli/cli-decode.h".
923         (print_thread_info): Don't read from a running thread.
924         Output "(running)" if thread is running.
925         (switch_to_thread): Don't read stop_pc if thread is executing.
926         (do_restore_current_thread_cleanup): Don't write to a running
927         thread.
928         (thread_apply_all_command): Don't read from a running thread.  In
929         non-stop mode, do a full context-switch instead of just switching
930         threads.
931         (thread_apply_command): In non-stop mode, do a full context-switch
932         instead of just switching threads.
933         (do_captured_thread_select): Likewise.  Inform user if selected
934         thread is running.
935         (_initialize_thread): Mark "info threads" and "thread" and
936         async_ok.
937
938         * inf-loop.c (inferior_event_handler): In non-stop mode, don't
939         unregister the target from the event loop.
940
941         * infcmd.c (continue_command, step_1, jump_command)
942         (signal_command): Ensure the selected thread isn't running.
943         (interrupt_target_command): In non-stop mode, interrupt only the
944         selected thread.
945
946         * inferior.h (error_is_running, ensure_not_running): Declare.
947
948         * target.h (struct target_ops): Add ptid argument to the to_stop
949         member.
950         (target_stop): Add ptid_t argument.
951
952         * target.c (update_current_target): Add ptid argument to to_stop's
953         type.
954         (debug_to_stop): Add ptid_t argument.
955         (debug_to_rcmd): Set to_stop_ptid.
956
957         * remote.c (remote_stop): Add ptid_t argument.
958         (async_remote_interrupt): Add inferior_ptid to target_stop.
959         * inf-ptrace.c (inf_ptrace_stop): Add ptid argument.
960
961         * Makefile.in (thread.o): Depend on $(cli_decode_h).
962
963 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
964
965         Don't rely on ecs->wait_for_more.
966
967         * infrun.c (proceed): Clear the stepping state, set
968         previous_inferior_ptid and clear infwait state.
969         (wait_for_inferior): Don't clear the stepping state, set
970         previous_inferior_ptid, or clear the infwait state here.
971         (fetch_inferior_event): Don't clear the stepping state, set
972         previous_inferior_ptid, or clear the infwait state here.  Don't
973         condition on wait_for_more.
974
975 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
976
977         Refactor infrun a bit.
978
979         * infrun.c (currently_stepping): Take a struct
980         thread_stepping_state instead of an execution_control_state.
981         (struct thread_stepping_state): New, split from
982         execution_control_state.
983         (gtss, tss): New globals.
984         (proceed): Clear the stepping state, set previous_inferior_ptid
985         and clear infwait state.
986         (init_wait_for_inferior): Clear the stepping state,
987         previous_inferior_ptid and infwait state.
988         (waiton_ptid, infwait_state): New, split from
989         execution_control_state.
990         (struct execution_control_state): Members that persist through
991         events moved out to either struct thred_stepping_state or made
992         global.  Deleted unneeded wp, saved_inferior_ptid, tmpstatus.
993         (wait_for_inferior, fetch_inferior_event): Use local
994         execution_control_state.  Update to execution_control_state split.
995         (init_execution_control_state): Adjust.
996         (init_thread_stepping_state): New, extracted from
997         init_execution_control_state.
998         (context_switch): Take a ptid instead of an
999         execution_control_state.
1000         (context_switch_to): Adjust.
1001         (adjust_pc_after_break): Adjust.
1002         (init_infwait_state): New.
1003         (handle_inferior_event): Adjust.
1004
1005 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
1006             Vladimir Prus  <vladimir@codesourcery.com>
1007
1008         Per-thread commands.
1009
1010         * gdbthread.h: Remove unneeded forward declarations.
1011         Include "inferior.h".
1012         (struct thread_info): Add continuations,
1013         intermediate_continuations, proceed_to_finish, step_over_calls,
1014         stop_step, step_multi and stop_signal members.
1015         (save_infrun_state): Add continuations,
1016         intermediate_continuations, proceed_to_finish, step_over_calls,
1017         stop_step, step_multi, stop_signal and stop_bpstat parameters.
1018         (load_infrun_state): Add continuations,
1019         intermediate_continuations, proceed_to_finish, step_over_calls,
1020         stop_step, step_multi, stop_signal and stop_bpstat parameters.
1021
1022         * thread.c (load_infrun_state): In non-stop mode, load
1023         continuations, intermediate_continuations, proceed_to_finish,
1024         step_over_calls, stop_step, step_multi and stop_signal.
1025         (save_infrun_state): Store continuations,
1026         intermediate_continuations, proceed_to_finish, step_over_calls,
1027         stop_step, step_multi, stop_signal and stop_bpstat.
1028         (save_infrun_state): Store continuations,
1029         intermediate_continuations, proceed_to_finish, step_over_calls,
1030         stop_step, step_multi, stop_signal and stop_bpstat.
1031         (free_thread): Clear The thread's stop_bpstat.
1032
1033         * inferior.h (context_switch_to): Declare.
1034
1035         * infrun.c (ecss): New global.
1036         (context_switch): Context switch continuations,
1037         intermediate_continuations, proceed_to_finish, step_over_calls,
1038         stop_step, step_multi, stop_signal and stop_bpstat.
1039         (wait_for_inferior): Use global ecss.
1040         (async_ecss, async_ecs): Delete.
1041         (fetch_inferior_event): Use global ecss.
1042         (context_switch_to): New.
1043
1044         * top.c (execute_command): In non-stop, only check if the current
1045         thread is running, in all-stop, check if there's any thread
1046         running.
1047
1048         * breakpoint.c (bpstat_remove_breakpoint): New.
1049         (bpstat_remove_breakpoint_callback): New.
1050         (delete_breakpoint): Clear the stop_bpstats of all threads.
1051
1052         * mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
1053         current thread is running, in all-stop, check if there's any
1054         thread running.
1055
1056         * Makefile.in (gdbthread_h): Depend on $(inferior_h).
1057
1058 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
1059
1060         Add non_stop global.
1061
1062         * inferior.h (non_stop): Declare.
1063         * infrun.c (non_stop, non_stop_1): New.
1064         (set_non_stop, show_non_stop): New.
1065         (_initialize_infrun): Add "set/show non-stop" command.
1066
1067 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
1068
1069         Adjust fork/vfork/exec to pass ptids around.
1070
1071         * target.h (struct target_waitstatus): Store related_pid as a ptid.
1072         (inferior_has_forked, inferior_has_vforked, inferior_has_execd):
1073         Take a ptid_t.
1074         * breakpoint.h (struct breakpoint): Change forked_inferior_pid
1075         type to ptid.
1076         * breakpoint.c (print_it_typical, bpstat_check_location)
1077         (print_one_breakpoint_location, set_raw_breakpoint_without_location)
1078         (create_fork_vfork_event_catchpoint): Adjust.
1079         * infrun.c (fork_event): Change parent_pid and child_pid types to
1080         ptid.
1081         (follow_exec, inferior_has_forked, inferior_has_vforked)
1082         (inferior_has_execd): Take a ptid_t and don't trim it.
1083         * linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
1084         * linux-nat.c (linux_child_follow_fork): Adjust.
1085         * inf-ptrace.c (inf_ptrace_wait): Adjust.
1086         * inf-ttrace.c (inf_ttrace_wait): Adjust.
1087         * win32-nat.c (get_win32_debug_event): Don't set related_pid.
1088
1089 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
1090
1091         Add "executing" property to threads.
1092
1093         * inferior.h (target_executing): Delete.
1094         * gdbthread.h (struct thread_info): Add executing_ field.
1095         (set_executing, is_executing): New.
1096         * thread.c (main_thread_executing): New.
1097         (init_thread_list): Clear it and also main_thread_running.
1098         (is_running): Return false if target has no execution.
1099         (any_running, is_executing, set_executing): New.
1100
1101         * top.c: Include "gdbthread.h".
1102         (target_executing): Delete.
1103         (execute_command): Replace target_executing check by any_running.
1104         * event-top.c: Include "gdbthread.h".
1105         (display_gdb_prompt, command_handler): Replace target_executing by
1106         is_running.
1107         * inf-loop.c: Include "gdbthread.h".  Don't mark as not executing
1108         here.  Replace target_executing by is_running.
1109         * infrun.c (handle_inferior_event): Mark all threads as
1110         not-executing.
1111         * linux-nat.c (linux_nat_resume): Don't mark thread as executing
1112         here.
1113         * stack.c (get_selected_block): Return null if inferior is
1114         executing.
1115         * target.c (target_resume): Mark resumed ptid as executing.
1116         * breakpoint.c (until_break_command): Replace target_executing
1117         check by is_executing.
1118         * remote.c (remote_async_resume): Don't mark inferior as executing
1119         here.
1120         * mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
1121         by any_running.
1122
1123         * mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
1124         (mi_execute_async_cli_command): Replace target_executing by
1125         is_running.
1126
1127         * frame.c (get_current_frame): Error out if the current thread is
1128         executing.
1129         (has_stack_frames): New.
1130         (get_selected_frame, deprecated_safe_get_selected_frame): Check
1131         has_stack_frames.
1132
1133         * Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
1134         $(gdbthread_h).
1135
1136 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
1137
1138         * symfile.c (load_command): Reopen the exec file and reread
1139         symbols before anything else.
1140
1141 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
1142
1143         * remote-sim.c: Include gdbthread.h.
1144         (remote_sim_ptid): New global.
1145         (gdbsim_create_inferior): Silently add the main task to GDB's
1146         thread list.
1147         (gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
1148         task from GDB's thread list.
1149         (gdbsim_resume): Adjust to use remote_sim_ptid.
1150         (gdbsim_thread_alive, gdbsim_pid_to_str): New.
1151         (init_gdbsim_ops): Register gdbsim_thread_alive and
1152         gdbsim_pid_to_str.
1153         (_initialize_remote_sim): Initialize remote_sim_ptid.
1154         * Makefile.in (remote-sim.o): Depend on $(gdbthread_h).
1155
1156 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
1157
1158         * monitor (monitor_ptid): New global.
1159         (monitor_open): Silently add the main task to GDB's thread list.
1160         (monitor_close, monitor_mourn_inferior): Silently delete the main
1161         task from GDB's thread list.
1162         (monitor_thread_alive, monitor_pid_to_str): New.
1163         (init_base_monitor_ops): Register monitor_thread_alive and
1164         monitor_pid_to_str.
1165         (_initialize_remote_monitors): Initialize monitor_ptid.
1166
1167         * gdbthread.h (delete_thread_silent): Declare.
1168         * thread.c (delete_thread): Rename to ...
1169         (delete_thread_1): ... this.  Add "silent" parameter.  If silent,
1170         don't do exit notifications.
1171         (delete_thread, delete_thread_silent): New, as wrappers to
1172         delete_thread_1.
1173
1174 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
1175
1176         * breakpoint.c (update_global_location_list): Add boolean
1177         "should_insert" argument.  Only insert locations if caller told it
1178         too.
1179         (update_global_location_list_nothrow): Add boolean "should_insert"
1180         argument.  Pass it to update_global_location_list.
1181         (insert_breakpoints, create_longjmp_breakpoint)
1182         (create_overlay_event_breakpoint, enable_overlay_breakpoints)
1183         (create_thread_event_breakpoint, create_solib_event_breakpoint)
1184         (create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
1185         (enable_watchpoints_after_interactive_call_stop)
1186         (set_momentary_breakpoint, create_breakpoints)
1187         (break_command_really, watch_command_1)
1188         (create_ada_exception_breakpoint, update_breakpoint_locations)
1189         (do_enable_breakpoint, enable_command): Pass true to
1190         update_global_location_list.
1191         (bpstat_stop_status, disable_overlay_breakpoints)
1192         (disable_watchpoints_before_interactive_call_start)
1193         (delete_breakpoint, disable_breakpoint, disable_command): Pass
1194         false to update_global_location_list.
1195         (update_breakpoints_after_exec): Don't temporarily disable
1196         always-inserted mode.
1197
1198 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
1199
1200         * breakpoint.c (mark_breakpoints_out): Make public.
1201         (update_breakpoints_after_exec): Don't call mark_breakpoints_out
1202         here.  Update comment.
1203         * breakpoint.h (mark_breakpoints_out): Declare.
1204
1205         * linux-nat.c (linux_handle_extended_wait): On
1206         TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
1207         * inf-ttrace.c (inf_ttrace_wait): Likewise.
1208
1209 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
1210
1211         * infrun.c (follow_exec): Reset shared libraries before adding the
1212         main exec file.
1213
1214 2008-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
1215
1216         * breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.
1217
1218 2008-07-07  Pedro Alves  <pedro@codesourcery.com>
1219
1220         * i386-dicos-tdep.c: Include "inferior.h".
1221         (i386_dicos_frame_align): New.
1222         (i386_dicos_init_abi): Register i386_dicos_frame_align.  Set call
1223         dummy location ON_STACK.
1224         * Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).
1225
1226 2008-07-07  Joel Brobecker  <brobecker@adacore.com>
1227
1228         * gstdint.h: New file.
1229
1230 2008-07-05  Vladimir Prus  <vladimir@codesourcery.com>
1231
1232         * mi/mi-interp.c (mi_on_resume): Don't try to report
1233         resumed thread it the thread list is empty.
1234
1235 2008-07-05  Pierre Muller  <muller@ics.u-strasbg.fr>
1236
1237         * cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
1238         completer for set to filename_completer.
1239
1240         NEWS: Mention it.
1241
1242 2008-07-04  Vladimir Prus  <vladimir@codesourcery.com>
1243
1244         Implement -target-attach.
1245         * mi/mi-cmds.c (mi_cmds): Forward -target-attach to CLI attach.
1246
1247 2008-06-21  Hui Zhu  <teawater@gmail.com>
1248
1249         * target-descriptions.c (maint_print_c_tdesc_cmd): Fix a memory leak.
1250
1251 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
1252
1253         * config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.
1254         * config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete.
1255
1256         * target.h (struct target_ops): Add to_attach_no_wait member.
1257         (target_attach_no_wait): New.
1258         * target.c (update_current_target): Inherit to_attach_no_wait.
1259
1260         * infcmd.c: Replace ATTACH_NO_WAIT compile time check by
1261         target_attach_no_wait runtime check.
1262
1263         * gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops.
1264         * win32-nat.c (init_win32_ops): Set to_attach_no_wait in
1265         win32_ops.
1266
1267 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
1268
1269         * i386-tdep.c (i386_displaced_step_fixup): Condition log printing
1270         on debug_displaced being set.
1271
1272 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
1273
1274         * frame.c (get_prev_frame_1): Call frame_unwind_find_by_frame
1275         directly instead of get_frame_id.
1276
1277 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
1278
1279         * rs6000-tdep.c (ppc_displaced_step_fixup): New function.
1280         (deal_with_atomic_sequence): Update BC masks.
1281         (rs6000_gdbarch_init): Init displaced stepping infra-structure.
1282         Define BRANCH_MASK, B_INSN, BC_INSN, BXL_INSN, BP_MASK and BP_INSN.
1283
1284 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
1285
1286         * cris-tdep.c (crisv32_single_step_through_delay): Get this frame's
1287         register, not the previous frame's.
1288
1289 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
1290
1291         * source.c (select_source_symtab): Make sure we skip namespace
1292         symtabs when showing cpp source code.
1293
1294 2008-06-30  Hans-Peter Nilsson  <hp@axis.com>
1295
1296         * MAINTAINERS (Authorized committers): Fix my email address.
1297
1298 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
1299
1300         * mi/mi-cmds.c (mi_cmds): Route -exec-run, -exec-until,
1301         -target-download and -target-select via CLI, so that
1302         the quoting rules are the same as they were (unfortunately)
1303         in all prior gdb releases.
1304         * mi/mi-cmds.h (mi_cmd_exec_run, mi_cmd_exec_until)
1305         (mi_cmd_target_download, mi_cmd_target_select): Remove.
1306         * mi/mi-main.c (mi_cmd_exec_run, mi_cmd_exec_until)
1307         (mi_cmd_target_download, mi_cmd_target_select): Remove.
1308         (mi_cmd_execute): Set current_token even for commands
1309         routed via CLI.
1310
1311 2008-06-28  Ulrich Weigand  <uweigand@de.ibm.com>
1312
1313         * alphafbsd-tdep.c: Update for unwinder changes.
1314         * alpha-linux-tdep.c: Likewise.
1315         * alphanbsd-tdep.c: Likewise.
1316         * alphaobsd-tdep.c: Likewise.
1317         * avr-tdep.c: Likewise.
1318         * cris-tdep.c: Likewise.
1319         * frv-linux-tdep.c: Likewise.
1320         * frv-tdep.c: Likewise.
1321         * h8300-tdep.c: Likewise.
1322         * hppa-linux-tdep.c: Likewise.
1323         * iq2000-tdep.c: Likewise.
1324         * m32c-tdep.c: Likewise.
1325         * m32r-linux-tdep.c: Likewise.
1326         * m32r-tdep.c: Likewise.
1327         * m68hc11-tdep.c: Likewise.
1328         * mep-tdep.c: Likewise.
1329         * mn10300-tdep.c: Likewise.
1330         * mt-tdep.c: Likewise.
1331         * score-tdep.c: Likewise.
1332         * sh64-tdep.c: Likewise.
1333         * sh-tdep.c: Likewise.
1334         * sparc64fbsd-tdep.c: Likewise.
1335         * sparc64nbsd-tdep.c: Likewise.
1336         * sparc64obsd-tdep.c: Likewise.
1337         * v850-tdep.c: Likewise.
1338         * vaxobsd-tdep.c: Likewise.
1339         * vax-tdep.c: Likewise.
1340         * xstormy16-tdep.c: Likewise.
1341
1342 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
1343
1344         * mi/mi-main.c (enum captured_mi_execute_command_actions)
1345         (captured_mi_execute_command_args): Remove.
1346         (captured_mi_execute_command): Cast the closure to mi_parse
1347         pointer, not to captured_mi_execute_command_args, and don't
1348         set the action field thereof.
1349         (mi_execute_command): Pass struct mi_parse, not
1350         captured_mi_execute_command_args to captured_mi_execute_command.
1351         (mi_execute_command): Remove (dead) code for suppressing
1352         printing prompt.
1353
1354 2008-06-28  Pedro Alves  <pedro@codesourcery.com>
1355
1356         * linux-nat.c (enum sigchld_state): New.
1357         (linux_nat_async_events_state): Renamed from
1358         linux_nat_async_events_enabled.
1359         (linux_nat_event_pipe_push, my_waitpid): Adjust.
1360         (sigchld_default_action): New.
1361         (lin_lwp_attach_lwp): Adjust.  Call linux_nat_async_events
1362         unconditionally.
1363         (linux_nat_create_inferior): Set events state to sigchld_default
1364         state.
1365         (linux_nat_resume): Adjust.
1366         (linux_nat_wait): Call linux_nat_async_events unconditionally.
1367         (sigchld_handler): Adjust.
1368         (linux_nat_async_mask): Don't set SIGCHLD actions here.
1369         (get_pending_events): Adjust.
1370         (linux_nat_async_events): Rewrite to handle enum sigchld_state
1371         instead of a boolean.
1372         (linux_nat_async): Adjust.
1373         (_initialize_linux_nat): Capture default SIGCHLD action into
1374         sigchld_default_action.
1375
1376 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
1377
1378         * breakpoint.c (moribund_locations): New.
1379         (bpstat_stop_status): Process moribund locations.
1380         (update_global_location_list): Add removed
1381         locations to moribund_locations.
1382         (breakpoint_retire_moribund): New.
1383         * breakpoint.h (struct bp_location): New field
1384         events_till_retirement.
1385         (breakpoint_retire_moribund): Declare.
1386         * thread.c (thread_count): New.
1387         * infrun.c (handle_inferior_event): Call
1388         breakpoint_retire_moribund.
1389         * gdbthread.h (thread_count): Declare.
1390
1391 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
1392
1393         * dfp.c (decimal_convert): Call match_endianness before and after
1394         conversion.
1395
1396 2008-06-27  Jonathan Larmour  <jifl@eCosCentric.com>
1397
1398         * remote.c (remote_insert_breakpoint): Ensure that if Z0
1399         unsupported and we fall back to memory_insert_breakpoint, we
1400         use the unmodified requested address.
1401
1402 2008-06-27  Joel Brobecker  <brobecker@adacore.com>
1403
1404         * dwarf2read.c (read_attribute_value): Issue a complaint when
1405         adjusting size attribute values of 0xffffffff as zero.
1406
1407 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
1408
1409         * i386-tdep.c (i386_16_byte_align_p): New.
1410         (i386_push_dummy_call): Determine stack space required for
1411         arguments going forwards allowing for 16-byte alignment, then push
1412         arguments going forwards.
1413
1414 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
1415
1416         * infrun.c (start_remote): Don't clear thread list here.
1417         * monitor.c (monitor_open): Include "gdbthread.h".  Clear thread
1418         list here.
1419         * remote.c (record_currthread): Upgrade the main thread and its
1420         entry in the thread list if this is the first time we hear about
1421         threads.
1422         (remote_thread_alive): Consider magic_null_ptid or a ptid without
1423         a tid member always alive.
1424         (remote_find_new_threads): Don't update the main thread here.
1425         (remote_start_remote): Clear thread list here.  Always add the
1426         main thread.
1427         (extended_remote_attach_1): Add the main thread here.
1428         (extended_remote_mourn_1): Re-add the main thread here.
1429         (extended_remote_create_inferior_1): Add a main thread.
1430
1431         * Makefile.in (monitor.o): Depend on $(gdbthread_h).
1432
1433 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
1434
1435         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
1436
1437         * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
1438         globals.
1439         (general_thread, continue_thread): Change type to ptid_t.
1440         (record_currthread): Take a ptid_t parameter instead of an
1441         integer.
1442         (MAGIC_NULL_PID): Delete.
1443         (set_thread): Take a ptid_t parameter and adjust.
1444         (set_general_thread, set_continue_thread): New.
1445         (remote_thread_alive, remote_newthread_step)
1446         (remote_current_thread, remote_find_new_threads)
1447         (remote_threads_info, remote_start_remote, remote_vcont_resume)
1448         (remote_resume_1, remote_wait, extended_remote_create_inferior_1)
1449         (threadalive_test, remote_pid_to_str)
1450         (remote_get_thread_local_address): Adjust.
1451         (_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
1452         and any_thread_ptid.
1453
1454 2008-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
1455
1456         * configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
1457         * configure: Regenerated.
1458
1459 2008-06-26  Joel Brobecker  <brobecker@adacore.com>
1460
1461         * dwarf2read.c (read_attribute_value): Treat size attribute
1462         values of 0xffffffff as if the attribute value was zero.
1463
1464 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
1465
1466         * linux-nat.c: Add description of overall logic.
1467
1468 2008-06-26  Daniel Jacobowitz  <dan@codesourcery.com>
1469
1470         * Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
1471         (gdb_stdint_h, gdb_stdint.h, stamp-int): Delete.  Remove
1472         all dependencies on $(gdb_stdint_h).
1473         (distclean): Do not delete gdb_stdint.h.
1474         * acinclude.m4: Do not use stdint.m4.
1475         * configure.ac: Set GNULIB_STDINT_H.  Remove tests for stdint.h,
1476         uintptr_t, and gdb_stdint.h.
1477         * defs.h: Include <stdint.h>.
1478         * gdb_thread_db.h: Assume stdint.h is already included.
1479         * breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
1480         rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
1481         include gdb_stdint.h.
1482         * configure, config.in: Regenerate.
1483
1484 2008-06-26  Joseph Myers  <joseph@codesourcery.com>
1485
1486         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
1487         decimal floating-point values in GPRs for soft-float.
1488         (do_ppc_sysv_return_value): Handle returning decimal
1489         floating-point values in GPRs for soft-float.
1490
1491 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
1492
1493         * target.c (target_read_until_error): New.
1494         * target.h (target_read_until_error): Declare.
1495         * mi/mi-main.c (mi_cmd_data_read_memory): Use
1496         target_read_until_error.
1497
1498 2008-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
1499
1500         Fix a memory leak found by Hui Zhu <teawater@gmail.com>.
1501         * c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
1502         after the DECFLOAT detection to fix a memory leak.  Remove the
1503         redundant NUM initialization.  Protect the DECFLOAT detection memory
1504         access before the P block.  Restore the P memory content for the
1505         DECFLOAT detection.
1506
1507 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
1508
1509         Kill the return value for all MI command functions.
1510         * mi/mi-cmds.h (enum mi_cmd_result): Remove.
1511         (mi_cmd_argv_ftype): Change return type to void.
1512
1513         * mi/mi-main.c: Adjust all function that implement
1514         MI commands to return nothing.
1515         (struct captured_mi_execute_command_actions):
1516         Remove the rc field.
1517         (mi_cmd_execute): Return nothing.
1518         (mi_execute_async_cli_command): Return nothing.
1519         (mi_cmd_exec_interrupt): Don't print ^done here.
1520         (mi_cmd_target_select): Don't print ^connected here.
1521         (captured_mi_execute_command): Don't check for MI_CMD_DONE.
1522         Special-case -target-select and output ^connected, not ^done.
1523
1524         * mi/mi-cmd-break.c: Adjust.
1525         * mi/mi-cmd-disas.c: Adjust.
1526         * mi/mi-cmd-env.c: Adjust.
1527         * mi/mi-cmd-file.c: Adjust.
1528         * mi/mi-cmd-stack.c: Adjust.
1529         * mi/mi-cmd-target.c: Adjust.
1530         * mi/mi-cmd-var.c: Adjust.
1531         * mi/mi-interp.c: Adjust.
1532         * mi/mi-symbol-cmds.c: Adjust.
1533
1534 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
1535
1536         Emit ^running via observer.
1537         * mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
1538         ^running here.
1539         (mi_on_resume): Print ^running if not previously output.
1540         * mi/mi-main.c (running_result_record_printed): New.
1541         (captured_mi_execute_command): Reset
1542         running_result_record_printed.  Use running_result_record_printed
1543         to decide if we should skip ^done.
1544         (mi_execute_async_cli_command): Don't print ^running here.
1545         * mi/mi-main.h (current_token, running_result_record_printed):
1546         Declare.
1547
1548 2008-06-24  Michael Snyder  <msnyder@specifix.com>
1549
1550         * infrun.c (_initialize_infrun): White space and typo fix.
1551
1552 2008-06-23  Christopher Faylor  <me.gdb.changelog@cgf.cx>
1553
1554         * win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
1555         (do_initial_win32_stuff): Fix problem with inability to set breakpoints
1556         when first loading DLL with "dll" command.
1557
1558 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
1559
1560         * gnu-nat.c (proc_string): Use capital T for "Thread".
1561
1562 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
1563
1564         * win32-nat.c (win32_pid_to_str): Use capital T for "Thread".
1565
1566 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
1567
1568         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
1569         the target cannot run.
1570
1571 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
1572
1573         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
1574         we're attaching to a running process.
1575
1576 2008-06-18  Pierre Muller  <muller@ics.u-strasbg.fr>
1577
1578         * win32-nat.c (handle_load_dll): Give dll name and load address
1579         if debug_events is on.
1580         (handle_unload_dll): Likewise.
1581
1582 2008-06-14  Vladimir Prus  <vladimir@codesourcery.com>
1583
1584         Don't suppress *running when doing finish.
1585         * infcall.c (call_function_by_hand): Set both
1586         suppress_resume_observer and suppress_stop_observer.
1587         * infcmd.c (suppress_run_stop_observers): Split into...
1588         (suppress_resume_observer, suppress_stop_observer): ...those.
1589         (finish_command_continuation): Clear suppress_stop_observer.
1590         (finish_command): Set suppress_stop_observer.
1591         * inferior.h (suppress_run_stop_observers): Split into...
1592         (suppress_resume_observer, suppress_stop_observer): ...those.
1593         * infrun.c (normal_stop): Check for suppress_stop_observer.
1594         * thread.c (set_running): Check for suppress_resume_observer.
1595
1596 2008-06-12  Pedro Alves  <pedro_alves@portugalmail.pt>
1597             Pierre Muller  <muller@ics.u-strasbg.fr>
1598
1599         * gdbarch.sh (gdbarch_skip_main_prologue): New.
1600         * gdbarch.h, gdbarch.c: Regenerate.
1601         * i386-tdep.h (i386_skip_main_prologue): Declare.
1602         * i386-tdep.c (i386_skip_main_prologue): New.
1603         * i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
1604         i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
1605         * symtab.c (find_function_start_sal): When pc points at the "main"
1606         function, call gdbarch_skip_main_prologue.
1607
1608 2008-06-11  Daniel Jacobowitz  <dan@codesourcery.com>
1609
1610         * value.c (value_primitive_field): Fetch lazy register values.
1611
1612 2008-06-11  Pedro Alves  <pedro@codesourcery.com>
1613
1614         * NEWS: Mention support removal of undocumented S AA p PID stop
1615         reply packet.
1616
1617         * remote.c (remote_wait): Remove undocumented S AA p PID support.
1618
1619 2008-06-10  Stan Shebs  <stan@codesourcery.com>
1620
1621         * MAINTAINERS: Update my affiliation and address.
1622
1623 2008-06-10  Andreas Schwab  <schwab@suse.de>
1624
1625         * top.c (print_gdb_version): Don't print final newline.
1626
1627 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
1628
1629         Implement *running.
1630         * Makefile.in: Update dependencies.
1631         * gdbthread.h (struct thread_info): New field
1632         running_.
1633         (set_running, is_running): New.
1634         * thread.c (set_running, is_running): New.
1635         * inferior.h (suppress_normal_stop_observer): Rename to...
1636         (suppress_run_stop_observers): ..this.
1637         * infcmd.c (suppress_normal_stop_observer): Rename to...
1638         (suppress_run_stop_observers): ..this.
1639         (finish_command_continuation, finish_command): Adjust.
1640         * infcall.c (call_function_by_hand): Adjust.
1641         * infrun.c (normal_stop): Call set_running.
1642         * target.c (target_resume): New.  Call set_running.
1643         * target.h (target_resume): Convert from macro to
1644         a function.
1645
1646         * mi/mi-interp.c (mi_on_resume): New.
1647         (mi_interpreter_init): Register mi_on_resume.
1648
1649 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
1650
1651         Use observers to report stop events in MI.
1652         * mi/mi-interp.c (mi_on_normal_stop): New.
1653         (mi_interpreter_init): Register mi_on_normal_stop.
1654         (mi_interpreter_exec_continuation): Remove.
1655         (mi_cmd_interpreter_exec): Don't register the above.
1656         * mi/mi-main.c (captured_mi_execute_command): Don't care
1657         about sync_execution.
1658         (mi_execute_async_cli_command): Don't install continuation.  Don't
1659         print *stopped.
1660         (mi_exec_async_cli_cmd_continuation): Remove.
1661
1662 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
1663
1664         Suppress normal stop observer when it's problematic.
1665         * inferior.h (suppress_normal_stop_observer): New.
1666         * infcall.c (call_function_by_hand): Disable stop events when
1667         doing function calls.
1668         * infmcd.c (suppress_normal_stop_observer): New.
1669         (finish_command_continuation): Call normal_stop observer
1670         explicitly.
1671         (finish_command): Disable stop events inside proceed.
1672         * infrun.c (normal_stop): Don't call normal stop observer if
1673         suppressed of if multi-step is in progress.
1674
1675 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
1676
1677         Remove stale code.
1678         * infrun.c (finish_command): Don't pass cleanup
1679         to continuation.
1680         (finish_command_continuation): Don't grab cleanup from
1681         the passed data, as we don't use, and cannot, use it anyway.
1682
1683 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
1684
1685         Introduce common cleanup for restoring integers.
1686         * defs.h (make_cleanup_restore_integer): New declaration.
1687         (struct cleanup): New field free_arg.
1688         (make_my_cleanup_2): New.
1689         * utils.c (restore_integer_closure, restore_integer)
1690         (make_cleanup_restore_integer): New.
1691         (make_my_cleanup): Initialize the free_arg field and
1692         renamed to make_my_cleanup_2.
1693         (do_my_cleanups): Call free_arg.
1694         (discard_cleanups): Call free_arg.
1695         * breakpoint.c (restore_always_inserted_mode): Remove.
1696         (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
1697
1698 2008-06-09  Doug Evans  <dje@google.com>
1699
1700         * remote.c (remote_wait): Include beginning of malformed packet
1701         in error output.
1702
1703 2008-06-09  Tom Tromey  <tromey@redhat.com>
1704
1705         * completer.c (complete_line): Don't special-case
1706         expression_completer.
1707         (expression_completer): Only pass last word to
1708         location_completer.
1709         * c-exp.y (yylex): Check 'token', not 'operator'.
1710
1711 2008-06-09  Daniel Jacobowitz  <dan@codesourcery.com>
1712
1713         * configure.ac (build_warnings): Add -Wno-format for mingw.
1714         * configure: Regenerated.
1715
1716 2008-06-07  Daniel Jacobowitz  <dan@codesourcery.com>
1717
1718         * NEWS: Make indentation consistent.  Move exec tracing entry out
1719         of remote packet list.
1720
1721 2008-06-06  Tom Tromey  <tromey@redhat.com>
1722
1723         * value.h (evaluate_subexpression_type, extract_field_op):
1724         Declare.
1725         * printcmd.c (_initialize_printcmd): Use expression_completer for
1726         'p', 'inspect', 'call'.
1727         * parser-defs.h (parse_field_expression): Declare.
1728         * parse.c: Include exceptions.h.
1729         (in_parse_field, expout_last_struct): New globals.
1730         (mark_struct_expression): New function.
1731         (prefixify_expression): Return int.
1732         (prefixify_subexp): Return int.  Use expout_last_struct.
1733         (parse_exp_1): Update.
1734         (parse_exp_in_context): Add 'out_subexp' argument.  Handle
1735         in_parse_field.
1736         (parse_field_expression): New function.
1737         * expression.h (parse_field_expression): Declare.
1738         (in_parse_field): Likewise.
1739         * eval.c (evaluate_subexpression_type): New function.
1740         (extract_field_op): Likewise.
1741         * completer.h (expression_completer): Declare.
1742         * completer.c (expression_completer): New function.
1743         (count_struct_fields, add_struct_fields): New functions.
1744         * c-exp.y (yyparse): Redefine.
1745         (COMPLETE): New token.
1746         (exp): New productions.
1747         (saw_name_at_eof, last_was_structop): New globals.
1748         (yylex): Return COMPLETE when needed.  Recognize in_parse_field.
1749         (c_parse): New function.
1750         * breakpoint.c (_initialize_breakpoint): Use expression_completer
1751         for watch, awatch, and rwatch.
1752         * Makefile.in (parse.o): Depend on exceptions_h.
1753
1754 2008-06-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
1755
1756         PR gdb/1147
1757         * gdb/valopts.c (find_overload_match): Handle references
1758         to pointers.
1759
1760 2008-06-06  Paul N. Hilfinger  <hilfinger@adacore.com>
1761
1762         * ada-lang.c (ada_value_assign): Correct big-endian case to take into
1763         account the bitsize of the 'from' operand.
1764
1765 2008-06-06  Pedro Alves  <pedro@codesourcery.com>
1766
1767         * annotate.h (annotate_thread_changed): Declare.
1768
1769 2008-06-06  Nick Roberts  <nickrob@snap.net.nz>
1770
1771         * annotate.c (annotate_thread_changed): New function.
1772         * thread.c (thread_command) : Use it.
1773         * infrun.c (normal_stop): Use it.
1774
1775 2008-06-05  Vladimir Prus  <vladimir@codesourcery.com>
1776             Nathan Sidwell  <nathan@codesourcery.com>
1777             Joseph Myers  <joseph@codesourcery.com>
1778
1779         * acinclude.m4: Include ../config/acx.m4.
1780         * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
1781         * configure, config.in: Regenerate.
1782         * main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
1783         address.
1784         * top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.
1785
1786 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
1787
1788         Replace 'target async' by 'maintenance set remote-async' and
1789         'target remote' combination.
1790
1791         * remote.c (remote_async_wait): Merge into remote_wait, and
1792         remove.
1793         (remote_async_permitted, remote_async_permitted_set): New
1794         variables.
1795         (set_maintenance_remote_async_permitted)
1796         (show_maintenance_remote_async_permitted): New functions.
1797         (remote_async_ops, extended_async_remote_ops): Delete.
1798         (remote_async_open, extended_remote_async_open): Delete.
1799         (remote_open_1): Drop async_p parameter.  Update callers.  Replace
1800         async_p with remote_async_permitted checks.
1801         (extended_async_remote_attach): Delete.
1802         (remote_resume, remote_async_resume): Merge and leave remote_resume.
1803         (remote_async_terminal_inferior): Rename to...
1804         (remote_terminal_inferior): ... this, and add
1805         remote_async_termitted check.
1806         (remote_async_terminal_ours): Rename to...
1807         (remote_terminal_ours): ... this, and add remote_async_termitted
1808         check.
1809         (remote_wait, remote_async_wait): Merge and leave remote_wait
1810         only.
1811         (remote_kill, remote_async_kill): Merge and leave remote_kill
1812         only.
1813         (remote_async_mourn, extended_async_remote_mourn): Delete.
1814         (extended_remote_create_inferior_1): Drop async_p parameter.
1815         Update callers.  Always use extended_remote_ops.
1816         (extended_remote_async_create_inferior): Delete.
1817         (remote_return_zero): Delete.
1818         (init_remote_ops): Register remote_can_async_p, remote_async,
1819         remote_async_mask, remote_terminal_inferior and
1820         remote_terminal_ours.
1821         (remote_can_async_p, remote_is_async_p): Check for
1822         remote_async_permitted.
1823         (init_remote_async_ops, init_extended_async_remote_ops): Remove.
1824         (set_remote_cmd): Don't add async and extended-async targets.
1825         (_initialize_remote): Add set/show remote-async maintenance
1826         commands.
1827
1828 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
1829
1830         * remote.c (kill_kludge): Delete.
1831         (remote_wait, remote_async_wait): Don't set it.
1832         (remote_kill, remote_async_kill): Don't do anything with it.
1833
1834 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
1835
1836         * linux-thread-db.c (thread_db_wait): Don't trim event ptid.
1837
1838 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
1839
1840         * bcache.c (bcache_data): Call deprecated_bcache_added function.
1841         (deprecated_bcache_added): New function name. Body of function
1842         bcache_data is used here with the addition of 'added' argument.
1843         * bcache.h (deprecated_bcache_added): New function.
1844         * symfile.c (add_psymbol_to_bcache): New helper function, takes part of
1845         work from add_psymbol_to_list - initialises partial symbol and stashes
1846         it in objfile's cache.
1847         (append_psymbol_to_list): New helper function, takes other part of
1848         work from add_psymbol_to_list - adds partial symbol to the given list.
1849         (add_psymbol_to_list): Call helper functions instead of doing work
1850         here. If adding to global list, do not duplicate partial symbols in the
1851         partial symtab.
1852
1853 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
1854
1855         * breakpoint.c (print_exception_catchpoint): Put 'exception' back to
1856         'exception caught|thrown' message.
1857
1858 2008-06-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
1859
1860         * Makefile.in: Update dependencies.
1861         * dwarf2expr.c: New include "gdb_assert.h".
1862         (new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
1863         (dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
1864         (execute_stack_op): Error out on too large RECURSION_DEPTH.
1865         Increase/decrease RECURSION_DEPTH around the function.
1866
1867 2008-06-05  Daniel Jacobowitz  <dan@codesourcery.com>
1868
1869         * remote.c (get_offsets): Handle a single segment.
1870         * symfile.c (symfile_map_offsets_to_segments): Allow more bases
1871         than segments.
1872
1873 2008-06-03  Daniel Jacobowitz  <dan@codesourcery.com>
1874
1875         * solib-svr4.c (struct lm_info): Add lm_addr.
1876         (main_lm_addr): New.
1877         (svr4_default_sos): Set lm_addr.
1878         (svr4_current_sos): Set lm_addr and main_lm_addr.
1879         (svr4_fetch_objfile_link_map): Rewrite.
1880         (svr4_clear_solib): Clear main_lm_addr.
1881
1882 2008-06-03  Michael Snyder  <msnyder@redhat.com>
1883             Joseph Myers  <joseph@codesourcery.com>
1884
1885         * mips-tdep.c (mips_eabi_return_value): Replace stub that always
1886         returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
1887
1888 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
1889
1890         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.
1891
1892 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
1893
1894         * m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.
1895
1896 2008-06-01  Joel Brobecker  <brobecker@adacore.com>
1897
1898         * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
1899         treat pointers in data space as function descriptors if the
1900         target address is also in the data space.
1901
1902 2008-05-30  Joel Brobecker  <brobecker@adacore.com>
1903
1904         * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
1905         the trad-frame register value for the SP register.
1906
1907 2008-05-29  Mark Kettenis  <kettenis@gnu.org>
1908
1909         * sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.
1910
1911 2008-05-28  Joel Brobecker  <brobecker@adacore.com>
1912
1913         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
1914         that identifies function descriptors outside of the .opd section.
1915
1916 2008-05-28  Aleksandar Ristovski  <aristovski@qnx.com>
1917
1918         * breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
1919         temporary catchpoints.  In MI add missing fields 'reason', 'disp',
1920         'bkptno'.
1921         (print_mention_exception_catchpoint): Add 'Temporary' for temporary
1922         catchpoints.
1923         (handle_gnu_v3_exceptions): Use tempflag.
1924
1925 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
1926
1927         Refactor varobj_update interface.
1928         * varobj.c (varobj_update): Report changes as vector.  Also
1929         return not just a list of varobj, but a list of special structures
1930         that tell what exactly has changed.
1931         * varobj.h (enum varobj_update_error): Rename to
1932         varobj_scope_status.
1933         (struct varobj_update_result_t): New.
1934         (varobj_update): Adjust prototype.
1935         * mi/mi-cmd-var.c: Adjust for changes.
1936
1937 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
1938
1939         * varobj.c (varobj_update): Fix comment typo.
1940         Fix indentation.
1941
1942 2008-05-26  Joel Brobecker  <brobecker@adacore.com>
1943
1944         Set the symtab field of symbols read from ECOFF debugging entries.
1945         * mdebugread.c (add_symbol): Add new parameter symtab.
1946         (parse_symbol): Update calls to add_symbol throughout.
1947
1948 2008-05-27  Andreas Schwab  <schwab@suse.de>
1949
1950         * symtab.h (enum address_class): Remove LOC_REGPARM and
1951         LOC_COMPUTED_ARG.
1952         (struct symbol): Add is_argument.
1953         (SYMBOL_IS_ARGUMENT): Define.
1954
1955         * ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
1956         * buildsym.c (finish_block): Likewise.
1957         * stack.c (print_frame_args, print_block_frame_locals)
1958         (print_frame_arg_vars): Likewise.
1959         * symtab.c (lookup_block_symbol): Likewise.
1960         * tracepoint.c (add_local_symbols): Likewise.
1961         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
1962
1963         * coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
1964         * dwarf2read.c (new_symbol): Likewise.
1965         * mdebugread.c (parse_symbol): Likewise.
1966         * stabsread.c (define_symbol): Likewise.
1967
1968         * ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
1969         and LOC_COMPUTED_ARG.
1970         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
1971         * ax-gdb.c (gen_var_ref): Likewise.
1972         * eval.c (evaluate_subexp_for_address): Likewise.
1973         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
1974         * m2-exp.y (yylex): Likewise.
1975         * printcmd.c (address_info): Likewise.
1976         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
1977         * tracepoint.c (collect_symbol, scope_info): Likewise.
1978
1979 2008-05-24  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
1980
1981         * gdbarch.sh: Added new gdbarch struct
1982         core_regset_sections.
1983         * gdbarch.c: Refreshed.
1984         * gdbarch.h: Refreshed.
1985         * regset.h (core_regset_section): Declared.
1986         * linux-nat.c (linux_nat_do_thread_registers): Added
1987         support for the new gdbarch struct core_regset_sections.
1988         * utils.c (host_address_to_string): New function.
1989         * defs.h (host_address_to_string): New prototype.
1990         * i386-linux-tdep.c (i386_regset_rections): New register
1991         sections list for i386.
1992           (i386_linux_init_abi): Initialized new gdbarch struct
1993           core_regset_sections.
1994         * Makefile.in: Updated to reflect dependency changes.
1995         * ppc-linux-tdep.c (ppc_regset_sections): Register
1996         sections list for ppc.
1997           (ppc_linux_init_abi): Initialized new gdbarch struct
1998           core_regset_sections
1999
2000 2008-05-24  Andreas Schwab  <schwab@suse.de>
2001
2002         * linespec.c (decode_objc): Save current language around call to
2003         get_selected_block.
2004
2005 2008-05-23  Joel Brobecker  <brobecker@adacore.com>
2006
2007         * valprint.h (get_array_bounds): Renames get_array_low_bound.
2008         * valprint.c (get_array_bounds): Renames get_array_low_bound.
2009         Return the proper bound value if the array index type is an
2010         enumerated type. Compute the high bound if requested.
2011         (val_print_array_elements): Handle the case when the array
2012         element has a null size.
2013         * ada-valprint.c (print_optional_low_bound): Add handling
2014         for empty arrays or arrays of zero-size elements.
2015         (ada_val_print_array): New function, extracted out from
2016         ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
2017         handle empty arrays and arrays of zero-size elements.
2018         (ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
2019         code by call to ada_val_print_array.
2020         (ada_value_print): Remove handling of null array.  The handling
2021         was incomplete and is now better handled by ada_val_print_array.
2022
2023 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
2024
2025         * annotate.c (annotate_source, annotate_frame_begin): Replace
2026         deprecated_print_address_numeric with paddress.
2027         * cli/cli-cmds.c (list_command, edit_command): Likewise.
2028         * tui/tui-stack.c (tui_make_status_line): Likewise.
2029
2030         * defs.h (deprecated_print_address_numeric): Remove.
2031         * printcmd.c (deprecated_print_address_numeric): Remove.
2032         * maint.c (maint_print_section_info): Fix comment.
2033
2034 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
2035
2036         * valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
2037         print_binary_chars, print_char_chars): Add byte_order parameter and
2038         replace gdbarch_byte_order.
2039         (print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
2040         expressions and remove them.  Remove unused TWO_TO_FOURTH.
2041         (val_print_type_code_int): Introduce gdbarch_byte_order to get at the
2042         endianness.  Update call to print_hex_chars.
2043         * valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
2044         print_binary_chars, print_char_chars): Add byte_order parameter.
2045         * printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
2046         get at the endianness.  Update print_*_char calls to use byte_order.
2047
2048 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
2049
2050         * symtab.h (struct symbol): Make "aux_value" member a void pointer
2051         instead of a union.
2052         (SYMBOL_LOCATION_BATON): Update.
2053
2054 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
2055
2056         * symtab.h (enum address_class): Remove LOC_BASEREG and
2057         LOC_BASEREG_ARG.
2058         (struct symbol): Remove "basereg" member of "aux_value" union.
2059         (SYMBOL_BASEREG): Remove.
2060
2061         * ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
2062         or LOC_BASEREG_ARG.
2063         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
2064         (ada_add_block_symbols): Likewise.
2065         * ax-gdb.c (gen_var_ref): Likewise.
2066         * buildsym.c (finish_block): Likewise.
2067         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
2068         * m2-exp.y (yylex): Likewise.
2069         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
2070         * printcmd.c (address_info): Likewise.
2071         * stack.c (print_frame_args, print_block_frame_locals): Likewise.
2072         (print_frame_arg_vars): Likewise.
2073         * symmisc.c (print_symbol): Likewise.
2074         * symtab.c (lookup_block_symbol): Likewise.
2075         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
2076         (scope_info): Likewise.
2077
2078 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
2079
2080         * symtab.h (enum address_class): Remove LOC_LOCAL_ARG.
2081
2082         * ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
2083         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
2084         (ada_add_block_symbols): Likewise.
2085         * ax-gdb.c (gen_var_ref): Likewise.
2086         * buildsyms.c (finish_block): Likewise.
2087         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
2088         * m2-exp.y (yylex): Likewise.
2089         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
2090         * printcmd.c (address_info): Likewise.
2091         * stack.c (print_frame_args, print_frame_arg_vars): Likewise.
2092         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
2093         * symtab.c (lookup_block_symbol): Likewise.
2094         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
2095         (scope_info): Likewise.
2096
2097 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
2098
2099         * symtab.h (enum address_class): Remove LOC_INDIRECT and
2100         LOC_HP_THREAD_LOCAL_STATIC.
2101
2102         * findvar.c (symbol_read_needs_frame, read_var_value): Do not
2103         handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
2104         (read_var_value): Likewise.
2105         * buildsym.c (finish_block): Likewise.
2106         * objfiles.c (objfile_relocate): Likewise.
2107         * printcmd.c (address_info): Likewise.
2108         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
2109         * tracepoint.c (scope_info): Likewise.
2110
2111 2008-05-21 Markus Deuling  <deuling@de.ibm.com>
2112            Maxim Grigoriev  <maxim2405@gmail.com>
2113
2114         * xtensa-tdep.c (xtensa_read_register): Remove.
2115         (xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
2116         argument litbase to call0_frame_cache().
2117         (call0_track_op, call0_analyze_prologue)
2118         (call0_frame_cache): Use extra argument litbase.
2119
2120 2008-05-21  Joel Brobecker  <brobecker@adacore.com>
2121
2122         * infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
2123
2124 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
2125
2126         * frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
2127
2128 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
2129
2130         * alpha-mdebug-tdep.c: Include "trad-frame.h".
2131         (struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
2132         struct trad_frame_saved_reg *.
2133         (alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
2134         trad_frame_alloc_saved_regs.  Update accesses.  Record previous
2135         value of SP as being vfp.
2136         (alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
2137         * Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
2138
2139 2008-05-21  Markus Deuling  <deuling@de.ibm.com>
2140
2141         * score-tdep.c (score_print_insn): Get the current endianess from
2142         disassemble_info instead of gdbarch_byte_order.
2143
2144 2008-05-21  Pedro Alves  <pedro@codesourcery.com>
2145
2146         * frame.c (get_prev_frame_1): Build frame id before setting
2147         this_frame->prev_p, not after.
2148
2149 2008-05-21  Nick Roberts  <nickrob@snap.net.nz>
2150
2151         * annotate.c (annotate_new_thread): New function for new-thread
2152         annotation.
2153         * annotate.h: (annotate_new_thread): New extern.
2154         * thread.c (add_thread_with_info): Use it.
2155         * Makefile.in (thread.o): Add dependency on annotate.h.
2156
2157 2008-05-20  Joel Brobecker  <brobecker@adacore.com>
2158
2159         * win32-nat.c (win32_wait): Block the control-c event while
2160         waiting for a debug event.
2161
2162 2008-05-19  Pedro Alves  <pedro@codesourcery.com>
2163
2164         * symtab.h (lookup_symbol_in_language): Update comment.
2165         * symtab.c (lookup_symbol_aux_block): Update comment.
2166         * ada-lang.c (ada_lookup_symbol_list): Update comment.
2167
2168 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
2169
2170         * symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
2171         (lookup_symbol): Likewise.
2172         * symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
2173         (lookup_symbol): Likewise.
2174         (search_symbols): Update.
2175
2176         * linespec.c (find_methods, collect_methods): Update.
2177         (add_matching_methods, add_constructors): Update.
2178         (decode_compound, decode_dollar, decode_variable): Update.
2179         (lookup_prefix_sym): Update.
2180
2181         (symbol_found): Remove SYM_SYMTAB parameter.
2182         Use SYMBOL_SYMTAB (sym) instead.
2183
2184         * gdbtypes.c (lookup_typename): Update.
2185         (lookup_struct, lookup_union, lookup_enum): Update.
2186         (lookup_template_type): Update.
2187         (check_typedef): Update.
2188         * language.c (lang_bool_type): Update.
2189         * mdebugread.c (parse_procedure): Update.
2190         * mi/mi-cmd-stack.c (list_args_or_locals): Update.
2191         * parse.c (write_dollar_variable): Update.
2192         * printcmd.c (address_info): Update.
2193         * source.c (select_source_symtab): Update.
2194         * stack.c (print_frame_args, print_frame_arg_vars): Update.
2195         * valops.c (find_function_in_inferior): Update.
2196         (value_struct_elt_for_reference): Update.
2197         * value.c (value_static_field, value_fn_field): Update.
2198
2199         * alpha-mdebug-tdep.c (find_proc_desc): Update.
2200         * arm-tdep.c (arm_skip_prologue): Update.
2201         * mt-tdep.c (mt_skip_prologue): Update.
2202         * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
2203
2204         * ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
2205         * ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
2206         (add_defn_to_vec): Likewise.
2207         (ada_add_block_symbols): Likewise.
2208         (lookup_cached_symbol, cache_symbol): Likewise.
2209         (standard_lookup): Update.
2210         (ada_lookup_symbol_list): Update.
2211
2212         * c-valprint.c (c_val_print): Update.
2213         * cp-support.c (cp_lookup_rtti_type): Update.
2214         * jv-lang.c (java_lookup_class, get_java_object_type): Update.
2215         * objc-lang.c (lookup_struct_typedef, find_imps): Update.
2216         * p-valprint.c (pascal_val_print): Update.
2217         * scm-lang.c (scm_lookup_name): Update.
2218
2219         * c-exp.y: Update.
2220         * f-exp.y: Update.
2221         * jv-exp.y: Update.
2222         * m2-exp.y: Update.
2223         * objc-exp.y: Update.
2224         * p-exp.y: Update.
2225
2226 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
2227
2228         * language.h (struct language_defn): Remove SYMTAB parameter from
2229         la_lookup_symbol_nonlocal callback function pointer.
2230
2231         * ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
2232         (ada_lookup_encoded_symbol): Likewise.
2233         * ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
2234         Always call fixup_symbol_section.
2235         (ada_lookup_symbol): Remove SYMTAB parameter.
2236         (ada_lookup_symbol_nonlocal): Likewise.
2237         * ada-exp.y (write_object_renaming): Update.
2238         (find_primitive_type): Likewise.
2239
2240         * cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
2241         (cp_lookup_symbol_namespace): Likewise.
2242         * cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
2243         (lookup_symbol_file): Likewise.
2244         (lookup_possible_namespace_symbol): Likewise.
2245         (cp_lookup_symbol_nonlocal): Likewise.
2246         (cp_lookup_symbol_namespace): Likewise.
2247         (cp_lookup_nested_type): Update.
2248
2249         * scm-valprint.c (scm_inferior_print): Update.
2250         * valops.c (value_maybe_namespace_elt): Update.
2251
2252         * solist.h (struct target_so_ops): Remove SYMTAB parameter from
2253         lookup_lib_global_symbol callback function pointer.
2254         (solib_global_lookup): Remove SYMTAB parameter.
2255         * solib.c (solib_global_lookup): Remove SYMTAB parameter.
2256         * solib-svr4.c (elf_lookup_lib_symbol): Likewise.
2257
2258         * symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
2259         (lookup_symbol_static): Likewise.
2260         (lookup_symbol_global): Likewise.
2261         (lookup_symbol_aux_block): Likewise.
2262         (lookup_global_symbol_from_objfile): Likewise.
2263         * symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
2264         (lookup_symbol_aux_local): Likewise.
2265         (lookup_symbol_aux_block): Likewise.
2266         (lookup_symbol_aux_symtabs): Likewise.
2267         (lookup_symbol_aux_psymtabs): Likewise.
2268         (lookup_global_symbol_from_objfile): Likewise.
2269         (basic_lookup_symbol_nonlocal): Likewise.
2270         (lookup_symbol_static): Likewise.
2271         (lookup_symbol_global): Likewise.
2272
2273         (lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
2274
2275 2008-05-17  Pedro Alves  <pedro@codesourcery.com>
2276
2277         * remote.c (init_extended_remote_ops): Fix typo.
2278
2279 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
2280
2281         * NEWS: Mention new DICOS x86 target configuration.
2282
2283 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
2284             Ulrich Weigand  <uweigand@de.ibm.com>
2285
2286         * minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
2287         * symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
2288
2289         * symtab.c (fixup_section): Remove prototype.  Add ADDR parameter;
2290         use it instead of ginfo->value.address.  Look up minimal symbol by
2291         address and name.  Assume OBJFILE is non-NULL.
2292         (fixup_symbol_section): Ensure we always have an objfile to look
2293         into.  Extract and pass to fixup_section the symbol's address that
2294         will match the minimal symbol's address.
2295         (fixup_psymbol_section): Likewise.
2296
2297         (find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
2298         overlays and the addrmap returned the wrong section.
2299
2300         * dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
2301         calling fixup_symbol_section.
2302
2303 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
2304
2305         * minsyms.c: Include "target.h".
2306         (find_solib_trampoline_target): Handle minimal symbols pointing
2307         to function descriptors as well.
2308         * Makefile.in (minsyms.o): Update dependencies.
2309
2310         * ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
2311         (ppc64_standard_linkage1): ... this.  Fix optional instructions.
2312         (PPC64_STANDARD_LINKAGE_LEN): Rename to ...
2313         (PPC64_STANDARD_LINKAGE1_LEN): ... this.
2314         (ppc64_standard_linkage2, ppc64_standard_linkage3): New.
2315         (PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
2316         (ppc64_standard_linkage_target): Rename to ...
2317         (ppc64_standard_linkage1_target): ... this.
2318         (ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
2319         (ppc64_skip_trampoline_code): Support three variants of standard
2320         linkage stubs.  Call find_solib_trampoline_target to handle
2321         glink stubs.
2322
2323 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
2324
2325         * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
2326         ppc64_sysv_abi_adjust_breakpoint_address.
2327         * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
2328         * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
2329
2330 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
2331
2332         * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
2333         (ppc_linux_init_abi): Install find_solib_trampoline_target instead
2334         of ppc_linux_skip_trampoline_code.
2335
2336 2008-05-15  Daniel Jacobowitz  <dan@codesourcery.com>
2337
2338         * gdbarch.sh: Delete dwarf_reg_to_regnum.
2339         * gdbarch.c, gdbarch.h: Regenerated.
2340         * amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
2341         hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
2342         s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
2343
2344 2008-05-15  Pedro Alves  <pedro@codesourcery.com>
2345
2346         * linux-nat.c (trap_ptid): Delete.
2347         (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
2348         Adjust.
2349         * linux-thread-db.c (thread_db_wait): Adjust.
2350
2351 2008-05-15  Joel Brobecker  <brobecker@adacore.com>
2352
2353         * linespec.c (decode_line_1): Fix a couple of comments.
2354
2355 2008-05-15  Alan Modra  <amodra@bigpond.net.au>
2356
2357         * dbxread.c: Formatting.
2358         (INTERNALIZE_SYMBOL): Init n_other.
2359         (set_namestring): Take pointer to nlist arg rather than struct
2360         copy.  Update all callers.
2361
2362 2008-05-15  Andreas Schwab  <schwab@suse.de>
2363
2364         * Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
2365         (dwarf2read.o): Add $(addrmap_h).
2366
2367 2008-05-14  Ulrich Weigand  <uweigand@de.ibm.com>
2368
2369         * ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
2370         (ppc64_linux_convert_from_func_ptr_addr): ... to this.  No longer try
2371         to handle ppc32 PLT entries.
2372         (ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
2373         only on ppc64.
2374
2375 2008-05-14  Daniel Jacobowitz  <dan@codesourcery.com>
2376
2377         * elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
2378         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
2379         lookup_minimal_symbol_by_pc_section.  Prefer trampolines if requested.
2380         (lookup_minimal_symbol_by_pc_section): Use
2381         lookup_minimal_symbol_by_pc_section_1.
2382         (lookup_solib_trampoline_symbol_by_pc): Likewise.
2383
2384 2008-05-13  Joel Brobecker  <brobecker@adacore.com>
2385
2386         * findcmd.c: Add #include "gdb_stdint.h".
2387         * Makefile.in (findcmd.o): Update dependencies.
2388
2389 2008-05-11  David S. Miller  <davem@davemloft.net>
2390
2391         * sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
2392         long double size override, Linux does use 128-bit now.
2393
2394         * sparc-linux-tdep.c (PSR_SYSCALL): Define.
2395         (sparc_linux_write_pc): New function.
2396         (sparc32_linux_init_abi): Register it.
2397         * sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
2398         (sparc64_linux_write_pc): New function.
2399         (sparc64_linux_init_abi): Register it.
2400
2401         * sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
2402         dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
2403
2404 2008-05-11  Ulrich Weigand  <uweigand@de.ibm.com>
2405
2406         * rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
2407         and info.tdep_info before calling gdbarch_init_osabi.
2408
2409 2008-05-09  Joel Brobecker  <brobecker@adacore.com>
2410
2411         * ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
2412         the type of the right hand side of the assignment to the type
2413         of the left hand side if the left hand side is a convenience
2414         variable.
2415
2416 2008-05-09  Ulrich Weigand  <uweigand@de.ibm.com>
2417
2418         * NEWS: Mention gdbserver bi-arch capability.
2419
2420 2008-05-09  Doug Evans  <dje@google.com>
2421
2422         New "find" command.
2423         * NEWS: Document find command and qSearch:memory packet.
2424         * Makefile.in (SFILES): Add findcmd.c.
2425         (COMMON_OBJS): Add findcmd.o.
2426         (findcmd.o): New rule.
2427         * findcmd.c: New file.
2428         * target.h (target_ops): New member to_search_memory.
2429         (simple_search_memory): Declare.
2430         (target_search_memory): Declare.
2431         * target.c (simple_search_memory): New fn.
2432         (target_search_memory): New fn.
2433         * remote.c (PACKET_qSearch_memory): New packet kind.
2434         (remote_search_memory): New fn.
2435         (init_remote_ops): Init to_search_memory.
2436         (init_extended_remote_ops): Ditto.
2437         (_initialize_remote): Add qSearch:memory packet config command.
2438
2439 2008-05-09  Eli Zaretskii  <eliz@gnu.org>
2440
2441         * thread.c (_initialize_thread): Don't use commas and periods in
2442         first line of doc string of "set/show print thread-events".
2443
2444 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
2445
2446         * alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
2447         Update for unwinder changes.
2448
2449 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
2450
2451         * frame.c (get_frame_base_address, get_frame_locals_address)
2452         (get_frame_args_address): Pass the correct frame when calling
2453         frame_base_find_by_frame.
2454
2455 2008-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
2456
2457         * remote.c (extended_remote_attach_1): Call target_find_description.
2458
2459 2008-05-08  Daniel Jacobowitz  <dan@codesourcery.com>
2460
2461         * remote.c (extended_remote_create_inferior_1): Clean up
2462         before marking the target running.
2463
2464 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
2465
2466         * hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
2467         changes.
2468
2469 2008-05-07  Joel Brobecker  <brobecker@adacore.com>
2470
2471         * sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
2472         sparc64-sol2-tdep.c: Update for unwinder changes.
2473
2474 2008-05-07  Daniel Jacobowitz  <dan@codesourcery.com>
2475
2476         * cp-support.c (mangled_name_to_comp): Initialize storage.
2477         (unqualified_name_from_comp): Likewise.
2478
2479 2008-05-07  Jie Zhang  <jie.zhang@analog.com>
2480
2481         * remote.c (remote_insert_breakpoint): Call get_remote_state
2482         after gdbarch_breakpoint_from_pc is called.
2483         (remote_insert_hw_breakpoint): Likewise.
2484
2485 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
2486
2487         * valprint.c (val_print): Add new language parameter and use it
2488         instead of using the current_language. Update calls to val_print
2489         throughout.
2490         (common_val_print): Add new langauge parameter and pass it to
2491         val_print.
2492         * value.h (struct language_defn): Add opaque declaration.
2493         (val_print, common_val_print): Update declarations.
2494         * stack.c (print_frame_args): Update call to common_val_print
2495         using the appropriate language.
2496         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
2497         * c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
2498         mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
2499         scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
2500         #include "language.h" if necessary.
2501         Update calls to val_print and common_val_print.
2502         * Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
2503         Update dependencies.
2504
2505 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
2506
2507         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
2508         pointing inside a non-executable section as function descriptors.
2509
2510 2008-05-06  Pedro Alves  <pedro@codesourcery.com>
2511
2512         * inf-loop.c (inferior_event_handler): Run all continuations and
2513         print any language change before running the breakpoint commands.
2514
2515 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
2516
2517         * frame-unwind.c (frame_unwind_got_bytes): New function.
2518         * frame-unwind.h (frame_unwind_got_bytes): Add declaration.
2519         * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
2520         for unwinder changes.
2521
2522 2008-05-05  Doug Evans  <dje@google.com>
2523
2524         * NEWS: Mention new /m modifier for disassemble command.
2525         * cli/cli-cmds.c (print_disassembly): New function.
2526         (disassemble_current_function): New function
2527         (disassemble_command): Recognize /m modifier, print mixed
2528         source+assembly.
2529         (init_cli_cmds): Update disassemble help text.
2530
2531 2008-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
2532
2533         * xtensa-tdep.c: Update for unwinder changes.
2534
2535 2008-05-05  Andreas Schwab  <schwab@suse.de>
2536
2537         Update m68k port for unwinder changes.
2538         * m68k-tdep.c (m68k_frame_cache): Expect this_frame.
2539         (m68k_frame_this_id, m68k_frame_prev_register): Update signature.
2540         (m68k_frame_unwind): Use default_frame_sniffer.
2541         (m68k_frame_sniffer): Remove.
2542         (m68k_frame_base_address): Expect this_frame.
2543         (m68k_dummy_id): Renamed from m68k_unwind_dummy_id.  Expect
2544         this_frame.
2545         (m68k_gdbarch_init): Use set_gdbarch_dummy_id,
2546         dwarf2_append_unwinders, and frame_unwind_append_unwinder.
2547         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
2548         parameter instead of pc value.
2549         (m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
2550         Expect this_frame.
2551         (m68k_linux_sigtramp_frame_this_id)
2552         (m68k_linux_sigtramp_frame_prev_register)
2553         (m68k_linux_sigtramp_frame_sniffer): Update signature.
2554         (m68k_linux_sigtramp_frame_unwind): Use
2555         m68k_linux_sigtramp_frame_sniffer.
2556         (m68k_linux_init_abi): Use frame_unwind_append_unwinder.
2557
2558         * m68klinux-nat.c (store_register): Fix typo.
2559
2560 2008-05-05  Pedro Alves  <pedro@codesourcery.com>
2561
2562         * infcmd.c (step_1): Put thread id on the stack to avoid possible
2563         NULL dereferencing.
2564
2565 2008-05-05  Luis Machado  <luisgpm@br.ibm.com>
2566
2567         * symfile.c (reread_symbols): Update objfile's entry point.
2568
2569 2008-05-05  Aleksandar Ristovski  <aristovski@qnx.com>
2570             Joel Brobecker  <brobecker@adacore.com>
2571
2572         * ada-lang.c: Update throughout to use symbol_matches_domain
2573         instead of matching the symbol domain explictly.
2574         * dwarf2read.c (add_partial_symbol): Do not add new psym for
2575         STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
2576         class as typedefs. See lookup_partial_symbol function.
2577         (new_symbol): Similar to add_partial_symbol, do not create
2578         symbol for the typedef. See lookup_block_symbol.
2579         * symtab.c (symbol_matches_domain): New function, takes care
2580         of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
2581         (lookup_partial_symbol): Use symbol_matches_domain to see if the
2582         found psym domain matches the given domain.
2583         (lookup_block_symbol): Likewise.
2584
2585 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
2586
2587         * top.c (command_line_handler_continuation): Remove.
2588         (execute_command): Do not install the above.
2589
2590 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
2591
2592         * inf-loop.c (inferior_event_handler): Call bpstat_do_action,
2593         and catch all exceptions from it.
2594         * top.c (command_line_handler_continuation): Don't
2595         call bpstat_do_action here.
2596
2597 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
2598
2599         * dwarf2read.c (struct dwarf2_cu): Add type_hash.
2600         (struct die_info): Remove type.
2601         (read_type_die, read_typedef, read_base_type, read_subrange_type)
2602         (read_structure_type, read_enumeration_type, read_array_type)
2603         (read_tag_pointer_type, read_tag_ptr_to_member_type)
2604         (read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
2605         (read_tag_string_type, read_subroutine_type, read_set_type)
2606         (read_unspecified_type): Delete prototypes.  Remove check for
2607         already-loaded type.  Return the new type.
2608         (set_die_type): Return the new type.
2609         (reset_die_and_siblings_types): Delete.
2610         (load_comp_unit, load_full_comp_unit): Set type_hash.
2611         (process_queue): Remove call to reset_die_and_siblings_types.
2612         (process_die): Do not read most types here.  Use read_type_die
2613         for others.
2614         (read_func_scope, dwarf2_add_member_fn): Use read_type_die.
2615         (quirk_gcc_member_function_pointer): Return the new type.
2616         (process_structure_scope, process_enumeration_scope): Use
2617         get_die_type and read the DIE's type.
2618         (read_full_die): Do not initialize die->type.
2619         (tag_type_to_type): Use read_type_die.
2620         (read_type_die): Check for already defined types.  Return the
2621         type.
2622         (determine_prefix): Use get_die_type.
2623         (set_die_type): Return the type.
2624         (get_die_type): Take a CU argument.  Check for no type_hash.
2625
2626 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
2627
2628         * dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
2629         locals.
2630
2631 2008-05-04  Pedro Alves  <pedro@codesourcery.com>
2632
2633         * breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
2634         and bp_longjmp_resume breakpoints.
2635         (breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
2636         meaningful.
2637         (create_longjmp_breakpoint): Don't create bp_longjmp_resume
2638         breakpoints.  Create bp_longjmp breakpoints as momentary
2639         breakpoints.
2640         (enable_longjmp_breakpoint): Delete.
2641         (set_longjmp_breakpoint): New.
2642         (disable_longjmp_breakpoint): Delete.
2643         (delete_longjmp_breakpoint): New.
2644         (set_longjmp_resume_breakpoint): Delete.
2645         (set_momentary_breakpoint_at_pc): New.
2646         (breakpoint_re_set_one): Don't delete bp_longjmp and
2647         bp_longjmp_resume breakpoints.
2648         (breakpoint_re_set): Don't create longjmp and longjmp-resume
2649         breakpoints.
2650
2651         * infrun.c (step_resume_breakpoint): Add comment.
2652         (struct execution_control_state): Delete handling_longjmp member.
2653         (init_execution_control_state). Don't clear handling_longjmp.
2654         (context_switch): Don't context switch handling_longjmp.
2655         (handle_inferior_event): If handling a bp_longjmp breakpoint,
2656         create a bp_longjmp_resume breakpoint, and set it as current
2657         step_resume_breakpoint, then step over the longjmp breakpoint.  If
2658         handling a bp_longjmp_resume breakpoint, don't delete the longjmp
2659         breakpoint, delete the longjmp-resume breakpoint, and stop
2660         stepping.
2661         (currently_stepping): Remove handling_longjmp from expression.
2662         (insert_step_resume_breakpoint_at_sal): Update comment.
2663         (insert_longjmp_resume_breakpoint): New.
2664
2665         * breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
2666         (enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
2667         declarations.
2668         (set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
2669         (set_longjmp_resume_breakpoint): Delete declaration.
2670
2671         * gdbthread.h (save_infrun_state): Remove handling_longjmp
2672         parameter.
2673         (load_infrun_state): Delete *handling_longjmp parameter.
2674         * thread.c (save_infrun_state): Remove handling_longjmp parameter.
2675         Update body.
2676         (load_infrun_state): Delete *handling_longjmp parameter.  Update
2677         body.
2678
2679         * infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
2680         (delete_longjmp_breakpoint_cleanup): New.
2681         (step_1): Call set_longjmp_breakpoint instead of
2682         enable_longjmp_breakpoint.  Use delete_longjmp_breakpoint_cleanup
2683         instead of disable_longjmp_breakpoint_cleanup when making cleanup.
2684         (step_1_continuation): Pass thread id in the continuation args to
2685         step_once.
2686         (step_once): Add thread parameter.  Pass thread id the the
2687         continuation.
2688
2689 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
2690
2691         Set CU BASE_ADDRESS already from partial DIEs.
2692         * dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
2693         BASE_ADDRESS_TYPE.  Set these variables from DW_AT_LOW_PC and
2694         DW_AT_ENTRY_PC.  Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
2695         from these variables if it was still unset.
2696
2697         * Makefile.in: Update dependencies.
2698         * dwarf2read.c: Include "addrmap.h"
2699         (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
2700         (dwarf2_ranges_read): New prototype.
2701         (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
2702         Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
2703         HAS_RANGES_OFFSET, otherwise add there the contiguous range.
2704         (dwarf2_ranges_read): New parameter RANGES_PST, update the function
2705         comment for it.  Add the found ranges to RANGES_PST.  New variable
2706         BASEADDR, initialize it the common way.
2707         (dwarf2_get_pc_bounds): Update the caller for the new parameter.
2708         (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
2709         HAS_RANGES_OFFSET for the later processing.
2710         * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
2711         * symtab.c: Include "addrmap.h"
2712         (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
2713         Move the psymtab locator into ...
2714         (find_pc_sect_psymtab_closer): ... a new function.
2715
2716 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
2717
2718         * arch-utils.c (gdbarch_update_p): Use default values for
2719         info.abfd and info.target_desc if they are NULL.
2720         (gdbarch_from_bfd): Remove assertion.
2721         (set_gdbarch_from_file): Call gdbarch_find_by_info directly,
2722         using the current target description.
2723         (gdbarch_info_fill): Do not use default values for info->abfd
2724         and info->target_desc.
2725
2726 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
2727
2728         * symfile.c (reread_symbols): Reload EXEC_BFD on its change.
2729
2730 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
2731
2732         * inferior.h (read_pc_pid, write_pc_pid): Remove.
2733         * regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.
2734
2735         * regcache.c (read_pc_pid): Remove, replace by ...
2736         (regcache_read_pc): ... this function.
2737         (write_pc_pid): Remove, replace by ...
2738         (regcache_write_pc): ... this function.
2739         (read_pc, write_pc): Update.
2740
2741         * infrun.c (displaced_step_prepare): Replace read_pc_pid and
2742         write_pc_pid by regcache_read_pc and regcache_write_pc.
2743         (displaced_step_fixup): Likewise.
2744         (resume): Likewise.  Use regcache arch instead of current_gdbarch.
2745         (prepare_to_proceed): Likewise.
2746         (proceed): Likewise.
2747         (adjust_pc_after_break): Likewise.
2748         (handle_inferior_event): Likewise.
2749
2750         * linux-nat.c (cancel_breakpoint): Likewise.
2751         * linux-thread-db.c (check_event): Likewise.
2752         * aix-thread.c (aix_thread_wait): Likewise.
2753         * tracepoint.c (trace_dump_command): Likewise.
2754
2755 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
2756
2757         * dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
2758         SYMBOL_LOCATION_BATON.
2759
2760 2008-05-04  Vladimir Prus  <vladimir@codesourcery.com>
2761
2762         * target.h (struct target_ops): New field to_auxv_parse.
2763         * auxv.c (default_auxv_parse): New, renamed from previous
2764         target_auxv_parse.
2765         (target_auxv_parse): Try to call target method.  Fallback to
2766         default_auxv_parse if not found.
2767         * procfs.c (procfs_auxv_parse): New.
2768         (init_procfs_ops): On Solaris, in 64-bit mode, install
2769         procfs_auxv_parse.
2770
2771 2008-05-03  Adam Nemet  <anemet@caviumnetworks.com>
2772
2773         * symfile.c (add_symbol_file_command):  Use paddress rather than
2774         hex_string to print the address.
2775
2776 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
2777
2778         * rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
2779         return the null frame ID to terminate the backtrace.
2780
2781 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
2782
2783         * rs6000-tdep.c: Do not include "rs6000-tdep.h".
2784         (rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
2785         (SIG_FRAME_PC_OFFSET): Likewise.
2786         (SIG_FRAME_LR_OFFSET): Likewise.
2787         (SIG_FRAME_FP_OFFSET): Likewise.
2788         (rs6000_push_dummy_call): Likewise.
2789         (rs6000_return_value): Likewise.
2790         (rs6000_convert_from_func_ptr_addr): Likewise.
2791         (branch_dest, rs6000_software_single_step): Likewise.
2792         (deal_with_atomic_sequence): Rename to ...
2793         (ppc_deal_with_atomic_sequence): ... this.  Adapt all callers.
2794         Do not call branch_dest; inline required parts of that function.
2795         (rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
2796         with SYMBOL_LINKAGE_NAME.
2797         (struct reg, regsize): Delete.
2798         (read_memory_addr): Delete; inline into callers.
2799         (rs6000_skip_prologue): Move after skip_prologue.
2800         (skip_prologue): Remove prototype.
2801         (rs6000_gdbarch_init): Remove sysv_abi variable; perform all
2802         initialization as if this variable were true.  Do not install
2803         ppc64_sysv_abi_adjust_breakpoint_address.
2804
2805         * rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
2806         "gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
2807         and "breakpoint.h".
2808         (rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
2809         (SIG_FRAME_PC_OFFSET): Likewise.
2810         (SIG_FRAME_LR_OFFSET): Likewise.
2811         (SIG_FRAME_FP_OFFSET): Likewise.
2812         (rs6000_push_dummy_call): Likewise.
2813         (rs6000_return_value): Likewise.
2814         (rs6000_convert_from_func_ptr_addr): Likewise.
2815         (branch_dest, rs6000_software_single_step): Likewise.  Replace
2816         tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
2817         (rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
2818         rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
2819         Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
2820         Set tdep->lr_frame_offset.  Do not set tdep->text_segment_base.
2821
2822         * rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
2823         (AIX_TEXT_SEGMENT_BASE): New macro.
2824         * rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
2825         by AIX_TEXT_SEGMENT_BASE.
2826
2827         * ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
2828         (struct gdbarch_tdep): Remove text_segment_base member.
2829         * ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
2830         ppc64_sysv_abi_adjust_breakpoint_address.
2831
2832         * Makefile.in (rs6000-tdep.o): Update dependencies.
2833         (rs6000-aix-tdep.o): Likewise.
2834
2835 2008-05-03  Luis Machado  <luisgpm@br.ibm.com>
2836             Thiago Jung Bauermann  <bauerman@br.ibm.com>
2837
2838         * cli/cli-decode.c (lookup_cmd_1): Fix indentation.
2839         * doublest.c (convert_typed_floating): Fix typo in comment.
2840         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2841         * frame-unwind.h (frame_sniffer_ftype): Likewise.
2842         * frame.c (frame_unwind_address_in_block): Likewise.
2843         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
2844         * symtab.h (struct symbol): Likewise.
2845         * tramp-frame.h (struct trad_frame_cache): Likewise.
2846         * value.c (allocate_repeat_value): Likewise.
2847
2848 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
2849
2850         * infrun.c (handle_inferior_event): Do not insert breakpoints at
2851         TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).
2852
2853 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
2854
2855         * parse.c (parse_exp_in_context): Don't override
2856         expression_context_pc if get_selected_block returned a valid
2857         block.
2858
2859 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
2860
2861         * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
2862         * arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
2863         * breakpoint.c (args_for_catchpoint_enable, current_exception_event):
2864         Delete.
2865         * c-typeprint.c (c_type_print_base): Delete handling of template
2866         instantiations.
2867         * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
2868         (METHOD_PTR_TO_VOFFSET): Delete.
2869         * defs.h (QUIT_FIXME): Delete.
2870         * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
2871         (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
2872         * gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
2873         ninstantiations, and instantiations.
2874         (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
2875         (TYPE_FN_FIELD_INLINED): Delete.
2876         * srec.h (SREC_BINARY): Delete.
2877         * symtab.c (symbol_init_demangled_name): Delete.
2878         * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
2879         (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
2880         (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
2881         (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
2882         (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
2883         (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
2884         * target.h (enum thread_control_capabilities): Delete tc_switch.
2885         (target_can_switch_threads): Delete.
2886
2887 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
2888
2889         * Makefile.in (objfiles.o): Update.
2890         * exec.c (exec_set_section_address): Support p->addr != 0.
2891         * objfiles.c (objfile_relocate): Update exec_ops section
2892         addresses.
2893         * symfile.c (place_section): Move exec_set_section_address call...
2894         (default_symfile_offsets): ...to here.
2895
2896 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
2897
2898         * Makefile.in (ppc_linux_tdep_h): New macro.
2899         (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
2900         (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
2901         (powerpc_e500l_c): Likewise.
2902         (ppc-linux-nat.o): Update dependencies.
2903         (ppc-linux-tdep.o): Update dependencies.
2904         (rs6000-tdep.o): Update dependencies.
2905
2906         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
2907         (ppc_linux_svr4_fetch_link_map_offsets): Remove.
2908         (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
2909         (ppc_supply_reg, ppc_collect_reg): Add prototypes.
2910         (tdesc_powerpc_e500): Remove.
2911
2912         * rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
2913         and "features/rs6000/powerpc-altivec64.c".
2914         (ppc_supply_reg, ppc_collect_reg): Make global.
2915         (variants): Use tdesc_powerpc_32 for "powerpc" and
2916         tdesc_powerpc_altivec64 for "powerpc64".
2917         (_initialize_rs6000_tdep): Initialize AltiVec descriptions.
2918
2919         * ppc-linux-tdep.h: New file.
2920
2921         * ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
2922         Include "features/rs6000/powerpc-32l.c".
2923         Include "features/rs6000/powerpc-altivec32l.c".
2924         Include "features/rs6000/powerpc-64l.c".
2925         Include "features/rs6000/powerpc-altivec64l.c".
2926         Include "features/rs6000/powerpc-e500l.c".
2927         (ppc_linux_supply_gregset): New function.
2928         (ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
2929         (ppc32_linux_gregset): Use ppc_linux_supply_gregset.
2930         (ppc64_linux_gregset): Likewise.
2931         (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
2932         (ppc_linux_trap_reg_p): New function.
2933         (ppc_linux_write_pc): New function.
2934         (ppc_linux_core_read_description): New function.
2935         (ppc_linux_init_abi): Install ppc_linux_write_pc and
2936         ppc_linux_core_read_description.  Install orig_r3 and trap
2937         registers if present in the target description.
2938         (_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
2939
2940         * ppc-linux-nat.c: Include "ppc-linux-tdep.h".
2941         (PT_ORIG_R3, PT_TRAP): Define if necessary.
2942         (ppc_register_u_addr): Handle orig_r3 and trap registers.
2943         (fetch_ppc_registers): Likewise.
2944         (store_ppc_registers): Likewise.
2945         (store_register): Likewise.
2946         (ppc_linux_read_description): Check whether AltiVec is supported.
2947         Check whether inferior is 32-bit or 64-bit.  Return the appropriate
2948         Linux target description.
2949
2950         * features/Makefile (WHICH): Use rs6000/powerpc-32l and
2951         rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
2952         Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
2953         of rs6000/powerpc-64.  Use rs6000/powerpc-e500l instead of
2954         rs6000/powerpc-e500.  Update -expedite variables accordingly.
2955
2956         * features/rs6000/power-spe.xml: Use regnum 73 for "acc".
2957         * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
2958         * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
2959         * features/rs6000/powerpc-e500.c: Regenerate.
2960         * features/rs6000/powerpc-32.c: Regenerate.
2961         * features/rs6000/powerpc-64.c: Regenerate.
2962
2963         * features/rs6000/power-linux.xml: New file.
2964         * features/rs6000/power64-linux.xml: New file.
2965         * features/rs6000/powerpc-32l.xml: New file.
2966         * features/rs6000/powerpc-altivec32l.xml: New file.
2967         * features/rs6000/powerpc-64l.xml: New file.
2968         * features/rs6000/powerpc-altivec64l.xml: New file.
2969         * features/rs6000/powerpc-e500l.xml: New file.
2970         * features/rs6000/powerpc-32l.c: New (generated) file.
2971         * features/rs6000/powerpc-altivec32l.c: New (generated) file.
2972         * features/rs6000/powerpc-64l.c: New (generated) file.
2973         * features/rs6000/powerpc-altivec64l.c: New (generated) file.
2974         * features/rs6000/powerpc-e500l.xml: New (generated) file.
2975
2976         * regformats/reg-ppc.dat: Remove.
2977         * regformats/reg-ppc64.dat: Remove.
2978         * regformats/rs6000/powerpc-32.dat: Remove.
2979         * regformats/rs6000/powerpc-64.dat: Remove.
2980         * regformats/rs6000/powerpc-e500.dat: Remove.
2981         * regformats/rs6000/powerpc-32l.dat: New (generated) file.
2982         * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
2983         * regformats/rs6000/powerpc-64l.dat: New (generated) file.
2984         * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
2985         * regformats/rs6000/powerpc-e500l.dat: New (generated) file.
2986
2987 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
2988
2989         * thread.c (delete_thread): Call observer_notify_thread_exit.
2990         * mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
2991         thread_exit observer.
2992         (mi_thread_exit): New.
2993
2994 2008-05-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
2995
2996         * breakpoint.c (create_exception_catchpoint): Remove prototype
2997         for already deleted function.
2998         * breakpoint.h (ep_is_exception_catchpoint): Likewise.
2999         * frame.h (show_stack_frame): Remove prototype.
3000         * stack.c (show_stack_frame): Remove empty, unused function.
3001         * source.c (symtab_to_fullname, print_source_lines): Small fix
3002         in comment.
3003         * value.c (show_values): Update comments to mention "show values"
3004         command instead of "info history".
3005
3006 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
3007
3008         * linespec.c: Include "target.h".
3009         (minsym_found): Handle minimal symbols pointing to function
3010         descriptors.  Use find_function_start_pc.
3011         * minsyms.c (msymbol_objfile): New function.
3012         * parse.c (write_exp_msymbol): Handle minimal symbols pointing
3013         to function descriptors.
3014         * symtab.c (fixup_section): Only use minimal symbol at the same
3015         address to determine section of a symbol.
3016         (find_function_start_pc): New function.
3017         (find_function_start_sal): Use it.
3018         * symtab.h (msymbol_objfile): Add prototype.
3019         (find_function_start_pc): Likewise.
3020         * value.c: Include "objfiles.h".
3021         (value_fn_field): Handle minimal symbols pointing to function
3022         descriptors.
3023         * Makefile.in (linespec.o): Update dependencies.
3024         (value.o): Likewise.
3025
3026 2008-05-02  Joel Brobecker  <brobecker@adacore.com>
3027
3028         * ada-lang.c (unwrap_value): Handle the case where the "F" field
3029         inside a PAD type is a bitfield.
3030
3031 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
3032
3033         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
3034         TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
3035         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
3036         Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
3037         Allow typedefs when checking for function pointer arguments.
3038         Right-align small structs passed on the stack.
3039         (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
3040         TYPE_CODE_CHAR the same as TYPE_CODE_INT.
3041         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
3042
3043 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
3044
3045         * Makefile.in (arm-tdep.o): Update.
3046         * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
3047         (struct arm_per_objfile, arm_compare_mapping_symbols): New.
3048         (arm_pc_is_thumb): Use mapping symbols.
3049         (arm_objfile_data_cleanup, arm_record_special_symbol): New.
3050         (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
3051         (_initialize_arm_tdep): Initialize arm_objfile_data_key.
3052         * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
3053         * gdbarch.sh: Add record_special_symbol.
3054         * gdbarch.c, gdbarch.h: Regenerated.
3055         * objfiles.c (struct objfile_data): Add cleanup member.
3056         (register_objfile_data_with_cleanup): New function, from
3057         register_objfile_data.
3058         (register_objfile_data): Use it.
3059         (objfile_free_data): Call clear_objfile_data.
3060         (clear_objfile_data): Call cleanup functions.
3061         * objfiles.h (register_objfile_data_with_cleanup): Declare.
3062
3063 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
3064
3065         * objfiles.c (init_entry_point_info): Handle shared libraries.
3066
3067 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
3068
3069         * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
3070         lowest_pc.
3071
3072 2008-05-02  Jim Blandy  <jimb@codesourcery.com>
3073             Pedro Alves  <pedro@codesourcery.com>
3074
3075         Implement displaced stepping.
3076
3077         * gdbarch.sh (max_insn_length): New 'variable'.
3078         (displaced_step_copy, displaced_step_fixup)
3079         (displaced_step_free_closure, displaced_step_location): New
3080         functions.
3081         (struct displaced_step_closure): Add forward declaration.
3082         * gdbarch.c, gdbarch.h: Regenerated.
3083
3084         * arch-utils.c: #include "objfiles.h".
3085         (simple_displaced_step_copy_insn)
3086         (simple_displaced_step_free_closure)
3087         (displaced_step_at_entry_point): New functions.
3088         * arch-utils.h (simple_displaced_step_copy_insn)
3089         (simple_displaced_step_free_closure)
3090         (displaced_step_at_entry_point): New prototypes.
3091
3092         * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
3093         (I386_MAX_MATCHED_INSN_LEN): ... this.
3094         (i386_absolute_jmp_p, i386_absolute_call_p)
3095         (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
3096         (i386_displaced_step_fixup): New functions.
3097         (struct i386_insn, i386_match_insn): Update.
3098         (i386_gdbarch_init): Set gdbarch_max_insn_length.
3099         * i386-tdep.h (I386_MAX_INSN_LEN): New.
3100         (i386_displaced_step_fixup): New prototype.
3101         * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
3102         Register gdbarch_displaced_step_copy,
3103         gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
3104         and gdbarch_displaced_step_location functions.
3105
3106         * infrun.c (debug_displaced): New variable.
3107         (show_debug_displaced): New function.
3108         (struct displaced_step_request): New struct.
3109         (displaced_step_request_queue, displaced_step_ptid)
3110         (displaced_step_gdbarch, displaced_step_closure)
3111         (displaced_step_original, displaced_step_copy)
3112         (displaced_step_saved_copy, can_use_displaced_stepping): New
3113         variables.
3114         (show_can_use_displaced_stepping, use_displaced_stepping)
3115         (displaced_step_clear, cleanup_displaced_step_closure)
3116         (displaced_step_dump_bytes, displaced_step_prepare)
3117         (displaced_step_clear_cleanup, write_memory_ptid)
3118         (displaced_step_fixup): New functions.
3119         (resume): Call displaced_step_prepare.
3120         (proceed): Call read_pc once, and remember the value.  If using
3121         displaced stepping, don't remove breakpoints.
3122         (handle_inferior_event): Call displaced_step_fixup.  Add some
3123         debugging output.  When we try to step over a breakpoint, but get
3124         a signal to deliver to the thread instead, ensure the step-resume
3125         breakpoint is actually inserted.  If a thread hop is needed, and
3126         displaced stepping is enabled, don't remove breakpoints.
3127         (init_wait_for_inferior): Call displaced_step_clear.
3128         (_initialize_infrun): Add "set debug displaced" command.  Add
3129         "maint set can-use-displaced-stepping" command.  Clear
3130         displaced_step_ptid.
3131         * inferior.h (debug_displaced): Declare variable.
3132         (displaced_step_dump_bytes): Declare function.
3133
3134         * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
3135         dependencies.
3136
3137 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
3138
3139         * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
3140         (arm_force_mode_string, arm_show_fallback_mode)
3141         (arm_show_force_mode): New.
3142         (arm_pc_is_thumb): Honor fallback-mode and force-mode.  Use
3143         arm_frame_is_thumb.
3144         (_initialize_arm_tdep): Add "set arm fallback-mode"
3145         and "set arm force-mode".
3146         * NEWS: Document new commands.
3147
3148 2008-05-02  Andrew Stubbs  <andrew.stubbs@st.com>
3149
3150         * main.h (batch_silent): Declare.
3151         * event-top.c: Include main.h.
3152         (gdb_setup_readline): Remove extern batch_silent declaration.
3153         * infrun.c (normal_stop): Don't print source location when running in
3154         --batch-silent mode.
3155         * Makefile.in (event-top.o): Add main.h dependency.
3156
3157 2008-05-02  Andreas Schwab  <schwab@suse.de>
3158
3159         * target.h (struct target_ops): Add
3160         to_watchpoint_addr_within_range.
3161         (target_watchpoint_addr_within_range): New function.
3162         * target.c (update_current_target): Inherit
3163         to_watchpoint_addr_within_range, defaulting to
3164         default_watchpoint_addr_within_range.
3165         (default_watchpoint_addr_within_range): New function.
3166         (debug_to_watchpoint_addr_within_range): New function.
3167         (setup_target_debug): Set to_watchpoint_addr_within_range.
3168         * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
3169         New function.
3170         (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
3171         * breakpoint.c (watchpoints_triggered): Use
3172         target_watchpoint_addr_within_range.
3173
3174 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
3175
3176         * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
3177         (i[34567]86-*-dicos*, x86_64-*-dicos*):
3178         Set gdb_osabi to GDB_OSABI_DICOS.
3179
3180         * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
3181         * osabi.c (gdb_osabi_name): Add "DICOS".
3182
3183         * i386-dicos-tdep.c: New file.
3184
3185         * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
3186         (ALLDEPFILES): Add i386-dicos-tdep.c.
3187         (i386-dicos-tdep.o): New rule.
3188
3189 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
3190
3191         * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
3192         and register the fork's PTID as a thread.
3193
3194 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
3195
3196         PR gdb/1665
3197         * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
3198         assign its value to the breakpoint created.
3199         (create_breakpoints): Add breakpoint_ops argument and pass it
3200         to create_breakpoint call.
3201         (break_command_really): Add breakpoint_ops argument and pass/assign
3202         appropriately.
3203         (break_command_1): Pass NULL as ops argument.
3204         (set_breakpoint): Pass NULL as ops argument.
3205         (print_one_exception_catchpoint): Print <PENDING> if no loc available.
3206         (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
3207         catch and throw catchpoints.
3208
3209 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
3210
3211         PR gdb/2343
3212         * corelow.c (core_open): Use gdbarch_target_signal_from_host to
3213         translate signal numeric value from the target to GDB's enum
3214         target_signal.
3215         * gdbarch.c, gdbarch.h: Regenerated.
3216         * gdbarch.sh: Added two new functions target_signal_from_host and
3217         target_signal_to_host.
3218         * target.h (default_target_signal_from_host,
3219         default_target_signal_to_host): New functions - declarations.
3220         * signals/signals.c (struct gdbarch): New declaration.
3221         (default_target_signal_to_host, default_target_signal_from_host): New
3222         functions.
3223
3224 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
3225             Pedro Alves  <pedro@codesourcery.com>
3226
3227         Based on work by Jan Kratochvil <jan.kratochvil@redhat.com> and Jeff
3228         Johnston <jjohnstn@redhat.com>.
3229
3230         * NEWS: Mention attach to stopped process fix.
3231         * infcmd.c (detach_command, disconnect_command): Discard the thread
3232         list.
3233         * infrun.c (handle_inferior_event): Do not ignore non-SIGSTOP while
3234         attaching.  Use signal_stop_state.
3235         (signal_stop_state): Check stop_soon.
3236         * linux-nat.c (kill_lwp): Declare earlier.
3237         (pid_is_stopped, linux_nat_post_attach_wait): New.
3238         (lin_lwp_attach_lwp): Use linux_nat_post_attach_wait.  Update
3239         comments.
3240         (linux_nat_attach): Use linux_nat_post_attach_wait.
3241         (detach_callback, linux_nat_detach): Improve handling for signalled
3242         processes.
3243         (linux_nat_pid_to_str): Always print out the LWP ID if it differs
3244         from the process ID.
3245         * Makefile.in (infcmd.o): Update.
3246
3247 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
3248
3249         * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
3250         * arm-tdep.c (arm_frame_is_thumb): New.
3251         (arm_pc_is_thumb): Clarify comment.
3252         (thumb_analyze_prologue): Remove PC special case.
3253         (thumb_scan_prologue): Take a block_addr argument.  Use it for
3254         find_pc_partial_function.  Remove unused variables.
3255         (arm_scan_prologue): Use arm_frame_is_thumb.  Use the block address
3256         for find_pc_partial_function.  Remove PC special case.
3257         (arm_prologue_prev_register): Add special handling for PC and CPSR.
3258         (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
3259         (arm_get_next_pc): Use arm_frame_is_thumb.
3260         (arm_write_pc): Use CPSR_T instead of 0x20.
3261         (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
3262         * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
3263         (CPSR_T): Define.
3264         * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
3265         DWARF2_FRAME_REG_FN.
3266         * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
3267         DWARF2_FRAME_REG_FN.
3268         (struct dwarf2_frame_state_reg): Add FN to loc union.
3269
3270 2008-05-01  Nick Roberts  <nickrob@snap.net.nz>
3271
3272         * exec.c (print_section_info): Add missing '\n'.
3273
3274 2008-05-01  Vladimir Prus  <vladimir@codesourcery.com>
3275
3276         * thread.c (add_thread): Move observer call to ...
3277         (add_thread_silent): ... here.
3278
3279 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
3280
3281         * rs6000-tdep.c: Update for unwinder changes.
3282         * ppcobsd-tdep.c: Likewise.
3283
3284 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
3285
3286         * s390-tdep.c: Update for unwinder changes.
3287
3288 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
3289
3290         * spu-tdep.c: Update for unwinder changes.
3291
3292 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
3293
3294         * hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
3295         ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
3296         sparc64-linux-tdep.c: Update for unwinder changes.
3297
3298 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
3299
3300         * mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
3301         for unwinder changes.
3302         * mips-tdep.c: Likewise.
3303         (mips_stub_frame_cache): Unwind the ABI stack pointer, not the
3304         raw one.
3305
3306 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
3307
3308         * arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
3309         unwinder changes.
3310
3311 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
3312
3313         Update i386 and amd64 ports for unwinder changes.
3314
3315         * amd64-tdep.c (amd64_frame_cache): Expect this_frame.
3316         (amd64_frame_this_id, amd64_frame_prev_register): Update signature.
3317         (amd64_frame_unwind): Use default_frame_sniffer.
3318         (amd64_frame_sniffer): Delete.
3319         (amd64_sigtramp_frame_cache): Expect this_frame.
3320         (amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
3321         (amd64_sigtramp_frame_sniffer): Update signature.
3322         (amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
3323         (amd64_frame_base_address): Expect this_frame.
3324         (amd64_dummy_id): Renamed from amd64_unwind_dummy_id.  Expect
3325         this_frame.
3326         (amd64_init_abi): Use set_gdbarch_dummy_id and
3327         frame_unwind_append_unwinder.
3328         * i386-tdep.c (i386_frame_cache): Expect this_frame.
3329         (i386_frame_this_id, i386_frame_prev_register): Update signature.
3330         (i386_frame_unwind): Use default_frame_sniffer.
3331         (i386_frame_sniffer): Delete.
3332         (i386_sigtramp_frame_cache): Expect this_frame.
3333         (i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
3334         (i386_sigtramp_frame_sniffer): Update signature.
3335         (i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
3336         (i386_frame_base_address): Update signature.
3337         (i386_dummy_id): Rename from i386_unwind_dummy_id.  Expect this_frame.
3338         (i386_push_dummy_call): Update comment.
3339         (i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
3340         Expect this_frame.
3341         (i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
3342         and frame_unwind_append_unwinder.
3343         * amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
3344         amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
3345         i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
3346         i386nbsd-tdep.c: Update for unwinder changes.
3347
3348 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
3349
3350         * trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
3351         (trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
3352         this_frame.
3353         (trad_frame_get_prev_register, trad_frame_get_register): Update signature.
3354         * trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
3355         (trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
3356         signature.
3357         * tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
3358         this_frame.
3359         (tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
3360         Update signature.
3361         * tramp-frame.h (struct tramp_frame): Update signature of init.
3362         * Makefile.in (trad-frame.o): Update.
3363
3364 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
3365
3366         * dwarf2-frame.c (read_reg): Expect this_frame in the baton.
3367         (execute_stack_op): Put this_frame in the baton.
3368         (execute_cfa_program): Take this_frame.
3369         (struct dwarf2_frame_ops): Update comment for signal_frame_p.
3370         (dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
3371         (dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
3372         (dwarf2_frame_this_id): Adjust to work on this_frame.
3373         (dwarf2_signal_frame_this_id): Delete.
3374         (dwarf2_frame_prev_register): Update signature.  Use new frame
3375         unwind methods.
3376         (dwarf2_frame_sniffer): Update signature.  Expect this_frame.
3377         (dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
3378         dwarf2_frame_sniffer.
3379         (dwarf2_append_unwinders): New.
3380         (dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
3381         this_frame.
3382         * sparc-tdep.c (sparc32_dwarf2_struct_return_p)
3383         (sparc32_dwarf2_frame_init_reg): Expect this_frame.
3384         * cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
3385         * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
3386         * s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
3387         * sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
3388         * sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
3389         * dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
3390         (dwarf2_append_unwinders): Declare.
3391         (dwarf2_frame_base_sniffer): Update declaration.
3392         * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
3393         this_frame.
3394
3395 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
3396
3397         Convert frame unwinders to use the current frame and
3398         "struct value".
3399
3400         * frame.c (frame_debug): Make global.
3401         (get_frame_id): Pass this frame to unwinder routines.
3402         (frame_pc_unwind): Remove unused unwind->prev_pc support.
3403         (do_frame_register_read): Do not discard the return value of
3404         frame_register_read.
3405         (frame_register_unwind): Remove debug messages.  Use
3406         frame_unwind_register_value.
3407         (frame_unwind_register_value, get_frame_register_value): New
3408         functions.
3409         (create_new_frame, get_frame_base_address, get_frame_locals_address)
3410         (get_frame_args_address, get_frame_type): Pass this frame to
3411         unwinder routines.
3412         (frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
3413         functions.
3414         * frame.h: Update comments.
3415         (frame_debug, frame_unwind_register_value, get_frame_register_value)
3416         (frame_prepare_for_sniffer): Declare.
3417         * frame-unwind.h: Update comments and parameter names.
3418         (default_frame_sniffer): Declare.
3419         (frame_prev_register_ftype): Return a struct value *.
3420         (struct frame_unwind): Remove prev_pc member.
3421         (frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
3422         (frame_unwind_append_unwinder, frame_unwind_got_optimized)
3423         (frame_unwind_got_register, frame_unwind_got_memory)
3424         (frame_unwind_got_constant, frame_unwind_got_address): Declare.
3425         * frame-base.h: Update comments and parameter names.
3426         * valops.c (value_fetch_lazy): Use get_frame_register_value.  Iterate
3427         if necessary.  Add debugging output.
3428         * sentinel-frame.c (sentinel_frame_prev_register)
3429         (sentinel_frame_this_id): Update for new signature.
3430         (sentinel_frame_prev_pc): Delete.
3431         (sentinel_frame_unwinder): Remove prev_pc.
3432         * ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
3433         prev_pc.
3434         * libunwind-frame.c (libunwind_frame_unwind): Likewise.
3435         * frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
3436         (frame_unwind_append_sniffer): Delete.
3437         (frame_unwind_append_unwinder): New function.
3438         (frame_unwind_find_by_frame): Take this frame.  Only use sniffers
3439         from unwinders.  Use frame_prepare_for_sniffer.
3440         (default_frame_sniffer, frame_unwind_got_optimized)
3441         (frame_unwind_got_register, frame_unwind_got_memory)
3442         (frame_unwind_got_constant, frame_unwind_got_address): New functions.
3443         * dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
3444         (dummy_frame_prev_register, dummy_frame_this_id): Update for new
3445         signature.
3446         * gdbarch.sh: Replace unwind_dummy_id with dummy_id.
3447         * gdbarch.c, gdbarch.c: Regenerated.
3448         * frame-base.c (default_frame_base_address)
3449         (default_frame_locals_address, default_frame_args_address): Update
3450         for new signature.
3451         (frame_base_find_by_frame): Pass this frame to unwinder routines.
3452         * infcall.c (call_function_by_hand): Update comments.
3453         * Makefile.in (frame-unwind.o): Update dependencies.
3454
3455 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
3456
3457         * ada-lang.c (ada_value_primitive_packed_val): Only check
3458         value_lazy for memory lvals.
3459         * findvar.c (value_of_register_lazy): New function.
3460         (locate_var_value): Only check value_lazy for memory lvals.
3461         * valarith.c (value_subscripted_rvalue): Likewise.
3462         * valops.c (value_fetch_lazy): Handle both memory and register
3463         lvals.
3464         (search_struct_field, value_slice): Only check value_lazy for memory
3465         lvals.
3466         * value.c (struct value): Update comment for lazy.
3467         (value_primitive_field): Only check value_lazy for memory lvals.
3468         * value.h (value_lazy): Update comment.
3469         (value_of_register_lazy): Declare.
3470
3471 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
3472
3473         * corefile.c (reopen_exec_file): Close any open files.
3474
3475 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
3476
3477         * ia64-tdep.c (ia64_memory_remove_breakpoint): Set
3478         show_memory_breakpoints to 1 while reading the instruction bundle.
3479
3480 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
3481
3482         * gdbarch.sh: Document the return_value method. Explain that
3483         the FUNCTYPE parameter might be NULL.
3484         * gdbarch.h: Regenerated.
3485         * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
3486         type when calling using_struct_return, as this is unnecessary
3487         on this target.
3488
3489 2008-04-28  Joel Brobecker  <brobecker@adacore.com>
3490
3491         * terminal.h (create_tty_session): Fix return type.
3492
3493 2008-04-26  Vladimir Prus  <vladimir@codesourcery.com>
3494
3495         * mi/mi-interp.c (mi_new_thread): Quote the thread id.
3496
3497 2008-04-26  Joel Brobecker  <brobecker@adacore.com>
3498
3499         * breakpoint.c (condition_command, commands_from_control_command)
3500         (break_command_really): Minor reformatting.
3501
3502 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
3503
3504         * dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.
3505
3506 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
3507
3508         * amd64-tdep.c (amd64_get_longjmp_target): New.
3509         (amd64_init_abi): Register amd64_get_longjmp_target as
3510         gdbarch_get_longjmp_target callback.
3511         * i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
3512
3513 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
3514
3515         * breakpoint.h (enum bpstat_what_main_action): Delete
3516         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
3517
3518         * breakpoint.c (clrs): Delete.
3519         (bpstat_what): Update table.
3520
3521         * infrun.c (handle_inferior_event): Remove
3522         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
3523
3524 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
3525
3526         * mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
3527         Adjust all prototypes using mi_cmd_args_ftype to use
3528         mi_cmd_argv_ftype.
3529         (struct mi_cmd): Remove the args_func field.
3530         * mi/mi-cmds.c: Don't provide value for the args_func field.
3531         * mi/mi-main.c (mi_execute_async_cli_command)
3532         (mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
3533         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
3534         (mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
3535         (mi_cmd_exec_continue, mi_cmd_exec_interrupt)
3536         (mi_cmd_target_download): Adjust.
3537         (mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
3538         (mi_cmd_execute): Do not check for args_func.
3539         (mi_execute_async_cli_command): Adjust.
3540         * mi/mi-parse.c: Don't check for args_func.
3541
3542 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
3543
3544         * breakpoint.c (bpstat_check_location)
3545         (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
3546         New, extracted from bpstat_stop_status.
3547         (bpstat_stop_status): Use the above.
3548
3549 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
3550
3551         * mi/mi-main.c (last_async_command): Rename to current_token.
3552         (previous_async_command): Remove.
3553         (mi_cmd_gdb_exit): Adjust.
3554         (mi_cmd_exec_interrupt): Don't dance with previous_async_command.
3555         (mi_cmd_target_select): Adjust.
3556         (mi_cmd_execute): Don't set previous_async_command.  Free token
3557         here even in async mode.
3558         (mi_execute_async_cli_command): Adjust.
3559         (mi_exec_async_cli_cmd_continuation): Adjust.  Do not free the
3560         token.
3561         (mi_load_progress): Adjust.
3562
3563 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
3564
3565         * infcmd.c (step_1_continuation): Always disable longjmp
3566         breakpoint if we're not going to do another step.
3567
3568 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
3569
3570         exec_cleanup murder.
3571         * breakpoint.c (until_break_command_continuation): Add
3572         the 'error' parameter.  Directly delete the breakoint as
3573         opposed to running cleanups.
3574         (until_break_command): Install continuation only
3575         after starting the target.  Don't use exec cleanups,
3576         use ordinary cleanups.  Discard cleanups is successfully
3577         started the target in async mode.
3578         (make_cleanup_delete_breakpoint): Remove.
3579         * breakpoint.h (make_cleanup_delete_breakpoint): Remove
3580         declaration.
3581         * defs.h (do_exec_cleanups, make_exec_cleanup): Remove
3582         declarations.
3583         (struct continations): Add the 'error' parameter to the
3584         continuation_hook field.
3585         (add_continuation, do_all_continuations)
3586         (add_intermediate_continuation)
3587         (do_all_intermediate_continuations): Add the 'error' parameter.
3588         * exceptions.c (throw_exception): Don't call do_exec_cleanups.
3589         * inf-loop.c (inferior_event_handler): Instead of calling
3590         discard_all_continuations, use do_all_continuations with 1 as
3591         'error' parameter.  Pass 0 as 'error' parameter in existing uses
3592         of discard_all_continuations.
3593         * infcmd.c (step_1): Do not use exec cleanup.  For async case, discard
3594         cleanups.
3595         (step_once): Install continuation only after resuming the target.
3596         (step_1_continuation): Disable longjmp breakpoint on error.
3597         (finish_command_continuation): Add the error parameter.  Delete
3598         the finish breakpoint directly, do not use cleanups.
3599         (finish_command): Do not use exec_cleanups. Always setup
3600         continuation.  For sync case, immediately run them.
3601         (attach_command_continuation): Add the error parameter.
3602         * infrun.c (fetch_inferior_event): Do not use exec cleanups to
3603         remove step_resume_breakpoint -- adjust delete it directly.
3604         * interps.c (interp_set): Adjust call to do_all_continations.
3605         * mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
3606         do exec cleanups.
3607         * mi/mi-main.c (mi_cmd_target_select): Do not do exec
3608         cleanups.
3609         (mi_cmd_execute): Do not use exec_cleanup.
3610         (mi_execute_async_cli_command): Simplify the string concatenation
3611         logic.  Do no use exec cleanup.
3612         (mi_exec_async_cli_cmd_continuation): New parameter error.
3613         Free last_async_command.
3614         * top.c (command_line_handler_continuation): New parameter error.
3615         * utils.c (exec_cleanup_chain, make_exec_cleanup)
3616         (do_exec_cleanups): Remove.
3617         (add_continuation, do_all_continations)
3618         (add_intermediate_continuation)
3619         (do_all_intermediate_continuations): New parameter error.
3620
3621 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
3622
3623         * breakpoint.h (bp_location_p): New typedef.
3624         Register a vector of bp_location_p.
3625         * breakpoint.c (always_inserted_mode)
3626         (show_always_inserted_mode): New.
3627         (unlink_locations_from_global_list): Remove.
3628         (update_global_location_list)
3629         (update_global_location_list_nothrow): New.
3630         (update_watchpoint): Don't free locations.
3631         (should_insert_location): New.
3632         (insert_bp_location): Use should_insert_location.
3633         (insert_breakpoint_locations): Copied from
3634         insert_breakpoints.
3635         (insert_breakpoint): Use insert_breakpoint_locations.
3636         (bpstat_stop_status): Call update_global_location_list
3637         when disabling breakpoint.
3638         (allocate_bp_location): Don't add to bp_location_chain.
3639         (set_raw_breakpoint)
3640         (create_longjmp_breakpoint, enable_longjmp_breakpoint)
3641         (disable_longjmp_breakpoint, create_overlay_event_breakpoint)
3642         (enable_overlay_breakpoints, disable_overlay_breakpoints)
3643         (set_longjmp_resume_breakpoint)
3644         (enable_watchpoints_after_interactive_call_stop)
3645         (disable_watchpoints_before_interactive_call_start)
3646         (create_internal_breakpoint)
3647         (create_fork_vfork_event_catchpoint)
3648         (create_exec_event_catchpoint, set_momentary_breakpoint)
3649         (create_breakpoints, break_command_1, watch_command_1)
3650         (create_exception_catchpoint)
3651         (handle_gnu_v3_exceptions)
3652         (disable_breakpoint, breakpoint_re_set_one)
3653         (create_thread_event_breakpoint, create_solib_event_breakpoint)
3654         (create_ada_exception_breakpoint): : Don't call check_duplicates.
3655         Call update_global_location_list.
3656         (delete_breakpoint): Don't remove locations and don't
3657         try to reinsert them. Call update_global_location_list.
3658         (update_breakpoint_locations): Likewise.
3659         (restore_always_inserted_mode): New.
3660         (update_breakpoints_after_exec): Temporary disable
3661         always inserted mode.
3662         * Makefile.in: Update dependencies.
3663
3664         * infrun.c (proceed): Remove breakpoints while stepping
3665         over breakpoint.
3666         (handle_inferior_event): Don't remove or insert
3667         breakpoints.
3668         * linux-fork.c (checkpoint_command): Remove breakpoints
3669         before fork and insert after.
3670         (linux_fork_context): Remove breakpoints before switch
3671         and insert after.
3672         * target.c (target_disconnect, target_detach): Remove
3673         breakpoints from target.
3674
3675
3676 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
3677
3678         * breakpoint.c (print_one_breakpoint_location): In MI
3679         mode, report the location string the breakpoint was
3680         originally created with.
3681
3682 2008-04-23  Maxim Grigoriev  <maxim2405@gmail.com>
3683
3684         * Makefile.in (xtensa-tdep.o): Update dependencies.
3685         * configure.tgt (xtensa*): Update dependencies.
3686         * xtensa-tdep.c (arreg_number): Renamed from areg_number.
3687         Local variable areg renamed to arreg.
3688         (areg_number): New function.
3689         (xtensa_pseudo_register_read, xtensa_pseudo_register_write)
3690         (xtensa_extract_return_value, xtensa_store_return_value): areg_number
3691         replaced by arreg_number.
3692         (xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
3693         (xtensa_alloc_frame_cache): Initialize cache->wd.ws.
3694         (xtensa_scan_prologue): New function.
3695         (xtensa_frame_cache): New local fp_regnum. Handle separately the case,
3696         when ENTRY instraction hasn't been executed yet. Get the frame pointer
3697         value based on prologue analysis. Fix the bugs preventing WS and
3698         AR4-AR7/A11 registers from getting right values for intermediate frames,
3699         whose registers have been already spilled.
3700         (xtensa_frame_prev_register): Fix WS register value. Use are_number
3701         and arreg_number appropriately.
3702         (xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
3703         svr4_ilp32_fetch_link_map_offsets.
3704
3705 2008-04-23  Andrew Stubbs  <andrew.stubbs@st.com>
3706
3707         * printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
3708         (printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
3709
3710 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
3711
3712         * acinclude.m4: Add override.m4.
3713         * configure: Regenerate.
3714
3715 2008-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
3716
3717         * ada-lang.c (get_selections): Variable PROMPT made non-const and
3718         initialized with a trailing space now.  Use PROMPT_ARG of
3719         COMMAND_LINE_INPUT instead of printing it ourselves.
3720
3721 2008-04-22  Joel Brobecker  <brobecker@adacore.com>
3722
3723         * NEWS: Document support for 64-bit core file.
3724
3725 2008-04-22  Corinna Vinschen  <vinschen@redhat.com>
3726
3727         * NEWS: Add information on calling convention and new SH CLI options.
3728
3729         * sh-tdep.c (sh_cc_gcc): New static string.
3730         (sh_cc_renesas): Ditto.
3731         (sh_cc_enum): New static string array.
3732         (sh_active_calling_convention): New static string pointer denoting
3733         active user chosen ABI.
3734         (sh_is_renesas_calling_convention): New function to return function
3735         specific ABI, or user choice if necessary.
3736         (sh_use_struct_convention): Rename first argument and turn around its
3737         meaning.  Check for renesas ABI and return accordingly.
3738         (sh_use_struct_convention_nofpu): New function.
3739         (sh_next_flt_argreg): Get function type as third parameter.  Check
3740         for renesas ABI and choose floating registers accordingly.
3741         (sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
3742         struct return slot accordingly.
3743         (sh_push_dummy_call_nofpu): Ditto.
3744         (sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
3745         Evaluate ABI and give to sh_use_struct_convention_nofpu.
3746         (sh_return_value_fpu):  Evaluate ABI and give to
3747         sh_use_struct_convention.
3748         (show_sh_command): New function.
3749         (set_sh_command): Ditto.
3750         (_initialize_sh_tdep): Initialize `set/show sh calling-convention
3751         CLI command.
3752
3753         * gdbarch.sh (return_value): Add func_type argument.
3754         * gdbarch.c: Regenerate.
3755         * gdbarch.h: Ditto.
3756         * eval.c (evaluate_subexp_standard): Rename local variable value_type to
3757         val_type so as not to collide with value_type function.  Call
3758         using_struct_return with additional function type argument.
3759         * infcall.c (call_function_by_hand): Call using_struct_return and
3760         gdbarch_return_value with additional function type argument.
3761         * infcmd.c (print_return_value): Take addition func_type argument.
3762         Call gdbarch_return_value with additional function type argument.
3763         (finish_command_continuation): Call print_return_value with additional
3764         function type argument.
3765         (finish_command): Ditto.
3766         * sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
3767         additional function type argument.
3768         * stack.c (return_command): Call using_struct_return and
3769         gdbarch_return_value with additional function type argument.
3770         * value.c (using_struct_return): Take additional function type argument.
3771         * value.h (using_struct_return): Accommodate declaration.
3772         * alpha-tdep.c (alpha_return_value): Add func_type argument.
3773         * amd64-tdep.c (amd64_return_value): Ditto.
3774         * arm-tdep.c (arm_return_value): Ditto.
3775         * avr-tdep.c (avr_return_value): Ditto.
3776         * cris-tdep.c (cris_return_value): Ditto.
3777         * frv-tdep.c (frv_return_value): Ditto.
3778         * h8300-tdep.c (h8300_return_value): Ditto.
3779         (h8300h_return_value): Ditto.
3780         * hppa-tdep.c (hppa32_return_value): Ditto.
3781         (hppa64_return_value): Ditto.
3782         * i386-tdep.c (i386_return_value): Ditto.
3783         * ia64-tdep.c (ia64_return_value): Ditto.
3784         * iq2000-tdep.c (iq2000_return_value): Ditto.
3785         * m32c-tdep.c (m32c_return_value): Ditto.
3786         * m32r-tdep.c (m32r_return_value): Ditto.
3787         * m68hc11-tdep.c (m68hc11_return_value): Ditto.
3788         * m68k-tdep.c (m68k_return_value): Ditto.
3789         (m68k_svr4_return_value): Ditto.
3790         * m88k-tdep.c  (m88k_return_value): Ditto.
3791         * mep-tdep.c (mep_return_value): Ditto.
3792         * mips-tdep.c (mips_eabi_return_value): Ditto.
3793         (mips_n32n64_return_value): Ditto.
3794         (mips_o32_return_value): Ditto.
3795         (mips_o64_return_value): Ditto.
3796         * mn10300-tdep.c (mn10300_return_value): Ditto.
3797         * mt-tdep.c (mt_return_value): Ditto.
3798         * ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
3799         * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
3800         (ppc_sysv_abi_broken_return_value): Ditto.
3801         (ppc64_sysv_abi_return_value): Ditto.
3802         * ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
3803         (ppc_sysv_abi_broken_return_value): Ditto.
3804         (ppc64_sysv_abi_return_value): Ditto.
3805         * ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
3806         * rs6000-tdep.c (rs6000_return_value): Ditto.
3807         * s390-tdep.c (s390_return_value): Ditto.
3808         * score-tdep.c (score_return_value): Ditto.
3809         * sh-tdep.c (sh_return_value_nofpu): Ditto.
3810         (sh_return_value_fpu): Ditto.
3811         * sh64-tdep.c (sh64_return_value): Ditto.
3812         * sparc-tdep.c (sparc32_return_value): Ditto.
3813         * sparc64-tdep.c (sparc64_return_value): Ditto.
3814         * spu-tdep.c (spu_return_value): Ditto.
3815         * v850-tdep.c (v850_return_value): Ditto.
3816         * vax-tdep.c (vax_return_value): Ditto.
3817         * xstormy16-tdep.c (xstormy16_return_value): Ditto.
3818         * xtensa-tdep.c (xtensa_return_value): Ditto.
3819
3820         * gdbtypes.h (struct type): Add calling_convention member.
3821         * dwarf2read.c (read_subroutine_type): Add calling convention read
3822         from DW_AT_calling_convention attribute to function type.
3823
3824 2008-04-22  Markus Deuling  <deuling@de.ibm.com>
3825
3826         * eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
3827         multi_f77_subscript to support values from registers.
3828         * valarith.c (value_subscripted_rvalue): Remove prototype and static.
3829         * value.h (value_subscripted_rvalue): Add prototype.
3830
3831         * f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
3832         Fix output.
3833         * f-valprint.c (f_val_print): Likewise.
3834
3835 2008-04-21  Craig Silverstein  <csilvers@google.com>
3836
3837         * dwarf2read.c (zlib_decompress_section): Define abfd in the
3838         !HAVE_ZLIB_H case.
3839
3840 2008-04-21  Pedro Alves  <pedro@codesourcery.com>
3841
3842         * symfile.c (syms_from_objfile): Don't warn if lowest loadable
3843         section is not a code section.
3844
3845 2008-04-19  Craig Silverstein  <csilvers@google.com>
3846
3847         * NEWS: Add information on compressed debug sections.
3848
3849 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
3850
3851         * mi/mi-cmd-var.c (varobj_update_one): Print new
3852         value for variable objects that changed type.
3853
3854 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
3855
3856         * varobj.c (varobj_invalidate): Don't touch floating
3857         varobjs.
3858
3859 2008-04-19  Mark Kettenis  <kettenis@gnu.org>
3860
3861         * symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
3862         (multiple_symbols_cancel): Remove extra const.
3863         * symtab.h: Likewise.
3864
3865 2008-04-19  Nick Roberts  <nickrob@snap.net.nz>
3866
3867         * interps.c (top_level_interpreter): Rename static variable...
3868         (top_level_interpreter_ptr): ...to this.
3869         (top_level_interpreter): New function.
3870
3871         * interps.h: New extern for top_level_interpreter.
3872
3873         * linespec.c: Include interps.h and mi/mi-cmds.h.
3874         (decode_line_2): When using MI, always set all breakpoints in menu.
3875
3876         * Makefile.in (linespec.o, mi-interp.o): Add dependencies.
3877
3878 2008-04-18  Craig Silverstein  <csilvers@google.com>
3879
3880         * configure.ac (AC_SEARCH_LIBS): Add check for zlib.
3881         * config.in, configure: Regenerate.
3882         * dwarf2read.c: Include zlib.h if present.
3883         Modified *_SECTION macros.
3884         (section_is_p): New.
3885         (dwarf2_locate_sections): Use section_is_p instead of strcmp
3886         (dwarf2_resize_section): New.
3887         to determine whether a given section has a given name.
3888         (zlib_decompress_section): New.
3889         (dwarf2_read_section): Read the compressed section if present
3890         in the binary.
3891         * MAINTAINERS: Added myself to section Write After Approval.
3892
3893 2008-04-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
3894
3895         * defs.h (exec_set_section_offsets): Remove prototype.
3896         * exec.c (exec_set_section_offsets): Remove function.
3897
3898 2008-04-18  Joel Brobecker  <brobecker@adacore.com>
3899
3900         * stabsread.c (cleanup_undefined_types_1): Add instance flags check
3901         in the search for the matching symbol.
3902
3903 2008-04-17  Marc Khouzam  <marc.khouzam@ericsson.com>
3904
3905         * breakpoint.c (update_watchpoint): Always reparse
3906         condition.
3907
3908 2008-04-17  Joel Brobecker  <brobecker@adacore.com>
3909
3910         * breakpoint.c (print_one_breakpoint_location): Make sure to print
3911         the breakpoint address only once.
3912
3913 2008-04-17  Dennis Roberts  <dennis.roberts@sunquestinfo.com>
3914
3915         * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
3916         rather than a hard-coded architecture, for xcoff executables.
3917
3918 2008-04-17  Doug Evans  <dje@google.com>
3919
3920         * buildsym.c (watch_main_source_file_lossage): New fn.
3921         (end_symtab): Call it.
3922
3923         * source.c (find_and_open_source): Add some comments clarifying
3924         handling of FULLNAME argument.  Make static.  Remove pointless
3925         xstrdup/xfree.
3926
3927 2008-04-17  Pedro Alves  <pedro@codesourcery.com>
3928
3929         * inf-loop.c (inferior_event_handler): Also run the intermediate
3930         continuations in the INF_EXEC_COMPLETE case.
3931
3932 2008-04-16  Tom Tromey  <tromey@redhat.com>
3933
3934         * cli/cli-decode.h (CMD_ASYNC_OK): New define.
3935         (set_cmd_async_ok, get_cmd_async_ok): Declare.
3936         * cli/cli-decode.c (set_cmd_async_ok): New function.
3937         (get_cmd_async_ok): New function.
3938         * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
3939         "show" as async-ok.
3940         * top.c (execute_command): Use get_cmd_async_ok.
3941         * infcmd.c: Include cli/cli-decode.h.
3942         (_initialize_infcmd): Mark "interrupt" as async-ok.
3943         * Makefile.in (infcmd.o): Depend on cli_decode_h.
3944
3945 2008-04-16  Daniel Jacobowitz  <dan@codesourcery.com>
3946
3947         PR gdb/2445
3948         * exec.c: Correct "arch-utils.h" include.
3949
3950 2008-04-15  Aleksandar Ristovski  <aristovski@qnx.com>
3951
3952         PR gdb/2424
3953         * infrun.c (normal_stop) Move breakpoint_auto_delete further down
3954         to allow printing to 'see' real reason of stop. This fixes PR 2424.
3955         * breakpoint.c (bpdisp_texst): New function. The function takes over
3956         the role of bpstats static array in print_one_breakpoint_location.
3957         (print_it_typical): Print "Temporary breakpoint" instead
3958         of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
3959         protocols, print disp field.
3960         (print_one_breakpoint_location): Removed bpdisps static definition.
3961         Call new bpstat_text function to get value for 'disp' field.
3962         (mention): Print "Temporary breakpoint" instead of just "Breakpoint".
3963
3964 2008-04-15  Daniel Jacobowitz  <dan@codesourcery.com>
3965
3966         * gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
3967         gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
3968         by rerunning gnulib-tool with --aux-dir=gnulib/extra.
3969         * gnulib/Makefile.in: Regenerate.
3970
3971 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
3972
3973         * Makefile.in (GNULIB_H): New.  Trigger all-lib.
3974         (defs_h): Use $(GNULIB_H).
3975         (all-lib): Depend on gnulib/Makefile.
3976         (gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
3977         * config.in, gnulib/Makefile.in: Regenerated.
3978
3979 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
3980
3981         * Makefile.in (LIBGNU, INCGNU): Define.
3982         (INTERNAL_CFLAGS_BASE): Add INCGNU.
3983         (INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
3984         (CLEANDIRS): New.
3985         ($(LIBGNU), all-lib): New rules.
3986         (clean, distclean, do-maintainer-clean): Use CLEANDIRS.
3987         * configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
3988         Simplify AC_CONFIG_AUX_DIR.  Generate gnulib/Makefile.
3989         * gnulib: New directory, from gnulib-tool.
3990         * configure, aclocal.m4: Regenerated.
3991
3992 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
3993
3994         * linux-thread-db.c (have_threads_callback): Check thread->private.
3995
3996 2008-04-13  Nick Roberts  <nickrob@snap.net.nz>
3997             Vladimir Prus  <vladimir@codesourcery.com>
3998
3999         Fix @-varobjs.
4000         * varobj.c (value_of_root): Update the expression for
4001         floating varobjs.
4002         * mi/mi-cmd-var.c (varobj_update_one): If type has changed,
4003         report that.
4004
4005 2008-04-09  Marc Khouzam  <marc.khouzam@ericsson.com>
4006
4007         * mi/mi-cmd-var.c: Include "mi-getopt.h".
4008         (mi_parse_format): New.  Factored out from mi_cmd_var_set_format.
4009         (mi_cmd_var_set_format): Use new mi_parse_format.
4010         (mi_cmd_var_evaluate_expression): Support for -f option to specify
4011         format.
4012         * Makefile.in (mi-cmd-var.o): Update dependencies.
4013
4014         * varobj.h (varobj_get_formatted_value): Declare.
4015         * varobj.c (my_value_of_variable): Added format parameter.
4016         (cplus_value_of_variable): Likewise.
4017         (java_value_of_variable): Likewise.
4018         (c_value_of_variable): Likewise.  Evaluate expression based
4019         on format parameter.
4020         (struct language_specific): Add format parameter to function member
4021         *value_of_variable.
4022         (varobj_get_formatted_value): New.
4023         (varobj_get_value): Added format parameter to method call.
4024
4025 2008-04-08  Joel Brobecker  <brobecker@adacore.com>
4026
4027         * stabsread.c (cleanup_undefined_types_noname): Manually set the
4028         instance flags of the undefined type before calling replace_type.
4029
4030 2008-04-08  Vladimir Prus  <vladimir@codesourcery.com>
4031
4032         * target.h (enum strata): Remove the download_stratum.
4033
4034 2008-04-07  Doug Evans  <dje@google.com>
4035
4036         * buildsym.h (last_source_file): Add dwarf info to comment.
4037         (last_source_start_addr): Ditto.
4038
4039 2008-04-07  Pedro Alves  <pedro@codesourcery.com>
4040
4041         * alphanbsd-tdep.c: Include "target.h".
4042         * mn10300-tdep.c: Include "target.h".
4043         * Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.
4044
4045 2008-04-06  Vladimir Prus  <vladimir@codesourcery.com>
4046
4047         Fix breakpoint condition that use member variables.
4048         * valops.c (check_field): Remove.
4049         (check_field_in): Rename to check_field.
4050         (value_of_this): Use la_name_of_this.
4051         * value.h (check_field): Adjust prototype.
4052
4053         * language.h (la_value_of_this): Rename to la_name_of_this.
4054         * language.c (unknown_language_defn): Specify "this" for
4055         name_of_this.
4056         (auto_language_defn): Likewise.
4057         (local_language_defn): Likewise.
4058         * ada-lang.c (ada_language_defn): Adjust comment.
4059         * c-lang.c (c_language_defn): Adjust comment.
4060         (cplus_language_defn): Specify "this" for name_of_this.
4061         (asm_language_defn): Adjust comment.
4062         (minimal_language_defn): Adjust comment.
4063         * f-lang.c (f_language_defn): Specify NULL for name_of_this.
4064         * jv-lang.c (java_language_defn): Specify "this" for name_of_this.
4065         * m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
4066         * objc-lang.c (objc_language_defn): Specify "self" for
4067         name_of_this.
4068         * p-lang.c (pascal_language_defn): Specify "this" for
4069         name_of_this.
4070         * scm-lang.c (scm_language_defn): Specify NULL for name_of_this.
4071
4072         * symtab.c (lookup_symbol_aux): Lookup "this" in the
4073         proper scope, and check for field in type of "this", without
4074         trying to create a value.
4075
4076 2008-04-04  Pedro Alves  <pedro@codesourcery.com>
4077
4078         * mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
4079         (mi_error_message): Delete declaration.
4080         * mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
4081         returning MI_CMD_ERROR.
4082         * mi/mi-main.c (mi_error_message): Delete.
4083         (mi_cmd_exec_interrupt):
4084         (mi_cmd_thread_select, mi_cmd_thread_list_ids)
4085         (mi_cmd_thread_info): Call error instead of returning
4086         MI_CMD_ERROR.
4087         (mi_cmd_data_list_register_values): Call error instead of
4088         returning MI_CMD_ERROR.  Adapt to new get_register interface.
4089         (get_register): Change return typo to void.  Call error instead of
4090         returning MI_CMD_ERROR.
4091         (mi_cmd_data_write_register_values): Call error instead of
4092         returning MI_CMD_ERROR.
4093         (mi_cmd_list_features): Return MI_CMD_DONE.
4094         (captured_mi_execute_command): Remove MI_CMD_ERROR handling.
4095         (mi_execute_command): Always print exceptions with -error.
4096
4097 2008-04-04  Joel Brobecker  <brobecker@adacore.com>
4098
4099         * NEWS: Mention new commands set/show multiple-symbols.
4100
4101 2008-04-03  Joel Brobecker  <brobecker@adacore.com>
4102
4103         * symtab.c (multiple_symbols_ask, multiple_symbols_all)
4104         (multiple_symbols_cancel): New constants.
4105         (multiple_symbols_modes, multiple_symbols_mode): New static globals.
4106         (multiple_symbols_select_mode): New function.
4107         (_initialize_symtab): Add new set/show multiple-symbols commands.
4108         * symtab.h (multiple_symbols_ask, multiple_symbols_all)
4109         (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
4110         * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
4111         setting.
4112         * linespec.c (decode_line_2): Likewise.
4113
4114 2008-04-03  Doug Evans  <dje@sebabeach.org>
4115
4116         * symtab.h (enum free_code): Delete free_contents, unused.
4117         * symmisc.c (free_symtab_block): Delete.
4118         (free_symtab, case free_code): Delete.
4119
4120 2008-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
4121
4122         * valops.c (value_cast_structs): New function. Cast related
4123         STRUCT types up/down and return cast value. The body of this
4124         function comes mostly from value_cast_pointers.
4125         (value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
4126         to value_cast_structs. Now value_cast_pointers needs only create
4127         appropriate reference after using value_cast_structs for actual
4128         casting.
4129         (value_cast): Handle references.
4130
4131 2008-04-01  Marc Khouzam  <marc.khouzam@ericsson.com>
4132
4133         * MAINTAINERS: Added myself to section Write After Approval.
4134
4135 2008-03-30  Daniel Jacobowitz  <dan@codesourcery.com>
4136
4137         * ia64-tdep.c (examine_prologue): Correct array access.
4138
4139 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
4140
4141         * cp-support.c (first_component_command): Return if no arguments.
4142
4143 2008-03-28  Carlos O'Donell  <carlos@codesourcery.com>
4144
4145         * ser-mingw.c (ser_windows_open): Open requested name.
4146
4147 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
4148
4149         * MAINTAINERS: Added myself.
4150
4151 2008-03-28  Pedro Alves  <pedro@codesourcery.com>
4152
4153         * target.c (find_default_run_target): Allow a NULL `do_mesg'
4154         parameter.  If it is NULL, don't call error.
4155         (find_default_can_async_p, find_default_is_async_p): Pass NULL as
4156         `do_mesg' parameter to find_default_run_target.  If no target was
4157         found, return 0.
4158
4159 2008-03-28  Daniel Jacobowitz  <dan@codesourcery.com>
4160
4161         * mips-linux-tdep.c: Update N32/N64 signal frame comments.
4162         (N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
4163         (N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
4164         Delete.
4165         (mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.
4166
4167 2008-03-27  Joel Brobecker  <brobecker@adacore.com>
4168
4169         GDB 6.8 released.
4170
4171 2008-03-27  Ulrich Weigand  <uweigand@de.ibm.com>
4172
4173         * features/Makefile (%.dat): Set xmltarget to the base filename
4174         of the XML source, without subdirectory.
4175         * regformats/rs6000/powerpc-32.dat: Regenerate.
4176         * regformats/rs6000/powerpc-64.dat: Regenerate.
4177         * regformats/rs6000/powerpc-e500.dat: Regenerate.
4178
4179 2008-03-27  Markus Deuling  <deuling@de.ibm.com>
4180
4181         * xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
4182         objfile arch.
4183
4184 2008-03-27  Nick Roberts  <nickrob@snap.net.nz>
4185
4186         * mi/mi-main.c (enum captured_mi_execute_command_actions):
4187         Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.
4188
4189 2008-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
4190
4191         * objfiles.h (struct objfile): New GDBARCH member.
4192         (get_objfile_arch): Add prototype.
4193         * objfiles.c: Include "arch-utils.h".
4194         (allocate_objfile): Look up gdbarch associated with bfd.
4195         (get_objfile_arch): New function.
4196         * Makefile (objfiles.o): Update dependencies.
4197
4198         * dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
4199         by objfile arch.
4200         * dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
4201         by frame arch.
4202         (locexpr_describe_location): Replace current_gdbarch by
4203         objfile arch.
4204         * dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
4205         (dwarf2_add_field): Likewise.
4206         (read_tag_pointer_type): Likewise.
4207         (read_base_type): Likewise.
4208         (new_symbol): Likewise.
4209
4210         * coffread.c (decode_type): Add OBJFILE argument.  Update callers.
4211         (decode_base_type, decode_function_type): Likewise.
4212         (coff_read_struct_type, coff_read_enum_type): Likewise.
4213         (coff_symtab_read): Replace current_gdbarch by objfile arch.
4214         (decode_base_type): Likewise.
4215         (coff_read_enum_type): Likewise.
4216         (coff_read_struct_type): Replace current_objfile by OBJFILE argument.
4217         (coff_read_enum_type): Likewise.
4218
4219         * dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
4220         (end_psymtab): Likewise.
4221         (process_one_symbol): Likewise.
4222
4223         * mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
4224         (parse_procedure): Likewise.
4225         (parse_partial_symbols): Likewise.
4226
4227         * somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.
4228
4229         * stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
4230         Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
4231         built-in types.
4232         (read_range_type): Replace current_gdbarch by objfile arch.  Replace
4233         static range_index_type by built-in type.
4234         (read_one_struct_field): Replace current_gdbarch by objfile arch.
4235         (read_enum_type): Likewise.
4236
4237         * xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
4238         objfile arch.
4239
4240 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
4241
4242         * varobj.h (varobj_floating_p): Declare.
4243         * varobj.c (varobj_floating_p): New.
4244         * mi/mi-cmd-var.c (mi_cmd_var_update): When passed
4245         '@' as the name, update all floating varobjs.
4246
4247 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
4248
4249         * varobj.c (struct varobj_root): Rename use_selected_frame to
4250         floating, and clarify the meaning.
4251         (varobj_create, varobj_update,  new_root_variable): Adjust.
4252         (value_of_root): Don't use type_changed as in variable,
4253         adjust comment.
4254         (c_value_of_root): Adjust.
4255
4256 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
4257
4258         * linux-nat.c (linux_nat_attach): Add the pid we attached to, to
4259         gdb's thread list.
4260         (linux_nat_wait): Add main lwp to gdb's thread list.
4261         * linux-thread-db.c (find_new_threads_callback): Also attach to
4262         already listed threads which thread_db didn't know about yet.
4263
4264 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
4265
4266         * linux-nat.c (drain_queued_events): Fix comment typo.
4267         (linux_nat_attach): In async mode, don't rely on storing a pending
4268         status.  Instead place the wait status on the pipe.
4269         (linux_nat_resume): Remove unreacheable shortcut code in async
4270         mode.
4271         (stop_wait_callback): In async mode, don't store pending status.
4272         Instead, cancel breakpoints or resend the signal appropriatelly.
4273         (cancel_breakpoint): New, refactored from
4274         cancel_breakpoints_callback.
4275         (cancel_breakpoints_callback): Call cancel_breakpoint.
4276         (pipe_to_local_event_queue): Remove special token processing.
4277         (linux_nat_wait): Issue an internal error if a pending status is
4278         found in async mode.
4279
4280 2008-03-24  Daniel Jacobowitz  <dan@codesourcery.com>
4281
4282         * inflow.c (gdb_has_a_terminal): Guard access to our_process_group.
4283
4284 2008-03-24  Nick Roberts  <nickrob@snap.net.nz>
4285             Vladimir Prus  <vladimir@codesourcery.com>
4286
4287         * varobj.c  (struct varobj_root): New component thread_id.
4288         (varobj_get_thread_id, check_scope): New functions.
4289         (c_value_of_root): Use check_scope.  Switch to the
4290         proper thread if necessary.
4291
4292         * varobj.h (varobj_get_thread_id): New extern.
4293
4294         * mi/mi-cmd-var.c (print_varobj): Add thread-id field.
4295
4296 2008-03-23  Daniel Jacobowitz  <dan@codesourcery.com>
4297
4298         PR gdb/544
4299         * top.c: Revert 2008-03-21 changes.
4300
4301 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
4302
4303         * thread.c (make_cleanup_restore_current_thread): Make it
4304         globally visible.
4305         * gdbthread.h (make_cleanup_restore_current_thread): Declare.
4306         * varobj.c (varobj_update): Don't save/restore frame.
4307         (c_value_of_root): Save/restore thread and frame here,
4308         using make_cleanup_restore_current_thread.
4309         * Makefile.in: Update dependecies.
4310
4311 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
4312
4313         * varobj.c (struct varobj_root): Clarify
4314         comment on the frame field.
4315         (varobj_create): Don't set frame if we have no
4316         block.
4317
4318 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
4319
4320         PR gdb/544
4321         Suggested by Jan Kratochvil:
4322         * top.c (gdb_rl_operate_and_get_next_completion): Call
4323         rl_redisplay_function.
4324         (gdb_rl_redisplay): New.
4325         (init_main): Set rl_redisplay_function.
4326
4327 2008-03-21  Thomas Mittelstaedt  <T.Mittelstaedt@cadenas.de>  (tiny change)
4328
4329         * aix-thread.c (pdc_read_regs): Fix compiler warning.
4330         (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
4331         (store_regs_kernel_thread): Likewise.
4332
4333 2008-03-21  Pedro Alves  <pedro@codesourcery.com>
4334
4335         Linux native async support.
4336
4337         * target.h (struct target_ops): Delete to_async_mask_value and add
4338         to_async_mask.
4339         (target_is_async_p, target_async): Formatting.
4340         (target_async_mask_value): Delete.
4341         (target_async_mask): Delete function declaration, and add new
4342         target macro with the same name.
4343
4344         * target.c (update_current_target): Replace to_async_mask_value by
4345         to_async_mask.  Default to_async_mask to return_one.
4346         (target_async_mask): Delete.
4347         (find_default_can_async_p, find_default_is_async_p): New.
4348         (init_dummy_target): register find_default_can_async_p and
4349         find_default_is_async_p on the dummy target.
4350
4351         * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
4352         (debug_linux_nat_async): New global.
4353         (show_debug_linux_nat_async): New function.
4354         (linux_nat_async_enabled, linux_nat_async_mask_value)
4355         (linux_nat_event_pipe, linux_nat_num_queued_events)
4356         (linux_nat_async_events_enabled): New globals.
4357         (struct waitpid_result): New struct.
4358         (waitpid_queue): New global.
4359         (queued_waitpid, push_waitpid, drain_queued_events): New.
4360         (my_waitpid): Call queued_waitpid.
4361         (linux_child_follow_fork): Disable async events during the call.
4362         (blocked_mask): Delete.
4363         (sync_sigchld_action, async_sigchld_action): New globals.
4364         (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD.  In
4365         async mode, block events during the call.
4366         (linux_nat_create_inferior): New.
4367         (linux_nat_attach): In sync mode, restore the mask states.  In
4368         async mode, wake the event loop immediatelly.
4369         (detach_callback): Drain all queued events of the lwp we're
4370         detaching from.
4371         (linux_nat_detach): Block async mode, and drain events of the main
4372         process.
4373         (linux_nat_resume): If in async mode, mask async events during the
4374         call.  If short circuiting, force event loop to wake up.  If
4375         resuming, set target_executing, and register target events in the
4376         event loop.
4377         (pipe_to_local_event_queue, local_event_queue_to_pipe): New.
4378         (linux_nat_wait): In async mode, block events during the call.
4379         Only enable/disable passing SIGINT to the inferior in sync mode.
4380         Get events from local waitpid queue.  If no interesting events was
4381         found, return to events loop.  Reregister target events in the
4382         event loop on exit.  In sync mode, no need to reblock SIGCHLD.
4383         (linux_nat_kill): Disable events on entry.
4384         (linux_nat_mourn_inferior): In sync mode, don't restore the masks
4385         here.  Detach async mode from the event loop if there are no more
4386         forks available, otherwise leave it on.
4387         (sigchld_handler): Assure this is called only in sync mode.
4388         (linux_async_permitted, linux_async_permitted_1): New globals.
4389         (set_maintenance_linux_async_permitted)
4390         (show_maintenance_linux_async_permitted): New functions.
4391         (linux_nat_is_async_p, linux_nat_can_async_p)
4392         (linux_nat_async_mask): New.
4393         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
4394         (get_pending_events, async_sigchld_handler): New.
4395         (linux_nat_async_events): New.
4396         (async_terminal_is_ours): New global.
4397         (linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
4398         (async_client_callback, async_client_context): New.
4399         (linux_nat_async_file_handler, linux_nat_async)
4400         (linux_nat_disable_async, linux_nat_enable_async): New.
4401         (linux_nat_add_target): Register linux_nat_create_inferior,
4402         linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
4403         linux_nat_async_mask, linux_nat_terminal_inferior and
4404         linux_nat_terminal_ours.
4405         (_initialize_linux_nat): Remove local action variable, and update
4406         code that used it to use sync_sigchld_action.  Add new
4407         "lin-lwp-async" debug set/show command.  Put the "lin-lwp" debug
4408         set/show command in the maintenance class.  Add new "linux-async"
4409         maintenance set/show command.  Block SIGCHLD by default.  Setup
4410         async_sichld_action, and sync_sigchld_action.  Install the default
4411         async mode.
4412         (lin_thread_get_thread_signals): Use a local sigset_t for blocking
4413         the cancel signals.
4414
4415         * linux-thread-db.c (re_check_for_thread_db): New.
4416         (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
4417         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
4418         (thread_db_async_mask): New.
4419         (init_thread_db_ops): Register thread_db_can_async_p,
4420         thread_db_is_async_p, thread_db_async and thread_db_async_mask.
4421
4422         * remote.c (remote_async_mask_value): New.
4423         (remote_return_zero): New.
4424         (init_remote_ops): Register remote_return_zero as callbacks of
4425         to_can_async_p and to_is_async_p.
4426         (remote_can_async_p, remote_is_async_p, remote_async): Update to
4427         use remote_async_mask_value.
4428         (remote_async_mask): New.
4429         (init_remote_async_ops): Remove to_async_mask_value setting and
4430         register remote_async_mask as to_async_mask callback in
4431         remote_async_ops.
4432
4433         * Makefile.in (linux-nat.o): Update.
4434
4435 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
4436
4437         * gdbthread.h (add_thread_with_info): New.
4438         * linux-thread-db.c: Add some documentation.
4439         (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
4440         (struct private_thread_info): Remove th_valid and ti_valid.
4441         Replace ti with tid.
4442         (thread_get_info_callback): Do not add TID to the new ptid.  Do
4443         not cache th or ti.
4444         (thread_db_map_id2thr, lwp_from_thread): Delete functions.
4445         (thread_from_lwp): Assert that the LWP is set.  Do not add TID to the
4446         new PTID.
4447         (attach_thread): Handle an already-existing thread.  Use
4448         add_thread_with_info.  Cache the th and tid.
4449         (detach_thread): Verify that private was set.  Remove verbose
4450         argument and printing.  Update caller.
4451         (thread_db_detach): Do not adjust inferior_ptid.
4452         (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
4453         (check_event, find_new_threads_callback): Do not add TID to the new PTID.
4454         (thread_db_wait): Do not use lwp_from_thread.
4455         (thread_db_pid_to_str): Use the cached TID.
4456         (thread_db_extra_thread_info): Check that private is set.
4457         (same_ptid_callback): Delete.
4458         (thread_db_get_thread_local_address): Do not use it or check
4459         is_thread.  Check that private is set.  Assume that the thread
4460         handle is already cached.
4461         (init_thread_db_ops): Remove to_resume and to_kill.
4462         * thread.c (add_thread_with_info): New.
4463         (add_thread): Use it.
4464         * linux-nat.c (find_thread_from_lwp): Delete.
4465         (exit_lwp): Do not use it.  Check print_thread_events.  Print before
4466         deleting the thread.
4467         (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
4468         * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
4469         * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
4470         printf_unfiltered for thread exits.
4471         * procfs.c (procfs_wait): Likewise.
4472
4473 2008-03-21  Chris Demetriou  <cgd@google.com>
4474
4475         * symtab.c (rbreak_command): Quote symbol name before passing
4476         it to break_command.
4477
4478 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
4479
4480         * eval.c (evaluate_subexp_for_address): Clarify error message.
4481         Use value_must_coerce_to_target.
4482         * infcall.c (value_arg_coerce): Call value_coerce_to_target.
4483         * valops.c (value_assign): Call value_coerce_to_target when
4484         assigning to anything but internalvars.  Leave GDB-side arrays
4485         as arrays when assigning to internalvars.
4486         (value_must_coerce_to_target, value_coerce_to_target): New.
4487         (value_coerce_array, value_addr): Call value_coerce_to_target.
4488         (value_array): Create the array in GDB's memory instead of
4489         the inferior's.
4490         * value.h (value_must_coerce_to_target, value_coerce_to_target):
4491         Declare.
4492
4493 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
4494
4495         * top.c (quit_confirm): Warn that we will kill the program.
4496
4497 2008-03-19  Pedro Alves  <pedro@codesourcery.com>
4498
4499         * inflow.c (terminal_ours_1): Guard access to
4500         inferior_process_group with #ifdef PROCESS_GROUP_TYPE.
4501
4502 2008-03-18  Ulrich Weigand  <uweigand@de.ibm.com>
4503             Jim Blandy  <jimb@codesourcery.com>
4504             Daniel Jacobowitz  <drow@false.org>
4505
4506         * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
4507         (dwarf2_read_address): Update prototype.
4508
4509         * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
4510         (signed_address_type): Likewise.
4511         (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
4512         (execute_stack_op): Update calls to unsigned_address_type,
4513         signed_address_type and dwarf2_read_address.  Fix implementation
4514         of DW_OP_deref_size.
4515
4516         * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
4517         (dwarf2_per_cu_addr_size): Likewise.
4518         (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
4519         (struct dwarf2_loclist_baton): Likewise.
4520
4521         * dwarf2loc.c (find_location_expression): Update calls to
4522         dwarf2_read_address.  Use dwarf2_per_cu_objfile and
4523         dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
4524         (locexpr_describe_location): Likewise.
4525         (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
4526         Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
4527         (dwarf2_loc_desc_needs_frame): Add PER_CU parameter.  Set ctx->addr_size
4528         to dwarf2_per_cu_addr_size (per_cu).
4529         (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
4530         (loclist_read_variable): Likewise.
4531         (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.
4532
4533         * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
4534         instead of baton->objfile.
4535         (dwarf2_per_cu_obfile): New function.
4536         (dwarf2_per_cu_addr_size): Likewise.
4537
4538         * dwarf2-frame.c (struct comp_unit): Move higher.
4539         (struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
4540         (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
4541         (execute_cfa_program): Add FDE parameter.  Replace EH_FRAME_P
4542         parameter by using fde->eh_frame_p.  Use read_encoded_value
4543         to implement DW_CFA_set_loc.
4544         (struct dwarf2_frame_cache): Add ADDR_SIZE member.
4545         (dwarf2_frame_cache): Set cache->addr_size.  Update calls to
4546         execute_stack_op and execute_cfa_program.
4547         (dwarf2_frame_prev_register): Update calls to execute_stack_op.
4548         (size_of_encoded_value): Remove.
4549         (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
4550         Remove call to size_of_encoded_value.  Implement DW_EH_PE_funcrel.
4551         (add_cie): Set cie->unit backlink.
4552         (decode_frame_entry_1): Set cie->addr_size.  Update calls to
4553         read_encoded_value.
4554         (dwarf2_build_frame_info): Allocate UNIT on objfile obstack.
4555
4556 2008-03-17  Markus Deuling  <deuling@de.ibm.com>
4557
4558         * i386-tdep.c (i386_print_insn): Remove unnecessary call to
4559         gdbarch_bfd_arch_info.
4560
4561 2008-03-17  Joel Brobecker  <brobecker@adacore.com>
4562
4563         * aix-thread.c (pdc_read_regs): Minor reformatting.
4564
4565 2008-03-17  Vladimir Prus  <vladimir@codesourcery.com>
4566
4567         * thread.c (print_thread_info): Don't insist
4568         on having current thread if there are no
4569         threads at all.
4570
4571 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
4572
4573         * infcmd.c (attach_command_post_wait)
4574         (attach_command_continuation): New.
4575         (attach_command): Support background async execution, and async
4576         execution in synchronous mode.
4577
4578 2008-03-17  Daniel Jacobowitz  <dan@codesourcery.com>
4579
4580         * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
4581         * symmisc.c (dump_symtab_1): Likewise.
4582         * wrapper.c (gdb_value_struct_elt): Likewise.
4583
4584 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
4585
4586         * linux-nat.c (linux_nat_filter_event): Fix comment typo.
4587
4588 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
4589
4590         * linux-nat.c (linux_nat_filter_event): New, refactored from
4591         linux_nat_wait.
4592         (linux_nat_wait): Call linux_nat_filter_event.
4593
4594 2008-03-17  Ulrich Weigand  <uweigand@de.ibm.com>
4595
4596         * top.c (execute_command): Fix uninitialized variable error.
4597
4598 2008-03-16  Nick Hudson  <nick.hudson@dsl.pipex.com>
4599
4600         * Makefile.in (amd64nbsd-nat.o): New dependency.
4601         * amd64nbsd-nat.c: Include "nbsd-nat.h".
4602         (_initialize_amd64nbsd_nat): Update target vector to use
4603         nbsd_pid_to_exec_file.
4604         * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
4605
4606 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
4607
4608         Remove ignoring leading exec events code.
4609         * fork-child.c (startup_inferior): Do not set
4610         inferior_ignoring_leading_exec_events.
4611         * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
4612         (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
4613         * infrun.c (inferior_ignoring_leading_exec_events): Remove.
4614         (handle_inferior_event): Remove code for ignoring leading exec
4615         events.
4616         * target.c (update_current_target): Do not inherit, or default,
4617         to_reported_exec_events_per_exec_call.
4618         (debug_to_reported_exec_events_per_exec_call): Remove.
4619         (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
4620         * target.h (target_reported_exec_events_per_exec_call): Remove.
4621         (struct target): Remove the to_reported_exec_events_per_exec_call
4622         field.
4623
4624 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
4625
4626         Implement -thread-info.
4627         * gdbthread.h (print_thread_info): Declare.
4628
4629         * thread.c (print_thread_info): New, extracted
4630         from info_threads_command and adjusted to
4631         work for CLI and MI.
4632         (info_threads_command): Use print_thread_info.
4633         * Makefile.in: Update dependencies.
4634
4635         * mi/mi-cmds.c (mi_cmds): Specify a handler
4636         for -thread-info.
4637         * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
4638         * mi/mi-main.c (mi_cmd_thread_info): New.
4639         (mi_cmd_list_features): Include 'thread-info'.
4640
4641 2008-03-14  Kevin Buettner  <kevinb@redhat.com>
4642
4643         * mips-tdep.c (mips32_scan_prologue): Use the ABI register size
4644         to decide whether to match instruction patterns using "sw" and "sd".
4645
4646 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
4647
4648         * infcmd.c (jump_command): Postpone disabling stdin until after
4649         the possible query.
4650
4651 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
4652
4653         * inflow.c (gdb_getpgrp): New.
4654         (gdb_has_a_terminal): Use get_getpgrp.
4655         (terminal_ours_1): If attach_flag is set, don't refetch
4656         inferior_process_group.
4657
4658 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
4659
4660         * features/library-list.dtd: Allow "section" elements as children
4661         of "library".  Add "section" element and describe its attributes.
4662
4663         * solib-target.c (struct lm_info): Add section_bases member.
4664         (library_list_start_segment): Error out if seen a section element.
4665         (library_list_start_section): New.
4666         (library_list_end_library): New.
4667         (solib_target_free_library_list): Free section_bases.
4668         (section_attributes): New.
4669         (library_children): Make "segment" optional.  Add "section" child.
4670         (library_list_children): Register library_list_end_library.
4671         (solib_target_relocate_section_addresses): Handle section bases.
4672
4673         * NEWS: Mention new qXfer:libraries:read section offsets support.
4674
4675 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
4676
4677         * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
4678         (make_exec_error_cleanup): Remove declarations.
4679         * utils.c (exec_error_cleanup_chain): Remove.
4680         (do_exec_error_cleanups, discard_exec_error_cleanups)
4681         (make_exec_error_cleanup): Remove.
4682         * event-loop.c (start_event_loop): Adjust call to
4683         async_enable_stdin.
4684         * event-top.c (async_enable_stdin): Remove the paramater dummy.
4685         (async_disable_stdin): Don't register async_enable_stdin via
4686         cleanup.
4687         * inf-loop.c (inferior_event_handler): Don't
4688         call do_exec_error_cleanups.  Call async_enable_stdin instead.
4689         * event-loop.c (start_event_loop): Adjust call to
4690         async_enable_stdin.
4691         * tui/tui-interp.c (tui_command_loop): Adjust call to
4692         async_enable_stdin.
4693
4694 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
4695
4696         Async mode fixes.
4697         * Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
4698         * breakpoint.c (bpstat_do_actions): In async mode,
4699         don't jump to top expecting stop_bpstat to be already
4700         updated.
4701         * event-loop.c (start_event_loop): Call async_enable_stdin
4702         on exception.
4703         * event-top.c (async_enable_stdin): Do nothing if sync_execution
4704         is not set.
4705         (command_handler): Do not setup continuation here.
4706         (command_line_handler_continuation): Move to...
4707         * top.c (command_line_handler_continuation): ... here.
4708         (execute_command): In async mode, register continuation.
4709         Don't check frame's language in running in async mode.
4710         * exceptions.c (throw_exception): Don't do exec_error_cleanups.
4711         * inf-loop.c (complete_execution): Inline into...
4712         (inferior_event_handler): ... here.  Clear target_executing before
4713         doing any cleanups.  Don't try to show prompt if the target was
4714         resumed.
4715         * infcmd.c (signal_command): Add support for async mode.
4716         (finish_command): Only add continuation if the target was
4717         successfully resumed.
4718         * remote.c (init_async_opts): Register to_get_thread_local_address
4719         handler.
4720         * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
4721         with sync_execution.
4722         * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
4723         on exception.
4724
4725 2008-03-14  Daniel Jacobowitz  <dan@codesourcery.com>
4726
4727         * corefile.c (reopen_exec_file): Use exec_bfd_mtime.
4728         * exec.c (exec_bfd_mtime): Define.
4729         (exec_close): Clear it.
4730         (exec_file_attach): Set it.
4731         * gdbcore.h (exec_bfd_mtime): Declare.
4732         * source.c (find_source_lines): Do not use bfd_get_mtime.
4733
4734 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
4735
4736         * top.c (simplified_command_loop): Remove.
4737
4738 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
4739
4740         Remove unused remote.c hooks.
4741         * remote.c (deprecated_target_resume_hook)
4742         (deprecated_target_wait_loop_hook): Remove.
4743         (remote_resume): Do not call deprecated_target_resume_hook.
4744         (remote_wait): Do not call deprecated_target_wait_loop_hook.
4745         (remote_async_wait): Likewise.
4746
4747 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
4748
4749         Implement MI notification for new threads.
4750         * doc/observer.texi (new_thread): Document.
4751         * observer.sh: Forward declare struct thread_info.
4752         * thread.c (add_thread): Notify observer.
4753
4754         * interps.h (interp_init_ftype): New parameter
4755         top_level.
4756         (interp_set): Likewise.
4757         (top_level_interpreter_data): Declare.
4758         * interps.c (interp_set): New parameter top_level.
4759         Pass it to interpreter's init function.  Remember
4760         top level interpreter.
4761         (interpreter_exec_cmd): Adjust.
4762         (top_level_interpreter_data): New.
4763         * main.c (captured_main): Pass 1 for top_level
4764         parameter of interp_set.
4765         * cli/cli-interp.c (cli_interpreter_init): New
4766         parameter top_level.
4767         * tui/tui-interp.c (tui_init): New parameter top_level.
4768
4769         * mi/mi-interp.c (mi_new_thread): New.
4770         (mi_interpreter_init): If top level, register
4771         observer for new threads.
4772
4773         * Makefile.in (mi-interp.o, thread.o): Update dependencies.
4774
4775 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
4776
4777         * top.c (execute_command): Disable break and stop
4778         commands in async mode.
4779
4780 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
4781
4782         revert:
4783         2008-03-14  Pedro Alves  <pedro@codesourcery.com>
4784         * inf-loop.c (inferior_event_handler): Don't include remote.h.
4785         Call target_stop in the INF_QUIT_REQ case.
4786         * Makefile.in (inf-loop.o): Update.
4787
4788 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
4789
4790         * inf-loop.c (inferior_event_handler): Don't include remote.h.
4791         Call target_stop in the INF_QUIT_REQ case.
4792         * Makefile.in (inf-loop.o): Update.
4793
4794 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
4795
4796         * top.c (execute_command): Enable break, info and interrupt
4797         commands in async mode.
4798
4799 2008-03-13  Vladimir Prus  <vladimir@codesourcery.com>
4800             Daniel Jacobowitz  <dan@codesourcery.com>
4801
4802         * breakpoint.h (breakpoint_restore_shadows): New
4803         declaration.
4804         * breakpoint.c (breakpoint_restore_shadows): New.
4805         (read_memory_nobpt): Delete.
4806         * gdbcore.h (read_memory_nobpt): Delete declaration.
4807         * target.c (memory_xfer_partial): Call
4808         breakpoint_restore_shadows.
4809         (restore_show_memory_breakpoints)
4810         (make_show_memory_beakpoints_cleanup): New.
4811         (show_memory_breakpoints): New.
4812         * target.h (make_show_memory_beakpoints_cleanup): Declare.
4813         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
4814         Make sure we see memory breakpoints when checking if
4815         breakpoint is still there.
4816         * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
4817         hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
4818         m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
4819         sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
4820
4821 2008-03-12  Pedro Alves  <pedro@codesourcery.com>
4822
4823         * thread.c (add_thread): Use printf_unfiltered to print.
4824
4825 2008-03-12  Joel Brobecker  <brobecker@gnat.com>
4826
4827         * sol-thread.c: Replace use of TM_I386SOL2_H by an expression
4828         that is true only on x86-solaris and x86_64-solaris.
4829         * procfs.c: Likewise. Move procfs_find_LDT_entry up together
4830         with proc_get_LDT_entry.
4831
4832 2008-03-12  Thiago Jung Bauermann  <bauerman@br.ibm.com>
4833
4834         * configure.ac (AC_CHECK_FUNCS): Add check for setsid.
4835         * config.in, configure: Regenerate.
4836         * fork-child.c (fork_inferior): Call create_tty_session.
4837         * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
4838         (create_tty_session): New function.
4839         * terminal.h: Declare create_tty_session.
4840
4841 2008-03-12  Alan Modra  <amodra@bigpond.net.au>
4842
4843         PR 5900
4844         * elfread.c (elf_symtab_read): Make shndx an unsigned int.
4845         * mipsread.c: Include elf/internal.h.
4846         (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
4847         to internal range.
4848
4849 2008-03-11  Markus Deuling  <deuling@de.ibm.com>
4850
4851         * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
4852         to get at the current architecture and at the target specific vector.
4853         Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
4854         remove define of I387_ST0_REGNUM.
4855
4856         * amd64-tdep.c (I387_ST0_REGNUM): Remove define.
4857
4858         (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
4859         get at the current architecture
4860         (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
4861         parameter.
4862
4863         * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
4864         I387_NUM_XMM_REGS and I387_MM0_REGNUM.
4865
4866         (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
4867         I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
4868         (I387_FSTAT_REGNUM): Add target specific vector as parameter.
4869
4870         (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
4871         at the target specific vector.
4872
4873         (i386_get_longjmp_target): Use get_frame_arch to get at the current
4874         architecture. Use gdbarch_tdep to get at the target specific vector.
4875
4876         (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
4877         update caller. Use gdbarch_tdep to get at the target specific vector.
4878
4879         (i386_register_to_value: Use get_frame_arch to get at the current
4880         architecture.
4881
4882         * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
4883         parameter.
4884
4885         * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
4886         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
4887         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
4888         FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.
4889
4890         (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
4891         undef's.
4892
4893         (i387_convert_register_p, i387_register_to_value,
4894         i387_value_to_register): Update call for i386_fp_regnum_p.
4895
4896         * i387-tdep.h: Remove comment.
4897         (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
4898         (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
4899         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
4900         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
4901         I387_MXCSR_REGNUM): Add target specific vector as parameter.
4902
4903 2008-03-10  Daniel Jacobowitz  <dan@codesourcery.com>
4904
4905         * Makefile.in (fork-child.o): Update.
4906         * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
4907         argument.  Gather all gdbserver features together.
4908         * fork-child.c (exec_wrapper): New variable.
4909         (fork_inferior): Use it.
4910         (startup_inferior): Skip an extra trap if using "set exec-wrapper".
4911         (unset_exec_wrapper_command, _initialize_fork_child): New.
4912
4913 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
4914
4915         * source.c (directory_command): Modify the determination of
4916         condition of terminal "from_tty".
4917
4918 2008-03-10  Matt Rice  <ratmice@gmail.com>
4919
4920         * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.
4921
4922 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
4923
4924         * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
4925         of the data passing to strtoulst function.
4926         (info_spu_signal_command): Likewise.
4927
4928 2008-03-08  Vladimir Prus  <vladimir@codesourcery.com>
4929
4930         * mi/mi-interp.c (mi_command_loop): Remove
4931         commented-out code.
4932
4933 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
4934
4935         * remote.c (extended_remote_attach_1): Make local variable pid an int
4936         instead of a pid_t.
4937
4938 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
4939
4940         * solib-svr4.c (svr4_same_1): New function, originally extracted
4941         from svr4_same and expanded to handle the sparc64 case.
4942         (svr4_same): Move up and reimplement using svr4_same_1.
4943         (enable_break): Use svr4_same_1 to do shared library name comparisons.
4944
4945 2008-03-07  Ramana Radhakrishnan  <ramana.r@gmail.com>
4946
4947         * MAINTAINERS: Move self to Paper trail.
4948
4949 2008-03-05  Daniel Jacobowitz  <dan@codesourcery.com>
4950
4951         * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
4952         * event-loop.c (call_async_signal_handler): New.
4953         * event-loop.h (call_async_signal_handler)
4954         (gdb_call_async_signal_handler): Declare.
4955         (mark_async_signal_handler): Add comments.
4956         * event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
4957         * mingw-hdep.c (sigint_event, sigint_handler): New.
4958         (gdb_select): Use them.  Wait for the readline signal handler
4959         to finish.
4960         (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
4961         * posix-hdep.c (gdb_call_async_signal_handler): New function.
4962         * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
4963         New.
4964         (remote_fileio_ctrl_c_signal_handler): Use
4965         gdb_call_async_signal_handler.
4966         (initialize_remote_fileio): Initialize sigint_fileio_token.
4967         * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
4968         not initialize tokens here.
4969         (handle_remote_sigint_twice): Likewise.  Reinstall
4970         handle_remote_sigint.
4971         (async_remote_interrupt_twice): Just call interrupt_query.
4972         (cleanup_sigint_signal_handler): Do not delete tokens.
4973         (remote_interrupt, remote_interrupt_twice): Use
4974         gdb_call_async_signal_handler.
4975         (interrupt_query): Reinstall the default signal handler.
4976         (_initialize_remote): Initialize tokens here.
4977
4978 2008-03-04  Joel Brobecker  <brobecker@adacore.com>
4979
4980         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
4981         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
4982         Change the type of the lr register to code_ptr.
4983         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
4984         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
4985         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
4986         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
4987         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
4988         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
4989         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.
4990
4991 2008-03-03  James E. Wilson  <wilson@tuliptree.org>
4992
4993         * MAINTAINERS: Update my email address.
4994
4995 2008-03-03  Keith Seitz  <keiths@redhat.com>
4996
4997         From Dave Murphy  <davem@devkitpro.org>:
4998         * configure.ac: Set tcl configdir to win under mingw.
4999         * configure: Regenerate.
5000
5001 2008-03-03  Daniel Jacobowitz  <dan@codesourcery.com>
5002
5003         * breakpoint.c (fetch_watchpoint_value): New function.
5004         (update_watchpoint): Set and clear val_valid.  Use
5005         fetch_watchpoint_value.  Handle unreadable values on the
5006         value chain.  Correct check for user-requested array watchpoints.
5007         (breakpoint_init_inferior): Clear val_valid.
5008         (watchpoint_value_print): New function.
5009         (print_it_typical): Use it.  Do not free or clear old_val.  Print
5010         watchpoints even if old_val == NULL.
5011         (watchpoint_check): Use fetch_watchpoint_value.  Check for values
5012         becoming readable or unreadable.
5013         (watch_command_1): Use fetch_watchpoint_value.  Set val_valid.
5014         (do_enable_watchpoint): Likewise.
5015         * breakpoint.h (struct breakpoint): Update comment for val.  Add
5016         val_valid.
5017         * NEWS: Mention watchpoints on inaccessible memory.
5018
5019 2007-02-29  Daniel Jacobowitz  <dan@codesourcery.com>
5020
5021         * Makefile.in (i386-nat.o): Update.
5022         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
5023         i386_use_watchpoints.
5024         * i386-linux-nat.c (_initialize_i386_linux_nat): Call
5025         i386_use_watchpoints.
5026         * i386-nat.c (i386_stopped_data_address): Take two arguments.
5027         (i386_stopped_by_watchpoint): Update call.
5028         (i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
5029         * config/i386/nm-i386.h: Conditionalize definitions on
5030         ! I386_WATCHPOINTS_IN_TARGET_VECTOR.
5031         (i386_use_watchpoints): Declare.
5032         (i386_stopped_data_address): Update.
5033         * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
5034         * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
5035
5036 2008-02-29  Joel Brobecker  <brobecker@adacore.com>
5037
5038         GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
5039         * version.in: Bump version to 6.8.50.20080229-cvs.
5040
5041 2008-02-28  Markus Deuling  <deuling@de.ibm.com>
5042
5043         * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
5044         properly.
5045
5046 2008-02-28  Tom Tromey  <tromey@redhat.com>
5047
5048         * infcmd.c (notice_args_read): Print result of get_inferior_args.
5049
5050 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
5051
5052         * infcmd.c (kill_if_already_running): Make static.  Use
5053         target_require_runnable.
5054         * target.c (target_require_runnable): New.
5055         * target.h (target_require_runnable): Declare.
5056
5057 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
5058
5059         * frame.c (reinit_frame_cache): Only annotate if frames were
5060         previously valid.
5061
5062 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
5063
5064         * regformats/reg-ppc.dat: Rename "ps" to "msr".
5065         * regformats/reg-ppc64.dat: Likewise.
5066
5067 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
5068
5069         * features/Makefile (%.dat): Emit xmltarget statement.
5070
5071         * regformats/regdat.sh: Support xmltarget and xmlarch statments.
5072         Generate code to set gdbserver_xmltarget in init_registers_${name}.
5073
5074         * regformats/arm-with-iwmmxt.dat: Regenerate.
5075         * regformats/mips64-linux.dat: Regenerate.
5076         * regformats/mips-linux.dat: Regenerate.
5077         * regformats/rs6000/powerpc-32.dat: Regenerate.
5078         * regformats/rs6000/powerpc-64.dat: Regenerate.
5079         * regformats/rs6000/powerpc-e500.dat: Regenerate.
5080
5081         * regformats/reg-arm.dat: Add xmlarch statement.
5082         * regformats/reg-i386.dat: Likewise.
5083         * regformats/reg-i386-linux.dat: Likewise.
5084         * regformats/reg-x86-64-linux.dat: Likewise.
5085         * regformats/reg-spu.dat: Likewise.
5086
5087 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
5088
5089         * remote.c (remote_wait, remote_async_wait): Stop if we receive
5090         an error.
5091
5092 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
5093
5094         * utils.c (debug_timestamp): New.
5095         (vfprintf_unfiltered): Print timestamps if requested.
5096         (show_debug_timestamp): New.
5097         (initialize_utils): Register "set debug timestamp".
5098         * NEWS: Mention "set debug timestamp".  Add GDB 6.8 section.
5099
5100 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
5101
5102         * breakpoint.c (skip_prologue_sal): New function.
5103         (resolve_sal_pc): Adjust SAL past prologue if the SAL was
5104         computed from a line number.
5105
5106 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
5107
5108         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml
5109         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
5110         Set PC register type to "code_ptr".
5111         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
5112         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
5113         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
5114         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
5115         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
5116         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
5117         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
5118         Regenerate.
5119
5120 2008-02-27  Ulrich Weigand  <uweigand@de.ibm.com>
5121
5122         * regformats/regdat.sh: Rename init_registers function in
5123         generated file to init_registers_${name}.
5124
5125         * regformats/reg-crisv32.dat: Set "name" to crisv32.
5126         * regformats/reg-ppc64.dat: Set "name" to ppc64.
5127         * regformats/reg-s390x.dat: Set "name" to s390x.
5128
5129 2008-02-26  Greg Law  <glaw@undo-software.com>
5130
5131         * regcache.c (registers_changed): Call reinit_frame_cache.
5132
5133 2008-02-26  Daniel Jacobowitz  <dan@codesourcery.com>
5134
5135         * configure.tgt (sh-*-linux*): Match sh*.  Add glibc-tdep.o.
5136         * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
5137         and svr4_fetch_objfile_link_map.
5138         * Makefile.in (sh-linux-tdep.o): Update.
5139
5140 2008-02-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5141
5142         * amd64-tdep.c (amd64_classify): Add support for decimal float
5143         types.
5144         * i386-tdep.c (i386_return_value): Make 128-bit decimal float
5145         use the struct return convention.
5146
5147 2008-02-26  Nick Roberts  <nickrob@snap.net.nz>
5148
5149         * breakpoint.c (print_one_breakpoint_location): Revert Enb field
5150         to old format.  Discard breakpoint address if shared library is
5151         unloaded.
5152         (breakpoint_1): Adjust formatting of table header accordingly.
5153
5154 2008-02-25  Vladimir Prus  <vladimir@codesourcery.com>
5155
5156        * remote.c (remote_get_threadlist): If the response
5157        is empty, don't try to parse it.
5158
5159 2008-02-23  Vladimir Prus  <vladimir@codesourcery.com>
5160
5161         Unbreak 'target async'.
5162         * serial.c (serial_async): Set the
5163         handler function before enabling async
5164         mode.
5165
5166 2008-02-22  Daniel Jacobowitz  <dan@codesourcery.com>
5167
5168         * solib-svr4.c (enable_break): Convert r_brk to a code address.
5169
5170 2008-02-21  Pedro Alves  <pedro@codesourcery.com>
5171
5172         * remote.c (extended_remote_attach_1): Set attach_flag.
5173         (extended_remote_create_inferior_1): Clear attach_flag.
5174
5175 2008-02-20  Daniel Jacobowitz  <dan@codesourcery.com>
5176
5177         * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
5178         r_brk_offset.
5179         (mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
5180         * solib-svr4.c (solib_svr4_r_brk): New.
5181         (open_symbol_file_object, svr4_current_sos): Always check the
5182         debug base.
5183         (svr4_fetch_objfile_link_map): Do not set debug_base.
5184         (enable_break): Use r_brk if it is set.
5185         (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
5186         (svr4_lp64_fetch_link_map_offsets): Likewise.
5187         * solib-svr4.h (struct link_map_offsets): Add r_brk_offset.
5188
5189 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
5190             Mark Kettenis  <kettenis@gnu.org>
5191
5192         * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
5193         trad_frame_saved_reg.
5194         (trad-frame.h): New include.
5195
5196         (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
5197         instead of frame_obstack_zalloc.
5198         (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.
5199
5200         * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
5201
5202 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
5203
5204         * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
5205         from disassemble_info instead of gdbarch_byte_order.
5206
5207         * mips-tdep.c (gdb_print_insn_mips): Likewise.
5208         * arm-tdep.c (gdb_print_insn_arm): Likewise.
5209
5210 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
5211
5212         * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
5213         gdbarch as parameter.
5214
5215         * gdbarch.{c,h}: Regenerate.
5216
5217         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
5218         parameter.
5219         * mem-break.c (default_memory_insert_breakpoint)
5220         (default_memory_remove_breakpoint): Likewise.
5221         * target.h (default_memory_remove_breakpoint)
5222         (default_memory_insert_breakpoint): Likewise.
5223
5224         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
5225         parameter. Replace current_gdbarch by gdbarch.
5226         * m32r-tdep.c (m32r_memory_insert_breakpoint)
5227         (m32r_memory_remove_breakpoint): Likewise.
5228
5229 2008-02-19  Daniel Jacobowitz  <dan@codesourcery.com>
5230
5231         * MAINTAINERS: Add Vladimir Prus as MI maintainer.
5232
5233 2008-02-19  Joel Brobecker  <brobecker@adacore.com>
5234
5235         * NEWS: Add entry describing Add support improvements.
5236
5237 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
5238
5239         * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
5240         M68K_FP0_REGNUM.
5241
5242 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
5243
5244         * sentinel-frame.c (sentinel_frame_prev_register): Do not call
5245         register_offset_hack anymore.
5246
5247         * regcache.{c,h} (register_offset_hack): Remove.
5248
5249 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
5250
5251         * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.
5252
5253         * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
5254         current_gdbarch by gdbarch.
5255         (hppa64_hpux_find_global_pointer): Likewise.
5256         * hppa-tdep.c (hppa_find_global_pointer): Likewise.
5257         (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
5258         find_global_pointer.
5259
5260         * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
5261         parameter.
5262         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.
5263
5264         * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
5265         of gdbarch_num_regs.
5266
5267         * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
5268         replace current_gdbarch by gdbarch.
5269         (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.
5270
5271 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
5272
5273         * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
5274         and replace current_gdbarch by gdbarch.
5275
5276         (store_register): Update call for exec_one_dummy_insn.
5277         (fetch_register, store_register): Update call of regmap.
5278
5279         * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
5280         parameter and replace current_gdbarch by gdbarch.
5281
5282         (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
5283         the current architecture. Update call for getregs_supplies and
5284         getfpregs_supplies.
5285         (ppcnbsd_fetch_inferior_registers): Likewise.
5286
5287         * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
5288         replace current_gdbarch by gdbarch.
5289         (ppcobsd_fetch_registers, ppcobsd_store_registers): Use
5290         get_regcache_arch to get at the current architecture. Update call for
5291         getfpregs_supplies.
5292
5293 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
5294
5295         * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
5296         variables.
5297
5298 2008-02-15  Markus Deuling  <deuling@de.ibm.com>
5299
5300         * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.
5301
5302 2008-02-14  Vladimir Prus  <vladimir@codesourcery.com>
5303
5304         * NEWS: Mention pending breakpints in MI.
5305
5306 2008-02-14  Markus Deuling  <deuling@de.ibm.com>
5307
5308         * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.
5309
5310 2008-02-13  Markus Deuling  <deuling@de.ibm.com>
5311
5312         Add script to build and test GDB using enable-targets=all.
5313
5314         * gdb_buildall.sh: New file.
5315
5316 2008-02-11  Maxim Grigoriev  <maxim2405@gmail.com>
5317
5318         * NEWS (New native configurations): Xtensa GNU/Linux.
5319         (New targets): Xtensa GNU/Linux.
5320         * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and
5321         xtensa-linux-tdep.o
5322         (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c
5323         (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies.
5324         * configure.tgt (xtensa*-*-linux*): New entry.
5325         * xtensa-config.c (xtensa_tdep): New variable.
5326         (xtensa_config_byte_order, xtensa_config_tdep): Removed.
5327         (rmap): Change format based on new macro XTREG.
5328         (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h.
5329         * xtensa-linux-nat.c: New.
5330         * xtensa-linux-tdep.c: New.
5331         * xtensa-xtregs.c: New.
5332         * xtensa-tdep.h (xtensa_elf_gregset_t): Update.
5333         (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE)
5334         (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros.
5335         (xtensa_register_t): New field coprocessor.
5336         (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected.
5337         * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed.
5338         (xtensa_pseudo_register_read, xtensa_pseudo_register_write):
5339         Update to handle privileged registers.
5340         (xtensa_supply_gregset) Remove exccause and excvaddr registers.
5341         (xtensa_push_dummy_call): Set windowstart register correctly.
5342         (call0_analyze_prologue): Initialize xtensa_default_isa.
5343         (xtensa_derive_tdep): New.
5344         (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and
5345         xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead.
5346         Call xtensa_derive_tdep().
5347         * config/xtensa/linux.mh: New.
5348         * regformats/reg-xtensa.dat: New.
5349
5350 2008-02-09  Aleksandar Ristovski  <aristovski@qnx.com>  (tiny change)
5351
5352         * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
5353         (filenames.h): New include.
5354         * Makefile.in (corelow.o): Add dependency for filenames.h.
5355
5356 2008-02-08  Doug Evans  <dje@google.com>
5357
5358         * source.c (find_and_open_source): Always rewrite absolute filenames.
5359
5360 2008-02-07  Doug Evans  <dje@google.com>
5361
5362         * breakpoint.c: #include "hashtab.h".
5363         (ambiguous_names_p): New fn.
5364         (update_breakpoint_locations): When restoring bp enable status, don't
5365         compare function names if any functions have same name.
5366         * Makefile.in (breakpoint.o): Add hashtab.h dependency.
5367
5368 2008-02-07  Joel Brobecker  <brobecker@adacore.com>
5369
5370         * ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
5371         instead of just a VEC*. Update use of SV.
5372         (ada_make_symbol_completion_list): Update symbol_completion_add calls.
5373
5374 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
5375
5376         * NEWS: Put all new commands since gdb-6.7 together.
5377
5378 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
5379
5380         * ada-lang.c: #include "vec.h".
5381         (struct string_vector, new_string_vector, string_vector_append):
5382         Delete.
5383         (char_ptr): New typedef.
5384         (DEF_VEC_P (char_ptr)): New VEC type.
5385         (symbol_completion_add): Update profile to take the new VEC type
5386         instead of the old string_vector structure. Update code accordingly.
5387         (ada_make_symbol_completion_list): Use the new VEC type instead of
5388         the old string_vector structure, and update the code accordingly.
5389         * Makefile.in (ada-lang.o): Add dependency on vec.h.
5390
5391 2008-02-06  Pierre Muller  <muller@ics.u-strasbg.fr>
5392
5393         * p-exp.y: Set current_type in missing places.
5394         (leftdiv_is_integer): New static variable.
5395         Typecast right operand of BINOP_DIV to long_double if both operands
5396         are integers.
5397
5398 2008-02-06  Maciej W. Rozycki  <macro@mips.com>
5399
5400         * remote-mips.c (set_breakpoint): Rename to...
5401         (mips_set_breakpoint): ... this.
5402         (clear_breakpoint): Rename to...
5403         (mips_clear_breakpoint): ... this.
5404         (common_breakpoint): Rename to...
5405         (mips_common_breakpoint): ... this.
5406         (check_lsi_error): Rename to...
5407         (mips_check_lsi_error): ... this.
5408
5409 2007-02-05  Joel Brobecker  <brobecker@adacore.com>
5410
5411         * language.h (struct language_defn): Add new field
5412         la_make_symbol_completion_list.
5413         * symtab.c (default_make_symbol_completion_list): Renames
5414         make_symbol_completion_list.
5415         (make_symbol_completion_list): New function.
5416         * symtab.h (default_make_symbol_completion_list): Add declaration.
5417         * langauge.c (unknown_language): Set la_make_symbol_completion_list.
5418         (auto_language, local_language): Likewise.
5419         * objc-lang.c (objc_language_defn): Likewise.
5420         * scm-lang.c (scm_language_defn): Likewise.
5421         * m2-lang.c (m2_language_defn): Likewise.
5422         * f-lang.c (f_language_defn): Likewise.
5423         * jv-lang.c (java_language_defn): Likewise.
5424         * p-lang.c (pascal_language_defn): Likewise.
5425         * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
5426         (minimal_language_defn): Likewise.
5427         * ada-lang.c (struct string_vector): New structure.
5428         (new_string_vector, string_vector_append, ada_unqualified_name)
5429         (add_angle_brackets, symbol_completion_match, symbol_completion_add)
5430         (ada_make_symbol_completion_list): New functions.
5431         (ada_language_defn): Set la_make_symbol_completion_list.
5432         * ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
5433         this function is static.
5434
5435 2008-02-05  Kevin Buettner  <kevinb@redhat.com>
5436
5437         * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
5438         to account for call site optimizations.
5439
5440 2008-02-05  Andrzej Zaborowski  <balrogg@gmail.com>
5441
5442         * tracepoint.c (read_actions): Handle end-of-text indicator
5443         in action list properly.  (Committed by Jim Blandy)
5444
5445 2008-02-05  Jim Blandy  <jimb@red-bean.com>
5446
5447         * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
5448         pseudoregister, not an internal error.
5449         Reported by: Andrzej Zaborowski
5450
5451 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
5452
5453         * varobj.c (c_value_of_variable): Use xstrdup.
5454
5455 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
5456
5457         Update stored rendition of varobj value when format changes.
5458         * varobj.c (varobj_set_display_format): Recomputed
5459         print_value.
5460         (c_value_of_variable): Return print_value.
5461
5462 2008-02-03  Doug Evans  <dje@google.com>
5463
5464         * eval.c (evaluate_subexp_standard): Fix type of result of mixed
5465         integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
5466         * valops.c (value_one): New function.
5467         * value.h (value_one): Declare.
5468
5469         Fix argument promotion for binary arithmetic ops for C.
5470         * valarith.c (unop_result_type): New fn.
5471         (binop_result_type): New fn.
5472         (value_binop): Move result type computation to binop_result_type.
5473         (value_pos, value_neg, value_complement): Move result type
5474         computation to unop_result_type.
5475
5476         PR 2384
5477         * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
5478         Return basetype, fieldno if found.  All callers updated.
5479         Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
5480         objfile.
5481         * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
5482         * symfile.h (fill_in_vptr_fieldno): Delete.
5483
5484 2008-02-02  Doug Evans  <dje@google.com>
5485
5486         * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.
5487
5488         * typeprint.c (*): Whitespace cleanup.
5489
5490 2008-02-02  Mark Kettenis  <kettenis@gnu.org>
5491             Luis Machado  <luisgpm@br.ibm.com>
5492             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5493
5494         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
5495         don't fit into registerson the stack the way GCC does.
5496
5497 2008-02-01  Joel Brobecker  <brobecker@adacore.com>
5498
5499         * symtab.c (symbol_set_names): Do not add an entry in the demangling
5500         hash table for Ada symbols. Just store the linkage name as is,
5501         and leave the demangled_name as NULL.
5502
5503 2007-02-01  Joel Brobecker  <brobecker@adacore.com>
5504
5505         * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
5506         in the global scope.
5507         (new_symbol): Likewise.
5508
5509 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
5510
5511         * breakpoint.c (break_command_1): Return void.
5512         (break_command_really): Return void.  Rethrow
5513         exceptions instead of returning.
5514         (gdb_breakpoint): Remove the error_message parameter.
5515         Return void.  Rename to set_breakpoint.
5516         * gdb.h (gdb_breakpoint): Rename and move to...
5517         * breakpoint.h (set_breakpoint): ...here.
5518         * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
5519         event hooks even if exception is thrown.  Adjust to
5520         gdb_breakpoint interface changes.
5521
5522
5523 2008-02-01  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5524
5525         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
5526         float in both first and second word in the doubleword, to support
5527         old and new ABIs.
5528
5529 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
5530
5531         Properly rethrow exception.  This fixes errors
5532         about non-existent functions for -break-insert.
5533         * breakpoint.c (break_command_really): Use throw_exception
5534         for rethrowing.  If rethrowing, don't print the exception.
5535
5536 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5537
5538         * NEWS: Mention Decimal Floating Point support.
5539
5540 2008-01-31  Joel Brobecker  <brobecker@adacore.com>
5541
5542         * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
5543         value type to builtin_type_void_func_ptr.
5544
5545 2008-01-31  Andreas Krebbel  <krebbel1@de.ibm.com>
5546
5547         * s390-tdep.c (is_float_singleton, is_float_like,
5548         alignment_of, s390_return_value): Make checks for
5549         TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.
5550
5551 2008-01-31  Luis Machado  <luisgpm@br.ibm.com>
5552             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5553
5554         * infcmd.c (default_print_registers_info): Also print hex
5555         raw contents for TYPE_CODE_DECFLOAT registers.
5556         * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
5557         * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
5558         (rs6000_register_name): Add support for DFP pseudo-registers.
5559         (rs6000_pseudo_register_type): Likewise.
5560         rs6000_pseudo_register_reggroup_p): Likewise.
5561         (ppc_pseudo_register_read): New function.
5562         (ppc_pseudo_register_write): Likewise.
5563         (rs6000_pseudo_register_read): Likewise.
5564         (rs6000_pseudo_register_write): Likewise.
5565         (e500_pseudo_register_read): Move checks to
5566         rs6000_pseudo_register_read.
5567         (e500_pseudo_register_write): Move checks to
5568         rs6000_pseudo_register_write.
5569         (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum.  Install
5570         rs6000_pseudo_register_read and rs6000_pseudo_register_write
5571         in gdbarch if SPE or DFP is available.  Adjust gdbarch's
5572         num_pseudo_regs to account for DFP pseudo regs.
5573
5574 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5575
5576         * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
5577         * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
5578         (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
5579         rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
5580         e500_pseudo_register_read, e500_pseudo_register_write): Use
5581         IS_SPE_PSEUDOREG macro.
5582         (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
5583         (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
5584         Remove initialization of tdep->ppc_ev31_regnum.
5585
5586 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
5587
5588         * printcmd.c (print_formatted): Handle references as for unformatted
5589         prints.
5590
5591 2008-01-30  Joel Brobecker  <brobecker@adacore.com>
5592
5593         * eval.c (evaluate_subexp_standard): Add handling of user
5594         registers when in EVAL_AVOID_SIDE_EFFECTS mode.
5595
5596 2008-01-30  Pierre Muller  <muller@ics.u-strasbg.fr>
5597
5598         * eval.c (evaluate_subexp_standard): Support
5599         BINOP_INTDIV opcode.
5600
5601 2008-01-30  Paul N. Hilfinger  <hilfinger@adacore.com>
5602
5603         * valarith.c (value_binop): Add floating-point BINOP_MIN and
5604         BINOP_MAX cases.
5605         For BINOP_EXP, use length and signedness of left operand only for
5606         result, as for shifts.
5607         For integral operands to BINOP_EXP, use new integer_pow and
5608         uinteger_pow functions so as to get full range of results.
5609         (integer_pow): New function.
5610         (uinteger_pow): New function.
5611
5612 2008-01-30  Vladimir Prus  <vladimir@codesourcery.com>
5613
5614         Use vector for varobj_list_children interface.
5615         * gdb/varobj.c (varobj_list_children): Return vector
5616         of varobjs.
5617         * gdb/varobj.h (varobj_list_children): Adjust
5618         prototype.
5619         (varobj_p): Declare.  Declare vector thereof.
5620         * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
5621         for varobj_list_children change.
5622         * Makefile.in (varobj_h): Update dependencies.
5623
5624 2008-01-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5625
5626         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
5627         TYPE_CODE_DECFLOAT arguments.
5628         (ppc64_sysv_abi_push_dummy_call) Likewise.
5629         (get_decimal_float_return_value): New function.
5630         (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
5631         values by calling get_decimal_float_return_value.
5632         (ppc64_sysv_abi_return_value): Likewise.
5633
5634 2008-01-30  Nick Roberts  <nickrob@snap.net.nz>
5635
5636         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file):  Add field
5637         for preprocessor macro information.  Formatting changes.
5638
5639 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
5640
5641         * remote.c (struct remote_state): Add cached_wait_status.
5642         (remote_exec_file): New variable.
5643         (PACKET_vAttach, PACKET_vRun): New constants.
5644         (extended_remote_restart): Do not query for status.
5645         (struct start_remote_args): New.
5646         (remote_start_remote): Take it as a second argument.  Check
5647         whether the target is running.  Issue an error for non-running
5648         non-extended targets.  Cache the wait status.  Set inferior_ptid
5649         here.
5650         (remote_open_1): Prompt to disconnect non-running targets.  Make
5651         sure the target is marked running.  Do not set inferior_ptid here.
5652         Update call to remote_start_remote.  Do not call remote_check_symbols
5653         if the target is not running.
5654         (remote_detach_1): Rename from remote_detach.  Take an EXTENDED
5655         argument.  Handle a non-running target.
5656         (remote_detach): Use it.
5657         (extended_remote_detach): New.
5658         (remote_disconnect): Fix typo.  Use remoute_mourn_1.
5659         (extended_remote_attach_1, extended_remote_attach)
5660         (extended_async_remote_attach): New.
5661         (remote_vcont_resume): Remove unused variable.
5662         (remote_wait, remote_async_wait): Use any cached wait status.
5663         (putpkt_binary, getpkt): Clear any cached wait status.
5664         (extended_remoute_mourn_1): New.
5665         (extended_remote_mourn): Use it.
5666         (extended_async_remote_mourn, extended_remote_run): New.
5667         (extended_remote_create_inferior_1): New.
5668         (extended_remote_create_inferior): Use it.
5669         (extended_remote_async_create_inferior): Likewise.
5670         (remote_xfer_partial): Skip for non-executing targets.
5671         (init_extended_remote_ops): Set to_detach and to_attach.
5672         (init_extended_async_remote_ops): Likewise.  Use
5673         extended_async_remote_mourn.
5674         (_initialize_remote): Register vAttach, vRun, and
5675         set remote exec-file.
5676         * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.
5677
5678 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
5679
5680         * Makefile.in (symfile.o): Update.
5681         * NEWS: Mention exec tracing support.
5682         * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
5683         exec events.
5684         * infcmd.c (kill_if_already_running, detach_command)
5685         (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
5686         * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
5687         (follow_exec): Do not check may_follow_exec.  Do not mourn and push
5688         targets.  Apply the sysroot path to the loaded executable.  Use
5689         no_shared_libraries.
5690         * linux-nat.c (linux_child_follow_fork): Print fork following
5691         messages if verbose.
5692         (kill_wait_callback): Kill again before waiting a second time.
5693         * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
5694         no_shared_libraries.
5695
5696 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
5697
5698         * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.
5699
5700 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
5701
5702         * nto-tdep.h: Remove #include "defs.h".
5703         * nto-tdep.c: Add #include "defs.h".
5704         * Makefile.in (nto_tdep_h): Update dependencies.
5705         (nto-tdep.o): Likewise.
5706
5707 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
5708
5709         * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
5710         and use it.
5711         (proceed, start_remote): Update call to wait_for_inferior.
5712         * inferior.h (wait_for_inferior): Update declaration.
5713         * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
5714         solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
5715         * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
5716         TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.
5717
5718 2008-01-29  Aleksandar Ristovski  <aristovski@qnx.com>
5719
5720         * varobj (adjust_value_for_child_access): Added checking for
5721         returned value from gdb_value_ind.
5722         (c_describe_child): Likewise.
5723         (cplus_describe_child): Fixed a typo.
5724
5725 2008-01-29  Jim Blandy  <jimb@red-bean.com>
5726
5727         * MAINTAINERS: Update my info.
5728
5729 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
5730
5731         Use multiple locations for hardware watchpoints.
5732         This eliminates the need to traverse value chain, doing
5733         various checks, in three different places.
5734
5735         * breakpoint.h (struct bp_location): New fields
5736         lengths and watchpoint_type.
5737         (struct breakpoint): Remove the val_chain field.
5738         * breakpoint.c (is_hardware_watchpoint): New.
5739         (free_valchain): Remove.
5740         (update_watchpoint): New.
5741         (insert_bp_location): For hardware watchpoint, just
5742         directly insert it.
5743         (insert_breakpoints): Call update_watchpoint_locations
5744         on all watchpoints.  If we have failed to insert
5745         any location of a hardware watchpoint, remove all inserted
5746         locations.
5747         (remove_breakpoint): For hardware watchpoints, directly
5748         remove location.
5749         (watchpoints_triggered): Iterate over locations.
5750         (bpstat_stop_status): Use only first location of
5751         a resource watchpoint.
5752         (delete_breakpoint): Don't call free_valchain.
5753         (print_one_breakpoint): Don't print all
5754         locations for watchpoints.
5755         (breakpoint_re_set_one): Use update_watchpoint for
5756         watchpoints.
5757
5758 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
5759
5760         Don't reset watchpoint block on solib load.
5761
5762         * breakpoint.c (insert_bp_location): For watchpoints,
5763         recompute condition.
5764         (breakpoint_re_set_one): Instead of recomputing value
5765         and condition for watchpoints, just reset value and
5766         let insert_breakpoints/insert_bp_location recompute it.
5767         Don't do anything about disabled watchpoint.
5768
5769 2008-01-29  Pierre Muller  <muller@ics.u-strasbg.fr>
5770
5771         * valarith.c (value_binop): Handle unsigned integer
5772         division by zero.
5773
5774 2008-01-28  Kevin Buettner  <kevinb@redhat.com>
5775
5776         * mn10300-tdep.c (mn10300_analyze_prologue): Check for an
5777         instruction pattern that appears frequently in position
5778         independent code.  Fix bug in code which looks for "fmov" and
5779         backtracks if no "fmov" is found.
5780
5781 2008-01-28  Doug Evans  <dje@google.com>
5782
5783         * dbxread.c (read_dbx_symtab): Fix indentation.
5784         Reformat comments to 80 columns.
5785         Move local var def closer to only use.
5786
5787 2008-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
5788
5789         * fork-child.c (SHELL_FILE): Remove #ifndef.
5790         (fork_inferior): Remove SHELL_COMMAND_CONCAT.
5791
5792 2008-01-25  Pierre Muller  <muller@ics.u-strasbg.fr>
5793
5794         * i386-tdep.c (i386_skip_noop): New function.
5795         (i386_analyze_prologue): Call i386_skip_noop function.
5796
5797 2008-01-24  Michael Snyder  <msnyder@specifix.com>
5798
5799         * procfs.c (procfs_xfer_partial): Comment, cut/paste error.
5800         * win32-nat.c (win32_xfer_partial): Ditto.
5801         * target.c (default_xfer_partial): Minor whitespace adjustment.
5802
5803 2008-01-24  Pedro Alves  <pedro@codesourcery.com>
5804
5805         * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
5806         strip bit 1 even if pc doesn't point to thumb code.
5807
5808 2008-01-23  Daniel Jacobowitz  <dan@codesourcery.com>
5809
5810         * remote.c (remote_wait): Handle SIGINT between packets.
5811         (remote_async_wait): Likewise.
5812
5813 2008-01-23  Vladimir Prus  <vladimir@codesourcery.com>
5814             Chris Demetriou  <cgd@google.com>
5815
5816         * thread.c (add_thread_silent): Renamed
5817         from add_thread.
5818         (print_thread_events): New variable definition.
5819         (show_print_thread_events): New function.
5820         (_initialize_thread): Add "set print thread-events" and
5821         "show print thread-events" commands.
5822         (add_thread): Announce new thread.
5823         * gdbthread.h (add_thread_silent): Declare.
5824         (print_thread_events): New variable declaration.
5825         * inf-ttrace.c (inf_ttrace_wait): Don't
5826         inform about new thread, as add_thread is always
5827         called too, and will take care of that.
5828         * infrun.c (handle_inferior_event): Likewise.
5829         * procfs.c (procfs_wait): Likewise.
5830         * remote.c (remote_currthread): Likewise.
5831         * sol-thread.c (sol_thread_wait): Likewise.
5832         * win32-nat.c (get_win32_debug_event): Likewise.
5833         * linux-thread-db.c (attach_thread): Likewise.
5834         Remove the verbose parameter.
5835         (check_event): Make detach_thread be verbose
5836         only if print_thread_events is set.
5837         * linux-nat.c (lin_lwp_attach_lwp): Don't inform
5838         about new thread.  This is called only from
5839         linux-thread-db.c:attach_thread, which will take care.
5840         Remove the verbose parameter.
5841         * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.
5842
5843 2008-01-23  Nick Roberts  <nickrob@snap.net.nz>
5844
5845         * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.
5846
5847 2008-01-22  Vladimir Prus  <vladimir@codesourcery.com>
5848
5849         * breakpoint.c (break_command_really): New parameter
5850         ignore_count.
5851         (break_command_1): Pass 0 as
5852         ignore_count to break_command_really.
5853         (gdb_breakpoint): Pass ignore_count to
5854         break_command_really.
5855
5856 2008-01-21  Kevin Buettner  <kevinb@redhat.com>
5857
5858         * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
5859         sigcontext struct via pointer.
5860         (struct sigframe comment): Update to show new field `psc'.
5861
5862 2008-01-21  Vladimir Prus  <vladimir@codesourcery.com>
5863
5864         * infrun.c (handle_inferior_event): If
5865         we failed to remove breakpoints, error,
5866         don't try to increment PC by hand.
5867
5868 2008-01-18  Nick Hudson  <nick.hudson@dsl.pipex.com>
5869
5870         Add NetBSD/hppa target and host support.
5871
5872         * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
5873         (hppabsd_gregset): Move to ...
5874         (hppabsd_regset_from_core_section): Rename
5875         hppaobsd_regset_from_core_section and move to ...
5876         (hppabsd_find_global_pointer): Update comment.
5877         (hppabsd_init_abi): Make global. Do not register
5878         hppabsd_regset_from_core_section.
5879         (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
5880         move to ...
5881         (_initialize_hppabsd_tdep): Move to ...
5882         * hppaobsd-tdep.c: ... here. New file.
5883         * hppnbsd-tdep.c: New file.
5884         * hppnbsd-nat.c: New file.
5885         * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
5886         (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
5887         (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
5888         (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
5889         * configure.host (hppa*-*-netbsd*): New entry.
5890         * configure.tgt (hppa*-*-netbsd*): New entry.
5891         (hppa*-*-openbsd*): Update.
5892         * NEWS (New native configuration): Mention NetBSD/hppa.
5893         (New targets): Mention NetBSD/hppa.
5894
5895 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
5896
5897         * gdbarch.sh (function_list): Add new property bits_big_endian to
5898         gdbarch structure.
5899         * gdbarch.{c,h}: Regenerate.
5900
5901         * value.c (struct value): Replace BITS_BIG_ENDIAN by
5902         gdbarch_bits_big_endian (comment).
5903         (unpack_field_as_long, modify_field): Likewise.
5904         * value.h: Likewise (comment).
5905         * valops.c (value_slice): Likewise.
5906         * valarith.c (value_subscript, value_bit_index): Likewise.
5907         * gdbtypes.h (field): Likewise (comment).
5908         * eval.c (evaluate_subexp_standard): Likewise.
5909         * dwarf2read.c (dwarf2_add_field): Likewise.
5910         * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
5911         (move_bits, ada_value_assign, value_assign_to_component): Likewise.
5912
5913         * defs.h (BITS_BIG_ENDIAN): Remove.
5914
5915 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
5916
5917         * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
5918         function calls.
5919         * m2-exp.y (yylex): Likewise.
5920         * objc-exp.y (yylex): Likewise.
5921
5922         * defs.h (DEPRECATED_STREQN): Remove.
5923
5924 2008-01-17  H.J. Lu  <hjl.tools@gmail.com>
5925
5926         * MAINTAINERS: Update my email address.
5927
5928 2008-01-17  Jim Blandy  <jimb@codesourcery.com>
5929
5930         * README: Mention gdbserver/README.
5931
5932 2008-01-17  Pierre Muller  <muller@ics.u-strasbg.fr>
5933
5934         * valarith.c (value_binop): Handle BINOP_INTDIV
5935         for unsigned and signed integers.
5936
5937 2008-01-17  Ulrich Weigand  <uweigand@de.ibm.com>
5938
5939         * s390-tdep.c (s390_gdbarch_init): Set default long double
5940         type to 128-bit IEEE quad.
5941
5942 2008-01-17  Joel Brobecker  <brobecker@adacore.com>
5943
5944         * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
5945
5946 2008-01-16  Mark Kettenis  <kettenis@gnu.org>
5947
5948         * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.
5949
5950         * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
5951         * value.c: All callers changed.
5952
5953 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
5954
5955         * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
5956         DEPRECATED_STREQ by its expression.
5957         * coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
5958         * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
5959         (scan_xcoff_symtab): Likewise.
5960         * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
5961         * f-lang.c (find_common_for_function): Likewise.
5962         * objc-exp.y (parse_number): Likewise.
5963
5964         * defs.h (DEPRECATED_STREQ): Remove.
5965
5966 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
5967
5968         * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
5969         * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
5970         get_frame_arch to get at the current_architecture. Update AM33_MODE
5971         call.
5972         (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
5973         (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
5974         architecture.
5975         (set_reg_offsets, mn10300_analyze_prologue): Fix indentation.
5976
5977 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
5978
5979         * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
5980         parameter.
5981         * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.
5982
5983         (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
5984         current_gdbarch by gdbarch. Update caller.
5985
5986         * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
5987         (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
5988         the current architecture. Update calls of
5989         amd64_native_gregset_supplies_p.
5990         * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
5991         (amd64bsd_store_inferior_registers): Likewise.
5992
5993 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
5994
5995         * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
5996         Replace current_gdbarch by gdbarch. Update caller.
5997
5998 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
5999
6000         * dbxread.c (repeated_header_complaint, dbx_symfile_init)
6001         (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
6002         (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
6003         (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
6004         (stabsect_build_psymtabs): Fix indentation.
6005
6006 2008-01-15  Michael Snyder  <msnyder@specifix.com>
6007
6008         * corelow.c (core_xfer_partial): Comment, cut/paste error.
6009
6010 2008-01-14  Pierre Muller  <muller@ics.u-strasbg.fr>
6011
6012         * win32-nat.c (win32_create_inferior): Restore code calling
6013         CloseHandle on ProcessInformation structure.
6014
6015 2008-01-13  Nick Hudson  <nick.hudson@dsl.pipex.com>
6016
6017         * configure.ac: Check for void * as 3 argument of ptrace.
6018         * configure: regenerate.
6019
6020 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
6021
6022         * alpha-tdep.c (alpha_heuristic_proc_start)
6023         (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
6024         current_gdbarch by gdbarch.
6025
6026         (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
6027         current architecture by frame_info. Update alpha_heuristic_proc_start
6028         call.
6029
6030         (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
6031         get_frame_arch to get at the current architecture by frame_info. Update
6032         alpha_sigtramp_register_address call.
6033
6034         * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
6035         current_gdbarch by gdbarch. Update caller.
6036         (convert_to_extended, convert_from_extended): Add endianess parameter
6037         for comparison. Update caller.
6038         (arm_extract_return_value, arm_store_return_value): Use
6039         get_regcache_arch to get at the current architecture.
6040
6041         * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
6042         current_gdbarch by gdbarch. Update caller.
6043         (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
6044         gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.
6045
6046         * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
6047         gdbarch as parameter. Update caller.
6048         (h8300_init_frame_cache): Add gdbarch as parameter. Replace
6049         current_gdbarch by gdbarch. Update caller.
6050
6051         * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
6052         update caller. Replace current_gdbarch by gdbarch.
6053
6054         * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
6055         the current architecture. Replace current_gdbarch by gdbarch.
6056         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
6057         (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
6058         expression. Add gdbarch as parameter and replace current_gdbarch with
6059         it. Update caller.
6060         (M6811_TDEP): Remove.
6061         (m68hc11_frame_prev_register): Use get_frame_arch to get at the current
6062         architecture.
6063         (m68hc11_scan_prologue): Add gdbarch as parameter. Replace
6064         current_gdbarch by gdbarch. Update caller.
6065
6066         * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
6067         update caller.
6068         (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
6069         by gdbarch.
6070
6071         * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
6072         caller. Relace current_gdbarch by gdbarch.
6073         (altivec_register_p, spe_register_p): Likewise.
6074         * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
6075         parameter.
6076         * ppc-linux-nat.c (fetch_register, store_register): Update caller of
6077         altivec_register_p and spe_register_p.
6078
6079         * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
6080         caller. Replace current_gdbarch by gdbarch.
6081         (score_analyze_prologue): use get_frame_arch to get at the current
6082         architecture.
6083
6084         * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
6085         * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
6086         current_gdbarch by gdbarch. Update caller.
6087         (sparc_frame_cache): Use get_frame_arch to get at the current
6088         architecture.
6089         * sparce64-tdep.c (sparc64_skip_prologue): Update call of
6090         sparc_analyze_prologue.
6091
6092         * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
6093         parameter.
6094
6095 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
6096
6097         * exec.c: #include "arch-utils.h"
6098          (print_section_info): Use gdbarch_from_bfd to get at the
6099         current architecture. Replace current_gdbarch. Fix indention. Replace
6100         deprecated_print_address_numeric by paddress.
6101         * Makefile.in (exec.o) Add dependency to arch-utils.h.
6102
6103         * valprint.c (val_print_string): Replace
6104         deprecated_print_address_numeric.
6105         * tracepoint.c (trace_mention, scope_info): Likewise.
6106         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
6107         (print_symbol, print_partial_symbols, maintenance_info_psymtabs)
6108         (maintenance_check_symtabs): Likewise.
6109         * symfile.c (list_overlays_command): Likewise.
6110         * stack.c (frame_info, print_block_frame_labels): Likewise.
6111         * printcmd.c (print_address, print_address_demangle)
6112         (address_info): Likewise.
6113         * corefile.c (memory_error): Likewise.
6114         * infcmd.c (jump_command): Likewise.
6115         * breakpoint.c (insert_bp_location, describe_other_breakpoints)
6116         (mention, delete_breakpoint): Likewise.
6117         * c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
6118         * dwarf2read.c (dump_die): Likewise.
6119         * ada-valprint.c (ada_val_print_1): Likewise.
6120         * f-valprint.c (f_val_print): Likewise.
6121         * linux-fork.c (info_forks_command): Likewise.
6122         * m32r-com.c (m32r_load_section, m32r_load)
6123         (m32r_upload_command): Likewise.
6124
6125         * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
6126
6127 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
6128
6129         * gdbarch.sh (skip_prologue): Add gdbarch
6130         as parameter.
6131         * gdbarch.{c,h}: Regenerate.
6132
6133         * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
6134         * amd64-tdep.c (amd64_skip_prologue): Likewise.
6135         * avr-tdep.c (avr_skip_prologue): Likewise.
6136         * cris-tdep.c (cris_skip_prologue): Likewise.
6137         * frv-tdep.c (frv_skip_prologue): Likewise.
6138         * h8300-tdep.c (h8300_skip_prologue): Likewise.
6139         * hppa-tdep.c (hppa_skip_prologue): Likewise.
6140         * i386-tdep.c (i386_skip_prologue): Likewise.
6141         * ia64-tdep.c (ia64_skip_prologue): Likewise.
6142         * iq2000-tdep.c (iq2000_skip_prologue): Likewise.
6143         * m32r-tdep.c (m32r_skip_prologue): Likewise.
6144         * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
6145         * m68k-tdep.c (m68k_skip_prologue): Likewise.
6146         * m88k-tdep.c (m88k_skip_prologue): Likewise.
6147         * mep-tdep.c (mep_skip_prologue): Likewise.
6148         * mips-tdep.c (mips_skip_prologue): Likewise.
6149         * mn10300-tdep.c (mn10300_skip_prologue): Likewise.
6150         * mt-tdep.c (mt_skip_prologue): Likewise.
6151         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
6152         * score-tdep.c (score_skip_prologue): Likewise.
6153         * sh64-tdep.c (sh64_skip_prologue): Likewise.
6154         * sh-tdep.c (sh_skip_prologue): Likewise.
6155         * sparc64-tdep.c (sparc64_skip_prologue): Likewise.
6156         * sparc-tdep.c (sparc32_skip_prologue): Likewise.
6157         * spu-tdep.c (spu_skip_prologue): Likewise.
6158         * v850-tdep.c (v850_skip_prologue): Likewise.
6159         * vax-tdep.c (vax_skip_prologue): Likewise.
6160         * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
6161         * xtensa-tdep.c (xtensa_skip_prologue): Likewise.
6162
6163         * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
6164         current_gdbarch by gdbarch.
6165         * m32c-tdep.c (m32c_skip_prologue): Likewise.
6166         * s390-tdep.c (s390_skip_prologue): Likewise.
6167
6168 2008-01-10  Doug Evans  <dje@google.com>
6169
6170         * defs.h (struct continuation_arg): Fix typo in comment.
6171         * target.c (target_translate_tls_address): Fix comment spelling error.
6172
6173 2008-01-09  Thiago Jung Bauermann  <bauerman@br.ibm.com>
6174
6175         * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
6176         (DOUBLEST_SCAN_FORMAT): Likewise.
6177         * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
6178         * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
6179         * c-exp.y (parse_number): Likewise.
6180         * jv-exp.y (parse_number): Likewise.
6181         * objc-exp.y (parse_number): Likewise.
6182         * p-exp.y (parse_number): Likewise.
6183
6184 2008-01-09  Joel Brobecker  <brobecker@adacore.com>
6185
6186         * gdbtypes.c (create_array_type): Add handling of null Ada arrays.
6187         (check_typedef): Likewise.
6188
6189 2008-01-09  Luis Machado  <luisgpm@br.ibm.com>
6190
6191         * printcmd.c (printf_command): Add seen_big_h, seen_big_d and
6192         seen_double_big_d, treat the new H, D, and DD modifiers as length
6193         modifiers.
6194
6195 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
6196
6197         * dwarf2read.c (read_enumeration_type): Add comment.
6198
6199 2008-01-08  Thiago Jung Bauermann  <bauerman@br.ibm.com>
6200
6201         * config.in: Regenerate.
6202
6203 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
6204
6205         * ada-lang.c (ada_convert_actual): Renames convert_actual.
6206         Make non-static.
6207         (ada_convert_actuals): Delete.
6208         * ada-lang.h (ada_convert_actual): Add declaration.
6209         (ada_convert_actuals): Remove declaration.
6210         * infcall.c: #include "ada-lang.h".
6211         (value_arg_coerce): Add new parameter sp.  Update function
6212         documetnation.  Add handling of Ada function call parameters.
6213         * Makefile.in (infcall.o): Update dependencies.
6214
6215 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
6216
6217         * ada-lang.c (ensure_lval): Fix value lval kind.
6218         (convert_actual): Add handling for arguments passed by reference.
6219
6220 2008-01-08  Doug Evans  <dje@google.com>
6221
6222         * dbxread.c (read_dbx_symtab): Fix indentation.
6223
6224 2008-01-07  Thiago Jung Bauermann  <bauerman@br.ibm.com>
6225
6226         * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
6227         (valarith.o): Depend on dfp.h.
6228         (valops.o): Likewise.
6229         * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
6230         (set_decnumber_context): New function.
6231         (decimal_check_errors): Likewise.
6232         (decimal_from_number): Likewise.
6233         (decimal_to_number): Likewise.
6234         (decimal_from_string): Use set_decnumber_context and
6235         decimal_check_errors.
6236         (decimal_from_integral): New function.
6237         (decimal_from_floating): Likewise.
6238         (decimal_to_double): Likewise.
6239         (promote_decimal): Likewise.
6240         (decimal_binop): Likewise.
6241         (decimal_is_zero): Likewise.
6242         (decimal_compare): Likewise.
6243         (decimal_convert): Likewise.
6244         * dfp.h (decimal_from_integral): New prototype.
6245         (decimal_from_floating): Likewise.
6246         (decimal_to_double): Likewise.
6247         (decimal_binop): Likewise.
6248         (decimal_is_zero): Likewise.
6249         (decimal_compare): Likewise.
6250         (decimal_convert): Likewise.
6251         * eval.c (evaluate_subexp_standard): Remove expect_type argument from
6252         call to value_from_decfloat.
6253         * valarith.c: Include dfp.h.
6254         (value_args_as_decimal): New function.
6255         (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
6256         (value_logical_not): Likewise.
6257         (value_equal): Likewise.
6258         (value_less): Likewise.
6259         (value_pos): Likewise.
6260         (value_neg): Formatting fix.
6261         * valops.c: Include dfp.h.
6262         (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
6263         * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
6264         (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
6265         (value_from_decfloat): Remove expect_type argument.
6266         * value.h (value_from_decfloat): Update prototype.
6267
6268 2008-01-07  Vladimir Prus  <vladimir@codesourcery.com>
6269
6270         Ignore change in name of dynamic linker during
6271         execution on Solaris.  This also unbreaks pending breakpoints.
6272
6273         * solist.h (struct target_so_ops): New field same.
6274         * solib-svr4.c (svr4_same): New.
6275         (_initialize_svr4_solib): Register svr4_same.
6276         * solib.c (update_solib_list): Use ops->same, if available.
6277
6278 2008-01-06  Christopher Faylor  <me+cygwin@cgf.cx>
6279
6280         * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
6281         when using MS-DOS paths.
6282
6283 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
6284
6285         * NEWS: Mention --pid and --core command line behaviour changes.
6286
6287 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
6288
6289         * main.c (captured_main): Remove 'count' varible and the
6290         ALIGN_STACK_ON_ENTRY block that used it.  Error out if --core and
6291         --pid options were issued simultaneously.  If an explicit pid
6292         option was passed, don't fallback to core file.  Detect extra
6293         arguments better in the presence of explicit pid or core
6294         arguments.
6295
6296 2008-01-05  Joel Brobecker  <brobecker@adacore.com>
6297
6298         * ada-lang.c (ada_which_variant_applies): Correctly compute
6299         the value of the discriminant when the variant record is packed.
6300
6301 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
6302
6303         * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
6304         that are used to differentiate homonyms.
6305
6306 2008-01-04  Jerome Guitton  <guitton@adacore.com>
6307
6308         * ada-lang.c (decode_packed_array_type): Avoid a seg fault
6309         when the type is an anonymous pointer type.
6310         (ada_check_typedef): Avoid a seg fault when the type is null.
6311         * ada-typeprint.c (print_array_type): Add support for pointer
6312         to packed arrays.
6313
6314 2008-01-04  Paul N. Hilfinger  <hilfinger@adacore.com>
6315
6316         * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.
6317
6318 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
6319
6320         * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
6321         EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.
6322
6323 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
6324
6325         * ada-exp.y (chop_separator): New function.
6326         (write_selectors): Rewrite to re-use chop_separator.
6327         (ada_nget_field_index, get_symbol_field_type): New functions.
6328         (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
6329         expressions.
6330
6331 2008-01-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
6332
6333         * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
6334         of SYMBOL_VALUE when working with function symbols.
6335
6336 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
6337
6338         * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
6339         expressions.  These expressions do not need to be rewriten.
6340
6341 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
6342
6343         * dwarf2read.c (read_enumeration_type): Flag type as stub if
6344         the given die is a declaration.
6345
6346 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
6347
6348         * ada-lang.c (ada_array_bound_from_type): Make non-static.
6349         Handle properly the case when the index type is an enumerated type.
6350         Do not return the subtype of the bounds type, just return the
6351         bounds type directly - this is not needed and is more consistent
6352         with what we do for arrays when no XA parallel type exists.
6353
6354 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
6355
6356         * ada-lang.c (static_unwrap_type): Add forward declaration.
6357         (template_to_static_fixed_type): Fields of dynamic types sometimes
6358         also need to be unwrapped. Take this into account.
6359         (ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
6360         (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
6361         * ada-typeprint.c (ada_print_type): Get the typename from
6362         the original type, not the base type.
6363
6364 2008-01-03  Jerome Guitton  <guitton@adacore.com>
6365
6366         * ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
6367         (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
6368         Update calls to ada_to_fixed_type.
6369         (ada_template_to_fixed_record_type_1): Ditto, but without looking
6370         for the tag.
6371         (ada_to_fixed_type): Add check_tag parameter; do not look for
6372         tag if null.  When looking for a tag, use a fixed record type.
6373         * ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
6374         * ada-valprint.c (printable_val_type, ada_value_print): Update
6375         calls to ada_to_fixed_type.
6376
6377 2008-01-03  Luis Machado  <luisgpm@br.ibm.com>
6378
6379         * doublest.c (convert_floatformat_to_doublest): Call
6380         floatformat_to_doublest instead of floatformat_to_double and use
6381         DOUBLEST variables.
6382         (convert_doublest_to_floatformat): Call floatformat_from_doublest
6383         instead of floatformat_from_double and use DOUBLEST variables.
6384
6385 2008-01-03  Nick Hudson  <nick.hudson@dsl.pipex.com>
6386
6387         * MAINTAINERS (Write After Approval): Add self.
6388
6389 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
6390
6391         * symfile.c (set_initial_language): Make non-static.
6392         * symfile.h (set_initial_language): Add declaration.
6393         * language.c: #include "symfile.h".
6394         (set_language): Call set_initial_language if the frame language
6395         could not be determined.
6396
6397 2008-01-03  Paul N. Hilfinger  <hilfinger@adacore.com>
6398
6399         * eval.c (evaluate_subexp_for_address): Provide frame address to
6400         locate_var_value only if it will be needed.
6401
6402 2008-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
6403
6404         * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.
6405
6406 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
6407
6408         * ada-lang.c (ada_evaluate_subexp): Modify the value returned
6409         when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
6410         This is needed to make sure that any other treatment applied
6411         to the resulting value does not fail for spurious reason,
6412         such as trying to take the address of this value.
6413
6414 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
6415
6416         * ada-lang.c (ada_value_equal): Dereference reference types when
6417         comparing arrays.
6418
6419 2008-01-01  Daniel Jacobowitz  <dan@codesourcery.com>
6420
6421         Updated copyright notices for most files.
6422
6423 2008-01-01  Christopher Faylor  <me+gdb@cgf.cx>
6424
6425         * win32-nat.c (psapi_module_handle): Remove static.
6426         (get_module_name): Rename from psapi_get_dll_name.  Revamp slightly to
6427         return first module found if base_address is zero.  Don't initialize
6428         psapi function pointers here.  Convert to cygwin paths when
6429         appropriate.
6430         (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
6431         executable name.  Use get_module_name when that fails or when
6432         !__CYGWIN__.
6433         (_initialize_psapi): New function.  Initialize psapi stuff before it is
6434         needed or issue a warning if it is not found.  Move psapi_module_handle
6435         here.
6436
6437 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
6438
6439         * ada-lang.c (ada_remove_trailing_digits): New function.
6440         (ada_remove_po_subprogram_suffix): New function.
6441         (ada_decode): Improve. Move the description of the algorithm
6442         directly inside the code, instead of in the function global
6443         description.
6444
6445 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
6446
6447         * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
6448         and always print the dereferenced value.
6449
6450 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
6451
6452         * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
6453         of the case where the first argument is a reference.
6454         (ada_evaluate_subexp, case BINOP_ADD): Likewise.
6455
6456 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
6457
6458         Implement support for Ada interface types.
6459
6460         * ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
6461         (ada_is_ignored_field): Ignore fields that are a dispatch table
6462         of a tagged type.
6463
6464 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
6465
6466         * top.c (print_gdb_version): Update copyright year.
6467
6468 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
6469
6470         * ChangeLog-2007: New ChangeLog rotation.
6471         * ChangeLog: Reset for 2008.
6472         * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
6473         ChangeLog-2007.
6474
6475 For older changes see ChangeLog-2007.
6476 \f
6477 Local Variables:
6478 mode: change-log
6479 left-margin: 8
6480 fill-column: 74
6481 version-control: never
6482 coding: utf-8
6483 End: