2009-01-01 Pedro Alves <pedro@codesourcery.com>
[binutils-gdb.git] / gdb / ChangeLog
blobedce418c4f91d705756d46be3c6972981750b35c
1 2009-01-01  Pedro Alves  <pedro@codesourcery.com>
3         PR breakpoints/9681:
4         * exceptions.h (enum errors): New error type, MEMORY_ERROR.
5         * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
6         * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
7         retrow all other exceptions.
9 2008-12-31  Pedro Alves  <pedro@codesourcery.com>
11         PR gdb/8812:
12         * infrun.c (handle_command): Don't print a header or notify the
13         target about signal changes if we didn't change any signal.
15 2008-12-29  Joel Brobecker  <brobecker@adacore.com>
17         * valops.c (find_method_list): Minor reformatting in comment.
19 2008-12-29  Pedro Alves  <pedro@codesourcery.com>
21         PR gdb/7536:
22         * valprint.c (input_radix_1): New static global.
23         (set_input_radix): Use it instead of "input_radix".
24         (set_input_radix_1): Always leave input_radix_1 set to
25         input_radix.
26         (output_radix_1): New static global.
27         (set_output_radix): Use it instead of "output_radix".
28         (set_output_radix_1): Always leave output_radix_1 set to
29         output_radix.
30         (_initialize_valprint): Use "input_radix_1" instead of
31         "input_radix" with the "input-radix" command.  Use
32         "output_radix_1" instead of "output_radix" with the "output-radix"
33         command.
35 2008-12-28  Pedro Alves  <pedro@codesourcery.com>
37         * linux-fork.c (linux_fork_detach): New.
38         * linux-fork.h (linux_fork_detach): Declare.
39         * linux-nat.c (linux_child_follow_fork): When following the fork
40         child, add the child inferior before possibly detaching from the
41         parent.  Don't reinstall ourselves.
42         (linux_nat_detach): Call linux_fork_detach if there are other
43         forks to debug.
44         * linux-thread-db.c (thread_db_detach): Don't call
45         target_mourn_inferior.  Instead inline the necessary bits.
46         * inf-ptrace.c (inf_ptrace_detach): Don't unpush the target if
47         there are other inferiors to debug.
49 2008-12-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
51         Fix TYPE_HIGH_BOUND for TYPE_CODE_RANGE using arbitrary TYPE_NFIELDS in
52         preparation for supporting DW_AT_byte_stride.
53         * ada-lang.c (packed_array_type, ada_index_type): Use TYPE_INDEX_TYPE.
54         (ada_array_bound_from_type): Move `index_type' declaration to the
55         function start.  New variable `retval'.  Return the bounds for
56         TYPE_CODE_RANGE using TYPE_LOW_BOUND and TYPE_HIGH_BOUND.  Abort on
57         invalid index type codes.
58         * ada-typeprint.c (print_range): Set `upper_bound' for TYPE_CODE_RANGE
59         now using TYPE_HIGH_BOUND.
60         * ada-valprint.c (val_print_packed_array_elements): Use `index_type'.
61         * eval.c (evaluate_subexp_standard): Use TYPE_INDEX_TYPE.
62         * gdbtypes.c (create_range_type): Use TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
63         refer to the number of fields only through TYPE_NFIELDS.
64         (create_array_type): Use TYPE_INDEX_TYPE.
65         (check_typedef): Use TYPE_INDEX_TYPE, TYPE_LOW_BOUND, TYPE_HIGH_BOUND.
66         * gdbtypes.h (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED)
67         (TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): Use TYPE_INDEX_TYPE.
68         (TYPE_ARRAY_UPPER_BOUND_VALUE, TYPE_ARRAY_LOWER_BOUND_VALUE): Use
69         TYPE_INDEX_TYPE, TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
70         * hppa-tdep.c (hppa_alignof <TYPE_CODE_ARRAY>): Use TYPE_INDEX_TYPE.
71         * mdebugread.c (parse_type): Use TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
72         * valarith.c (value_bit_index): Use TYPE_INDEX_TYPE.
74 2008-12-26  Sandra Loosemore  <sandra@codesourcery.com>
76         * breakpoint.c (update_watchpoint): Refactor to avoid compiler
77         warning.
79 2008-12-22  Tom Tromey  <tromey@redhat.com>
81         * stack.c (print_block_frame_locals): Print spaces, not tabs.
82         Update for call to print_variable_and_value.
83         (print_frame_arg_vars): Update.
84         * value.h (print_variable_and_value): Rename from
85         print_variable_value.  Add 'name' and 'indent' parameters.
86         * printcmd.c (print_variable_and_value): Rename from
87         print_variable_value.  Add 'name' and 'indent' parameters.  Use
88         common_val_print.
89         * f-valprint.c (info_common_command): Update.
91 2008-12-22  Tom Tromey  <tromey@redhat.com>
93         * python/python-value.c (valpy_length): Remove #if.
95 2008-12-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
97         * python/python-internal.h (PyEval_ReleaseLock): New define.
98         
99 2008-12-22  Tom Tromey  <tromey@redhat.com>
101         * c-exp.y (ident_tokens): New global.
102         (struct token) <cxx_only>: New field.
103         (tokentab3): Update.
104         (tokentab2): Update.
105         (yylex): Use ident_tokens.
107 2008-12-22  Adam Denton  <adenton@yahoo.com>
109         PR gdb/8307:
110         * environ.c (free_environ): Free e->vector.
112 2008-12-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
114         Fix memory double-free.
115         * completer.c (line_completion_function): Clear LIST after called xfree.
117 2008-12-22  Joel Brobecker  <brobecker@adacore.com>
119         * breakpoint.c (update_watchpoint): Adjust and extend the description
120         of this function.  Fix one error message accordingly.
122 2008-12-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
124         Fix hw watchpoints created before the inferior was started.
125         * breakpoint.c (update_watchpoint): Convert the bp_watchpoint and
126         bp_hardware_watchpoint types according to the current runtime state.
128 2008-12-18  Pedro Alves  <pedro@codesourcery.com>
130         * linux-nat.c (linux_child_follow_fork): If following the child,
131         and not detaching the parent, also add the child fork to the fork
132         list.
133         * linux-fork.c (linux_fork_context): Remove dead error call.
134         Assert that the incoming newfp argument is not null.  Do not add a
135         new fork for inferior_ptid.  Assert that there is one already.
137 2008-12-16  Tristan Gingold  <gingold@adacore.com>
139         * inflow.c: Remove old_sigio, handle_sigio, old_fcntl_flags,
140         set_sigio_trap, clear_sigio_trap definitions.
141         * inferior.h: Remove set_sigio_trap and clear_sigio_trap declarations.
142         * inf-ptrace.c (inf_ptrace_wait): Remove call to set_sigio_trap
143         and clear_sigio_trap.
144         * inf-ttrace.c (inf_ttrace_wait): Ditto.
145         * linux-nat.c (linux_nat_wait): Ditto.
146         * spu-linux-nat.c (spu_child_wait): Ditto.
147         * rs6000-nat.c (rs6000_wait): Ditto.
148         * target.c: Remove target_activity_function and target_activity_fd.
149         * target.h: Remove target_activity_function and target_activity_fd
150         declarations.
152 2008-12-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
154         * dbxread.c (read_ofile_symtab): Sign-extend 32-bit N_LSYM and
155         N_PSYM STABS values for 64-bit GDB.
157 2008-12-15  Tristan Gingold  <gingold@adacore.com>
159         * dwarf2expr.c (execute_stack_op): Handle DW_OP_swap.
161 2008-12-15  Jerome Guitton  <guitton@adacore.com>
163         * ada-lang.c (ada_value_slice_ptr): Rename to...
164         (ada_value_slice_from_ptr): ... this. Return a lazy value instead
165         of a reference. Update comment.
166         (ada_value_struct_elt): Ditto if arg is a pointer or a reference.
167         Update comment as well.
168         (ada_evaluate_subexp): Update use of ada_value_slice_ptr.
170 2008-12-12  Kevin Buettner  <kevinb@redhat.com>
172         * gnu-v3-abi.c (vtable_ptrdiff_type): New function.
173         (gnuv3_decode_method_ptr, gnuv3_print_method_ptr)
174         (gnuv3_method_ptr_to_value): Use a better approximation for
175         `ptrdiff_t' instead of `long'.
177 2008-12-12  Kevin Buettner  <kevinb@redhat.com>
179         * m32c-tdep.c (m32c_gdbarch_init): Call set_gdbarch_vbit_in_delta().
180         (m32c_push_dummy_call): Dereference pointer type.
182 2008-12-12  Tom Tromey  <tromey@redhat.com>
184         PR cli/2563:
185         * cli/cli-decode.c (delete_cmd): Add hook-related out parameters.
186         (add_cmd): Update.  Install hooks into new command.
187         (add_alias_cmd): Update.
189 2008-12-11  Tom Tromey  <tromey@redhat.com>
191         * macroexp.c (get_pp_number): Require digit after leading ".".
192         Correctly handle suffixes.
194 2008-12-11  Tom Tromey  <tromey@redhat.com>
196         * macrocmd.c (macro_define_command): Skip whitespace after
197         macro name.
198         (print_one_macro): Print space after macro name.
200 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
202         * infrun.c (handle_inferior_event): Correctly tag non-executing
203         threads in multi-process.
204         (normal_stop): Correctly tag stopped threads in multi-process.
206 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
208         * remote.c (extended_remote_mourn_1): Always call
209         generic_mourn_inferior.
211 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
213         * remote.c (remote_detach_1): Don't delete the inferior here.
214         (process_stop_reply): Ditto.
215         (extended_remote_kill): Ditto.
217 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
219         * remote.c (read_ptid): If we don't know about any inferior yet,
220         use the pid of magic_null_ptid.
221         (remote_start_remote): In the non-stop mode case, don't set
222         inferior_ptid to magic_null_ptid here.
224 2008-12-11  Daniel Jacobowitz  <dan@codesourcery.com>
225             Pedro Alves  <pedro@codesourcery.com>
227         * infcmd.c (step_1): Use step_once in the synchronous case too.
228         (step_1_continuation): Wrap line.
229         (step_once): Adjust comment.  Only install the continuation in
230         async mode.
232 2008-12-11  Pedro Alves  <pedro@codesourcery.com>
234         * infrun.c (handle_inferior_event): On a TARGET_WAITKIND_EXITED or
235         TARGET_WAITKIND_SIGNALLED, switch inferior_ptid to the event ptid.
236         * linux_thread_db.c (thread_db_wait): On a TARGET_WAITKIND_EXITED
237         or TARGET_WAITKIND_SIGNALLED, return the ptid the beneath target
238         returned.
239         * inf-ptrace.c (inf_ptrace_wait): Return inferior_ptid instead of
240         minus_one_ptid if the inferior disappeared.
241         * rs6000-nat.c (rs6000_wait): Likewise.
242         * spu-linux-nat.c (spu_child_wait): Likewise.
244 2008-12-11  Tom Tromey  <tromey@redhat.com>
246         PR macros/2564:
247         * c-exp.y (macro_original_text, expansion_obstack,
248         expression_macro_scope): New globals.
249         (scan_macro_expansion): New function.
250         (scanning_macro_expansion): Likewise.
251         (finished_macro_expansion): Likewise.
252         (scan_macro_cleanup): Likewise.
253         (c_parse): Find macro scope.  Initialize obstack.
254         * c-lang.h (scan_macro_expansion, scanning_macro_expansion,
255         finished_macro_expansion, expression_macro_lookup_func,
256         expression_macro_lookup_baton): Remove.
257         * c-lang.c (scan_macro_expansion, scanning_macro_expansion,
258         finished_macro_expansion, expression_macro_lookup_func,
259         expression_macro_lookup_baton): Remove.
260         (macro_original_text, macro_expanded_text,
261         c_preprocess_and_parse): Remove.
262         (c_language_defn, cplus_language_defn, asm_language_defn,
263         minimal_language_defn): Use c_parse.
265 2008-12-10  Pedro Alves  <pedro@codesourcery.com>
267         * infcmd.c (until_next_command, finish_backward): Use get_frame_pc
268         instead of read_pc.
270 2008-12-09  Tom Tromey  <tromey@redhat.com>
272         PR gdb/1815:
273         * cli/cli-decode.c (delete_cmd): Forward declare.
274         (delete_cmd): Now static.  Change return type.  Remove command
275         from alias chain.  Rewrite.
276         (add_cmd): Initialize new fields.  Update cmd_pointer on all
277         aliases.
278         (add_alias_cmd): Put command on alias chain.
279         * command.h (delete_cmd): Don't declare.
280         * cli/cli-decode.h (delete_cmd): Don't declare.
281         (struct cmd_list_element) <aliases, alias_chain>: New fields.
283 2008-12-09  Tom Tromey  <tromey@redhat.com>
285         * config.in, configure: Rebuild.
286         * configure.ac: Check for locale.h, setlocale.  Call
287         AM_LC_MESSAGES.
288         * acinclude.m4: Include lcmessage.m4.
290 2008-12-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
292         * remote.c (remote_parse_stop_reply): Use REG only after its NULL check.
294 2008-12-08  Joel Brobecker  <brobecker@adacore.com>
296         * python/python-value.c (values_in_python): Add specific initialization
297         to NULL to work-around a MacOS linker bug.
299 2008-12-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
301         Fix loc_type of `bp_location's created by update_watchpoint.
302         * breakpoint.c (allocate_bp_location): Remove the bp_type parameter.
303         Replace bp_type by bpt->type.  Update prototype.  All callers updated.
304         (add_location_to_breakpoint):  Remove the bp_type parameter.
305         Replace bp_type by b->type.  All callers updated.
306         (set_breakpoint_location_function): Replace bptype by b->type.
308 2008-12-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
310         * breakpoint.c (update_global_location_list): Fix the comment.
312 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
314         * infcmd.c (step_1, step_once): Look up the stepping range based
315         on the current frame's PC, not on stop_pc.
317 2008-12-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
319         Fix compilation on 32-bit host configurations.
320         * ia64-tdep.c (ia64_breakpoint_from_pc): Suffix a constant by `LL'.
322 2008-12-05  Tristan Gingold  <gingold@adacore.com>
324         * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn): New function.
325         (amd64_darwin_sstep_at_sigreturn): New function.
326         (darwin_set_sstep): The sigreturn is a special case: the trace flag
327         must be set in the mcontext structure.
329 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
331         * infcmd.c (step_once): Remove dead code.
333 2008-12-04  Doug Evans  <dje@google.com>
335         * infcall.c (call_function_by_hand): Clean up use of local dummy_addr.
337 2008-12-02  Doug Evans  <dje@google.com>
339         * infrun.c (handle_inferior_event): Remove redundant resetting of
340         stepping_past_singlestep_breakpoint.
342 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
344         * target.h (target_get_osdata): Describe.
345         * osdata.h (make_cleanup_osdata_free): Declare.
346         * osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is
347         not defined.
348         (osdata_free_cleanup): New.
349         (make_cleanup_osdata_free): New.
350         (get_osdata): Fix leak.
351         (info_osdata_command): Use make_cleanup_osdata_free.
352         (info_processes_command): Delete.
353         (_initialize_osdata): Drop undocumented "info processes" alias.
354         * mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.
356 2008-12-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
358         Fix resolving external references to TLS variables.
359         * findvar.c: Include `objfiles.h'.
360         (read_var_value <LOC_UNRESOLVED>): New variable `obj_section'.  Handle
361         SEC_THREAD_LOCAL variables.
362         * printcmd.c (address_info <LOC_UNRESOLVED>): Handle SEC_THREAD_LOCAL
363         variables.
365 2008-12-02  Doug Evans  <dje@google.com>
367         * infrun.c (handle_inferior_event): Delete unused local tp.
369 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
370             Vladimir Prus  <vladimir@codesourcery.com>
372         Implement -list-thread-groups --available
374         * Makefile.in (XMLFILES): Add osdata.dtd.
375         (SFILES): Add osdata.c.
376         (COMMON_OBS): Add osdata.o.
377         * linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h.
378         (linux_nat_xfer_osdata): New function.
379         (linux_xfer_partial): Handle TARGET_OBJECT_OSDATA.
380         * osdata.c: New file.
381         * osdata.h: New file.
382         * remote.c (PACKET_qXfer_osdata): New packet enum.
383         (remote_protocol_features): Add "qXfer:osdata:read".
384         (remote_read_qxfer): Handle TARGET_OBJECT_OSDATA.
385         (extended_remote_can_run): New.
386         (init_extended_remote_ops): Set to_can_run to
387         extended_remote_can_run.
388         (_initialize_remote): Add packet config command for
389         "qXfer:osdata:read".
390         * xml-support.c (obstack_xml_printf): New function.
391         * xml-support.h (obstack_xml_printf): Declare.
392         * target.c (target_get_osdata): New function.
393         * target.h (enum target_object): Add TARGET_OBJECT_OSDATA.
394         (target_os_data): Declare.
395         * features/osdata.dtd: New file.
396         * mi/mi-main.c (mi_list_thread_groups): Handle the --available
397         option.
399 2008-12-01  Doug Evans  <dje@google.com>
401         * infrun.c (proceed): Delete unused local stop_signal.
403 2008-11-27  Tristan Gingold  <gingold@adacore.com>
405         * NEWS: Add entry for new native configuration: Darwin.
406         * configure.host: Add Darwin host.
407         * configure.tgt: Add Darwin target.
408         * defs.h (enum gdb_osabi): Add GDB_OSABI_DARWIN.
409         * osabi.c (gdb_osabi_names): Add name for Darwin abi.
410         * i386-darwin-nat.c: New file.
411         * i386-darwin-tdep.c: New file.
412         * machoread.c: New file.
413         * darwin-nat-info.c: New file.
414         * darwin-nat.c: New file.
415         * darwin-nat.h: New file.
416         * darwin.defs: New file.
417         * config/i386/darwin.mh: New file.
419 2008-11-26  Tristan Gingold  <gingold@adacore.com>
421         * MAINTAINERS: Add myself for write after approval privileges.
423 2008-11-26  Jerome Guitton  <guitton@adacore.com>
425         * value.h (allocate_value_lazy): New function declaration.
426         (value_free): Remove macro, make it a function.
427         * value.c (value): Move actual content outside of the memory space
428         of the struct; add a pointer to this actual content.
429         (allocate_value_lazy, allocate_value_contents): New function.
430         (allocate_value): Reimplement using these two new functions.
431         (value_contents_raw, value_contents_all_raw): If no memory
432         has been allocated yet for the actual content, allocate it.
433         (value_contents_all): Resync with struct value's changes.
434         (value_free): New function.
435         (value_copy, value_primitive_field): Use new function
436         allocate_value_lazy to allocate lazy values.
437         (value_change_enclosing_type): Resync with struct value's changes.
438         As the value is not reallocated, remove the special handling for
439         the value chain (now obsolete).
440         * valops.c (value_at_lazy): Use new function allocate_value_lazy.
441         (value_fetch_lazy): Allocate value content. Use allocate_value_lazy
442         to allocate lazy values.
443         (value_slice): Use allocate_value_lazy to allocate lazy values.
445 2008-11-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
447         Fix automatic restoration of breakpoints memory for ia64.
448         * ia64-tdep.c: New #if check on BREAKPOINT_MAX vs. BUNDLE_LEN.  
449         (ia64_memory_insert_breakpoint): New comment part for SHADOW_CONTENTS
450         content.  Remove variable instr.  New variable cleanup.  Disable
451         automatic breakpoints restoration.  PLACED_SIZE and SHADOW_LEN are now
452         set larger, to BUNDLE_LEN - 2.  Variable `bundle' type update.  Return
453         error if even just final target_write_memory has failed.
454         (ia64_memory_remove_breakpoint): Rename variables bundle to bundle_mem
455         and instr to instr_saved.  New variables bundle_saved and
456         instr_breakpoint.  Comment new reasons why we need to disable automatic
457         restoration of breakpoints.  Assert PLACED_SIZE and SHADOW_LEN.  New
458         check of the original memory content.  Return error if even just final
459         target_write_memory has failed.
460         (ia64_breakpoint_from_pc): Implement the emulation of permanent
461         breakpoints compatible with current bp_loc_is_permanent.
462         (template_encoding_table): Make it `const'.
463         * breakpoint.c (bp_loc_is_permanent): Support unsupported software
464         breakpoints.  New variables `cleanup' and `retval'.
466 2008-11-24  Tom Tromey  <tromey@redhat.com>
468         * ada-lang.c (value_from_contents_and_address): Move...
469         * value.c: ... here.
470         * ada-lang.h (value_from_contents_and_address): Move
471         declaration...
472         * value.h: ... here.
474 2008-11-24  Paul Pluzhnikov  <ppluzhnikov@google.com>
476         * valprint.c (val_print_array_elements): Pass correct
477         element address to val_print.
478         
479 2008-11-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
481         Fix access of an already freed memory.
482         * parse.c (parse_field_expression): Call xstrdup on `*name'.
483         * completer.c (expression_completer): Free fieldname.
485 2008-11-24  Daniel Jacobowitz  <dan@codesourcery.com>
487         PR gdb/2474
488         * remote.c (remote_read_description_p): New function.
489         (remote_start_remote): Try to fetch the target description
490         before adding shared libraries.  Try again later if the
491         target is running but stopped.
492         (remote_open_1): Mark extended targets as exited by default.
493         (remote_read_description): Check target_has_execution.
495 2008-11-24  Jerome Guitton  <guitton@adacore.com>
497         * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Use
498         the frame address in block instead of the return address to
499         locate the mdebug PDR of the frame.
501 2008-11-21  Joel Brobecker  <brobecker@adacore.com>
503         Remove the unused BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
505         * breakpoint.h (enum bpstat_what_main_action): Remove
506         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
507         * breakpoint.c (bpstat_what): Delete catch_shlib_event from enum class.
508         Remove the BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK column from
509         variable table.
510         * infrun.c (wait_for_inferior): Remove handling of
511         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
513 2008-11-21  Tom Tromey  <tromey@redhat.com>
515         * configure: Rebuild.
516         * configure.ac: Merge calls to AC_CHECK_FUNCS, AC_CHECK_HEADERS,
517         AC_CHECK_DECLS, and AC_CHECK_MEMBERS.
519 2008-11-21  Tom Tromey  <tromey@redhat.com>
521         * python/python-internal.h (PyGILState_Ensure): New define.
522         (PyGILState_Release): Likewise.
523         (PyEval_InitThreads): Likewise.
524         (PyThreadState_Swap): Likewise.
525         (PyEval_InitThreads): Likewise.
526         * python/python.c (_initialize_python): Initialize threads.
527         Release GIL.
528         (eval_python_from_control_command): Acquire GIL.
529         (python_command): Likewise.
530         * python/python-internal.h (make_cleanup_py_restore_gil):
531         Declare.
532         * python/python-utils.c (py_gil_restore): New function.
533         (make_cleanup_py_restore_gil): Likewise.
535 2008-11-20  Doug Evans  <dje@google.com>
537         * frame.c (frame_debug_got_null_frame): Remove file arg.
538         All callers updated.
540 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
542         * infrun.c (resume): If following a fork, also reset regcache,
543         gdbarch and pc.
545 2008-11-20  Doug Evans  <dje@google.com>
547         * printcmd.c (sym_info): Don't print the offset if it's zero.
549 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
551         * infrun.c (resume): If following a fork, reread the current
552         thread.  Avoid dereferencing a possibly dangling pointer.
554 2008-11-19  Doug Evans  <dje@google.com>
556         * inferior.h (proceed_to_finish): Delete, unused.
557         (stop_registers): Tweak comment.
558         * infrun.c (stop_registers): Tweak comment.
560 2008-11-19  Kevin Buettner  <kevinb@redhat.com>
562         * frv-tdep.c (frv_skip_main_prologue): New function.
563         (frv_gdbarch_init): Register frv_skip_main_prologue.
564         * solib-frv.c (fetch_loadmap): Return early when no segments are
565         found.
566         (frv_relocate_main_executable): Return early when both interpreter
567         and executable loadmap addresses are zero.
569 2008-11-19  Bob Wilson  <bob.wilson@acm.org>
570         
571         * xtensa-config.c (rmap): Remove entries for ar32 through ar63.  Add
572         threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7,
573         excsave5, excsave6, excsave7, cpenable, and vecbase registers.
574         (xtensa_submask0, xtensa_submask1, xtensa_submask2)
575         (xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6)
576         (xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10)
577         (xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14)
578         (xtensa_submask15): Adjust register numbers.
579         * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
580         (xtensa_regmap_table): Add entry for scompare1.
581         * regformats/reg-xtensa.dat: Remove ar32 through ar63.  Add threadptr
582         and scompare1.
583         
584 2008-11-19  Pedro Alves  <pedro@codesourcery.com>
586         * remote.c (escape_buffer): New.
587         (putpkt_binary, read_frame, getpkt_or_notif_sane_1): Use it.  Make
588         sure debug output printing a packet buffer goes through a single
589         fprintf_unfiltered call.
590         * utils.c (vfprintf_unfiltered): If outputting timestamps, end
591         output with a newline if it wasn't going to already.
593 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
595         * maint.c (maintenance_translate_address): Fix a buglet.
596         
597 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
599         * features/Makefile (rs6000/powerpc-isa205-32l-expedite,
600         rs6000/powerpc-isa205-altivec32l-expedite,
601         powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite,
602         rs6000/powerpc-isa205-altivec64l-expedite,
603         powerpc-isa205-vsx64l-expedite): New variables.
604         * regformats/rs6000/powerpc-isa205-32l.dat: Generate.
605         * regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate.
606         * regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate.
607         * regformats/rs6000/powerpc-isa205-64l.dat: Generate.
608         * regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate.
609         * regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate.
611 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
613         * ppc-linux-nat.c (ppc_register_u_addr): Add special case to return
614         offset for full 64-bit slot of FPSCR when in 32-bits.
615         (ppc_linux_read_description): Return target description with 64-bit
616         FPSCR when inferior is running on an ISA 2.05 or later processor.
617         * ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Call
618         initialize_tdec_powerpc_isa205_32l,
619         initialize_tdec_powerpc_isa205_altivec32l,
620         initialize_tdec_powerpc_isa205_vsx32l,
621         initialize_tdec_powerpc_isa205_64l,
622         initialize_tdec_powerpc_isa205_altivec64l and
623         initialize_tdec_powerpc_isa205_vsx64l.
624         * ppc-linux-tdep.h: Add external declaration for
625         tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l,
626         tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_64l,
627         tdesc_powerpc_isa205_altivec64l and tdesc_powerpc_isa205_vsx64l.
628         * features/rs600/powerpc-fpu-isa205.xml: New file.
629         * features/rs600/powerpc-isa205-32l.xml: New file.
630         * features/rs600/powerpc-isa205-64l.xml: New file.
631         * features/rs600/powerpc-isa205-altivec32l.xml: New file.
632         * features/rs600/powerpc-isa205-altivec64l.xml: New file.
633         * features/rs600/powerpc-isa205-vsx32l.xml: New file.
634         * features/rs600/powerpc-isa205-vsx64l.xml: New file.
635         * features/rs600/powerpc-isa205-32l.c: Generate.
636         * features/rs600/powerpc-isa205-64l.c: Generate.
637         * features/rs600/powerpc-isa205-altivec32l.c: Generate.
638         * features/rs600/powerpc-isa205-altivec64l.c: Generate.
639         * features/rs600/powerpc-isa205-vsx32l.c: Generate.
640         * features/rs600/powerpc-isa205-vsx64l.c: Generate.
642 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
644         * objfiles.h: New MULTI_OBJFILE_P macro.
645         * printcmd.c (sym_info): Print object name.
646         * maint.c (maintenance_translate_address): Likewise.
647         
648 2008-11-18  Joel Brobecker  <brobecker@adacore.com>
650         * NEWS: Document the removal of "catch load" and "catch unload".
652 2008-11-17  Doug Evans  <dje@google.com>
654         * infcall.c (call_function_by_hand): Fix punctuation and capitalization
655         on error messages.
657 2008-11-17  Ulrich Weigand  <uweigand@de.ibm.com>
659         PR gdb/2250
660         * infrun.c (clear_proceed_status_thread): New function.
661         (clear_proceed_status_callback): New function.
662         (clear_proceed_status): In all-stop mode, clear per-thread
663         proceed status of *all* threads, not only the current.
664         (handle_inferior_event): In all-stop mode, if we're stepping
665         one thread, but got some inferior event in another thread
666         that does not cause GDB to break to the user interface,
667         ensure the interrupted stepping operation continues in the
668         original thread.
669         (currently_stepping): Move thread-related tests to ...
670         (currently_stepping_thread): ... this new function.
671         (currently_stepping_callback): New function.
673 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
675         Implement =thread-selected notification.
677         * mi/mi-common.h (struct mi_interp): New, moved from ...
678         * mi/mi-interp.c: ...here.
679         * mi/mi-main.c (mi_execute_command): If the thread changed
680         as result of command, report that.
682 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
684         Implement continue/interrupt of thread groups.
686         * mi/mi-main.c (proceed_thread_callback): New.
687         (mi_cmd_exec_continue): If --thread-group is specified, resume all
688         threads in that group.
689         (interrupt_thread_callback): New.
690         (mi_cmd_exec_interrupt): If --thread-group is specified, interrupt
691         all threads in that group.
693 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
695         Implement '-target-detach pid'.
697         * infcmd.c (detach_command): Make nonstatic.
698         * inferior.h (detach_command): Declare.
699         * mi/mi-cmds.c (mi_cmds): Don't route -target-detach via CLI.
700         * mi/mi-cmds.h (mi_cmd_target_detach): Declare.
701         * mi/mi-main.c (find_thread_of_process, mi_cmd_target_detach): New.
703 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
705         Include group-id in thread-created notification.
707         * mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include
708         group id in the output.
710 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
712         Notification for attach/detach.
714         * inferior.c: Call the process observers.
715         * mi/mi-interp.c (mi_new_inferior, mi_inferior_exit): New.
716         (mi_interpreter_init): Register the above.
718 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
720         Implement -list-thread-groups.
722         * thread.c (print_thread_info): New parameter pid, to print
723         threads of specific process.
724         * gdbthread.h (print_thread_info): New parameter pid.
725         * mi/mi-cmds.c (mi_cmds): Register -list-thread-groups.
726         * mi/mi-cmds.h (mi_cmd_list_thread_groups): New.
727         * mi/mi-main.c (mi_cmd_thread_info): Adjust.
728         (print_one_process, mi_cmd_list_thread_groups): New.
730 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
732         Remove some unused macros related to the old load/unload catchpoints.
734         * breakpoint.c (SOLIB_LOADED_LIBRARY_PATHNAME)
735         (SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_CREATE_CATCH_LOAD_HOOK)
736         (SOLIB_CREATE_CATCH_UNLOAD_HOOK): Delete. No longer used.
738 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
740         Remove support for catch load and catch unload commands.
742         * breakpoint.h (enum bptype): Remove bp_catch_load and bp_catch_unload.
743         (struct breakpoint): Remove fields dll_pathname and
744         triggered_dll_pathname.
745         (bpstat_get_triggered_catchpoints, ep_is_shlib_catchpoint): Delete.
746         * breakpoint.c (ep_is_catchpoint): Remove handling of
747         bp_catch_load and bp_catch_unload.
748         (print_it_typical, bpstat_check_location, bpstat_what)
749         (print_one_breakpoint_location, print_one_breakpoint_location)
750         (user_settable_breakpoint, allocate_bp_location)
751         (set_raw_breakpoint_without_location, mention, delete_breakpoint,
752         (breakpoint_re_set_one, disable_command, enable_command): Likewise.
753         (ep_is_shlib_catchpoint, bpstat_get_triggered_catchpoints)
754         (catch_load_command_1, catch_unload_command_1): Delete.
755         (_initialize_breakpoint): Remove the "catch load" and "catch unload"
756         command creation.
757         * infrun.c (handle_inferior_event): Remove the handling of
758         load/unload catchpoint events.
760 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
762         From  Jerome Guitton  <guitton@adacore.com>
763         * dwarf2read.c (dwarf2_debug_line_missing_end_sequence_complaint):
764         New function.
765         (dwarf_decode_lines): Detect null file numbers. Detect the end of
766         the line program sequence when no end sequence is emitted.
768 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
770         * ada-lang.c (ada_evaluate_subexp): Improve handling of integer
771         type dereferencing.
773 2008-11-15  Daniel Jacobowitz  <dan@codesourcery.com>
775         * NEWS: Mention sparc64-linux-gnu gdbserver support.
777 2008-11-14  Daniel Gutson  <dgutson@codesourcery.com>
779         * configure.tgt (sparc64-*-linux*): Added gdbserver support.
780         * regformats/reg-sparc64.dat: New file.
782 2008-11-14  Tom Tromey  <tromey@redhat.com>
784         PR mi/2549:
785         * mi/mi-main.c (get_register): Use get_formatted_print_options.
787 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
789         * printcmd.c: define PRINTF_HAS_LONG_LONG only if not yet defined.
791 2008-11-13  Ulrich Weigand  <uweigand@de.ibm.com>
793         * auxv.c (fprint_target_auxv): Handle AT_BASE_PLATFORM and
794         AT_EXECFN.  Re-sort AT_SECURE.
796 2008-11-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
798         * monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'.
800 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
802         * ia64-tdep.c: Remove commented out #define.
804 2008-11-12  Joel Brobecker  <brobecker@adacore.com>
806         From Joel Sherrill  <joel.sherrill@oarcorp.com>
807         * remote-sim.c (gdbsim_mourn_inferior): Use "target" parameter
808         instead of the "gdbsim_ops" global.
810 2008-11-11  Doug Evans  <dje@google.com>
812         * infcall.c (call_function_by_hand): Handle inferior exit.
814 2008-11-11  Thiago Jung Bauermann  <bauerman@br.ibm.com>
816         * remote-sim.c (gdbsim_create_inferior, gdbsim_mourn_inferior): Add
817         missing struct target_ops argument.
819 2008-11-11  Joel Sherrill <joel.sherrilL@oarcorp.com>
821         * MAINTAINERS: Add myself for write after approval privileges.
823 2008-11-10  Tom Tromey  <tromey@redhat.com>
825         * gdbtypes.c (copy_type_recursive): Clear new fields.
827 2008-11-10  Tom Tromey  <tromey@redhat.com>
829         * cli/cli-cmds.c (source_script): Clean up full_pathname.  Run
830         cleanups on early return.
832 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
834         Kill pthread_ops_hack
836         * target.h (struct target_ops): Make to_attach, to_detach,
837         to_create_inferior and to_mourn_inferior accept a pointer
838         to struct target_ops.
839         (target_attach, target_create_inferior, target_create_inferior):
840         Convert from macros to function.  Find the right target to
841         invoke a method of.
842         (find_default_attach, find_default_create_inferior): New parameter
843         ops.
844         * corefile.c (core_file_command): Pass target to to_detach.
845         * corelow.c (core_detach): Add 'ops' parameter.
846         * fork-child.c (fork_inferior): Return the pid.  Allow
847         init_trace_fun to be NULL.
848         * inf-ptrace (ptrace_ops_hack): Remove.
849         (inf_ptrace_him): Remove, moving all logic into....
850         (inf_ptrace_create_inferior): ... here.  Push the target
851         passed as parameter.
852         (inf_ptrace_mourn_inferior, inf_ptrace_attach, inf_ptrace_detach):
853         Push/pop target passed as parameter, no ptrace_ops_hack.
854         (inf_ptrace_target): Don't remember result.
855         * inferior.h (fork_inferior): Adjust prototype.
856         * linux-nat.c (linux_nat_create_inferior, linux_nat_attach)
857         (linux_nat_detach, linux_nat_mourn_inferior): New parameter ops.
858         Pass it to linux_ops target.
859         * linux-thread-db.c (thread_db_detach, thread_db_mourn_inferior):
860         New parameter ops. Pass it to the target beneath.
861         * remote.c (remote_mourn, extended_remote_mourn, remote_detach)
862         (extended_remote_create_inferior): New parameter ops. Pass it
863         further.
864         * target.c (debug_to_attach, debug_to_detach)
865         (debug_to_mourn_inferior): New parameter ops.
866         (target_create_inferior): New.
867         (update_current_target): Do not inherit to_attach, to_detach,
868         to_create_inferiour, to_mourn_inferior.  Do not default
869         to_detach and to_mourn_inferior.
870         (target_detach): Find the right target to use.
871         (target_mourn_inferior): New.
872         (find_default_attach, find_default_create_inferior): New parameter
873         ops.  Pass the found target when calling its method.
874         (init_dummy_target): Provide fallback definition of to_detach.
875         (target_attach): New.
876         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
877         (debug_to_mourn_inferiour): New parameter ops.
878         * aix-thread.c: Adjust.
879         * bsd-uthread.c: Adjust.
880         * gnu-nat.c: Adjust.
881         * go32-nat.c: Adjust.
882         * hpux-thread.c: Adjust.
883         * inf-ttrace.c: Ajust.
884         * monitor.c: Adjust.
885         * nto-procfs.c: Adjust.
886         * procfs.c: Adjust.
887         * remote-m32r-sdi.c: Adjust.
888         * remote-mips.c: Adjust.
889         * remote-sim.c: Adjust.
890         * rs6000-nat.c: Adjust.
891         * sol-thread.c: Adjust.
892         * win32-nat.c: Adjust.
893         * dec-thread.c: Adjust.
895 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
897         * thread.c (print_thread_info): Eliminate now useless checks
898         for exited threads.
900 2008-11-06  Pedro Alves  <pedro@codesourcery.com>
902         * i386-dicos-tdep.c (i386_dicos_init_abi): Set decr_pc_after_break
903         to 0.
905 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
907         * remote.c (notice_new_inferiors): Add a new inferior only when
908         we're going to add a new thread.
910 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
912         * defs.h (add_inferior_continuation)
913         (do_all_inferior_continuations)
914         (discard_all_inferior_continuations): Declare.
915         * utils.c (add_inferior_continuation)
916         (do_all_inferior_continuations)
917         (discard_all_inferior_continuations): New.
918         * inferior.h (struct inferior) <continuations>: New field.
919         * inferior.c (free_inferior): Discard all the inferior
920         continuations.
921         * inf-loop.c (inferior_event_handler): Do all current inferior
922         continuations.
923         * infcmd.c (attach_command): Register an inferior continuation
924         instead of a thread continuation.
925         * infrun.c (handle_inferior_event): If stop_soon is
926         STOP_QUIETLY_NO_SIGSTOP, also expect a TARGET_SIGNAL_0.
928 2008-11-04  Pedro Alves  <pedro@codesourcery.com>
930         * inf-loop.c (inferior_event_handler): On INF_ERROR and
931         INF_REG_EVENT throwing, don't call target_async or pop_target.
932         Call pop_all_targets_above.
933         * remote.c (remote_close): Call remote_terminal_ours.  Don't call
934         signal or target_async.
936 2008-11-04  Daniel Jacobowitz  <dan@codesourcery.com>
938         * eval.c (evaluate_subexp_standard): Assert that there is at
939         least one array dimension.
941 2008-11-03  Vladimir Prus  <vladimir@codesourcery.com>
943         Make attach_command exception-safe
944         * infcmd.c (attach_command): Call async_enable_stdin
945         if exception is thrown.
947 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
949         * gdbarch.sh (has_global_solist): Mention global breakpoints.
950         * gdbarch.h: Regenerate.
952 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
954         * remote.c (remote_start_remote): If the solib list is global,
955         fetch libraries and insert breakpoints after connecting.
956         * infcmd.c (post_create_inferior): If the solist is shared between
957         inferiors, no need to refetch it on every new inferior.
958         (detach_command): If the shared library list is shared between
959         inferiors, then don't clear it on every inferior detach.
960         * gdbarch.sh (has_global_solist): New.
961         * i386-dicos-tdep.c (i386_dicos_init_abi): Set
962         gdbarch_has_global_solist.
963         * target.c (target_pre_inferior): If the shared library list is
964         shared between inferiors, then don't clear it here, neither
965         invalidate the memory regions or clear the target description.
966         (target_detach): If the shared library list is shared between
967         inferiors, then don't remove breakpoints from the target here.
968         (target_disconnect): Comment.
969         * solib.c (update_solib_list): Check for null_ptid.
970         * breakpoint.c (insert_breakpoints, update_global_location_list):
971         If the shared library list is shared between inferiors, insert
972         breakpoints even if there's no execution.
973         (breakpoint_init_inferior): If the shared library list is shared
974         between inferiors, don't delete breakpoints or mark them
975         uninserted here.
977         * gdbarch.c, gdbarch.h: Regenerate.
979 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
981         * inferior.h (inferior_ignoring_leading_exec_events): Delete
982         declaration.
984 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
986         * inferior.h (write_inferior_status_register): Delete.
987         * infrun.c (write_inferior_status_register): Delete.
989 2008-10-30  Tom Tromey  <tromey@redhat.com>
991         * value.c (coerce_array): Use check_typedef.
993 2008-10-30  Tom Tromey  <tromey@redhat.com>
995         * cli/cli-logging.c (handle_redirections): Make a cleanup.
996         * reggroups.c (maintenance_print_reggroups): Make a cleanup.
997         * regcache.c (regcache_print): Make a cleanup.
998         * maint.c (maintenance_print_architecture): Make a cleanup.
999         * dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.
1001 2008-10-30  Tom Tromey  <tromey@redhat.com>
1003         * utils.c (make_cleanup_close): Use make_cleanup_dtor.
1004         (do_close_cleanup): Don't free 'fd'.
1006 2008-10-30  Tom Tromey  <tromey@redhat.com>
1008         * source.c (symtab_to_fullname): Test 'r >= 0'.
1009         (psymtab_to_fullname): Likewise.
1010         (get_filename_and_charpos): Make a cleanup.
1011         (forward_search_command): Likewise.
1012         (reverse_search_command): Likewise.
1013         * exec.c (exec_file_attach): Close scratch_chan on failure.
1014         * nto-procfs.c (procfs_open): Make a cleanup.
1015         (procfs_pidlist): Likewise.
1016         (do_closedir_cleanup): New function.
1018 2008-10-30  Andreas Schwab  <schwab@suse.de>
1020         * infcmd.c (construct_inferior_arguments): Handle newlines
1021         specially.
1023 2008-10-30  Joel Brobecker  <brobecker@adacore.com>
1025         * breakpoint.h (enum bptype): Delete bp_catch_exec.
1026         * breakpoint.c (insert_catchpoint): Remove handling for
1027         bp_catch_exec breakpoint kinds.
1028         (insert_bp_location, update_breakpoints_after_exec, remove_breakpoint)
1029         (ep_is_catchpoint, print_it_typical, bpstat_check_location),
1030         (bpstat_check_location, bpstat_what, print_one_breakpoint_location)
1031         (print_one_breakpoint_location, user_settable_breakpoint)
1032         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
1033         (allocate_bp_location, mention, breakpoint_re_set_one)
1034         (disable_command, enable_command): Likewise.
1035         (create_exec_event_catchpoint): Delete.
1036         (insert_catch_exec, remove_catch_exec, breakpoint_hit_catch_exec)
1037         (print_it_catch_exec, print_one_catch_exec, print_mention_catch_exec):
1038         New functions.
1039         (catch_exec_breakpoint_ops): New static global.
1040         (catch_exec_command_1): Use create_catchpoint instead of
1041         create_exec_event_catchpoint to create the exec catchpoint.
1043 2008-10-28  Tom Tromey  <tromey@redhat.com>
1045         * Makefile.in (SUBDIR_CLI_OBS): Don't mention cli-utils.o.
1046         (SUBDIR_CLI_DEPS): Don't mention cli-utils.c.
1047         (HFILES_NO_SRCDIR): Don't mention cli-utils.h.
1048         (cli-utils.o): Remove.
1049         * cli/cli-utils.c: Remove.
1050         * cli/cli-utils.h: Remove.
1052 2008-10-28  Tom Tromey  <tromey@redhat.com>
1054         * varobj.c (value_get_print_value): Include valprint.h.
1055         (value_get_print_value): Use get_formatted_print_options.
1056         * value.h (struct value_print_options): Declare.
1057         (value_print, val_print, common_val_print, val_print_string):
1058         Update.
1059         * value.c: Include valprint.h.
1060         (show_values): Use get_user_print_options.
1061         (show_convenience): Likewise.
1062         * valprint.h (prettyprint_arrays, prettyprint_structs): Don't
1063         declare.
1064         (struct value_print_options): New type.
1065         (vtblprint, unionprint, addressprint, objectprint, print_max,
1066         inspect_it, repeat_count_threshold, output_format,
1067         stop_print_at_null): Don't declare.
1068         (user_print_options, get_user_print_options,
1069         get_raw_print_options, get_formatted_print_options): Declare.
1070         (print_array_indexes_p): Don't declare.
1071         (maybe_print_array_index, val_print_array_elements): Update.
1072         * valprint.c (print_max): Remove.
1073         (user_print_options): New global.
1074         (get_user_print_options, get_raw_print_options,
1075         get_formatted_print_options): New functions.
1076         (print_array_indexes, repeat_count_threshold, stop_print_at_null,
1077         prettyprint_structs, prettyprint_arrays, unionprint,
1078         addressprint): Remove.
1079         (val_print): Remove format, deref_ref, pretty arguments; add
1080         options.  Update.
1081         (common_val_print): Likewise.
1082         (print_array_indexes_p): Remove.
1083         (maybe_print_array_index): Remove format, pretty arguments; add
1084         options.  Update.
1085         (val_print_array_elements): Remove format, deref_ref, pretty
1086         arguments; add options.  Update.
1087         (val_print_string): Add options argument.  Update.
1088         (_initialize_valprint): Use user_print_options.
1089         (output_format): Remove.
1090         (set_output_radix_1): Use user_print_options.
1091         * typeprint.c: Include valprint.h.
1092         (objectprint): Don't declare.
1093         (whatis_exp): Use get_user_print_options.
1094         * tui/tui-regs.c: Include valprint.h.
1095         (tui_register_format): Use get_formatted_print_options.
1096         * tracepoint.c: Include valprint.h.
1097         (addressprint): Don't declare.
1098         (trace_mention): Use get_user_print_options.
1099         (tracepoints_info): Likewise.
1100         * stack.c (print_frame_args): Use get_raw_print_options.
1101         (print_frame_info): Use get_user_print_options.
1102         (print_frame): Likewise.
1103         * sh64-tdep.c: Include valprint.h
1104         (sh64_do_register): Use get_formatted_print_options.
1105         * scm-valprint.c (scm_inferior_print): Remove format, deref_ref,
1106         pretty arguments; add options.
1107         (scm_scmlist_print): Likewise.  Update.
1108         (scm_scmval_print): Likewise.
1109         (scm_val_print): Likewise.
1110         (scm_value_print): Remove format, pretty arguments; add options.
1111         Update.
1112         * scm-lang.h (scm_value_print, scm_val_print, scm_scmval_print):
1113         Update.
1114         * scm-lang.c (scm_printstr): Add options argument.
1115         * python/python-value.c: Include valprint.h.
1116         (valpy_str): Use get_user_print_options.
1117         * printcmd.c: Include valprint.h.
1118         (addressprint): Don't declare.
1119         (inspect_it): Remove.
1120         (print_formatted): Remove format option; add options.  Update.
1121         (print_scalar_formatted): Likewise.
1122         (print_address_demangle): Use get_user_print_options.
1123         (do_examine): Use get_formatted_print_options.
1124         (print_command_1): Likewise.
1125         (output_command): Use get_formatted_print_options.
1126         (do_one_display): Likewise.
1127         (print_variable_value): Use get_user_print_options.
1128         * p-valprint.c (pascal_val_print): Remove format, deref_ref,
1129         pretty arguments; add options.  Update.
1130         (pascal_value_print): Remove format, pretty arguments; add
1131         options.  Update.
1132         (vtblprint, objectprint): Don't declare.
1133         (pascal_static_field_print): Remove.
1134         (pascal_object_print_value_fields): Remove format, pretty
1135         arguments; add options.  Update.
1136         (pascal_object_print_static_field): Likewise.
1137         (_initialize_pascal_valprint): Use user_print_options.  Update.
1138         * p-lang.h (pascal_val_print, pascal_value_print,
1139         pascal_printstr, pascal_object_print_value_fields): Update.
1140         (vtblprint, static_field_print): Don't declare.
1141         * p-lang.c (pascal_printstr): Add options argument.  Update.
1142         * objc-lang.c (objc_printstr): Add options argument.  Update.
1143         * mt-tdep.c: Include valprint.h.
1144         (mt_registers_info): Use get_raw_print_options.
1145         * mips-tdep.c: Include valprint.h.
1146         (mips_print_fp_register): Use get_formatted_print_options.
1147         (mips_print_register): Likewise.
1148         * mi/mi-main.c: Include valprint.h.
1149         (get_register): Use get_user_print_options.
1150         (mi_cmd_data_evaluate_expression): Likewise.
1151         (mi_cmd_data_read_memory): Use get_formatted_print_options.
1152         * mi/mi-cmd-stack.c: Include valprint.h.
1153         (list_args_or_locals): Use get_raw_print_options.
1154         * m2-valprint.c (print_function_pointer_address): Add addressprint
1155         argument.
1156         (m2_print_long_set): Remove format, pretty arguments.
1157         (m2_print_unbounded_array): Remove format, deref_ref, pretty
1158         arguments; add options.  Update.
1159         (print_unpacked_pointer): Remove format argument; add options.
1160         Now static.  Update.
1161         (print_variable_at_address): Remove format, deref_ref, pretty
1162         arguments; add options.  Update.
1163         (m2_print_array_contents): Likewise.
1164         (m2_val_print): Likewise.
1165         * m2-lang.h (m2_val_print): Update.
1166         * m2-lang.c (m2_printstr): Add options argument. Update.
1167         * language.h (struct value_print_options): Declare.
1168         (struct language_defn) <la_printstr>: Add options argument.
1169         <la_val_print>: Remove format, deref_ref, pretty argument; add
1170         options.
1171         <la_value_print>: Remove format, pretty arguments; add options.
1172         <la_print_array_index>: Likewise.
1173         (LA_VAL_PRINT, LA_VALUE_PRINT, LA_PRINT_STRING,
1174         LA_PRINT_ARRAY_INDEX): Update.
1175         (default_print_array_index): Update.
1176         * language.c (default_print_array_index): Remove format, pretty
1177         arguments; add options.  Update.
1178         (unk_lang_printstr): Add options argument.
1179         (unk_lang_val_print): Remove format, deref_ref, pretty arguments;
1180         add options.
1181         (unk_lang_value_print): Remove format, pretty arguments; add
1182         options.
1183         * jv-valprint.c (java_value_print): Remove format, pretty
1184         arguments; add options.  Update.
1185         (java_print_value_fields): Likewise.
1186         (java_val_print): Remove format, deref_ref, pretty arguments; add
1187         options.  Update.
1188         * jv-lang.h (java_val_print, java_value_print): Declare.
1189         * infcmd.c: Include valprint.h.
1190         (print_return_value): Use get_raw_print_options.
1191         (default_print_registers_info): Use get_user_print_options,
1192         get_formatted_print_options.
1193         (registers_info): Use get_formatted_print_options.
1194         * gdbtypes.h (struct value_print_options): Declare.
1195         (print_scalar_formatted): Update.
1196         * f-valprint.c (f77_print_array_1): Remove format, deref_ref,
1197         pretty arguments; add options.  Update.
1198         (f77_print_array): Likewise.
1199         (f_val_print): Likewise.
1200         * f-lang.h (f_val_print): Update.
1201         * f-lang.c (f_printstr): Add options argument.  Update.
1202         (c_value_print): Update declaration.
1203         * expprint.c: Include valprint.h.
1204         (print_subexp_standard): Use get_raw_print_options,
1205         get_user_print_options.
1206         * eval.c: Include valprint.h.
1207         (objectprint): Don't declare.
1208         (evaluate_subexp_standard): Use get_user_print_options.
1209         * cp-valprint.c (vtblprint, objectprint, static_field_print):
1210         Remove.
1211         (cp_print_value_fields): Remove format, pretty arguments; add
1212         options.  Update.
1213         (cp_print_value): Likewise.
1214         (cp_print_static_field): Likewise.
1215         (_initialize_cp_valprint): Use user_print_options.  Update.
1216         * c-valprint.c (print_function_pointer_address): Add addressprint
1217         argument.
1218         (c_val_print): Remove format, deref_ref, pretty arguments; add
1219         options.  Update.
1220         (c_value_print): Add options argument.  Update.
1221         * c-lang.h (c_val_print, c_value_print, c_printstr): Update.
1222         (vtblprint, static_field_print): Don't declare.
1223         (cp_print_value_fields): Update.
1224         * c-lang.c (c_printstr): Add options argument.  Update.
1225         * breakpoint.c: Include valprint.h.
1226         (addressprint): Don't declare.
1227         (watchpoint_value_print): Use get_user_print_options.
1228         (print_one_breakpoint_location): Likewise.
1229         (breakpoint_1, print_it_catch_fork, print_it_catch_vfork, mention,
1230         print_exception_catchpoint): Likewise.
1231         * auxv.c (fprint_target_auxv): Don't declare addressprint.  Use
1232         get_user_print_options.
1233         * ada-valprint.c (struct ada_val_print_args): Remove format,
1234         deref_ref, and pretty; add options.
1235         (print_optional_low_bound): Add options argument.
1236         (val_print_packed_array_elements): Remove format and pretty
1237         arguments; add options.  Update.
1238         (printstr): Add options argument.  Update.
1239         (ada_printstr): Likewise.
1240         (ada_val_print): Remove format, deref_ref, pretty arguments; add
1241         options argument.  Update.
1242         (ada_val_print_stub): Update.
1243         (ada_val_print_array): Remove format, deref_ref, pretty arguments;
1244         add options.  Update.
1245         (ada_val_print_1): Likewise.
1246         (print_variant_part): Likewise.
1247         (ada_value_print): Remove format, pretty arguments; add options.
1248         Update.
1249         (print_record): Likewise.
1250         (print_field_values): Likewise.
1251         * ada-lang.h (ada_val_print, ada_value_print, ada_printstr):
1252         Update.
1253         * ada-lang.c (ada_print_array_index): Add options argument; remove
1254         format and pretty arguments.
1255         (print_one_exception): Use get_user_print_options.
1257 2008-10-28  Tom Tromey  <tromey@redhat.com>
1259         * cli/cli-script.c (do_fclose_cleanup): Remove.
1260         (script_from_file): Use make_cleanup_fclose.
1261         * xml-tdesc.c (do_cleanup_fclose): Remove.
1262         (fetch_xml_from_file): Use make_cleanup_fclose.
1263         * tracepoint.c (tracepoint_save_command): Use
1264         make_cleanup_fclose.  Always free pathname.
1265         * source.c (print_source_lines_base): Use make_cleanup_fclose.
1266         * remote.c (fclose_cleanup): Remove.
1267         (remote_file_put): Use make_cleanup_fclose.
1268         (remote_file_get): Likewise.
1269         * linux-nat.c (linux_nat_find_memory_regions): Use
1270         make_cleanup_fclose.
1271         (linux_nat_info_proc_cmd): Likewise.
1272         (linux_proc_pending_signals): Likewise.
1273         * fbsd-nat.c (fbsd_find_memory_regions): Use make_cleanup_fclose.
1274         Free file name.
1275         * cli/cli-dump.c (do_fclose_cleanup): Remove.
1276         (make_cleanup_fclose): Remove.
1277         * defs.h (make_cleanup_fclose): Declare.
1278         * utils.c (do_fclose_cleanup): New function.
1279         (make_cleanup_fclose): Likewise.
1281 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1283         * inflow.c (kill_command): If the target claims there is still
1284         execution, don't clear the thread list.
1286 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1288         * cp-name-parser.y: Include defs.h instead of config.h.
1289         (parse_escape): Rename to ...
1290         (cp_parse_escape): ... this.
1291         (yylex): Update.
1292         (xfree) [TEST_CPNAMES]: New.
1294 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1296         * CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
1297         2.13 and configure.in.
1299 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1301         * target.h (struct target_ops) <to_supports_multi_process>: New
1302         field.
1303         (target_supports_multi_process): New define.
1304         * target.c (update_current_target): Inherit and de_fault
1305         to_supports_multi_process.
1306         * infcmd.c (attach_command): Allow attaching to multiple processes
1307         if the target supports it.
1308         (detach_command): If the target claims there is still execution,
1309         don't clear the thread list.
1310         * remote.c (remote_supports_multi_process): New.
1311         (init_remote_ops): Register remote_supports_multi_process.
1313 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1315         * Makefile.in (.y.c, .l.c): sed free to xfree.
1317 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1319         * Makefile.in (INSTALLED_LIBS, CLIBS): Remove reference to
1320         $(TM_CLIBS).
1321         (CDEPS): Remove reference to $(TM_CDEPS).
1323 2008-10-26  Michael Snyder  <msnyder@vmware.com>
1325         * infrun.c (handle_inferior_event): Handle dynamic symbol
1326         resolution in reverse.
1328 2008-10-25  Joel Brobecker  <brobecker@adacore.com>
1330         * infrun.c: Minor comment reformatting.
1332 2008-10-25  Pedro Alves  <pedro@codesourcery.com>
1334         * ada-exp.y (write_object_renaming): Use malloc instead of
1335         xmalloc.
1336         * p-exp.y (pop_current_type): Use free instead of xfree.
1338 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1340         * fork-child.c (startup_inferior): Only set threads not-executing
1341         after getting all the pending execs.  On TARGET_WAITKIND_IGNORE,
1342         keep waiting, don't resume.  On all other cases but
1343         TARGET_WAITKIND_SIGNALLED and TARGET_WAITKIND_EXITED, switch to
1344         the event ptid.
1346 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1348         Remote non-stop mode support.
1350         * remote.c (pending_stop_reply): New.
1351         (struct remote_state) <non_stop_aware, support_vCont_t>: New
1352         fields.
1353         (remote_async_inferior_event_token)
1354         (remote_async_get_pending_events_token): New.
1355         (notice_new_inferiors): New, abstracted out from record_currthread.
1356         (record_currthread): Call it.
1357         (remote_threads_info): Default threads to running in non-stop
1358         mode.  In non-stop mode, only qfThreadInfo is supported.
1359         (remote_close): Discard all pending stop_replies.  Close the event
1360         sources.
1361         (set_stop_requested_callback): New.
1362         (remote_start_remote): Implement non-stop mode startup.  In
1363         all-stop, don't clear the thread list here.
1364         (remote_non_stop_feature): New.
1365         (remote_protocol_features): Add a "QNonStop" feature.
1366         (remote_open_1): Clear cached_wait_status and non_stop_aware.
1367         Clear the thread list here.
1368         (remote_detach_1): Discard pending stop replies of the process we
1369         detached from.
1370         (extended_remote_attach_1): Implement non-stop mode.
1371         (remote_vcont_probe): Recognize `vCont;t'.
1372         (remote_vcont_resume): Implement non-stop mode.
1373         (remote_resume): Don't set waiting_for_stop_reply in non-stop
1374         mode.
1375         (remote_stop_ns): New.
1376         (remote_stop): Rename to ...
1377         (remote_stop_as): ... this.  If we have a cached wait status,
1378         don't bother interrupting the remote.
1379         (remote_stop): Reimplement as wrapper around remote_stop_as and
1380         remote_stop_ns.
1381         (interrupt_query): Don't query in async mode.
1382         (struct cached_reg, cahed_reg_t): New.
1383         (struct stop_reply): New.
1384         (stop_reply_queue): New.
1385         (stop_reply_xmalloc, stop_reply_xfree)
1386         (discard_pending_stop_replies, do_stop_reply_xfree)
1387         (queued_stop_reply, push_stop_reply, peek_stop_reply)
1388         (remote_parse_stop_reply, remote_get_pending_stop_replies)
1389         (process_stop_reply): New.
1390         (remote_wait_ns): New.
1391         (remote_wait_as): Use remote_parse_stop_reply.  Invalidate the
1392         notion of current general thread is a process exit was reported.
1393         (remote_wait): Call remote_wait_ns in non-stop mode.
1394         (handle_notification): New.
1395         (putpkt_binary): Handle notifications.  Don't care for
1396         waiting_for_stop_reply in non-stop mode.
1397         (getpkt_sane): Rename to ...
1398         (getpkt_or_notif_sane_1): ... this.  Add `expecting_notif'
1399         argument.  Handle it.  Handle notifications.
1400         (getpkt_sane): Reimplement as wrapper around getpkt_or_notif_sane_1.
1401         (getpkt_or_notif_sane): New.
1402         (select_new_thread_callback): Check for exited state instead of
1403         comparing the ptid against minus_one_ptid.
1404         (extended_remote_create_inferior_1): Query the remote about the
1405         current thread.
1406         (remote_supports_non_stop): New.
1407         (init_remote_ops): Register it.
1408         (remote_async_inferior_event_handler): New.
1409         (remote_async_get_pending_events_handler): New.
1411         * infcmd.c (proceed_thread_callback): Comment.
1412         (proceed_after_attach_callback, proceed_after_attach): New.
1413         (attach_command_post_wait): In background attach, resume all
1414         threads, but only if they are unsignalled, and not explicitly
1415         stopped.  In foreground attach, in non-stop mode, make sure to
1416         stop all threads of the just attached to process.
1417         (attach_command): In non-stop mode: If doing a background attach,
1418         stop at least one thread.  If a foreground attach, stop all
1419         threads.
1421 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1423         * event-loop.h: Mention async_event_handlers.
1424         (async_event_handler): Forward declare.
1425         (async_event_handler_func): New typedef.
1426         (create_async_event_handler, delete_async_event_handler)
1427         (mark_async_event_handler): Declare.
1428         * event-loop.c (event_data): New.
1429         (event_handler_func): Take an event_data instead of an integer.
1430         (struct gdb_event): Replace the integer file descriptor by a
1431         generic event_data.
1432         (async_event_handler): New.
1433         (async_handler_ready): Delete.
1434         (async_event_handler_list): New.
1435         (create_event): New.
1436         (create_file_event): Use it.
1437         (process_event): Adjust.
1438         (gdb_do_one_event): Poll from the event sources in round-robin
1439         fashion across calls.  Be sure to consult all sources before
1440         blocking.
1441         (handle_file_event): Take an event_data instead of an integer.
1442         Adjust.
1443         (gdb_wait_for_event): Add `block' argument.  Handle it.
1444         (mark_async_signal_handler): Remove unneeded cast.
1445         (invoke_async_signal_handler): Rename to ...
1446         (invoke_async_signal_handlres): ... this.  Return true if any was
1447         handled.
1448         (check_async_ready): Delete
1449         (create_async_event_handler): New.
1450         (mark_async_event_handler): New.
1451         (struct async_event_handler_data): New.
1452         (invoke_async_event_handler): New.
1453         (check_async_event_handlers): New.
1454         (delete_async_event_handler): New.
1455         (handle_timer_event): Adjust.
1457 2008-10-24  Doug Evans  <dje@google.com>
1459         * dwarf2read.c (typename_concat): Don't segv if prefix or suffix
1460         is NULL.  Simplify obs == NULL case.
1462 2008-10-24  Hui Zhu  <teawater@gmail.com>
1463             Pedro Alves  <pedro@codesourcery.com>
1465         * infrun.c (can_use_displaced_stepping): Change type to
1466         const char pointer.
1467         (can_use_displaced_stepping_auto): New string.
1468         (can_use_displaced_stepping_on): New string.
1469         (can_use_displaced_stepping_off): New string.
1470         (can_use_displaced_stepping_enum): New array.
1471         (show_can_use_displaced_stepping): In auto mode, also show
1472         the current effect of the option.
1473         (use_displaced_stepping): Return non-zero if displaced
1474         stepping is auto, and can be used with GDBARCH, and in
1475         non-stop mode.  Return non-zero if displaced stepping is on,
1476         and can be used with GDBARCH.  Return zero otherwise.
1477         (_initialize_infrun): Make the "set displaced-stepping"
1478         command an enum command.  Change its class to class_run.
1479         Place it in the top level set list.  Extend help to describe
1480         the auto mode.
1482 2008-10-23  Pedro Alves  <pedro@codesourcery.com>
1484         * defs.h: Mention ptid_is_pid.
1485         * inferior.h (ptid_is_pid): Declare.
1486         * gdbthread.h (struct thread_info) <stop_requested>: New field.
1487         (set_stop_requested): Declare.
1488         * infcmd.c (interrupt_target_1): Call set_stop_requested.
1489         * infrun.c (clear_proceed_status): Clear stop_requested.
1490         (infrun_thread_stop_requested_callback,
1491         infrun_thread_stop_requested): New.
1492         (handle_inferior_event): If a TARGET_SIGNAL_TRAP is reported on a
1493         thread that had an explicit stop request, pretend we got a
1494         TARGET_SIGNAL_0.  Always stop if the thread had an explicit stop
1495         request.
1496         (print_stop_reason): In the SIGNAL_RECEIVED case, if we're not
1497         outputting to MI, and we got a TARGET_SIGNAL_0, print "# Stopped",
1498         instead of mentioning signal 0.
1499         (ptid_is_pid): New.
1500         * thread.c (set_stop_requested): New.
1502         * linux-nat.c (queued_waitpid): Rename to ...
1503         (queued_waitpid_1): ... this.  Add `peek' argument.  Handle it.
1504         (queued_waitpid): New, as wrapper to queued_waitpid_1.
1505         (push_waitpid): Push the SIGTRAP to the local event queue, to the
1506         kernel's.
1507         (send_sigint_callback): Delete.
1508         (linux_nat_stop_lwp): New.
1509         (linux_nat_stop): Use it.
1511 2008-10-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
1513         * python/python-value (valpy_getitem): Fix heap corruption.
1514         
1515 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1517         * nto-procfs.c (do_attach): Form proper ptid including pid and tid.
1518         (procfs_create_inferior): Fetch list of threads.
1520 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1522         * nto-procfs.c (procfs_files_info): Fix a typo.
1523         (procfs_create_inferior): Make attach_flag per-inferior.
1525 2008-10-23  Tom Tromey  <tromey@redhat.com>
1527         * python/python-value.c (value_to_value_object): Initialize
1528         owned_by_gdb field.
1529         (valpy_new): Likewise.
1530         
1531 2008-10-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1532             Joel Brobecker  <brobecker@adacore.com>
1534         * ada-tasks.c (task_states, long_task_states): Use constant N_()
1535         initializer.  Define the strings as const.
1536         (short_task_info, info_task): Translate the strings above.
1538 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1540         * NEWS: Add entry for new feature (Ada tasking support).
1542 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1544         * configure.ac: On alpha-osf, error out if enable_tui is set to
1545         "yes", and set enable_tui to "no" if previously set to "auto".
1546         Check for waddstr only if TUI support was requested. Move the
1547         part of the configure script that updates various Makefile
1548         variables up, together with the check for waddstr.
1549         * configure: Regenerate.
1551 2008-10-22  Joel brobecker  <brobecker@adacore.com>
1553         * gdbtypes.c (copy_type): New function.
1554         * gdbtypes.h (copy_type): Add declaration.
1555         * ada-lang.c (ada_to_fixed_type_1): If there is a parallel XVZ
1556         variable, then use it.
1558 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1560         * target.h (struct target_ops): Add new field to_get_ada_task_ptid.
1561         (target_get_ada_task_ptid): New macro.
1562         * target.c (default_get_ada_task_ptid): New function.
1563         (update_current_target): Inherit field default_get_ada_task_ptid.
1564         (update_current_target): Make default_get_ada_task_ptid the default
1565         value for field to_get_ada_task_ptid.
1566         * ada-lang.h (struct task_control_block): Delete. Never used.
1567         (struct task_ptid, task_ptid_t, struct task_entry, task_list):
1568         Likewise.
1569         (struct ada_task_info): New.
1570         (ada_task_is_alive, ada_find_printable_frame)
1571         (ada_task_list_iterator_ftype, iterate_over_live_ada_tasks): Add
1572         declarations.
1573         (ada_build_task_list): Update prototype.
1574         (init_task_list, ada_is_exception_breakpoint): Remove prototypes.
1575         * ada-lang.c (ada_find_printable_frame): Make non-static.
1576         * ada-tasks.c: New file.
1577         * Makefile.in (SFILES): Add ada-tasks.c.
1578         (COMMON_OBS): Add ada-tasks.o.
1579         * linux-thread-db.c (thread_db_find_thread_from_tid)
1580         (thread_db_get_ada_task_ptid): New functions.
1581         (init_thread_db_ops): Set thread_db_ops.to_get_ada_task_ptid.
1583 2008-10-22  Tom Tromey  <tromey@redhat.com>
1585         PR gdb/2506:
1586         * c-exp.y (string_exp): New production.
1587         (exp): Use it.
1589 2008-10-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1591         * mips-tdep.c (mips_n32n64_fp_arg_chunk_p): Update TYPE_FIELD_STATIC
1592         removed before.
1594 2008-10-20  Joel Brobecker  <brobecker@adacore.com>
1596         * NEWS: Add entry mentioning thread-support on Tru64
1598 2008-10-19  Joel Brobecker  <brobecker@adacore.com>
1600         * dec-thread.c: New file.
1601         * config/alpha/alpha-osf3.mh (NATDEPFILES): Add dec-thread.o.
1602         (NAT_CLIBS): Define.
1604 2008-10-19  Hui Zhu  <teawater@gmail.com>
1606         * infrun.c (handle_inferior_event): Set "stop_pc" when
1607         TARGET_WAITKIND_NO_HISTORY.
1609 2008-10-19  Pedro Alves  <pedro@codesourcery.com>
1611         * python/python-value.c (value_object_methods)
1612         (value_object_as_number, value_object_as_mapping): Move to bottom
1613         of file.
1614         (valpy_dealloc, valpy_new, valpy_length, valpy_getitem)
1615         (valpy_setitem, valpy_str, valpy_add, valpy_subtract)
1616         (valpy_multiply, valpy_divide, valpy_remainder, valpy_power)
1617         (valpy_negative, valpy_positive, valpy_absolute, valpy_nonzero)
1618         (valpy_richcompare, valpy_dereference): Don't forward-declare.
1619         (valpy_length) [HAVE_LIBPYTHON2_4]: Change return type to `int'.
1621 2008-10-18  Pedro Alves  <pedro@codesourcery.com>
1623         * infrun.c (adjust_pc_after_break): Do nothing if executing in
1624         reverse.
1626 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1628         * infcmd.c (GO_USAGE): Delete.
1629         (go_command): Adjust.
1631 2008-10-17  Michael Snyder  <msnyder@vmware.com>
1632         Target interface for reverse debugging.
1633         * target.h (enum target_waitkind): 
1634         Add new wait event, TARGET_WAITKIND_NO_HISTORY.
1635         (struct target_ops): New method to_can_execute_reverse.
1636         (target_can_execute_reverse): New macro.
1637         * target.c (update_current_target): Inherit to_can_execute_reverse.
1639         Remote interface for reverse debugging.
1640         * remote.c (remote_can_execute_reverse): New target method.
1641         (remote_resume): Check for reverse exec direction, and send 
1642         appropriate command to target.
1643         (remote_wait_as): Check target response for NO_HISTORY status.
1644         Also check for empty reply (target doesn't understand "bs" or "bc).
1645         (remote_vcont_resume): Jump out if attempting reverse execution.
1647         Event handling interface for reverse debugging.
1648         * infrun.c (execution_direction): New state variable.
1649         (enum inferior_stop_reason): Add NO_HISTORY reason.
1650         (handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY.
1651         Handle stepping over a function call in reverse.
1652         Handle stepping thru a line range in reverse.
1653         Handle setting a step-resume breakpoint in reverse.
1654         Handle stepping into a function in reverse.
1655         Handle stepping between line ranges in reverse.
1656         (print_stop_reason): Print reason for NO_HISTORY.
1657         (step_into_function): Rename to handle_step_into_function.
1658         (handle_step_into_function_backward): New function.
1659         (set_exec_direction_func, show_exec_direction_func): New funcs.
1660         (proceed): No need to singlestep over a breakpoint
1661         when resuming in reverse.
1662         
1663         * inferior.h (enum exec_direction_kind): New enum.
1664         (execution_direction): Export new execution state variable.
1666         * breakpoint.c (make_breakpoint_silent): New function.
1667         * breakpoint.h (make_breakpoint_silent): Export.
1668         * infcmd.c (finish_command): Check for reverse exec direction.
1669         (finish_backward): New function, handle finish cmd in reverse.
1671         User interface for reverse execution.
1672         * Makefile.in (reverse.c): New file.
1673         * reverse.c: New file.  User interface for reverse execution.
1675 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1677         * remote.c (record_currthread): Add inferior before child threads.
1678         (remote_threads_info): Check for exited threads.  Mention
1679         notification order.
1681 2008-10-16  Joel Brobecker  <brobecker@adacore.com>
1683         * breakpoint.h (enum bptype): New enum bp_catchpoint.
1684         Delete bp_catch_fork and bp_catch_vfork.
1685         (struct breakpoint_ops): Add new methods "insert", "remove"
1686         and "breakpoint_hit".
1687         * breakpoint.c (create_fork_vfork_event_catchpoint)
1688         (create_fork_event_catchpoint, create_vfork_event_catchpoint): Remove.
1689         (insert_catchpoint): Remove handling of bp_catch_fork and
1690         bp_catch_vfork catchpoints, and handle them as bp_catchpoint
1691         catchpoints instead.
1692         (insert_bp_location, update_breakpoints_after_exec)
1693         (remove_breakpoint, bpstat_check_location, bpstat_what)
1694         (allocate_bp_location): Likewise.
1695         (print_it_typical, print_one_breakpoint_location, mention): Remove
1696         handling of bp_catch_fork and bp_catch_vfork breakpoints.
1697         (ep_is_catchpoint, user_settable_breakpoint)
1698         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
1699         (breakpoint_re_set_one, disable_command, enable_command):
1700         Remove use of bp_catch_fork and bp_catch_vfork.  Add handling of
1701         bp_catchpoint breakpoints.
1702         (insert_catch_fork, remove_catch_fork, breakpoint_hit_catch_fork)
1703         (print_it_catch_fork, print_one_catch_fork, print_mention_catch_fork):
1704         New functions.
1705         (catch_fork_breakpoint_ops): New static constant.
1706         (insert_catch_vfork, remove_catch_vfork, breakpoint_hit_catch_vfork)
1707         (print_it_catch_vfork, print_one_catch_vfork)
1708         (print_mention_catch_vfork): New functions.
1709         (catch_vfork_breakpoint_ops): New static constant.
1710         (create_catchpoint, create_fork_vfork_event_catchpoint): New functions.
1711         (catch_fork_command_1): Use create_fork_vfork_event_catchpoint
1712         to create the fork and vfork catchpoints.
1713         (gnu_v3_exception_catchpoint_ops): Set new breakpoint_ops fields.
1714         * ada-lang.c (catch_exception_breakpoint_ops): Set new breakpoint_ops
1715         fields.
1716         (catch_exception_unhandled_breakpoint_ops): Likewise.
1717         (catch_assert_breakpoint_ops): Likewise.
1719 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1721         * remote.c (set_general_process): New.
1722         (remote_check_symbols): Use it.
1724 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1726         * remote.c (push_remote_target): Delete.
1727         * target.h (push_remote_target): Delete declaration.
1729 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1731         * remote.c (remote_close): Unregister remote_desc from the event
1732         loop.  Always restore the SIGINT handler.  Discard all inferiors
1733         here.
1734         (remote_detach_1, remote_disconnect): Don't unregister the file
1735         descriptor from the event loop here.
1736         (interrupt_query, readchar, getpkt_sane): Pop the target instead
1737         of morning the current inferior.
1738         (remote_kill): Don't unregister the file descriptor from the event
1739         loop here.
1740         (remote_mourn_1): Don't discard inferiors here.
1742 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1744         * breakpoint.c (breakpoint_init_inferior): Clean up the moribund
1745         locations list.
1746         (moribund_breakpoint_here_p): Record the moribund
1747         location in the moribund_locations vector.
1748         * breakpoint.h (moribund_breakpoint_here_p): Declare.
1749         (displaced_step_fixup): Check if the breakpoint the thread was
1750         trying to step over has been removed since having been placed in
1751         the displaced stepping queue.
1752         (adjust_pc_after_break): In non-stop mode, check for a moribund
1753         breakpoint at the stop pc.
1754         (handle_inferior_event): Don't retire moribund breakpoints on
1755         TARGET_WAITKIND_IGNORE.
1757 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1759         * infrun.c (displaced_step_prepare): Switch thread temporarily
1760         while we're here.
1761         (displaced_step_fixup): Make sure target_resume sees ptid as
1762         inferior_ptid.  Add debug output.
1764 2008-10-14  Pedro Alves  <pedro@codesourcery.com>
1766         Remove dead code.
1768         * breakpoint.c (show_breakpoint_hit_counts): Delete.
1769         (print_one_breakpoint_location): Adjust.
1770         (breakpoint_clear_ignore_counts): Delete.
1771         * breakpoint.h (breakpoint_clear_ignore_counts): Remove
1772         declaration.
1773         * target.c (generic_mourn_inferior): Don't clear ignore
1774         counts (never reached).
1776 2008-10-10  Doug Evans  <dje@google.com>
1778         * dwarf2read.c (comp_unit_head): Use unsigned int consistently
1779         for dwarf section offsets and sizes.
1780         (dwarf2_cu): Ditto.
1781         (dwarf2_per_cu_data): Ditto.
1782         (create_all_comp_units): Change offset to unsigned int.
1783         (load_full_comp_unit,find_partial_die_in_comp_unit,find_partial_die,
1784         dwarf2_find_containing_comp_unit,dwarf2_find_comp_unit): Ditto.
1786         * dwarf2read.c (read_initial_length): Delete cu_header arg.
1787         All callers updated.
1788         (read_checked_initial_length_and_offset): New function.
1789         (read_offset_1): New function.
1790         (read_offset): Call it.
1791         (dwarf_decode_line_header): Call read_checked_initial_length_and_offset
1792         instead of read_initial_length.  Call read_offset_1 instead of
1793         read_offset.
1795         * dwarf2read.c (dwarf2_get_ref_die_offset): Remove unused arg `cu'.
1796         All callers updated.
1798         * dwarf2read.c (dwarf_attr_name): Unconditionally support all
1799         DW_AT_MIPS_* except DW_AT_MIPS_fde which collides with
1800         DW_AT_HP_block_index.
1802 2008-10-10  Pedro Alves  <pedro@codesourcery.com>
1804         * remote.c (remote_start_remote): Always tell the stub if we're in
1805         extended-remote.
1807 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1809         * remote.c (remote_wait): Rename to...
1810         (remote_wait_as): ... this.  Don't loop here.  If the remote
1811         didn't stop, return TARGET_WAITKIND_IGNORE.
1812         (remote_wait): New, reimplemented on top of remote_wait_as.
1814 2008-10-09  Thomas Schwinge  <tschwinge@gnu.org>
1816         * Makefile.in (gnu-nat.o): Revert the 2008-09-10 change, as the problem
1817         is fixed upstream.
1819         * reply_mig_hack.awk: Use the `BAD_TYPECHECK' macro.
1821         * MAINTAINERS (Write After Approval): Add myself.
1823 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1825         Make it compile without warnings.
1827         * procfs.c (create_procinfo): Initialize `parent'.
1828         (dead_procinfo): Pass a constant string as format to error.
1829         (procfs_address_to_host_pointer): Add cast to gdb_type *.
1830         (procfs_find_LDT_entry): Adjust format string to long int
1831         ptid.tid.
1832         (procfs_xfer_partial): Adjust prototype.  Add gdb_byte* cast.
1833         (procfs_xfer_memory): Adjust prototype.
1834         (info_mappings_callback, info_proc_mappings): Adjust to not pass a
1835         variable as printf_filtered format.
1836         (procfs_make_note_section): Change type of auxv local to gdb_byte.
1837         * Makefile.in: Remove special rule.
1839 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1840             Daniel Jacobowitz  <dan@codesourcery.com>
1842         * remote.c (remote_open_1): Move acknowledging any pending ack,
1843         querying supported features, activating noack mode, finding the
1844         target description, enabling extended remote, and checking remote
1845         symbols from here ...
1846         (remote_start_remote): ... to here.
1847         (remote_open_1): Don't pop the target if it is already gone.
1848         * target.c (unpush_target): Check for the dummy target.
1850 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1852         * ser-mingw.c: Include "command.h".
1853         (pipe_windows_open): Declare locals at the beginning of the scope.
1855 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1857         * remote.c (struct remote_state) <waiting_for_stop_reply>: New
1858         field.
1859         (remote_open_1): Clear waiting_for_stop_reply.
1860         (remote_resume): Set waiting_for_stop_reply.
1861         (remote_wait): Clear or set waiting_for_stop_reply accordingly.
1862         (putpkt_binary): If we're in async mode and waiting for a stop
1863         reply, bail out with an error.
1864         (extended_remote_mourn_1): Clear waiting_for_stop_reply.
1866 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1868         * remote.c (remote_get_thread_info): If the remote doesn't support
1869         the query, bail out.
1871 2008-10-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
1873         Convert static_kind into loc_kind enum.
1874         * gdbtypes.h (enum field_loc_kind): New.
1875         (union field_location): New field dwarf_block.
1876         (struct field): Rename static_kind as loc_kind.
1877         (FIELD_STATIC_KIND): Rename to ...
1878         (FIELD_LOC_KIND): ... here.
1879         (TYPE_FIELD_STATIC_KIND): Rename to ...
1880         (TYPE_FIELD_LOC_KIND): ... here and use there now new FIELD_LOC_KIND.
1881         (TYPE_FIELD_STATIC_HAS_ADDR): Remove.
1882         (TYPE_FIELD_STATIC): Remove.
1883         (TYPE_FIELD_BITPOS): Reformat.
1884         (SET_FIELD_BITPOS): New.
1885         (FIELD_PHYSADDR): Rename to ...
1886         (FIELD_STATIC_PHYSADDR): ... here.
1887         (TYPE_FIELD_STATIC_PHYSADDR): Follow the FIELD_PHYSADDR rename.
1888         (SET_FIELD_PHYSADDR): Use new FIELD_LOC_KIND.
1889         (FIELD_PHYSNAME): Rename to ...
1890         (FIELD_STATIC_PHYSNAME): ... here.
1891         (TYPE_FIELD_STATIC_PHYSNAME): Follow the FIELD_PHYSNAME rename.
1892         (SET_FIELD_PHYSNAME): Use new FIELD_LOC_KIND.
1893         (FIELD_DWARF_BLOCK, TYPE_FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK): New.
1894         (field_is_static): New declaration.
1895         * gdbtypes.c (field_is_static): New function.
1896         (copy_type_recursive): Update throughout.
1897         * amd64-tdep.c, c-typeprint.c, coffread.c, cp-valprint.c, dwarf2read.c,
1898         eval.c, jv-typeprint.c, jv-valprint.c, mdebugread.c, p-typeprint.c,
1899         p-valprint.c, valops.c, value.c, varobj.c: Update throughout.
1901 2008-10-07  Thomas Schwinge  <tschwinge@gnu.org>
1902             Pedro Alves  <pedro@codesourcery.com>
1904         * gnu-nat.h: Rename `current_inferior' to `gnu_current_inf' to
1905         avoid a name collision.
1906         * gnu-nat.c: Likewise.
1907         * i386gnu-nat.c: Likewise.
1909 2008-10-07  Joel Brobecker  <brobecker@adacore.com>
1911         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Add handling
1912         of arguments that are references.
1914 2008-10-06  Doug Evans  <dje@google.com>
1916         * dwarf2read.c (dwarf2_die_debug): New static global.
1917         (dump_die_shallow): Renamed from dump_die, New args f, indent.
1918         Print to specified file, indented by the specified amount.
1919         (dump_die_for_error): New fn.  Point all existing callers of
1920         dump_die here.
1921         (dump_die_die_1,dump_die): New fns, replaces ...
1922         (dump_die_list): ... deleted.
1923         (read_die_and_children_1): Old contents of read_die_and_children
1924         moved here.
1925         (read_die_and_children): Rewrite.
1926         (read_die_and_siblings): Call read_die_and_children_1 instead of
1927         read_die_and_children.
1928         (_initialize_dwarf2_read): New option "debug dwarf2-die".
1929         * gdbinit.in (pdie): New macro.
1931         * dwarf2read.c (offset_in_cu_p): New function.
1932         (find_partial_die,follow_die_ref): Use it.
1934         * symmisc.c (maintenance_info_symtabs): Watch for ^c.
1935         (maintenance_info_psymtabs): Ditto.
1937 2008-10-05  Michael Snyder  <msnyder@vmware.com>
1939         * infrun.c (handle_inferior_event): Fix typo in comment.
1941 2008-10-04  Vladimir Prus  <vladimir@codesourcery.com>
1943         * mi/mi-interp.c (mi_on_resume): Flush raw_stdout.
1945 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1947         PR gdb/2384:
1948         * gdbtypes.c (get_vptr_fieldno): baseclass and basetype may have
1949         different lifetimes.
1950         
1951 2008-10-03  Joel Brobecker  <brobecker@adacore.com>
1953         * solib-osf.c: Include "solib.h".
1955 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1956         
1957         * utils.c, defs.h (gdb_buildargv): New fn. Wrap buildargv
1958         and check for out-of-memory condition.
1959         * exec.c (exec_file_command): Call it.
1960         * infrun.c (handle_command, xdb_handle_command): Likewise.
1961         * interps.c (interpreter_exec_cmd): Likewise.
1962         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
1963         * procfs.c (info_proc_cmd): Likewise.
1964         * remote-mips.c (common_open): Likewise.
1965         * remote-sim.c (gdbsim_kill, gdbsim_create_inferior)
1966         (gdbsim_open): Likewise.
1967         * remote.c (extended_remote_run, remote_put_command)
1968         (remote_get_command, remote_delete_command): Likewise.
1969         * ser-mingw.c (pipe_windows_open): Likesise.
1970         * source.c (add_path, show_substitute_path_command)
1971         (unset_substitute_path_command, set_substitute_path_command):
1972         Likewise.
1973         * stack.c (backtrace_command): Likewise.
1974         * symfile.c (symbol_file_command, generic_load)
1975         (add_symbol_file_command): Likesise.
1976         * symmisc.c (maintenance_print_symbols, maintenance_print_psymbols)
1977         (maintenance_print_msymbols): Likewise.
1979 2008-10-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1981         Replace TYPE_ARRAY_{UPPER,LOWER}_BOUND_TYPE by a bit if {un,}defined.
1982         * c-typeprint.c (c_type_print_varspec_suffix), m2-typeprint.c
1983         (m2_array), p-typeprint.c (pascal_type_print_varspec_prefix),
1984         valops.c (value_cast), varobj.c (c_number_of_children): Replace
1985         TYPE_ARRAY_UPPER_BOUND_TYPE compared to BOUND_CANNOT_BE_DETERMINED by
1986         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1987         * parse.c (follow_types): Use TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1988         * f-valprint.c (f77_get_dynamic_upperbound): Replace with ...
1989         (f77_get_upperbound): ... this function handling now only
1990         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1991         (f77_get_dynamic_lowerbound): Replace with ...
1992         (f77_get_lowerbound): ... this function handling now only
1993         TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED.
1994         (f77_get_dynamic_length_of_aggregate, f77_create_arrayprint_offset_tbl):
1995         Update their callers.
1996         * eval.c (evaluate_subexp_standard): Update their callers.
1997         * f-lang.h (f77_get_dynamic_upperbound, f77_get_upperbound)
1998         (f77_get_dynamic_lowerbound, f77_get_lowerbound): Update their
1999         prototypes.
2000         (BOUND_FETCH_OK, BOUND_FETCH_ERROR): Remove.
2001         * f-typeprint.c (f_type_print_varspec_suffix, f_type_print_base): Remove
2002         the lower_bound_was_default variable.  Update the
2003         f77_get_dynamic_upperbound, f77_get_upperbound and
2004         TYPE_ARRAY_UPPER_BOUND_TYPE calls.
2005         * gdbtypes.c (print_bound_type): Remove the function.
2006         (recursive_dump_type): Remove its calls printing UPPER_BOUND_TYPE and
2007         LOWER_BOUND_TYPE.
2008         * gdbtypes.h (enum array_bound_type): Remove.
2009         (struct main_type): Remove the fields upper_bound_type and
2010         lower_bound_type.  Comment the new overload of the field artificial.
2011         (TYPE_ARRAY_UPPER_BOUND_TYPE): Replace by ...
2012         (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED): ... this macro.
2013         (TYPE_ARRAY_LOWER_BOUND_TYPE): Replace by ...
2014         (TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): ... this macro.
2016 2008-10-02  Tom Tromey  <tromey@redhat.com>
2018         * Makefile.in (HFILES_NO_SRCDIR): Remove gdb-events.h, gstdint.h.
2020 2008-10-02  Daniel Jacobowitz  <dan@codesourcery.com>
2022         * mips-linux-tdep.c (mips_linux_in_dynsym_resolve_code): Update
2023         comments.
2024         (mips_linux_skip_resolver): Also use glibc_skip_solib_resolver.
2025         (mips_linux_init_abi): Do not override skip_trampoline_code.
2026         * configure.tgt (mips*-*-linux*): Add glibc-tdep.o.
2027         * mips-tdep.c (mips32_scan_prologue): Stop scanning at branches.
2028         (mips_stub_frame_sniffer): Use the stub frame sniffer for PIC stubs.
2029         (mips_skip_mips16_trampoline_code): Rename from
2030         mips_skip_trampoline_code.
2031         (mips_skip_pic_trampoline_code, mips_skip_trampoline_code): New.
2032         * infrun.c (handle_inferior_event): Do not pass zero to
2033         in_solib_dynsym_resolve_code.
2035 2008-10-02  Pierre Muller  <muller@ics.u-strasbg.fr>
2036             Pedro Alves  <pedro@codesourcery.com>
2038         * win32-nat.c (do_initial_win32_stuff): Set inferior_ptid.
2041 2008-10-01  Tom Tromey  <tromey@redhat.com>
2043         * symtab.c (search_symbols): Update.
2044         * symtab.h (domain_enum_tag) <METHODS_DOMAIN>: Remove.
2046 2008-10-01  Tom Tromey  <tromey@redhat.com>
2048         * symfile.c (syms_from_objfile): Update.
2049         (reread_symbols): Update.
2050         * objfiles.h (OBJF_SYMS): Remove.
2051         (OBJF_REORDERED): Renumber.
2052         (OBJF_SHARED): Likewise.
2053         (OBJF_READNOW): Likewise.
2054         (OBJF_USERLOADED): Likewise.
2056 2008-10-01  Tom Tromey  <tromey@redhat.com>
2058         * symtab.c (find_pc_sect_psymtab): Use MSYMBOL_TYPE.
2059         (find_pc_sect_symtab): Likewise.
2060         * symmisc.c (dump_msymbols): Use MSYMBOL_TYPE.
2061         * solib-som.c (som_solib_desire_dynamic_linker_symbols): Use
2062         MSYMBOL_TYPE, not SYMBOL_TYPE.
2063         * parse.c (write_exp_msymbol): Use MSYMBOL_TYPE.
2064         * objc-lang.c (find_methods): Use MSYMBOL_TYPE.
2065         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Use
2066         MSYMBOL_TYPE.
2067         * m2-exp.y (yylex): Use SYMBOL_CLASS.
2069 2008-10-01  Tom Tromey  <tromey@redhat.com>
2071         * xcoffread.c (RECORD_MINIMAL_SYMBOL): Update.
2072         (scan_xcoff_symtab): Update.
2073         * mdebugread.c (record_minimal_symbol): Update.
2074         (parse_partial_symbols): Update.
2075         * elfread.c (record_minimal_symbol): Update.
2076         * dbxread.c (record_minimal_symbol): Update.
2077         * coffread.c (record_minimal_symbol): Update.
2078         * sh64-tdep.c (MSYMBOL_IS_SPECIAL): Redefine.
2079         (sh64_elf_make_msymbol_special): Update.
2080         * mips-tdep.c (mips_elf_make_msymbol_special): Use
2081         MSYMBOL_TARGET_FLAG_1.
2082         (mips_elf_make_msymbol_special): Likewise.
2083         (msymbol_is_special): Likewise.
2084         * minsyms.c (prim_record_minimal_symbol_and_info): Update.
2085         (install_minimal_symbols): Likewise.
2086         (prim_record_minimal_symbol): Update.
2087         (prim_record_minimal_symbol_and_info): Remove 'info' argument.
2088         * m68hc11-tdep.c (MSYMBOL_SET_RTC): Redefine.
2089         (MSYMBOL_SET_RTI): Redefine.
2090         (MSYMBOL_IS_RTC): Redefine.
2091         (MSYMBOL_IS_RTI): Redefine.
2092         * arm-tdep.c (MSYMBOL_SET_SPECIAL): Redefine.
2093         (MSYMBOL_IS_SPECIAL): Redefine.
2094         * symtab.h (struct minimal_symbol) <info>: Remove.
2095         <target_flag_1, target_flag_2>: New fields.
2096         (MSYMBOL_INFO): Remove.
2097         (MSYMBOL_TARGET_FLAG_1): New macro.
2098         (MSYMBOL_TARGET_FLAG_2): Likewise.
2099         (prim_record_minimal_symbol_and_info): Update.
2101 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2103         * ada-lang.c (is_digits_suffix): Delete unused function.
2105 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
2107         * ada-lang.c (ada_modulus): Correct to avoid sign problem with
2108         moduli >= 2**31.
2110 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
2112         * ada-lang.c (ada_lookup_struct_elt_type): Handle case of a "naked"
2113         variant branch.
2114         (empty_record): Use INIT_CPLUS_SPECIFIC, since this field is not
2115         supposed to be null.  Fixes debugger segfaults.
2116         (is_unchecked_variant): New function.
2117         (to_fixed_variant_branch_type): Modify to leave unchecked unions
2118         untouched.
2119         (ada_template_to_fixed_record_type_1): Fix comment.
2121 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2123         * ada-lang.c (standard_exc): New static constant.
2124         (ada_exception_catchpoint_cond_string): Add special handling
2125         for the predefined exceptions.
2127 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2129         * ada-lang.c (ADA_RETAIN_DOTS): Delete this dead macro.  Update
2130         the code accordingly.
2132 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2134         * ada-lang.c (ada_evaluate_subexp) [UNOP_IND]: Remove strange
2135         treatment of expect_type. Return the correct type when dereferencing
2136         an integer.
2138 2008-09-30  Tom Tromey  <tromey@redhat.com>
2140         PR gdb/2484:
2141         * symtab.c (struct add_macro_name_data): New struct.
2142         (add_macro_name): New function.
2143         (default_make_symbol_completion_list): Complete macro names.
2144         * scm-lang.c (scm_language_defn): Update.
2145         * p-lang.c (pascal_language_defn): Update.
2146         * objc-lang.c (objc_language_defn): Update.
2147         * macrotab.h (macro_callback_fn): Add user_data argument.
2148         (macro_for_each): Likewise.
2149         (macro_for_each_in_scope): Declare.
2150         * macrotab.c: (struct macro_for_each_data): New struct.
2151         (foreach_macro): Use it.
2152         (macro_for_each): Likewise.
2153         (foreach_macro_in_scope): New function.
2154         (macro_for_each_in_scope): Likewise.
2155         * macrocmd.c (print_one_macro): Add argument.
2156         (macro_list_command): Pass NULL to macro_for_each.
2157         * m2-lang.c (m2_language_defn): Update.
2158         * language.h (struct language_defn) <la_macro_expansion>: New
2159         field.
2160         (macro_expansion): New enum.
2161         * language.c (unknown_language_defn): Update.  Fix order of
2162         initializers.
2163         (auto_language_defn): Likewise.
2164         (local_language_defn): Update.
2165         * jv-lang.c (java_language_defn): Update.
2166         * f-lang.c (f_language_defn): Update.
2167         * c-lang.c (c_language_defn): Update.
2168         (cplus_language_defn): Likewise.
2169         (asm_language_defn): Likewise.
2170         (minimal_language_defn): Likewise.
2171         * ada-lang.c (ada_language_defn): Update.
2173 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2175         * dwarf2read.c (dwarf2_get_subprogram_pc_bounds): New function.
2176         (get_scope_pc_bounds): Use it.
2178 2008-09-27  Tom Tromey  <tromey@redhat.com>
2180         * NEWS: Update.
2181         * macrocmd.c (extract_identifier): Add is_parameter argument.
2182         (macro_define_command): Update.
2183         (macro_undef_command): Likewise.
2184         * macroexp.c (stringify): New function.
2185         (find_parameter): Likewise.
2186         (gather_arguments): Add nargs argument.  Handle varargs.
2187         (substitute_args): Add is_varargs and va_arg_name arguments.
2188         Handle varargs, splicing, stringification.  Use find_parameter.
2189         (expand): Handle varargs.
2191 2008-09-27  Tom Tromey  <tromey@redhat.com>
2193         * scm-lang.c (scm_language_defn): Update.
2194         * p-typeprint.c (pascal_print_typedef): New function.
2195         * p-lang.h: (pascal_print_typedef): Declare.
2196         * p-lang.c (pascal_language_defn): Update.
2197         * objc-lang.c (objc_language_defn): Update.
2198         * m2-typeprint.c (m2_print_typedef): New function.
2199         * m2-lang.h (m2_print_typedef): Declare.
2200         * m2-lang.c (m2_language_defn): Update.
2201         * language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal):
2202         Remove.
2203         (struct language_defn) <la_print_typedef>: New field.
2204         (default_print_typedef): Declare.
2205         (LA_PRINT_TYPEDEF): New define.
2206         * language.c (unknown_language_defn): Update.
2207         (auto_language_defn): Update.
2208         (local_language_defn): Update.
2209         * jv-lang.c (java_language_defn): Update.
2210         * f-lang.c (f_language_defn): Update.
2211         * c-typeprint.c (c_print_typedef): New function.
2212         * c-lang.h (c_print_typedef): Declare.
2213         * c-lang.c (c_language_defn): Update.
2214         (cplus_language_defn): Update.
2215         (asm_language_defn): Update.
2216         (minimal_language_defn): Update.
2217         * ada-lang.c (ada_language_defn): Update.
2218         * typeprint.c (default_print_typedef): New function.
2220 2008-09-27  Tom Tromey  <tromey@redhat.com>
2222         * jv-exp.y (insert_exp): Define using ISO syntax.
2223         (copy_exp): Likewise.
2224         (push_expression_name): Likewise.
2225         (push_fieldnames): Likewise.
2226         (java_type_from_name): Likewise.
2227         (yyerror): Likewise.
2228         (yylex): Likewise.
2229         (parse_number): Likewise.
2231 2008-09-26  Joel Brobecker  <brobecker@adacore.com>
2233         * MAINTAINERS (GLOBAL MAINTAINERS): Add Pedro Alves.
2235 2008-09-25  Stephan Springl  <springl-gdb@bfw-online.de> (tiny change)
2237         * stack.c (print_frame_args): Fix typos in comments.
2239 2008-09-25  Sérgio Durigan Júnior  <sergiodj@linux.vnet.ibm.com>
2241         * linux-nat.c (get_pending_status): Fix argument to WIFSTOPPED.
2243 2008-09-24  Vladimir Prus  <vladimir@codesourcery.com>
2245         * remote-sim.c (gdbsim_create_inferior): Fix missing parenthesis.
2246         
2247 2008-09-24  Andreas Schwab  <schwab@suse.de>
2249         * frame.c (get_frame_register_bytes): Take pseudo registers into
2250         account.  Avoid excessive function calls.
2252 2008-09-23  Doug Evans  <dje@google.com>
2254         * dcache.c (state_chars): New static global.
2255         (ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
2256         All uses updated.
2257         (dcache_info): Print cache state as mnemonically useful letters instead
2258         of magic numbers.
2260         * dwarf2read.c (comp_unit_head): Reorganize for better packing.
2262 2008-09-22  Tom Tromey  <tromey@redhat.com>
2264         * symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
2265         printf_filtered.
2267 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2269         * infrun.c (follow_exec): Don't do a generic mourn.  Instead
2270         inline the required bits.
2271         * breakpoint.h (enum inf_context): Add inf_execd.
2273 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2275         * infrun.c (handle_inferior_event): In the follow exec case,
2276         context-switch before doing anything else.
2278 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2280         * top.c (any_thread_of, kill_or_detach): New functions.
2281         (quit_target): Iterate over all inferiors, killing or detaching
2282         accordingly.
2284 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2286         Remove the attach_flag global, and make it per-inferior.
2288         * inferior.h (attach_flag): Delete.
2289         (inferior_process): Declare.
2290         * solib.c (update_solib_list): Adjust.
2291         * gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
2292         * inf-ptrace.c (inf_ptrace_detach): Adjust.
2293         (inf_ptrace_files_info): Get it from the current inferior.
2294         * inf-ttrace.c (inf_ttrace_attach): Adjust.
2295         (inf_ttrace_files_info): Get it from the current
2296         inferior.
2297         * inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
2298         (clear_sigint_trap): Get it from the current process.
2299         * remote.c (extended_remote_attach_1)
2300         (extended_remote_create_inferior_1): Adjust.
2301         * top.c (quit_confirm, quit_target): Get it from the current inferior.
2302         * procfs.c (do_detach): Adjust.
2303         (procfs_wait): Get it from the event inferior.
2304         (procfs_files_info): Get it from the current inferior.
2305         * nto-procfs.c (procfs_files_info): Likewise.
2306         (procfs_attach): Adjust.  Set the attach_flag here.
2307         (do_attach): Don't set it here.
2308         (procfs_detach): Don't clear it.
2309         (procfs_mourn_inferior): Don't clear it.
2310         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2311         * target.c (attach_flag): Delete.
2312         (generic_mourn_inferior): Don't clear it.
2313         * win32-nat.c (get_win32_debug_event): Get it from the event
2314         process.
2315         (do_initial_win32_stuff): Add attaching argument.  Set attach_flag
2316         in the inferior accordingly.
2317         (win32_attach): Don't set the attach_flag here.  Pass 1 to
2318         do_intial_win32_stuff.
2319         (win32_files_info): Get it from the current inferior.
2320         (win32_create_inferior): Dont clear attach_flag here.  Pass 0 to
2321         do_intial_win32_stuff.
2323 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2325         Make the stop_soon global be per-inferior instead.
2327         * infcmd.c (attach_command_post_wait): Adjust.
2328         (attach_command): Likewise.
2330         * inferior.h (stop_soon): Delete.
2331         (struct inferior): Add stop_soon member.
2333         * infrun.c (stop_soon): Delete.
2334         (clear_proceed_status, start_remote)
2335         (fetch_inferior_event, handle_inferior_event): Adjust.
2336         (signal_stop_state): Don't check stop_soon here.  Check in callers
2337         instead.
2338         (save_inferior_status, restore_inferior_status): Adjust.
2340         * linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
2341         signals to common code if starting up the inferior.
2342         
2343         * inferior.h (struct inferior_info): Added stop_soon member.
2344         * inferior.c (add_inferior) Clear stop_soon.
2346         * mips-tdep.c (heuristic_proc_start): Adjust.
2347         * nto-procfs.c (procfs_create_inferior): Adjust.
2348         * solib-irix.c (irix_solib_create_inferior_hook): Adjust.
2349         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2350         * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
2351         * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
2353         * win32-nat.c (do_initial_win32_stuff): Adjust.
2355         * alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
2357 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2359         Implement remote multi-process extensions.
2361         * remote.c (struct remote_state): Add extended and
2362         multi_process_aware fields.
2363         (remote_multi_process_p): New.
2364         (PACKET_vKill): New.
2365         (record_currthread): Use thread_change_ptid.  Notice new
2366         inferiors.
2367         (set_thread, remote_thread_alive): Use write_ptid.
2368         (write_ptid, read_ptid): New.
2369         (remote_current_thread, remote_threads_extra_info): Use them.
2370         (remote_threads_info): Likewise.  Detect new inferiors.
2371         (remote_start_remote): Add inferior to inferior list.
2372         (remote_multi_process_feature): New.
2373         (remote_protocol_features): Add "multiprocess" feature.
2374         (remote_query_supported): Pass "multiprocess+" as supported
2375         features.
2376         (remote_open_1): Clear multi_process_aware.  Set extended
2377         accordingly.
2378         (remote_detach_1): Detach current process.  Use extended packet
2379         format for extended-remote multi-process.  Detach process from the
2380         inferior list.  Only mourn after printing output.
2381         (extended_remote_attach_1): Add process to the inferior list.
2382         (remote_vcont_resume): Use write_ptid to pass the thread ids.
2383         (remote_wait): Use read_ptid.  Implement the extended
2384         multi-process extension format of the 'W' and 'X' reply packets.
2385         Remove exited inferiors from inferior list.
2386         (remote_xfer_memory): Set general thread.
2387         (remote_vkill): New.
2388         (extended_remote_kill): New.
2389         (remote_mourn_1): Discard all inferiors.
2390         (select_new_thread_callback): New.
2391         (extended_remote_mourn_1): If there are more processes to debug,
2392         switch to a thread in another process, and don't pop the target.
2393         (extended_remote_create_inferior_1): Add the new process to the
2394         inferior list.
2395         (remote_stopped_by_watchpoint): Indenting.
2396         (remote_xfer_partial): Set the general thread.
2397         (remote_pid_to_str): If the remote is multi-process aware, print
2398         the process id as well as the thread id.
2399         (remote_get_thread_local_address): Use write_ptid.
2400         (init_extended_remote_ops): Register extended_remote_kill.
2401         (_initialize_remote): Register new packets.  Change
2402         magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
2403         member to 42000.
2405         * thread.c (thread_change_ptid): Also account for the inferior pid
2406         changing.
2408         * inferior.h (discard_all_inferiors): Declare.
2409         * inferior.c (discard_all_inferiors): New.
2411 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2413         * gnu-nat.c (gnu_attach): Add process to inferiors table.
2414         (gnu_detach): Remove it.
2415         * go32-nat.c (go32_create_inferior): Add process to gdb's inferior
2416         table.
2417         * inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
2418         to inferior table accordingly.
2419         (inf_ptrace_attach): Add new process to inferior table.
2420         (inf_ptrace_detach): Remove it.
2421         * inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
2422         to inferior table accordingly.
2423         (inf_ttrace_attach): Add process to inferior table.
2424         (inf_ttrace_detach): Remove it.
2425         * linux-fork.c (init_fork_list): Delete any left over inferior.
2426         (linux_fork_mourn_inferior, detach_fork_command): Also delete
2427         processes from inferior list.
2428         * monitor.c (monitor_open): Add process to inferior list.
2429         (monitor_close): Remove it.
2430         * nto-procfs.c (procfs_attach): Add process to inferior list.
2431         Find threads after pushing the target.
2432         (procfs_detach): Remove process from inferior list.
2433         (procfs_create_inferior): Add process to inferior list.
2434         * procfs.c (procfs_detach): Remove process from inferior list.
2435         (do_attach): Add process to inferior list.
2436         * remote-sim.c (sim_create_inferior): Add process to inferior list.
2437         (gdbsim_close): Remove it.
2438         * target.c (generic_mourn_inferior): If inferior_ptid is not
2439         null_ptid, remove the corresponding inferior from inferior list.
2440         * win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
2441         (win32_detach): Remove it.
2442         * linux-nat.c (linux_child_follow_fork): Delete and add inferiors
2443         to inferior list accordingly.
2444         * fork-child.c (fork_inferior): Add process to inferior list.
2445         * corelow.c (CORELOW_PID): Define.
2446         (core_close): Remove core from inferior list.
2447         (core_open): Add it.
2449 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2451         * inferior.h: Forward declare struct ui_out.
2452         Forward declare struct private_inferior.
2453         (struct inferior): New.
2454         (init_inferior_list, add_inferior, add_inferior_silent)
2455         (delete_inferior, delete_inferior_silent, detach_inferior)
2456         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
2457         (valid_inferior_id, find_inferior_pid): New functions.
2458         (inferior_callback_func): New typedef.
2459         (iterate_over_inferiors, print_inferior, have_inferiors)
2460         (current_inferior): New functions.
2461         * inferior.c: New file.
2463         * Makefile.in (SFILES): Add inferior.c.
2464         (COMMON_OBS): Add inferior.o.
2466 2008-09-22  Jonathan Larmour  <jifl@eCosCentric.com>
2468         * arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
2469         instead of determining symbol and line info directly.
2470         * MAINTAINERS: Update my email address.
2472 2008-09-22  Daniel Jacobowitz  <dan@codesourcery.com>
2474         * symtab.c (skip_prologue_using_sal): Treat two consecutive lines
2475         at the same address as a prologue marker.  Do not skip an entire
2476         function.
2478 2008-09-22  Andrew Stubbs  <ams@codesourcery.com>
2480         * frame.c (get_frame_register_bytes): Comment improvments.
2482 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2484         * linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
2485         all-stop mode.
2487 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2489         * MAINTAINERS: Update my email address.
2491 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2493         * frame.c (get_frame_register_bytes): Detect bad debug info.
2495 2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
2497         Fix a crash on uninitialized ECS->EVENT_THREAD for a newly found thread.
2498         * infrun.c (wait_for_inferior): Move this ECS->EVENT_THREAD
2499         initialization ...
2500         (fetch_inferior_event): ... and this ECS->EVENT_THREAD initialization
2501         ...
2502         (handle_inferior_event): ... here after the add_thread call together
2503         with the local adjust_pc_after_break and reinit_frame_cache calls.
2505 2008-09-16  David Daney  <ddaney@avtrex.com>
2507         * breakpoint.c (bpstat_stop_status): Clear breakpoint_at for
2508         all hardware bpstats.
2510 2008-09-16  Joel Brobecker  <brobecker@adacore.com>
2512         * gstdint.h: Delete.
2514 2008-09-15  Mark Kettenis  <kettenis@gnu.org>
2516         * infcall.c (generic_push_dummy_code): Remove.
2517         (push_dummy_code): Unconditionally call gdbarch_push_dummy_code.
2519 2008-09-15  Doug Evans  <dje@google.com>
2521         * dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
2522         (struct attribute): Ditto.
2524 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2526         * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind_cache): Record
2527         HPPA_IPSW_REGNUM and HPPA_SAR_REGNUM values.
2529         * hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
2530         "#if 0" "#endif".  Fix mapping of DWARF DBX registers to GDB registers.
2531         Correct arguments and improve comments.
2532         (hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum.  Delete
2533         disabled code.
2534         * hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating
2535         point DBX register, change error to warning, and improve comments.
2537 2008-09-14  Doug Evans  <dje@google.com>
2539         * dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.
2541 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2543         * hppa-linux-tdep.c (hppa_linux_supply_fpregset): Correct iteration.
2545 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2547         * defs.h (GCC_GENERATED_STDINT_H): Define.
2549 2008-09-13  Tom Tromey  <tromey@redhat.com>
2551         * varobj.c (varobj_set_display_format): Use xfree.
2552         * tracepoint.c (stringify_collection_list): Use xfree.
2553         * remote-fileio.c (remote_fileio_reset): Use xfree.
2554         * mipsread.c (read_alphacoff_dynamic_symtab): Use xfree.
2555         * dfp.c (decimal_from_floating): Use xfree, xstrprintf.  Don't use
2556         asprintf.
2557         * cp-support.c (mangled_name_to_comp): Use xfree.
2559 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2561         * ada-lang.c (remove_extra_symbols): Remove stub symbols if
2562         the associated complete symbol is also in the list.
2563         (ada_add_local_symbols, ada_add_non_local_symbols): New functions,
2564         extracted out from ada_lookup_symbol_list.
2565         (ada_lookup_symbol_list): Use them.  Remove the search through
2566         the minimal symbols.
2568 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2570         * dwarf2read.c (add_partial_subprogram): New procedure.
2571         (scan_partial_symbols): Use it.
2572         (load_partial_dies): Read in children of subprogram and lexical
2573         blocks for Ada compilation units.
2575 2008-09-13  Tom Tromey  <tromey@redhat.com>
2577         * symfile.c (build_id_verify): Free 'found'.
2578         (find_separate_debug_file): Use xfree, not free.
2580 2008-09-12  Doug Evans  <dje@google.com>
2582         * corefile.c (write_memory): Remove unnecessary copying.
2584         * sol-thread.c (_initialize_sol_thread): Add FIXME regarding
2585         order of _initialize_* fns.
2587         * dwarf2read.c (comp_unit_head): Rename first_die_ptr to
2588         first_die_offset.  All uses updated.
2589         Delete unused members cu_head_ptr, next.
2590         Move members base_known, base_address to ...
2591         (dwarf2_cu) ... here.  All uses updated.
2593 2008-09-12  Pedro Alves  <pedro@codesourcery.com>
2595         * Makefile.in (generated_files): Add $(NAT_GENERATED_FILES).
2596         * config/i386/i386gnu.mh (NAT_GENERATED_FILES): New.
2598 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2600         * fork-child.c (startup_inferior): Use target_wait and target_resume
2601         directly instead of calling wait_for_inferior / resume.
2603         * infcmd.c (kill_if_already_running): Do not call no_shared_libraries
2604         or init_wait_for_inferior.
2605         (run_command_1): Call init_wait_for_inferior.
2607 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2609         * gdbtypes.h (builtin_type_void_data_ptr, builtin_type_void_func_ptr,
2610         builtin_type_CORE_ADDR, builtin_type_char, builtin_type_short,
2611         builtin_type_int, builtin_type_long, builtin_type_signed_char,
2612         builtin_type_unsigned_char, builtin_type_unsigned_short,
2613         builtin_type_unsigned_int, builtin_type_unsigned_long,
2614         builtin_type_float, builtin_type_double, builtin_type_long_double,
2615         builtin_type_complex, builtin_type_double_complex, builtin_type_string,
2616         builtin_type_bool, builtin_type_long_long,
2617         builtin_type_unsigned_long_long): Remove macros.
2619         (builtin_type_f_character, builtin_type_f_integer,
2620         builtin_type_f_integer_s2, builtin_type_f_logical,
2621         builtin_type_f_logical_s1, builtin_type_f_logical_s2,
2622         builtin_type_f_real, builtin_type_f_real_s8, builtin_type_f_real_s16,
2623         builtin_type_f_complex_s8, builtin_type_f_complex_s16,
2624         builtin_type_f_complex_s32): Likewise.
2626         (builtin_type_m2_char, builtin_type_m2_int, builtin_type_m2_card,
2627         builtin_type_m2_real, builtin_type_m2_bool): Likewise.
2629         (struct builtin_f_type, builtin_f_type): Move to f-lang.h.
2630         (struct builtin_m2_type, builtin_m2_type): Move to m2-lang.h.
2632         * f-lang.h (struct builtin_f_type, builtin_f_type): Move here.
2633         * m2-lang.h (struct builtin_m2_type, builtin_m2_type): Move here.
2635 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2637         * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Use builtin types of
2638         target_gdbarch instead of builtin_type_void_data_ptr.
2639         (LM_DYNAMIC_FROM_LINK_MAP, LM_NEXT, LM_NAME,
2640         IGNORE_FIRST_LINK_MAP_ENTRY, scan_dyntag, elf_locate_base,
2641         solib_svr4_r_map, solib_svr4_r_brk, solib_svr4_r_ldsomap,
2642         open_symbol_file_object): Likewise.
2643         * nto-tdep.c (LM_ADDR): Likewise.
2645 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2647         * bsd-uthread.c (bsd_uthread_read_memory_address): New function.
2648         (bsd_uthread_fetch_registers, bsd_uthread_store_registers,
2649         bsd_uthread_wait, bsd_uthread_find_new_threads): Use it.
2651 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2653         * procfs.c (procfs_address_to_host_pointer): Use target_gdbarch
2654         and its associated types to perform pointer conversion.
2655         (procfs_can_use_hw_breakpoint): Likewise.
2656         (procfs_auxv_parse): Remove unused variable.
2658 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2660         * auxv.c (default_auxv_parse): Use gdbarch_ptr_bit (target_gdbarch)
2661         instead of builtin_type_void_data_ptr.
2662         * target.c (default_region_ok_for_hw_watchpoint): Likewise.
2664 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2666         * expprint.c (print_subexp_standard): Compare against builtin type
2667         associated with exp->gdbarch instead of builtin_type_char.
2669         * f-valprint.c (f_val_print): Use extract_unsigned_integer to
2670         extract values of arbitrary logical type.  Handle arbitrary
2671         complex types.
2673         * printcmd.c (float_type_from_length): New function.
2674         (print_scalar_formatted, printf_command): Use it.
2676 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2678         * valops.c: Include "objfiles.h" and "symtab.h".
2679         (find_function_in_inferior): New argument OBJF_P.  Use it to return
2680         objfile where function is defined.  Use per-objfile arch types
2681         instead of builtin_type_ to define default return type.
2683         * linux-fork.c (checkpoint_command): Update calls.  Use per-objfile
2684         architecture to define inferior call argument types.
2685         * gcore.c (derive_heap_segment): Likewise.
2686         * objc-lang.c (value_nsstring): Likewise.
2687         * scm-lang.c (scm_lookup_name): Likewise.
2688         * scm-valprint.c (scm_inferior_print): Likewise.
2689         * valops.c (value_allocate_space_in_inferior): Likewise.
2691         * eval.c (evaluate_subexp_standard): Update calls.
2692         * objc-lang.c (lookup_objc_class, print_object_command): Likewise.
2694         * linux-fork.c: Include "objfiles.h".
2695         * scm-lang.c: Include "objfiles.h".
2696         * scm-valprint.c: Include "objfiles.h".
2698 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2700         * gdbarch.sh (name_of_malloc): Remove.
2701         * gdbarch.c, gdbarch.h: Re-generate.
2702         * valops.c (value_allocate_space_in_inferior): Do not call
2703         gdbarch_name_of_malloc.
2705 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2707         * valarith.c (value_x_unop): Use builtin_type_int8 as type for
2708         UNOP_POSTINCREMENT/UNOP_POSTDECREMENT constant 0 argument.
2709         (value_bit_index): Use extract_unsigned_integer
2710         instead of unpack_long to read single byte.
2712 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2714         * infcall.c (value_arg_coerce): Add GDBARCH parameter.  Use its
2715         associates types instead of builtin_type_ macros.
2716         (find_function_addr): Leave output VALUE_TYPE NULL if unknown.
2717         (call_function_by_hand): Use per-architecture "int" type as
2718         fall-back if find_function_addr returns NULL VALUE_TYPE.
2719         Update call to value_arg_coerce.
2721 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2723         * cp-abi.h (cplus_method_ptr_size): Add TO_TYPE parameter.
2724         (cplus_make_method_ptr): Add TYPE parameter.
2725         * cp-abi.c (cplus_method_ptr_size): Add TO_TYPE parameter.  Pass it
2726         on to current_cp_abi.method_ptr_size callback.
2727         (cplus_make_method_ptr): Add TYPE parameter.  Pass it on to
2728         current_cp_abi.make_method_ptr callback.
2730         * gdbtypes.c (lookup_methodptr_type): Pass target type
2731         argument to cplus_method_ptr_size.
2732         * valops.c (value_cast): Pass type argument to cplus_make_method_ptr.
2733         (value_struct_elt_for_reference): Likewise.
2735         * gnu-v3-abi.c (get_class_arch): New function.
2736         (vtable_address_point_offset): Add GDBARCH parameter.  Use it
2737         instead of current_gdbarch.  Update all callers.
2738         (gnuv3_get_vtable): Likewise.
2739         (gnuv3_get_virtual_fn): Likewise.
2740         (gnuv3_decode_method_ptr): Likewise.
2741         (gnuv3_rtti_type): Call get_class_arch to determine architecture.
2742         Use it instead of current_gdbarch.
2743         (gnuv3_virtual_fn_field): Likewise.
2744         (gnuv3_baseclass_offset): Likewise.
2745         (gnuv3_print_method_ptr): Likewise.
2746         (gnuv3_method_ptr_to_value): Likewise.
2747         (gnuv3_method_ptr_size): Add TYPE parameter.  Use it to determine
2748         class architecture.  Use architecture types instead of builtin types.
2749         (gnuv3_make_method_ptr): Likewise.
2751         * cp-valprint.c (cp_print_class_member): Expect pointer type
2752         instead of class type.  Use its length when extracting value.
2753         * c-valprint.c (c_val_print): Update call to cp_print_class_member.
2755 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2757         * stack.c (return_command): Use frame architecture to determine
2758         default integer return type.
2760         * f-valprint.c (f77_get_dynamic_lowerbound): Use frame architecture
2761         to determine pointer types.
2762         (f77_get_dynamic_upperbound): Likewise.
2764         * objc-lang.c (OBJC_FETCH_POINTER_ARGUMENT): Remove.
2765         (resolve_msgsend): Use architecture of current frame to determine
2766         pointer types.  Inline OBJC_FETCH_POINTER_ARGUMENT.
2767         (resolve_msgsend_stret, resolve_msgsend_super,
2768         resolve_msgsend_super_stret): Likewise.
2770 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2772         * alpha-tdep.c (alpha_register_type): Use builtin_type (gdbarch)
2773         instead of builtin_type_ macros.
2774         * amd64-tdep.c (amd64_register_type): Likewise.
2775         (amd64_get_longjmp_target): Likewise.
2776         * arm-tdep.c (arm_register_type): Likewise.
2777         * avr-tdep.c (avr_register_type): Likewise.
2778         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
2779         * frv-tdep.c (frv_register_type): Likewise.
2780         * h8300-tdep.c (h8300_register_type): Likewise.
2781         * hppa-tdep.c (hppa32_convert_from_func_ptr_addr, 
2782         hppa_skip_trampoline_code): Likewise.
2783         * i386-tdep.c (i386_register_type): Likewise.
2784         (i386_unwind_pc, i386_sse_type): Likewise.
2785         * ia64-tdep.c (ia64_register_type): Likewise.
2786         * m32r-tdep.c (m32r_register_type): Likewise.
2787         * m68k-tdep.c (m68k_register_type, m68k_unwind_pc): Likewise.
2788         * m88k-tdep.c (m88k_register_type): Likewise.
2789         * mep-tdep.c (mep_register_type): Likewise.
2790         * mips-tdep.c (mips_pseudo_register_type): Likewise.
2791         * mn10300-tdep.c (mn10300_register_type): Likewise.
2792         * mt-tdep.c (mt_copro_register_type): Likewise.
2793         * rs6000-tdep.c (rs6000_builtin_type_vec64): Likewise.
2794         (rs6000_convert_register_p, rs6000_register_to_value,
2795         rs6000_value_to_register): Likewise.
2796         * s390-tdep.c (s390_register_type): Likewise.
2797         * sh64-tdep.c (sh64_register_type): Likewise.
2798         (sh64_build_float_register_type, sh64_do_fp_register): Likewise.
2799         * sh-tdep.c (sh_sh2a_register_type, sh_sh3e_register_type,
2800         sh_sh4_build_float_register_type, sh_sh4_register_type,
2801         sh_default_register_type): Likewise.
2802         * sparc64-tdep.c (sparc64_register_type): Likewise.
2803         * sparc-tdep.c (sparc32_register_type): Likewise.
2804         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
2805         * v850-tdep.c (v850_register_type): Likewise.
2806         * vax-tdep.c (vax_register_type): Likewise.
2807         * xtensa-tdep.c (xtensa_register_type, xtensa_unwind_pc,
2808         xtensa_push_dummy_call): Likewise.
2810         * std-regs.c (value_of_builtin_frame_fp_reg,
2811         value_of_builtin_frame_pc_reg): Likewise.
2812         * target-descriptions.c (tdesc_register_type): Likewise.
2814 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2816         * ada-lang.c (ada_coerce_to_simple_array_type): Use builtin_type_int32
2817         instead of builtin_type_int as default unspecified integral type.
2818         (ada_index_type, ada_array_bound_from_type, ada_variant_discrim_type,
2819         assign_component, to_fixed_range_type): Likewise.
2820         * ada-typeprint.c (print_range, print_range_bound,
2821         print_range_type_named): Likewise.
2822         * ada-valprint.c (print_optional_low_bound, ada_val_print_1): Likewise.
2823         * eval.c (evaluate_subexp_standard): Likewise.
2824         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2825         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
2826         build_gdb_vtable_type): Likewise.
2827         * jv-lang.c (java_array_type): Likewise.
2828         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Likewise.
2829         * m2-valprint.c (m2_print_long_set): Likewise.
2830         * parse.c (follow_types): Likewise.
2831         * p-typeprint.c (pascal_type_print_base): Likewise.
2832         * valops.c (value_one, value_array, value_string,
2833         value_bitstring): Likewise.
2834         * value.c (allocate_repeat_value, value_from_string): Likewise.
2835         * varobj.c (c_describe_child): Likewise.
2836         * mt-tdep.c (mt_register_type): Likewise.
2837         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
2838         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
2840 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2842         * defs.h (struct gdbarch): Add forward declaration.
2843         (set_next_address): Add GDBARCH argument.
2844         * printcmd.c (set_next_address): Use it to find pointer type.
2845         * breakpoint.c (breakpoint_1): Update call.
2846         * source.c (line_info): Likewise.
2847         * findcmd.c (find_command): Use current_gdbarch to find pointer type.
2849         * breakpoint.c (set_breakpoint_count): Use platform-neutral
2850         types for internal variable values.
2851         * infrun.c (handle_inferior_event): Likewise.
2852         * source.c (forward_search_command, reverse_search_command): Likewise.
2853         * tracepoint.c (set_tracepoint_count, set_traceframe_num,
2854         set_tracepoint_num, set_traceframe_context): Likewise.
2856 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2858         * gdbtypes.h (struct builtin_type): Remove builtin_true_char
2859         and builtin_true_unsigned_char.
2860         (builtin_type_true_char): Remove macro, add extern declaration.
2861         (builtin_type_true_unsigned_char): Add extern declaration.
2862         * gdbtypes.c (builtin_type_true_char): New global variable.
2863         (builtin_type_true_unsigned_char): Likewise.
2864         (_initialize_gdbtypes): Initialize them.
2865         (gdbtypes_post_init): Do not initialize builtin_true_char
2866         and builtin_true_unsigned_char members of struct builtin_type.
2868         * printcmd.c (print_scalar_formatted): Do not use builtin_type;
2869         use builtin_type_true_unsigned_char instead.
2871         * ada-valprint.c (ada_val_print_1): Use builtin_type_true_char
2872         instead of builtin_type_char for internal string.
2874 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2876         * gdbtypes.h (builtin_type_void): Remove macro, add declaration.
2877         (builtin_type_f_void): Remove macro.
2878         * gdbtypes.c (builtin_type_void): New global variable.
2879         (_initialize_gdbtypes): Initialize it.
2881         * gnu-v3-abi.c (build_gdb_vtable_type): Do not call
2882         lookup_pointer_type or lookup_function_type on builtin_type_void.
2883         * printcmd.c (set_next_address): Likewise.
2884         * objc-lang.c (value_nsstring): Likewise.
2885         * mt-tdep.c (mt_copro_register_type): Likewise.
2886         * xtensa-tdep.c (xtensa_register_type): Likewise.
2888         * symfile.c (syms_from_objfile): Remove special handling
2889         of builtin_type_void and builtin_type_char.
2891 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2893         * eval.c (evaluate_subexp_standard): Use exp->gdbarch types instead
2894         of builtin_type_ macros when handling OP_OBJC_ operations.
2895         * objc-lang.c (print_object_command): Likewise.
2897 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2899         * ada-valprint.c: Include "objfiles.h".
2900         (ada_val_print_1): Use the gdbarch associated with the objfile whether
2901         a System.Address type is defined to retrieve the proper pointer type
2902         to use to print it.
2904 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2906         * ada-lang.c (value_pos_atr): Add TYPE argument.  Use it as
2907         result type instead of builtin_type_int.
2908         (value_subscript_packed): Use pos_atr instead of value_pos_atr.
2909         (ada_value_subscript): Update call to value_pos_atr.
2910         (ada_value_ptr_subscript): Likewise.
2911         (ada_evaluate_subexp): Likewise.
2913 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2915         * ada-lang.c (cast_to_fixed): Do not cast to builtin_type_double.
2916         (cast_from_fixed_to_double): Rename to ...
2917         (cast_from_fixed): ... this.  Add TYPE parameter.  Use it instead
2918         of builtin_type_double.
2919         (ada_value_cast): Use cast_from_fixed instead of casting result
2920         of cast_from_fixed_to_double.
2921         (ada_evaluate_subexp): Update calls to cast_from_fixed_to_double. 
2923 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2925         * valops.c (value_ind): No longer allow dereferencing an
2926         integer type.
2927         * eval.c (evaluate_subexp_standard): Handle deferencing an
2928         integer type here.
2929         * ada-lang.c (ada_evaluate_subexp): Likewise.
2931 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2933         * ada-valprint.c (ada_val_print_1): When implicitly dereferencing
2934         a reference type, pass the reference type directly to unpack_pointer.
2935         * c-valprint.c (c_val_print): Likewise.
2936         * f-valprint.c (f_val_print): Likewise.
2937         * m2-valprint.c (print_variable_at_address, m2_val_print): Likewise.
2938         * p-valprint.c (pascal_val_print): Likewise.
2940 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2942         * eval.c (evaluate_subexp_standard): Use builtin_type_int8
2943         to construct the EVAL_SKIP dummy return value.
2944         * ada-lang.c (ada_evaluate_subexp): Likewise.
2945         * jv-lang.c (evaluate_subexp_java): Likewise.
2946         * m2-lang.c (evaluate_subexp_modula2): Likewise.
2947         * scm-lang.c (evaluate_exp): Likewise.
2949 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2951         * value.h (coerce_enum, coerce_number): Remove prototypes.
2952         * value.c (coerce_enum, coerce_number): Remove.
2953         * valarith.c (value_x_binop): Do not call coerce_enum.
2954         (value_x_unop): Likewise.
2955         (value_logical_not): Call coerce_array instead of coerce_number.
2957 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2959         * ax-gdb.c: Include "language.h".
2960         (gen_frame_args_address): Add GDBARCH parameter; use it
2961         instead of current_gdbarch.
2962         (gen_frame_locals_address): Likewise.
2963         (gen_var_ref): Add GDBARCH parameter.  Update calls to
2964         gen_frame_args_address and gen_frame_locals_address.  Use
2965         pointer type from gdbarch.
2966         (gen_usual_unary): Add EXP parameter.  Use integer type
2967         from exp->gdbarch.
2968         (gen_usual_arithmetic): Likewise.
2969         (gen_integral_promotions): Likewise.
2970         (gen_add, gen_sub): Remove.
2971         (gen_ptradd, gen_ptrsub, gen_ptrdiff): New functions.
2972         (gen_logical_not): Use passed-in boolean result type
2973         instead of builtin_type_int.
2974         (gen_complement): Do not call gen_usual_unary or
2975         gen_integral_promotions.
2976         (gen_struct_ref): Call require_rvalue instead of gen_usual_unary.
2977         (gen_repeat): Add EXP parameter.  Update call to gen_expr.
2978         Use builtin_type_int32 as internal range type.
2979         (gen_sizeof): Add EXP and SIZE_TYPE parameters.  Use SIZE_TYPE
2980         as result type.  Update call to gen_expr.
2981         (gen_expr): Add EXP parameter.  Update calls to gen_expr,
2982         gen_repeat, gen_var_ref, gen_usual_unary, gen_usual_arithmetic,
2983         and gen_integral_promotions.  Call gen_ptradd, gen_ptrsub,
2984         gen_ptrdiff, or gen_binop instead of gen_add or gen_sub.
2985         Use exp->gdbarch instead of current_gdbarch.
2986         Call language_bool_type to determine result type of UNOP_LOGICAL_NOT.
2988 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2990         * eval.c (evaluate_subexp_standard): Add calls to binop_promote
2991         and unop_promote before calling value_binop et. al.
2992         * ada-lang.c (ada_evaluate_subexp): Add calls to binop_promote
2993         and unop_promote before calling value_binop et. al.
2995         * valarith.c (value_binop): Do not call binop_promote or unop_promote.
2996         (value_pos): Do not call unop_promote.
2997         (value_neg, value_complement): Likewise.
2999 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3001         * value.h (unop_promote, binop_promote): Add prototypes.
3002         * eval.c (unop_promote, binop_promote): New functions.
3003         * valarith.c (unop_result_type, binop_result_type): Remove.
3004         (value_binop): Call binop_promote or unop_promote.
3005         Inline remaining parts of binop_result_type.  Remove special
3006         code to truncate integer values for unsigned operations.
3007         (value_pos): Call unop_promote.  Inline remaining parts of
3008         unop_result_type.
3009         (value_neg, value_complement): Likewise.
3011 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3013         * value.h (value_add, value_sub): Remove.
3014         (value_ptradd, value_ptrsub, value_ptrdiff): Add prototypes.
3015         * valarith.c (value_add, value_sub): Remove.
3016         (value_ptradd, value_ptrsub, value_ptrdiff): New functions.
3017         (find_size_for_pointer_math): Add assertion.  Update comment.
3018         (value_binop): Update comment.
3020         * eval.c (ptrmath_type_p): New function.
3021         (evaluate_subexp_standard): Replace value_add and value_sub
3022         by value_ptradd, value_ptrsub, value_ptrdiff or value_binop.
3023         Use builtin_type_uint8 instead of builtin_type_char to hold
3024         the increment for BINOP_{PRE,POST}{IN,DE}CREMENT operations.
3025         * valarith.c (value_subscript): Replace value_add by
3026         value_ptradd.  Replace value_sub by value_binop.
3027         * ada-lang.c (ada_value_ptr_subscript): Likewise.
3028         (ada_tag_name_2): Replace value_add by value_ptradd.
3029         (ada_evaluate_subexp): Replace value_add and value_sub by
3030         value_binop.
3031         * m2-lang.c (evaluate_subexp_modula2): Replace value_add
3032         by value_ptradd.
3033         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
3034         * gnu-v3-abi.c (gnuv3_method_ptr_to_value): Likewise.
3036 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3038         * eval.c (evaluate_subexp_for_sizeof): Use builtin_int type of
3039         the expression architecture instead of builtin_type_int as the
3040         sizeof return type.
3042 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3044         * expression.h (enum exp_opcode): Document OP_COMPLEX to take
3045         a type parameter as expression element.
3046         * eval.c (evaluate_subexp_standard) [OP_COMPLEX]: Retrieve result
3047         type as expression element.
3048         * f-exp.y: Pass in type when buildin OP_COMPLEX expression.
3049         * parse.c (operator_length_standard): Update length of OP_COMPLEX.
3051 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3053         * language.h (struct language_arch_info): New members
3054         bool_type_default and bool_type_symbol.
3055         (lang_bool_type): Remove prototype.
3056         (LA_BOOL_TYPE): Remove macro.
3057         (language_bool_type): Add prototype.
3058         * language.c (lang_bool_type): Remove.
3059         (language_bool_type): New function.
3061         * value.h (value_in): Change return value to int.
3062         * value.c (value_in): Return int instead of struct value *.
3064         * eval.c (evaluate_subexp_standard): Call language_bool_type instead
3065         of using LA_BOOL_TYPE.  Update call to value_in.
3066         * ada-lang.c (ada_evaluate_subexp): Call language_bool_type instead
3067         of using LA_BOOL_TYPE or builtin_type_int for boolean values.
3069         * language.c (unknown_language_arch_info): Set bool_type_default member
3070         of struct language_arch_info.
3071         * ada-lang.c (ada_language_arch_info): Set bool_type_symbol and
3072         bool_type_default members of struct language_arch_info.
3073         * c-lang.c (c_language_arch_info): Set bool_type_default member
3074         of struct language_arch_info.
3075         (cplus_language_arch_info): Set bool_type_symbol and bool_type_default
3076         members of struct language_arch_info.
3077         * f-lang.c (f_language_arch_info): Set bool_type_symbol and
3078         bool_type_default members of struct language_arch_info.
3079         * jv-lang.c (java_language_arch_info): Set bool_type_symbol and
3080         bool_type_default members of struct language_arch_info.
3081         * m2-lang.c (m2_language_arch_info): Set bool_type_symbol and
3082         bool_type_default members of struct language_arch_info.
3083         * p-lang.c (p_language_arch_info): Set bool_type_symbol and
3084         bool_type_default members of struct language_arch_info.
3086 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3088         * jv-lang.c (enum java_primitive_types): New type.
3089         (java_language_arch_info): New function.
3090         (java_language): Use it instead of c_language_arch_info.
3092 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3094         * value.h (value_bitstring_subscript): New prototype.
3095         * valarith.h (value_bitstring_subscript): New function.
3096         (value_subscript): No longer handle TYPE_CODE_BITSTRING.
3097         * eval.c (evaluate_subexp_standard): Call value_bitstring_subscript
3098         instead of value_subscript to handle TYPE_CODE_BITSTRING.
3100 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3102         * expression.h (struct expression): New member GDBARCH.
3103         * parse.c (parse_exp_in_context): Initialize it.
3104         * parser-def.h (parse_gdbarch, parse_language): New macros.
3106         * ada-exp.y (parse_type): New macro.
3107         Replace builtin_type_ macros by using parse_type.
3108         Replace current_language by parse_language.
3109         * ada-lex.l (processInt): Replace current_gdbarch by parse_gdbarch.
3110         Replace builtin_type_ macros.
3112         * c-exp.y (parse_type): New macro.
3113         Replace builtin_type_ macros by using parse_type.
3114         (parse_number): Replace current_gdbarch by parse_gdbarch.
3115         (yylex): Replace current_language by parse_language.
3117         * f-exp.y (parse_type, parse_f_type): New macros.
3118         Replace builtin_type_ macros by using parse_{f_,}type.
3119         (parse_number): Replace current_gdbarch by parse_gdbarch.
3120         (yylex): Replace current_language by parse_language.
3122         * jv-exp.y (parse_type): New macro.
3123         (parse_number): Replace builtin_type_ macros by using parse_type.
3125         * m2-exp.y (parse_type, parse_m2_type): New macros.
3126         Replace builtin_type_ macros by using parse_{m2_,}type.
3128         * objc-exp.y (parse_type): New macro.
3129         Replace builtin_type_ macros by using parse_type.
3130         (parse_number): Replace current_gdbarch by parse_gdbarch.
3131         (yylex): Replace current_language by parse_language.
3133         * p-exp.y (parse_type): New macro.
3134         Replace builtin_type_ macros by using parse_type.
3135         (parse_number): Replace current_gdbarch by parse_gdbarch.
3136         (yylex): Replace current_language by parse_language.
3138 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3140         * parser-defs.h (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE
3141         and DATA_SYMBOL_TYPE arguments.
3142         * parse.c (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE and
3143         DATA_SYMBOL_TYPE arguments.  Replace use of builtin_type_CORE_ADDR.
3144         (write_dollar_variable): Update call.
3146         * ada-exp.y (write_var_or_type): Update call.
3147         * c-exp.y: Likewise.
3148         * f-exp.y: Likewise.
3149         * jv-exp.y: Likewise.
3150         * m2-exp.y: Likewise.
3151         * objc-exp.y: Likewise.
3152         * p-exp.y: Likewise.
3154 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
3156         * ada-lang.c (ada_parent_type): Add handling of the case where
3157         the _parent field is a pointer and/or has a parallel XVS type.
3158         (ada_evaluate_subexp) [OP_VAR_VALUE]: When doing an
3159         EVAL_AVOID_SIDE_EFFECTS evaluation of a tagged type, return
3160         the type of the tag instead of doing forcing an EVAL_NORMAL
3161         expression evaluation.
3163 2008-09-10  Paul N. Hilfinger  <hilfinger@adacore.com> 
3164             Joel Brobecker  <brobecker@adacore.com>
3166         * ada-lang.c (is_digits_suffix): New function.
3167         (is_dot_digits_suffix): Remove.
3168         (ada_lookup_symbol_list): Remove digits suffix from minimal symbols
3169         before looking up in symbol table, and do not use wild matches on them.
3170         (wild_match): Reimplement for speed and to allow matching of operator
3171         symbols.
3172         (is_valid_name_for_wild_match): Return zero for names that do not
3173         follow the GNAT encoding.
3175         (is_name_suffix): Fix typo in comment.
3176         (to_record_with_fixed_variant_part): Ditto.
3178 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
3180         * Makefile.in (gnu-nat.o): New rule.
3182 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
3184         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Use
3185         archecture-neutral builtin_type_int32 instead of builtin_type_int.
3187 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
3189         * ada-lang.c (ada_evaluate_subexp) [BINOP_ADD, BINOP_SUB]:
3190         Add special handling for pointer types.
3192 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
3194         * inf-ttrace.c (inf_ttrace_follow_fork): Declare locals at the
3195         right scope level.
3196         (inf_ttrace_resume, inf_ttrace_wait): Typos.
3198 2008-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
3200         * ada-lang.c (ada_array_length): Use builtin_type_int32 instead
3201         of builtin_type_int.
3202         (ada_evaluate_subexp) [UNOP_IN_RANGE]: Use operand range type
3203         instead of builtin_type_int.
3205 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3207         * infrun.c (normal_stop): Run hook-stop last.
3209 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3211         * gnu-nat.c (gnu_pid_to_exec_file): Delete.
3212         (init_gnu_ops): Don't register it.
3214 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3216         * gnu-nat.c (gnu_attach): Push target before fetching the list of
3217         threads.
3219 2008-09-08  Daniel Jacobowitz  <dan@codesourcery.com>
3221         * valops.c (value_cast_structs): Return NULL for failure.
3222         (value_cast): Handle NULL from value_cast_structs.
3223         (value_fetch_lazy): Call check_typedef.  Remove unused variable.
3225 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3227         * inferior.h (context_switch_to): Delete.
3228         * infrun.c (context_switch): Don't save and load infrun state.
3229         (context_switch_to): Delete.
3231         * infcmd.c (proceed_thread_callback): Replace context_switch_to
3232         calls by switch_to_thread calls.
3234         * gdbthread.h (save_infrun_state, load_infrun_state): Delete.
3235         * thread.c (main_thread_state, main_thread_executing): Delete.
3236         (inferior_thread): Delete references to them.
3237         (add_thread_silent): Fix case where we're adding a thread with the
3238         same ptid as an exited thread.  Remove references to
3239         context-switching.
3240         (load_infrun_state, save_infrun_state): Delete.
3241         (thread_alive, is_thread_state, any_running, is_executing)
3242         (set_executing): Remove the special handling for targets that
3243         don't register any thread.
3244         (restore_current_thread, thread_apply_all_command)
3245         (do_captured_thread_select): Unconditionally call
3246         switch_to_thread.
3248         * mi/mi-main.c (mi_cmd_execute): Check for exited threads.
3249         Call switch_to_thread instead of context_switch_to.
3251 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3253         Remove global continuations in favour of a per-thread
3254         continuations.
3256         * gdbthread.h (struct thread_info): Add comments around
3257         continuations and intermediate_continuations.
3258         (save_infrun_state, load_infrun_state): Delete continuations and
3259         intermediate_continuations arguments.
3260         * infrun.c (context_switch): Don't context-switch the continuations.
3261         * thread.c (clear_thread_inferior_resources): Discard all
3262         continuations of the thread we're clearing.
3263         (save_infrun_state, load_infrun_state): Delete continuations and
3264         intermediate_continuations arguments, and the code referencing
3265         them.
3266         * utils.c: Include "gdbthread.h".
3267         (cmd_continuation, intermediate_continuation): Delete.
3268         (add_continuation): Add thread_info* argument.  Install the
3269         continuation on it.
3270         (restore_thread_cleanup): New.
3271         (do_all_continuations_ptid, do_all_continuations_thread_callback):
3272         New.
3273         (do_all_continuations): Reimplement.
3274         (discard_all_continuations_thread_callback,
3275         discard_all_continuations_thread): New.
3276         (discard_all_continuations): Reimplement.
3277         (add_intermediate_continuation): Add thread_info* argument.
3278         Install the continuation on it.
3279         (do_all_intermediate_continuations_thread_callback)
3280         (do_all_intermediate_continuations_thread): New.
3281         (do_all_intermediate_continuations): Reimplement.
3282         (discard_all_intermediate_continuations_thread_callback): New.
3283         (discard_all_intermediate_continuations_thread): New.
3284         (discard_all_intermediate_continuations): Reimplement.
3286         * breakpoint.c (until_break_command): Install the continuation on
3287         the current thread.
3289         * defs.h (cmd_continuation, intermediate_continuation): Delete.
3290         (struct thread_info): Forward declare.
3291         (add_continuation, add_intermediate_continuation): Add
3292         thread_info* argument.
3293         (do_all_continuations_thread, discard_all_continuations_thread)
3294         (do_all_intermediate_continuations_thread)
3295         (discard_all_intermediate_continuations_thread): Declare.
3296         * inf-loop.c (inferior_event_handler): In non-stop only run
3297         continuations on the thread that stopped.  In all-stop, run
3298         continuations on all threads.
3299         * infcmd.c (step_once, finish_command): Adjust.
3301 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3303         Remove the global stop_step in favour of a per-thread
3304         stop_step.
3306         * inferior.h (stop_step): Delete.
3308         * gdbthread.h (struct thread_info): Add comments to stop_step.
3309         (save_infrun_state, load_infrun_state): Remove stop_step argument.
3310         * thread.c (load_infrun_state, save_infrun_state): Remove
3311         stop_step argument, and references to it.
3313         * infrun.c (clear_proceed_status): Clear stop_step.
3314         (fetch_inferior_event): Adjust.
3315         (context_switch): Don't context-switch stop_step.
3316         (handle_inferior_event): Adjust.
3317         (normal_stop): Adjust.
3318         (save_inferior_status, restore_inferior_status): Adjust.
3320         * infcmd.c (stop_step): Delete.
3321         (step_1, step_1_continuation, step_once, until_next_command):
3322         Adjust.
3324 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3326         Remove the global step_multi in favour of a per-thread
3327         step_multi.
3329         * inferior.h (step_multi): Delete.
3330         * gdbthread.h (struct thread_info): Add comments around
3331         step_multi.
3332         (save_infrun_state, load_infrun_state): Remove step_multi
3333         parameter.
3334         * thread.c (load_infrun_state, save_infrun_state): Remove
3335         step_multi argument, and references to it.
3336         * infcmd.c (step_multi): Delete.
3337         (step_1): Adjust.
3338         (step_1_continuation, until_next_command): Adjust.
3339         * infrun.c (fetch_inferior_event): Adjust.
3340         (context_switch): Don't context-switch step_multi.
3341         (print_stop_reason, normal_stop): Adjust.
3343 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3345         Remove the global stop_signal in favour of a per-thread
3346         stop_signal.
3348         * inferior.h (stop_signal): Delete.
3349         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3350         stop_signal argument.
3351         * thread.c (load_infrun_state, save_infrun_state): Remove
3352         stop_signal argument.  Don't reference it.
3354         * infcmd.c (stop_signal): Delete.
3355         (program_info): Adjust.
3356         * infrun.c (resume): Clear stop_signal.
3357         (proceed): Adjust.  Pass the last stop_signal to the thread we're
3358         resuming.
3359         (context_switch): Don't context-switch stop_signal.
3360         (handle_inferior_event, keep_going): Adjust.
3361         (save_inferior_status, restore_inferior_status): Adjust.
3363         * fbsd-nat.c: Include "gdbthread.h".
3364         (find_signalled_thread, find_stop_signal): New.
3365         (fbsd_make_corefile_notes): Use it.
3366         * fork-child.c (startup_inferior): Adjust.
3368         * linux-nat.c (get_pending_status): Adjust.
3369         (linux_nat_do_thread_registers): Adjust.
3370         (find_signalled_thread, find_stop_signal): New.
3371         (linux_nat_do_thread_registers): Add stop_signal parameter.
3372         (struct linux_nat_corefile_thread_data): Add stop_signal member.
3373         (linux_nat_corefile_thread_callback): Pass stop_signal.
3374         (linux_nat_do_registers): Delete.
3375         (linux_nat_make_corefile_notes): Use find_stop_signal.  Assume
3376         there's always a thread.
3378         * procfs.c (find_signalled_thread, find_stop_signal): New.
3379         (find_stop_signal): New.
3380         (procfs_do_thread_registers): Add stop_signal parameter.
3381         (struct procfs_corefile_thread_data): Add stop_signal member.
3382         (procfs_corefile_thread_callback): Pass args->stop_signal.
3383         (procfs_make_note_section): Find the last stop_signal.
3385         * solib-irix.c: Include gdbthread.h.
3386         (irix_solib_create_inferior_hook): Adjust.
3387         * solib-osf.c: Include gdbthread.h.
3388         (osf_solib_create_inferior_hook): Adjust.
3389         * solib-sunos.c: Include gdbthread.h.
3390         (sunos_solib_create_inferior_hook): Adjust.
3391         * solib-svr4.c: Include gdbthread.h.
3392         (svr4_solib_create_inferior_hook): Adjust.
3394         * win32-nat.c (do_initial_win32_stuff): Adjust.
3396 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3398         * gdbthread.h (struct thread_info): Add comments around
3399         proceed_to_finish.
3400         (save_infrun_state, load_infrun_state): Remove proceed_to_finish
3401         argument.
3402         * thread.c (load_infrun_state, save_infrun_state): Delete
3403         proceed_to_finish argument and references to it.
3405         * infcall.c (call_function_by_hand): Adjust.
3406         * infcmd.c (finish_command): Adjust.
3407         * infrun.c (proceed_to_finish): Delete.
3408         (clear_proceed_status): Adjust.
3409         (context_switch): Don't context-switch proceed_to_finish.
3410         (normal_stop, save_inferior_status, restore_inferior_status):
3411         Adjust.
3413 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3415         * inferior.h (stop_bpstat): Delete.
3417         * breakpoint.h (bpstat_do_actions): Remove bpstat* argument.
3418         
3419         * breakpoint.c (bpstat_do_actions): Rename to ...
3420         (bpstat_do_actions_1): ... this.  Make static.  Change return type
3421         to int.  Return true if a breakpoint proceeded.
3422         (bpstat_do_actions): New, as wrapper around bpstat_do_actions_1.
3423         (delete_breakpoint): Don't reference the global stop_bpstat; it's
3424         gone.
3426         * gdbthread.h (struct thread_info): Add stop_bpstat.
3427         (save_infrun_state, load_infrun_state): Remove stop_bpstat
3428         argument.
3429         * thread.c (load_infrun_state, save_infrun_state): Remove
3430         stop_bpstat argument, and the code referencing it.
3432         * infcall.c: Include "gdbthread.h".
3433         (call_function_by_hand): Adjust.
3434         * exceptions.c: Include "gdbthread.h".
3435         (throw_exception): Adjust.
3436         * infcmd.c (stop_bpstat): Delete.
3437         (continue_command): In all-stop, set the ignore count on the
3438         thread that reported the stop.  In non-stop, set it on the current
3439         thread.
3440         (finish_command_continuation): Adjust.
3441         (program_info): Adjust.
3442         * infrun.c (clear_proceed_status): Adjust.
3443         (context_switch): Don't context-switch stop_bpstat.
3444         (handle_inferior_event): Adjust.
3445         (normal_stop): Adjust.
3446         (save_inferior_status, restore_inferior_status): Adjust.
3448         * inf-loop.c (inferior_event_handler): Remove parameter to
3449         bpstat_do_actions call.
3450         * top.c (command_loop): Remove parameter to bpstat_do_actions
3451         call.  Call it unconditionally.
3452         * event-top.c (command_handler): Ditto.
3453         * python/python.c (execute_gdb_command): Ditto.
3455 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3457         * inferior.h (step_over_calls): Delete.
3459         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3460         step_over_calls argument.
3461         * thread.c (save_infrun_state, load_infrun_state): Remove
3462         step_over_calls argument.  Adjust.
3464         * infcmd.c (step_over_calls): Delete.
3465         (step_1): Adjust.
3466         * infrun.c (clear_proceed_status): Adjust.
3467         (context_switch): Don't context-switch step_over_calls.
3468         (handle_inferior_event, save_inferior_status)
3469         (restore_inferior_status): Adjust.
3471 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3473         Remove context switching in favour of accessing thread_info fields
3474         directly.
3476         * infrun.c (stepping_over_breakpoint, step_resume_breakpoint):
3477         Delete.
3478         (struct thread_stepping_state): Delete.
3479         (gtss, tss): Delete.
3480         (follow_inferior_reset_breakpoints, follow_exec)
3481         (resume, clear_proceed_status): Adjust.
3482         (prev_pc): Delete.
3483         (proceed, start_remote, init_wait_for_inferior): Adjust.
3484         (struct execution_control_state): Add event_thread member.
3485         (delete_step_resume_breakpoint_callback)
3486         (delete_step_thread_step_resume_breakpoint)
3487         (delete_step_thread_step_resume_breakpoint_cleanup)
3488         (delete_step_thread_step_resume_breakpoint): New.
3489         (wait_for_inferior, init_execution_control_state): Use
3490         delete_step_thread_step_resume_breakpoint_cleanup.
3491         (wait_for_inferior): Set the event_thread.
3492         (fetch_inferior_event): Ditto.  Delete the step-resume breakpoint
3493         with delete_step_thread_step_resume_breakpoint.
3494         (init_thread_stepping_state): Change parameter type to
3495         thread_info.  Adjust.
3496         (context_switch): Don't context switch prev_pc,
3497         stepping_over_breakpoint, step_resume_breakpoint,
3498         step_range_start, step_range_end, step_frame_id,
3499         tss->stepping_over_breakpoint,
3500         tss->stepping_through_solib_after_catch,
3501         tss->stepping_through_solib_catchpoints, tss->current_line, or
3502         tss->current_symtab.
3503         (adjust_pc_after_break, handle_inferior_event)
3504         (currently_stepping, step_into_function)
3505         (insert_step_resume_breakpoint_at_sal)
3506         (insert_longjmp_resume_breakpoint, keep_going): Adjust.
3507         (clear_stepping_state): New.
3508         (normal_stop): Adjust.
3509         (save_inferior_status, restore_inferior_status): Adjust.
3511         * gdbthread.h (struct thread_info): Comments describing the
3512         members moved here.  Add step_after_step_resume_breakpoint.
3513         (delete_step_resume_breakpoint): Add thread_info argument.
3514         (save_infrun_state, load_infrun_state): Remove prev_pc,
3515         trap_expected, step_resume_breakpoint, step_range_start,
3516         step_range_end, step_frame_id, another_trap,
3517         stepping_through_solib_after_catch,
3518         stepping_through_solib_catchpoints, current_line and
3519         current_symtab function arguments.
3520         (inferior_thread): Declare.
3522         * thread.c (inferior_thread): New.
3523         (delete_step_resume_breakpoint): Add a thread_info parameter and
3524         rewrite.
3525         (load_infrun_state, save_infrun_state): Remove prev_pc,
3526         trap_expected, step_resume_breakpoint, step_range_start,
3527         step_range_end, step_frame_id, stepping_over_breakpoint,
3528         stepping_through_solib_after_catch,
3529         stepping_through_solib_catchpoints, current_line and
3530         current_symtab args.  Remove code referencing them.
3532         * infcmd.c (step_range_start, step_range_end, step_frame_id):
3533         Delete.
3534         (step_1, step_once, until_next_command): Adjust.
3536         * inferior.h (step_range_start, step_range_end, step_frame_id):
3537         Delete.
3539         * linux-nat.c (linux_child_follow_fork): If following the child,
3540         move the step state to it.  Adjust.
3541         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
3542         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
3544 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3546         * bsd-uthread.c (bsd_uthread_find_new_threads): Claim the main
3547         thread.
3549 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3551         * corelow.c (add_to_thread_list): If this is the first time we
3552         hear about thread info, update inferior_ptid.
3553         (core_open): Clear the thread list and set inferior_ptid before
3554         acknowledging a new inferior.  Find threads before fetching
3555         register info.  Give an upper target layer a chance to find and
3556         claim new threads.  Print core generation and stop signal info
3557         after finding new threads.
3558         (get_core_register_section): Look at the lwp member of
3559         inferior_ptid for detecting if we have threads info, instead of
3560         the pid member.
3561         (core_pid_to_str): New.
3562         (init_core_ops): Register core_pid_to_str.
3564 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3566         * spu-linux-nat.c (spu_child_post_startup_inferior)
3567         (spu_child_post_attach): Don't add the main thread here.
3569 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3571         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
3573         * gnu-nat.c (inf_validate_procs): If this is the first time we're
3574         seeing a thread id, extend the main thread's ptid.  If we still
3575         have pending execs, don't be verbose about new threads.
3576         (gnu_wait, gnu_resume, gnu_attach, gnu_thread_alive)
3577         (gnu_pid_to_str, cur_thread, sig_thread_cmd): Adjust.
3578         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers):
3579         Adjust.
3581 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3583         * procfs.c (to_attach): Create a procinfo for the current lwp.
3584         Add it to gdb's thread list.
3585         (procfs_fetch_registers, procfs_store_registers): Assume there's
3586         always an lwp.
3587         (procfs_wait): Don't add the main thread here.
3588         (procfs_init_inferior): Create a procinfo for the main lwp here.
3589         Change main thread's ptid with thread_change_ptid.
3590         (procfs_notice_thread): Check for exited threads.
3591         (procfs_corefile_thread_callback): Remove check for the main
3592         process.
3593         (procfs_make_note_section): Assume there is always a thread.
3595         * sol-thread.c (sol_thread_attach): Clear sol_thread_active before
3596         attaching.  Change the main thread ptid with thread_change_ptid.
3597         (sol_thread_detach): Clear sol_thread_active.
3598         (sol_thread_wait): Check for exited threads.
3599         (sol_thread_create_inferior): Clear sol_thread_active before
3600         creating a new inferior.  Change the main thread ptid with
3601         thread_change_ptid.
3602         (sol_thread_mourn_inferior): Clear sol_thread_active.
3603         (sol_find_new_threads_callback): Check for exited threads.
3605 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3607         * inf-ttrace.c (inf_ttrace_wait): On TTEVT_LWP_CREATE and
3608         LWP_TERMINATE, resume the caller thread.  On TTEVT_LWP_CREATE,
3609         TTEVT_LWP_EXIT and TTEVT_LWP_TERMINATE, don't stop the whole
3610         process, and return TARGET_WAITKIND_IGNORE.
3612 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3614         * inf-ttrace.c: Include <signal.h>
3615         (inf_ttrace_delete_dead_threads_callback): New.
3616         (inf_ttrace_resume_lwp): New.
3617         (inf_ttrace_resume_callback, inf_ttrace_resume): Rewrite.  Don't
3618         delete dying threads until they are really dead.
3619         (inf_ttrace_wait): After stopping the whole process, delete any
3620         dying thread that is really dead by now.
3621         (inf_ttrace_thread_alive): Return 1.
3622         (inf_ttrace_extra_thread_info): New.
3623         (inf_ttrace_target): Register inf_ttrace_extra_thread_info.
3625 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3627         * inf-ttrace.c (inf_ttrace_follow_fork): Register the main thread
3628         of the child fork.
3629         (inf_ttrace_attach): Add the main thread.
3630         (inf_ttrace_resume_callback): Check for exited threads.  Adjust
3631         for always a thread.
3632         (inf_ttrace_wait): Decorate the main thread's ptid with lwp info
3633         using thread_change_ptid, and set its private data.  Don't add the
3634         main thread here.
3635         (inf_ttrace_pid_to_str): Adjust.
3637 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3639         * bsd-uthread.c (bsd_uthread_wait): Decorate the main thread with
3640         thread_change_ptid.  Check for exited threads.
3641         (bsd_uthread_find_new_threads): Check for exited threads.
3643 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3645         * inf-ptrace.c: Include "gdbthread.h".
3646         (inf_ptrace_attach): Add the main thread here.
3647         * linux-nat.c (linux_nat_attach): Don't add the main thread here.
3648         Decorate the main thread id with the lwp id.
3650 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3652         * linux-nat.c (linux_nat_wait): Update inferior_ptid's ptid with
3653         thread_change_ptid.  Don't add or mark the main thread as running
3654         and executing here.
3655         * fork-child.c (fork_inferior): Add the main thread here.
3657 2008-09-08  Jerome Guitton  <guitton@adacore.com>
3659         * rs6000-tdep.c (rs6000_fetch_instruction)
3660         (rs6000_skip_stack_check): New functions.
3661         (skip_prologue): Skip stack check sequence.
3662         
3663 2008-09-08  David Daney  <ddaney@avtrex.com>
3665         * dummy-frame.h (frame.h): Include it.
3666         (struct frame_id): Remove declaration.
3668 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3670         * spu-tdep.c (spu_push_dummy_code): New function.
3671         (spu_gdbarch_init): Install it.
3673 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3675         * gdbarch.sh (gdbarch_dump): Use core_addr_to_string_nz
3676         instead of paddr_nz.
3677         * gdbarch.c: Regenerate.
3679         * target.c (target_xfer_partial, debug_print_register): Use
3680         core_addr_to_string_nz instead of paddr_nz.
3682 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3684         * rs6000-tdep.c (rs6000_gdbarch_init): Setup displaced stepping
3685         *before* calling gdbarch_init_osabi.
3686         (rs6000_aix_init_osabi): Disable displaced stepping.
3688 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3690         * target.c (update_current_target): Do not inherit to_open
3691         or to_close.
3692         (pop_target): Call target_close on target_stack instead
3693         of current_target.
3694         (pop_all_targets_above): Likewise.
3696 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3698         * gnu-v3-abi.c (gnuv3_decode_method_ptr): New function.
3699         (gnuv3_print_method_ptr): Use it.
3700         (gnuv3_method_ptr_to_value): Likewise.
3702 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3704         * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to
3705         register_area callback function.
3706         * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
3707         Use it instead of current_gdbarch.
3708         * nto-procfs.c (procfs_store_registers): Update call.
3710 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3712         * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
3713         regcache architecture instead of current_gdbarch.
3715 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3717         * mep-tdep.c (struct mep_prologue): Add gdbarch member.
3718         (check_for_saved): Use it instead of current_gdbarch.
3719         (is_arg_spill): Add gdbarch paramter.  Use it instead
3720         of current_gdbarch.
3721         (mep_analyze_prologue): Add gdbarch parameter.  Pass it
3722         to is_arg_spill and check_for_saved.
3723         (mep_skip_prologue, mep_analyze_frame_prologue): Update calls.
3725 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3727         * hppa-tdep.c (internalize_unwinds): Use objfile architecture
3728         instead of current_gdbarch.
3730 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3732         * m68k-tdep.h (m68kbsd_fpreg_offset): Add gdbarch parameter.
3733         * m68kbsd-tdep.c (m68kbsd_fpreg_offset): Add gdbarch paramter.
3734         Use it instead of current_gdbarch.
3735         (m68kbsd_supply_fpregset): Update call.
3736         * m68kbsd-nat.c (m68kbsd_supply_fpregset): Likewise.
3737         (m68kbsd_collect_fpregset): Likewise.
3739 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3741         * cris-tdep.c (cris_version, cris_mode): Remove.
3742         (crisv32_single_step_through_delay): Use tdep->cris_mode.
3743         (cris_breakpoint_from_pc): Likewise.
3744         (cris_frame_unwind_cache): Use tdep->cris_version.
3745         (crisv32_scan_prologue): Likewise.
3746         (cris_spec_reg_applicable): Add gdbarch argument.
3747         Use tdep->cris_version.
3748         (cris_register_size, cris_special_register_name): Update calls.
3749         (cris_special_register_name): Add gdbarch argument.
3750         (cris_register_name, crisv32_register_name): Update calls.
3752 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3754         * m68hc11-tdep.c (gdb_print_insn_m68hc11): Use info->arch
3755         instead of current_gdbarch.
3757         * sh64-tdep.c (gdb_print_insn_sh64): Remove.
3758         (sh64_gdbarch_init): Install print_insn_sh64 directly.
3759         * sh-tdep.c (gdb_print_insn_sh): Remove.
3760         (sh_gdbarch_init): Install print_insn_sh directly.
3762         * mips-tdep.c (gdb_print_insn_mips): Do not check mips_abi
3763         from current_gdbarch.
3764         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): New functions.
3765         (mips_gdbarch_init): Install them instead of gdb_print_insn_mips
3766         depending on mips_abi.
3768 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3770         * gdbarch.sh (addr_bits_remove): Change type to 'm'.
3771         (smash_text_address): Likewise.
3772         * gdbarch.c, gdbarch.h: Regenerate.
3774         * arch-utils.c (core_addr_identity): Add gdbarch parameter.
3775         * arch-utils.h (core_addr_identity): Likewise.
3776         * arm-tdep.c (arm_addr_bits_remove): Likewise.
3777         (arm_smash_text_address): Likewise.
3778         * hppa-tdep.c (hppa_smash_text_address): Likewise.
3779         * m88k-tdep.c (m88k_addr_bits_remove): Likewise.
3780         * s390-tdep.c (s390_addr_bits_remove): Likewise.
3782         * mips-tdep.c (mips_addr_bits_remove): Add gdbarch parameter.
3783         Use it instead of current_gdbarch.
3785         * arm-tdep.c (arm_prologue_prev_register, arm_unwind_pc,
3786         arm_dwarf2_prev_register): Update calls.
3787         * m88k-tdep.c (m88k_unwind_pc): Update call.
3789 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3791         * dwarf2expr.h (dwarf2_read_address): Add gdbarch argument.
3792         * dwarf2expr.c (dwarf2_read_address): Add gdbarch argument.
3793         Call gdbarch_integer_to_address directly instead of converting
3794         to value and back.  Update comment.
3795         (execute_stack_op): Update call site.
3796         * dwarf2loc.c (find_location_expression): Likewise.
3797         (locexpr_describe_location): Update
3799         * dwarf2expr.h (struct dwarf_expr_context): Add gdbarch member.
3800         * dwarf2-frame.c (execute_stack_op): Initialize ctx->gdbarch.
3801         * dwarf2loc. (dwarf2_evaluate_loc_desc): Likewise.
3802         (dwarf2_loc_desc_needs_frame): Likewise.
3804 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3806         * breakpoint.h (struct bp_location): Change type of section
3807         member to "struct obj_section *".
3808         * tracepoint.h (struct tracepoint): Likewise.
3809         * symtab.h (struct general_symbol_info): Replace bfd_section
3810         member with obj_section.
3811         (struct symtab_and_line): Change type of section member to
3812         "struct obj_section *".
3813         (SYMBOL_BFD_SECTION): Remove macro, replace by ...
3814         (SYMBOL_OBJ_SECTION): ... this.
3816         * minsym.c (prim_record_minimal_symbol_and_info): Record symbol
3817         section as obj_section instead of bfd_section.
3819         * ada-lang.c (ada_decode_symbol): Use gsymbol->obj_section
3820         directly instead of looking of obj_section from bfd_section.
3822         * objfiles.h (find_pc_sect_section): Remove.
3823         * objfiles.c (find_pc_sect_section): Remove.
3824         (find_pc_section): Inline find_pc_sect_section code.
3826         * symfile.h (find_pc_overlay): Return struct obj_section *.
3827         (find_pc_mapped_section): Likewise.
3828         (section_is_overlay, section_is_mapped): Change type of section
3829         argument to struct obj_section *.
3830         (pc_in_mapped_range, pc_in_unmapped_range): Likewise.
3831         (overlay_mapped_address, overlay_unmapped_address): Likewise.
3832         (symbol_overlayed_address): Likewise.
3833         * symtab.h (symbol_overlayed_address): Likewise.
3834         * symfile.c (overlay_is_mapped): Remove.
3835         (section_is_mapped): Inline overlay_is_mapped code.  Update.
3836         (overlay_invalidate_all): Update.
3837         (section_is_overlay): Change section argument to type
3838         "struct obj_section *".  Use bfd_ methods.
3839         (pc_in_unmapped_range): Likewise.  Handle relocated sections.
3840         (pc_in_mapped_range): Likewise.  Handle relocated sections.
3841         (sections_overlap): Likewise.
3842         (overlay_unmapped_address): Likewise.
3843         (overlay_mapped_address): Likewise.
3844         (symbol_overlayed_address): Likewise.
3845         (find_pc_overlay): Return struct obj_section *.
3846         (find_pc_mapped_section): Likewise.
3847         (list_overlays_command): Update.
3848         (map_overlay_command, unmap_overlay_command): Update.
3849         (simple_overlay_update): Update.
3851         * block.h (blockvector_for_pc_sect): Change section argument
3852         to type "struct obj_section *".
3853         (block_for_pc_sect): Likewise.
3854         * block.c (blockvector_for_pc_sect): Change section argument
3855         to type "struct obj_section *".
3856         (block_for_pc_sect): Likewise.
3857         * symtab.h (find_pc_sect_function, find_pc_sect_psymtab,
3858         find_pc_sect_symtab, find_pc_sect_psymbol, find_pc_sect_line,
3859         lookup_minimal_symbol_by_pc_section, find_function_start_pc): Likewise.
3860         (matching_bfd_sections): Rename to ...
3861         (matching_obj_sections): ... this.  Update argument types.
3862         * blockframe.c (find_pc_sect_function): Likewise.
3863         * breakpoint.c (describe_other_breakpoints): Likewise.
3864         (breakpoint_has_pc, check_duplicates_for): Likewise.
3865         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3866         (lookup_minimal_symbol_by_pc_section): Likewise.
3867         * symtab.c (find_pc_sect_psymtab_closer): Likewise.
3868         (find_pc_sect_psymtab, find_pc_sect_psymbol, find_pc_sect_symtab,
3869         find_pc_sect_line, find_function_start_pc): Likewise.
3870         (matching_bfd_sections): Rename to ...
3871         (matching_obj_sections): ... this.  Update argument types.
3873         * blockframe.c (find_pc_partial_function): Update to section
3874         type changes.  No longer call find_pc_sect_section.
3875         (cache_pc_function_section): Change to type "struct obj_section *".
3876         * breakpoint.c (resolve_sal_pc): Update to section type changes.
3877         * exec.c (xfer_memory): Likewise.
3878         * findvar.c (read_var_value): Likewise.
3879         * infcmd.c (jump_command): Likewise.
3880         * linespec.c (minsym_found): Likewise.
3881         * maint.c (maintenance_translate_address): Likewise.
3882         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3883         (lookup_solib_trampoline_symbol_by_pc): Likewise.
3884         * parse.c (write_exp_msymbol): Likewise.
3885         * printcmd.c (build_address_symbolic): Likewise.
3886         (address_info, sym_info): Likewise.
3887         * symmisc.c (dump_msymbols, print_symbol): Likewise.
3888         * symtab.c (fixup_section): Likewise.
3889         (fixup_symbol_section, fixup_psymbol_section): Likewise.
3890         (find_pc_line, find_function_start_sal): Likewise.
3891         * target.c (memory_xfer_partial): Likewise.
3892         * hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline): Likewise.
3893         * spu-tdep.c (spu_overlay_update): Likewise.
3895 2008-09-04  Doug Evans  <dje@google.com>
3897         * defs.h (plongest,pulongest): Renamed from paddr_u,paddr_d.
3898         Change argument of pulongest from CORE_ADDR to ULONGEST.
3899         All callers updated.
3900         * utils.c (plongest): Renamed from paddr_d.
3901         (pulongest): Renamed from paddr_u, change arg type to ULONGEST.
3902         * remote-mips.c (send_srec): Use paddr_nz instead of paddr_u in
3903         `CORE_ADDR addr' arg of error message.
3905 2008-09-03  Angela Marie Thomas <angela@releasedominatrix.com>
3907         * ser-tcp.c (ser_tcp_send_break): New function.
3908         (_initialize_ser_tcp): Use ser_tcp_send_break.
3909         * ser-tcp.h (ser_tcp_send_break): New prototype.
3911 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3913         * spu-tdep.c (spu_push_dummy_call): Update all stack pointer slots
3914         when allocating stack frame for inferior call.
3916 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3918         * spu-tdep.c (spu_frame_unwind_cache): Do not attempt to unwind
3919         SP or return address if we failed to find a valid frame.
3921 2008-09-03  Aleksandar Ristovski  <aristovski@qnx.com>
3923         * breakpoint.c (breakpoint_init_inferior): Mark as not inserted only
3924         non-permanent breakpoints.
3925         (bpstat_stop_status): Change enable_state to bp_disabled only for
3926         non-permanent breakpoints.
3927         (bp_loc_is_permanent): New function.
3928         (create_breakpoint): Check if the location points to a permanent
3929         breakpoint and if it does, make breakpoint permanent.
3930         (update_breakpoint_locations): Make sure new locations of permanent
3931         breakpoints are properly initialized.
3932         * i386-tdep.c (i386_skip_permanent_breakpoint): New function.
3933         (i386_gdbarch_init): Set gdbarch_skip_permanent_breakpoint.
3935 2008-09-02  Pedro Alves  <pedro@codesourcery.com>
3937         * breakpoint.c (insert_breakpoints, update_global_location_list):
3938         Check breakpoints_always_inserted_mode instead of
3939         always_inserted_mode directly.
3941 2008-09-02  Andreas Schwab  <schwab@suse.de>
3943         * ia64-tdep.c (ia64_get_dyn_info_list): Use obj_section_addr.
3945 2008-09-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
3947         Stay compatible after the GCC PR fortran/29635 fix.
3948         * dwarf2read.c (process_die <DW_TAG_imported_module>)
3949         (process_die <DW_TAG_imported_module>): Do not assert anything about
3950         these unsupported tags.
3952 2008-08-29  Tom Tromey  <tromey@redhat.com>
3954         * maint.c (_initialize_maint_cmds): Fix typo.
3956 2008-08-29  Tom Tromey  <tromey@redhat.com>
3958         * dwarf2read.c (dwarf2_build_psymtabs_hard): Copy dirname on
3959         obstack.
3961 2008-08-27  Ulrich Weigand  <uweigand@de.ibm.com>
3963         * remote.c: Include "gdb_stat.h".
3965 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3967         * dummy-frame.h (dummy_frame_pop): Add prototype.
3968         * dummy-frame.c: Include "observer.h".
3969         (dummy_frame_push): Do not check for stale frames.
3970         (dummy_frame_pop): New function.
3971         (cleanup_dummy_frames): New function.
3972         (_initialize_dummy_frame): Install it as inferior_created observer.
3974         * frame.h (struct frame_id): Update comments.
3975         (frame_id_inner): Remove prototype.
3976         * frame.c (frame_id_inner): Make static.  Add comments.
3977         (frame_find_by_id): Update frame_id_inner safety net check to avoid
3978         false positives for targets using non-contiguous stack ranges.
3979         (get_prev_frame_1): Update frame_id_inner safety net check.
3980         (frame_pop): Call dummy_frame_pop when popping a dummy frame.
3982         * stack.c (return_command): Directly pop the selected frame.
3983         * infrun.c (handle_inferior_event): Remove dead code.
3984         * i386-tdep.c (i386_push_dummy_call): Update comment.
3986 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3988         * breakpoint.c (remove_breakpoint): Do not fail if unable to remove
3989         breakpoint from shared library.
3991 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3993         * solib-svr4.c (read_program_header): New function.
3994         (scan_dyntag_auxv): New function.
3995         (elf_locate_base): Use it if scan_dyntag fails.
3996         (find_program_interpreter): New function.
3997         (enable_break): Use it instead of .interp section.
3999 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
4001         * remote.h (remote_filename_p, remote_bfd_open): Add prototypes.
4002         * remote.c (remote_bfd_iovec_open, remote_bfd_iovec_close,
4003         remote_bfd_iovec_pread, remote_bfd_iovec_stat, remote_filename_p,
4004         remote_bfd_open): New functions.
4005         (remote_hostio_send_command): Fail safely if remote connection
4006         is not set up.
4008         * solist.h (solib_open): Remove prototype.
4009         (solib_bfd_open): Add prototype.
4010         * solib.c: Include "remote.h".
4011         (solib_open): Remove, replace by ...
4012         (solib_bfd_open): ... this new function.  Handle remote BFDs.
4013         (solib_map_sections): Replace solib_open by solib_bfd_open.
4014         * solib-frv.c: Include "exceptions.h".
4015         (enable_break2): Replace solib_open by solib_bfd_open.
4016         * solib-svr4.c: Include "exceptions.h".
4017         (enable_break): Replace solib_open by solib_bfd_open.
4019         * symfile.c: Include "remote.h".
4020         (build_id_verify): Handle remote BFDs.
4021         (separate_debug_file_exists): Use BFD to access file.  Handle
4022         remote BFDs.
4023         (symfile_bfd_open): Handle remote BFDs.
4024         (reread_symbols): Handle remote BFDs.
4026         * NEWS: Mention "remote:" argument prefix to "set sysroot".
4028 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
4030         * gdbarch.sh (target_gdbarch): New global variable.
4031         (deprecated_current_gdbarch_select_hack): Set it.
4032         * gdbarch.c, gdbarch.h: Regenerate.
4034         * arch-utils.c (gdbarch_update_p): Use target_gdbarch instead
4035         of current_gdbarch.
4036         * target-descriptions.c (target_find_description): Likewise.
4037         * arm-tdep.c (arm_update_current_architecture): Likewise.
4038         (show_fp_model, arm_show_abi, arm_show_fallback_mode, 
4039         arm_show_force_mode): Likewise.
4040         * mips-tdep.c (show_mask_address, show_mipsfpu_command,
4041         show_mips_abi): Likewise.
4042         * mep-tdep.c (me_module_register_set, current_me_module): Likewise.
4044         * target.c (target_translate_tls_address): Use target_gdbarch
4045         instead of current_gdbarch.
4046         * remote.c (struct packet_reg): Likewise.
4047         (get_remote_arch_state, packet_reg_from_regnum,
4048         packet_reg_from_pnum, remote_check_symbols, remote_wait,
4049         remote_address_masked, remote_insert_breakpoint,
4050         remote_insert_hw_breakpoint, remote_read_description): Likewise.
4051         * remote-m32r-sdi.c (m32r_resume, m32r_wait): Likewise.
4052         * remote-mips.c (mips_open, mips_common_breakpoint): Likewise.
4053         * cris-tdep.c (cris_can_use_hardware_watchpoint): Likewise.
4055         * solib.c (solib_open, solib_map_sections, solib_read_symbols,
4056         solib_add, info_sharedlibrary_command, solib_address, 
4057         solib_create_inferior_hook, in_solib_dynsym_resolve_code,
4058         solib_global_lookup): Likewise.
4059         * solib-frv.c (enable_break2, frv_relocate_main_executable): Likewise.
4060         * solib-irix.c (irix_current_sos, irix_open_symbol_file_object):
4061         Likewise.
4062         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
4063         * solib-svr4.c (exec_entry_point, enable_break, svr4_free_so,
4064         set_solib_svr4_fetch_link_map_offsets, svr4_fetch_link_map_offsets):
4065         Likewise.
4066         * nto-tdep.c (nto_find_and_open_solib, nto_init_solib_absolute_prefix,
4067         nto_truncate_ptr): Likewise.
4068         * mips-linux-tdep.c (mips_linux_in_dynsym_stub): Likewise.
4070 2008-08-26  Luis Machado  <luisgpm@br.ibm.com>
4072         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections) New structure.
4073         (ppc_linux_vmx_regset_sections): New structure.
4074         (ppc_linux_fp_regset_sections): New structure.
4075         (ppc_linux_init_abi): Select core-file regset  based on target
4076         features.
4078 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
4080         * target.c (debug_print_register): Use regcache_raw_collect
4081         instead of regcache_cooked_read.  Only handle raw registers.
4083 2008-08-25  Pedro Alves  <pedro@codesourcery.com>
4085         * cp-name-parser.y: Include config.h before system headers.
4087 2008-08-25  Ulrich Weigand  <uweigand@de.ibm.com>
4089         * m88k-tdep.c: Update for unwinder changes.
4091 2008-08-24  Tom Tromey  <tromey@redhat.com>
4093         * s390-tdep.c (s390_address_class_type_flags): Use
4094         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1.
4095         (s390_address_class_type_flags_to_name): Likewise.
4096         (s390_address_class_name_to_type_flags): Likewise.
4098 2008-08-24  Tom Tromey  <tromey@redhat.com>
4100         * rs6000-tdep.c (rs6000_builtin_type_vec128): Don't use
4101         TYPE_FLAGS.
4102         * features/rs6000/powerpc-vsx32l.c
4103         (initialize_tdesc_powerpc_vsx32l): Update.
4104         * features/rs6000/powerpc-vsx32.c
4105         (initialize_tdesc_powerpc_vsx32): Update.
4106         * features/rs6000/powerpc-vsx64.c
4107         (initialize_tdesc_powerpc_vsx64): Update.
4108         * features/rs6000/powerpc-vsx64l.c
4109         (initialize_tdesc_powerpc_vsx64l): Update.
4110         * target-descriptions.c (maint_print_c_tdesc_cmd): Emit
4111         TYPE_VECTOR, not TYPE_FLAGS.
4113 2008-08-24  Tom Tromey  <tromey@redhat.com>
4115         * xml-tdesc.c (tdesc_end_union): Update.
4116         * stabsread.c (define_symbol): Update.
4117         (read_type): Update.
4118         (read_struct_type): Update.
4119         (read_enum_type): Update.
4120         * spu-tdep.c (spu_builtin_type_vec128): Update.
4121         * sh-tdep.c (sh_push_dummy_call_fpu): Update.
4122         (sh_push_dummy_call_nofpu): Update.
4123         * mdebugread.c (parse_symbol): Update.
4124         (parse_symbol): Update.
4125         (parse_symbol): Update.
4126         (upgrade_type): Update.
4127         * jv-lang.c (java_lookup_class): Update.
4128         * iq2000-tdep.c (iq2000_pointer_to_address): Update.
4129         * i386-tdep.c (i386_mmx_type): Update.
4130         (i386_sse_type): Update.
4131         * gdbtypes.h (enum type_flag_value): New enum.
4132         (enum type_instance_flag_value): New enum.
4133         (TYPE_FLAG_UNSIGNED, TYPE_FLAG_NOSIGN, TYPE_FLAG_STUB,
4134         TYPE_FLAG_TARGET_STUB, TYPE_FLAG_STATIC, TYPE_FLAG_PROTOTYPED,
4135         TYPE_FLAG_INCOMPLETE, TYPE_FLAG_VARARGS, TYPE_FLAG_VECTOR,
4136         TYPE_FLAG_FIXED_INSTANCE, TYPE_FLAG_STUB_SUPPORTED,
4137         TYPE_FLAG_NOTTEXT): Now enum constants.
4138         (TYPE_FLAG_CONST, TYPE_FLAG_VOLATILE, TYPE_FLAG_CODE_SPACE,
4139         TYPE_FLAG_DATA_SPACE, TYPE_FLAG_ADDRESS_CLASS_1,
4140         TYPE_FLAG_ADDRESS_CLASS_2): Remove.
4141         (TYPE_INSTANCE_FLAG_CONST, TYPE_INSTANCE_FLAG_VOLATILE,
4142         TYPE_INSTANCE_FLAG_CODE_SPACE, TYPE_INSTANCE_FLAG_DATA_SPACE,
4143         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1,
4144         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2): New constants.
4145         (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB, TYPE_TARGET_STUB,
4146         TYPE_STATIC, TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_VARARGS,
4147         TYPE_VECTOR, TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED,
4148         TYPE_NOTTEXT): Update.
4149         (TYPE_FLAG_ADDRESS_CLASS_ALL): Remove.
4150         (TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL): New define.
4151         (TYPE_VOLATILE, TYPE_CODE_SPACE, TYPE_DATA_SPACE,
4152         TYPE_ADDRESS_CLASS_1, TYPE_ADDRESS_CLASS_2,
4153         TYPE_ADDRESS_CLASS_ALL): Update.
4154         (struct main_type) <flags>: Remove.
4155         <flag_unsigned, flag_nosign, flag_stub, flag_target_stub,
4156         flag_static, flag_prototyped, flag_incomplete, flag_varargs,
4157         flag_vector, flag_stub_supported, flag_nottext,
4158         flag_fixed_instance>: New fields.
4159         <nfields, vptr_fieldno>: Move earlier.
4160         (TYPE_FLAGS): Remove.
4161         * gdbtypes.c (make_pointer_type): Update.
4162         (address_space_name_to_int): Update.
4163         (address_space_int_to_name): Update.
4164         (make_type_with_address_space): Update.
4165         (make_cv_type): Update.
4166         (create_range_type): Update.
4167         (get_discrete_bounds): Update.
4168         (create_set_type): Update.
4169         (make_vector_type): Update.
4170         (smash_to_method_type): Update.
4171         (check_typedef): Update.
4172         (check_stub_method): Update.
4173         (init_type): Individually assign flag fields.
4174         (recursive_dump_type): Don't print entire TYPE_FLAGS field.  Do
4175         print TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED, and TYPE_NOTTEXT.
4176         (copy_type_recursive): Copy the entire main type.  Don't use
4177         TYPE_FLAGS.
4178         * features/rs6000/powerpc-altivec64l.c
4179         (initialize_tdesc_powerpc_altivec64l): Update.
4180         * features/rs6000/powerpc-altivec64.c
4181         (initialize_tdesc_powerpc_altivec64): Update.
4182         * features/rs6000/powerpc-altivec32l.c
4183         (initialize_tdesc_powerpc_altivec32l): Update.
4184         * features/rs6000/powerpc-altivec32.c
4185         (initialize_tdesc_powerpc_altivec32): Update.
4186         * features/rs6000/powerpc-7400.c (initialize_tdesc_powerpc_7400):
4187         Update.
4188         * features/arm-with-iwmmxt.c (initialize_tdesc_arm_with_iwmmxt):
4189         Update.
4190         * dwarf2read.c (read_structure_type): Update.
4191         (read_enumeration_type): Likewise.
4192         (process_enumeration_scope): Likewise.
4193         (read_tag_pointer_type): Likewise.
4194         (read_subroutine_type): Likewise.
4195         (read_subroutine_type): Likewise.
4196         (read_base_type): Likewise.
4197         * coffread.c (coff_read_enum_type): Update.
4198         * ada-valprint.c (adjust_type_signedness): Update.
4199         * ada-typeprint.c (print_record_field_types): Update.
4200         * ada-lang.c (packed_array_type): Update.
4201         (empty_record): Don't reset TYPE_FLAGS.
4202         (ada_template_to_fixed_record_type_1): Update.
4203         (ada_template_to_fixed_record_type_1): Likewise.
4204         (template_to_static_fixed_type): Likewise.
4205         (to_record_with_fixed_variant_part): Likewise.
4206         (to_fixed_record_type): Likewise.
4207         (to_fixed_array_type): Likewise.
4208         (to_static_fixed_type): Likewise.
4210 2008-08-23  Jim Blandy  <jimb@redhat.com>
4212         PR macros/607:
4213         * symmisc.c (print_symbol_bcache_statistics): Include statistics
4214         for the macro bcache.
4216 2008-08-23  Tom Tromey  <tromey@redhat.com>
4218         * macrotab.h (struct macro_definition) <kind>: Shrink to one bit.
4219         (argc): Now 31 bits.
4221 2008-08-22  Tom Tromey  <tromey@redhat.com>
4223         * NEWS: Move macro entries back under "New commands".
4225 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4227         * breakpoint.c (create_overlay_event_breakpoint): Rename to ...
4228         (create_overlay_event_breakpoint_1): ... this.  Add OBJFILE parameter.
4229         (create_overlay_event_breakpoint): Loop over all objfiles to install
4230         multiple instances of the overlay event breakpoint if present.
4232 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4234         * spu-tdep.c (spu_overlay_new_objfile): Only consider SPU objfiles.
4235         (info_spu_event_command): Command only supported on SPU architecture.
4236         (info_spu_signal_command): Likewise.
4237         (info_spu_mailbox_command): Likewise.
4238         (info_spu_dma_command): Likewise.
4239         (info_spu_proxydma_command): Likewise.
4241 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4243         * infrun.c (adjust_pc_after_break): Do not call get_thread_regcache
4244         if the thread has already exited.
4246 2008-08-22  Pedro Alves  <pedro@codesourcery.com>
4248         * infrun.c (proceed): Move back setting previous_inferior_ptid
4249         from here ...
4250         (wait_for_inferior): ... to here.
4251         (fetch_inferior_event): ... and here.
4253 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4255         * gdbarch.sh: Include "regcache.h" into gdbarch.c.
4256         (deprecated_current_gdbarch_select_hack): Call registers_changed
4257         instead of reinit_frame_cache.
4258         * gdbarch.c: Regenerate.
4260 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4262         * elfread.c (elf_symtab_read): Do not relocate thread-local symbols.
4264 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4266         * xcoffread.c (SYMNAME_ALLOC): Correct syntax.
4268 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4270         * findvar.c (locate_var_value): Do not call get_frame_arch
4271         with a NULL frame argument.
4273 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4275         * frame.h (frame_map_regnum_to_name): Remove prototype.
4276         (frame_map_name_to_regnum): Remove prototype.
4277         * frame.c (frame_map_regnum_to_name): Remove.
4278         (frame_map_name_to_regnum): Remove.
4279         (frame_unwind_register_value): Use user_reg_map_regnum_to_name
4280         instead of frame_map_regnum_to_name.
4281         * ax-gdb.c: Include "user-regs.h".
4282         (gen_expr): Use user_reg_map_name_to_regnum instead of
4283         frame_map_name_to_regnum.
4284         * eval.c:  Include "user-regs.h".
4285         (evaluate_subexp_standard): Use user_reg_map_name_to_regnum
4286         instead of frame_map_name_to_regnum.
4287         * infcmd.c (registers_info): Likewise.
4288         * parse.c: Include "user-regs.h".
4289         (write_dollar_variable): Use user_reg_map_name_to_regnum
4290         instead of frame_map_name_to_regnum.
4291         * tracepoint.c: Include "user-regs.h".
4292         (encode_actions): Use user_reg_map_name_to_regnum
4293         instead of frame_map_name_to_regnum.
4294         * valops.c: Include "user-regs.h".
4295         (value_fetch_lazy): Use user_reg_map_regnum_to_name instead
4296         of frame_map_regnum_to_name.
4298 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4300         * ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read
4301         and manually relocate .opd contents from BFD instead of reading
4302         them from target memory.
4304 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4306         * dwarf2read.c (processing_current_prefix): Delete static
4307         variable.
4308         (process_full_comp_unit): Do not set processing_current_prefix.
4309         (dwarf2_full_name): New function.
4310         (read_func_scope): Do not set processing_current_prefix.  Use
4311         determine_prefix.
4312         (read_structure_type): Do not set processing_current_prefix.  Remove
4313         unused inner cleanup.
4314         (process_structure_scope): Do not set processing_current_prefix.
4315         (read_enumeration_type): Use dwarf2_full_name.
4316         (determine_class_name): Return a const char *.  Put the result
4317         on the objfile obstack.  Use dwarf2_full_name.
4318         (read_namespace_type): New function.
4319         (read_namespace): Do not create the type here.  Use
4320         determine_prefix.
4321         (read_typedef): Use dwarf2_full_name.  Do not pass the name
4322         to init_type.
4323         (read_base_type): Do not pass the name to init_type.  Handle
4324         TYPE_FLAG_NOSIGN.
4325         (read_unspecified_type): Do not pass the name to init_type.
4326         (new_symbol): Use dwarf2_full_name instead of
4327         processing_current_prefix.
4328         (read_type_die): Do not set processing_current_prefix.  Handle
4329         DW_TAG_namespace.
4330         (determine_prefix): Handle specifications.  Return the result
4331         on the objfile obstack.  Handle unions correctly.
4333 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4335         * buildsym.c (add_symbol_to_list): Do not call
4336         cp_scan_for_anonymous_namespaces here.
4337         (finish_block): Do not call cp_set_block_scope here.
4338         * cp-namespace.c (processing_has_namespace_info)
4339         (processing_current_prefix): Delete.
4340         (cp_initialize_namespace): Do not initialize
4341         processing_has_namespace_info.
4342         (cp_scan_for_anonymous_namespaces): Use SYMBOL_DEMANGLED_NAME.  Do
4343         not check processing_has_namespace_info.
4344         (cp_set_block_scope): Take prefix and namespace info flag as
4345         arguments.  Honor namespaces regardless of a demangled name.
4346         * cp-support.h (processing_has_namespace_info)
4347         (processing_current_prefix): Delete declarations.
4348         (cp_set_block_scope): Update prototype.
4349         * dwarf2read.c (processing_has_namespace_info)
4350         (processing_current_prefix): New static variables.
4351         (read_file_scope): Initialize processing_has_namespace_info.
4352         (read_func_scope): Call cp_set_block_scope for C++.
4353         (new_symbol): Call cp_scan_for_anonymous_namespaces for C++.
4354         * symtab.c (symbol_demangled_name): Accept a const argument.
4355         * symtab.h (symbol_demangled_name): Update prototype.
4357 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4359         * ax-gdb.c (gen_var_ref): Use SYMBOL_LINKAGE_NAME.
4360         * blockframe.c (find_pc_partial_function): Likewise.
4361         * buildsym.c (find_symbol_in_list): Likewise.
4362         * c-valprint.c (c_val_print): Likewise.
4363         * coffread.c (patch_opaque_types, process_coff_symbol): Likewise.
4364         (coff_read_enum_type): Likewise.  Use SYMBOL_SET_LINKAGE_NAME.
4365         * cp-support.c (cp_remove_params): Renamed from remove_params and
4366         made global.
4367         (overload_list_add_symbol): Update call to remove_params.
4368         * cp-support.h (cp_remove_params): Declare.
4369         * dwarf2read.c (process_enumeration_scope): Use SYMBOL_LINKAGE_NAME.
4370         (dwarf2_const_value): Use SYMBOL_PRINT_NAME.
4371         * expprint.c (dump_subexp_body_standard): Likewise.
4372         * f-valprint.c (info_common_command, there_is_a_visible_common_named):
4373         Use SYMBOL_LINKAGE_NAME to find symbols and SYMBOL_PRINT_NAME
4374         for messages.
4375         * findvar.c (read_var_value): Use SYMBOL_LINKAGE_NAME.
4376         * gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise.
4377         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
4378         (hppa_hpux_skip_trampoline_code): Use SYMBOL_LINKAGE_NAME to find
4379         symbols and SYMBOL_PRINT_NAME for messages.
4380         * jv-lang.c (add_class_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4381         * linespec.c (decode_line_2): Use SYMBOL_LINKAGE_NAME.
4382         * mdebugread.c (parse_symbol): Use SYMBOL_LINKAGE_NAME and
4383         SYMBOL_SET_LINKAGE_NAME.
4384         (mylookup_symbol): Use SYMBOL_LINKAGE_NAME.
4385         * minsyms.c (add_minsym_to_demangled_hash_table): Use
4386         SYMBOL_SEARCH_NAME.
4387         (lookup_minimal_symbol): Use SYMBOL_LINKAGE_NAME or
4388         SYMBOL_MATCHES_SEARCH_NAME, depending on the pass.
4389         * objfiles.h (ALL_OBJFILE_MSYMBOLS): Use SYMBOL_LINKAGE_NAME.
4390         * printcmd.c (build_address_symbolic): Use SYMBOL_LINKAGE_NAME.
4391         (address_info): Use SYMBOL_PRINT_NAME for messages and
4392         SYMBOL_LINKAGE_NAME for lookups.
4393         * sol-thread.c (info_cb): Use SYMBOL_PRINT_NAME for messages.
4394         * stabsread.c (patch_block_stabs, define_symbol)
4395         (read_type, read_enum_type, common_block_end)
4396         (cleanup_undefined_types_1, scan_file_globals): Use
4397         SYMBOL_LINKAGE_NAME, SYMBOL_SET_LINKAGE_NAME, ALL_OBJFILE_MSYMBOLS,
4398         and SYMBOL_PRINT_NAME.
4399         * stack.c (print_frame_args): Use SYMBOL_LINKAGE_NAME.
4400         (print_frame, frame_info): Use SYMBOL_PRINT_NAME for output.  Use
4401         cp_remove_params instead of cplus_demangle.
4402         (print_block_frame_labels, print_frame_arg_vars): Use
4403         SYMBOL_LINKAGE_NAME.
4404         * symmisc.c (dump_msymbols): Use ALL_OBJFILE_MSYMBOLS and
4405         SYMBOL_LINKAGE_NAME.
4406         (dump_symtab_1, print_symbol, print_partial_symbols)
4407         (maintenance_check_symtabs): Use SYMBOL_LINKAGE_NAME.
4408         * symtab.h (DEPRECATED_SYMBOL_NAME): Delete.
4409         (SYMBOL_SET_LINKAGE_NAME): New.
4410         (SYMBOL_SET_NAMES): Add a comment.
4411         * tracepoint.c (set_traceframe_context, validate_actionline)
4412         (collect_symbol, scope_info): Use SYMBOL_LINKAGE_NAME for
4413         lookups and SYMBOL_PRINT_NAME for output.
4414         * typeprint.c (typedef_print): Use SYMBOL_LINKAGE_NAME.
4415         * xcoffread.c (process_xcoff_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4417 2008-08-21  Pedro Alves  <pedro@codesourcery.com>
4419         * arm-tdep.c (arm_pc_is_thumb): Use obj_section_addr.
4420         * hppa-hpux-tdep.c (hppa_hpux_find_dummy_bpaddr): Likewise.
4421         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Use
4422         obj_section_addr and obj_section_endaddr.
4423         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Likewise.
4424         * hppabsd-tdep.c (hppabsd_find_global_pointer): Likewise.
4425         * ia64-tdep.c (ia64_find_global_pointer): Likewise.
4426         (find_extant_func_descr): Likewise.
4427         * solib-frv.c (frv_relocate_main_executable): Use
4428         obj_section_addr.
4429         * xstormy16-tdep.c (xstormy16_find_jmp_table_entry): Use
4430         obj_section_addr and obj_section_endaddr.
4432 2008-08-21  Paul N. Hilfinger  <hilfinger@adacore.com>
4434         * NEWS: Amplify last entry on boolean types in Ada.
4436 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4438         * dwarf2read.c (die_specification, dwarf2_extension, follow_die_ref):
4439         Make the dwarf2_cu * parameter output as well as input.  Update it if
4440         we follow a reference to another CU.
4441         (read_func_scope, determine_class_name, namespace_name, dwarf2_attr)
4442         (die_type, die_containing_type): Update calls to changed functions.
4443         Use the returned CU along with the returned DIE.
4444         (read_namespace): Use dwarf2_attr instead of dwarf2_extension.
4446 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4448         * dwarf2read.c (queue_comp_unit): Take an objfile argument.  Read
4449         in the DIEs here.
4450         (process_queue): Do not read in the DIEs here.
4451         (psymtab_to_symtab_1): Update call to queue_comp_unit.
4452         (read_full_die): Do not call queue_comp_unit from here.
4453         (maybe_queue_comp_unit): New function.
4454         (follow_die_ref): Use it.
4456 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4458         * dwarf2read.c (struct attribute): Move earlier.
4459         (struct die_info): Change attrs to a trailing array.
4460         (dwarf_alloc_die): Take the number of attributes.  Allocate space
4461         for them.
4462         (read_full_die): Update call to dwarf_alloc_die.  Do not manually
4463         allocate attributes.
4465 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4467         * dwarf2read.c (REF_HASH_SIZE): Delete.
4468         (struct dwarf2_cu): Replace die_ref_table with die_hash.
4469         (struct die_info): Remove next_ref.
4470         (store_in_ref_table): Remove offset argument.  Rewrite to use
4471         htab_find_slot_with_hash.
4472         (die_hash, die_eq): New.
4473         (read_comp_unit): Allocate the die_hash.
4474         (read_die_and_children): Update call to store_die_ref.
4475         (follow_die_ref): Rewrite to use htab_find_with_hash.
4477 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4479         * dwarf2read.c (free_die_list, copy_die): Delete.
4480         (dwarf_alloc_die): Take a CU argument.  Allocate the new DIE
4481         on the obstack.
4482         (read_full_die): Update call to dwarf_alloc_die.  Allocate
4483         attributes on the CU obstack.
4484         (free_one_comp_unit): Do not call free_die_list.
4486 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4488         * dwarf2read.c (read_die_and_children): Ignore NULL DIEs.
4489         (read_die_and_siblings): Likewise.  Do not add padding DIEs to the
4490         sibling list.
4491         (read_full_die): Do not allocate DIEs for abbrev 0.
4492         (follow_die_ref): Correct error message.
4494 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4496         * linespec.c (symtab_from_filename): Also throw NOT_FOUND_ERROR if
4497         there are no symbols loaded, instead of throwing a generic error.
4498         (decode_variable): Likewise.
4500 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4502         * objfiles.h (struct obj_section): Remove addr and endaddr fields.
4503         (obj_section_offset, obj_section_addr, obj_section_endaddr): New
4504         macros.
4505         * objfiles.c (add_to_objfile_sections): Don't set addr, endaddr
4506         and offset.  Use size_t instead of unsigned long.
4507         (build_objfile_section_table): Use size_t instead of unsigned
4508         long.
4509         (objfile_relocate): Don't relocate s->addr and s->endaddr, they're
4510         gone.
4511         (find_pc_sect_section): Use obj_section_addr and
4512         obj_section_endaddr.
4513         * symfile.c (symfile.c): Remove code that maps sections
4514         offsets in "addr" to the object's sections.
4515         * blockframe.c (find_pc_partial_function): Use obj_section_endaddr.
4516         * gcore.c (gcore_create_callback): Use obj_section_addr and
4517         obj_section_endaddr.
4518         * maint.c (print_objfile_section_info): Likewise.
4519         * printcmd.c (sym_info): Use obj_section_addr and
4520         obj_section_endaddr.
4521         * symtab.c (fixup_section): Likewise.
4523 2008-08-20  Mark Kettenis  <kettenis@gnu.org>
4525         * sparc-tdep.c: Make some comments catch up with reality.
4527 2008-08-20  Vladimir Prus  <vladimir@codesourcery.com>
4529         * NEWS: Mention 'set target-async'
4531 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4533         * infrun.c (resume): If the thread is placed to the deferred step
4534         queue, mark it as running.
4536 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4538         Make sure target supports non-stop.
4539         * infcmd.c (run_command_1, attach_command): If non-stop mode
4540         is requested, verify the target supports it.
4541         * linux-nat.c (linux_nat_supports_non_stop): New.
4542         (linux_nat_add_target): Register the above.
4543         * target.c (find_default_supports_non_stop)
4544         (target_supports_non_stop): New.
4545         (init_dummy_target): Register find_default_supports_non_stop.
4546         * target.h (struct target_ops): New field to_supports_non_stop.
4547         (target_supports_non_stop): New.
4549 2008-08-19  Pedro Alves  <pedro@codesourcery.com>
4550             Vladimir Prus  <vladimir@codesourcery.com>
4552         * target.c (target_async_permitted, target_async_permitted_1)
4553         (set_maintenance_target_async_permitted)
4554         (show_maintenance_target_async_permitted): New.
4555         (initialize_targets): Register 'set target-async'.
4556         * target.h (target_async_permitted): Declare.
4557         * linux-nat.c (linux_nat_async_enabled)
4558         (linux_nat_async_permitted, set_maintenance_linux_async_permitted)
4559         (show_maintenance_linux_async_permitted): Remove.
4560         (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p)
4561         (get_pending_events, linux_nat_async): Use target_async_permitted.
4562         (linux_nat_set_async_mode): Remove, moving the only used bits
4563         into...
4564         (linux_nat_setup_async): This.
4565         (_initialize_linux_nat): Do not register 'maint set linux-async'.
4566         Use linux_nat_setup_async.
4567         * remote.c (remote_async_permitted, remote_async_permitted_set)
4568         (set_maintenance_remote_async_permitted)
4569         (show_maintenance_remote_async_permitted): Remove.
4570         (remote_open_1, remote_terminal_inferior, remote_can_async_p)
4571         (remote_is_async_p): Use target_async_permitted.
4572         (_initialize_remote): Don't register 'main set remote-async'.
4573         * mi/mi-cmds.c (mi_cmds): Register -list-target-features.
4574         * mi/mi-cmds.h (mi_cmd_list_target_features): New.
4575         * mi/mi-main.c (mi_cmd_list_target_features): New.
4577 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4579         * target.c (maybe_kill_then_attach)
4580         (maybe_kill_then_create_inferior): Remove.
4581         (update_current_target): Do not default to_attach,
4582         to_create_inferiour, to_is_async_p.
4584 2008-08-19  Paul N. Hilfinger  <hilfinger@adacore.com>
4585         
4586         Changes for supporting boolean types in debugging data.
4587         * ada-lang.c (discrete_type_high_bound,discrete_type_low_bound): Change 
4588         API to return LONGEST values rather than struct values.
4589         (ada_evaluate_subexp): Change to use new API of discrete_type_low_bound
4590         and discrete_type_high_bound.
4591         (to_fixed_range_type): Create a range type in cases where 
4592         argument is base type and its limits are representable as ints.
4593         (ada_is_modular_type): Correct so that base type must be integral.
4594         * ada-lex.l (TRUEKEYWORD,FALSEKEYWORD): Make 'true' and 'false' 
4595         keywords when they appear alone, since we are phasing out 
4596         direct representation of these identifiers in debugging data.
4597         * ada-exp.y: Define 'true' and 'false' as primaries.
4598         (type_boolean): New function.
4599         (type_int,type_long,type_long_long,type_floattype_double)
4600         (type_long_double): Remove uses of current_gdbarch for consistency
4601         with type_boolean.
4602         (write_int): Change comment to indicate that it might write boolean 
4603         constant as well.
4604         * ada-typeprint.c (ada_print_type): Print '(false, true)' for boolean
4605         type, since will no longer be represented as enumerated type in 
4606         debugging data.
4607         * ada-valprint.c (print_optional_low_bound): Handle boolean case
4608         as well.
4609         * NEWS: Note support boolean types.
4610         
4611 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4613         * bsd-uthread.c (bsd_uthread_close): New.
4614         (bsd_uthread_deactivate): Don't cleanup here, just unpush the
4615         target.
4616         (bsd_uthread_solib_loaded): Fix typo.
4617         (bsd_uthread_target): Register bsd_uthread_close.
4619 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4621         * corelow.c (core_open): Assume there was no upper layer left
4622         behind from a previous inferior.
4623         * target.c (pop_all_targets): Rename to ...
4624         (pop_all_targets_above): ... this.  Add a target stratum
4625         parameter.  Use it instead of hardcoding the dummy_stratum.
4626         (pop_all_targets): New, defer to pop_all_targets_above.
4627         (target_preopen): Use pop_all_targets_above.
4628         * target.h (pop_all_targets_above): Declare.
4630 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4632         * gdbthread.h (thread_change_ptid): Declare.
4633         * infrun.c (infrun_thread_ptid_changed): New.
4634         (_initialize_infrun): Attach infrun_thread_ptid_changed to the
4635         thread_ptid_changed observer.
4636         * regcache.c (regcache_thread_ptid_changed): New.
4637         (_initialize_regcache): Attach regcache_thread_ptid_changed to the
4638         thread_ptid_changed observer.
4639         * thread.c (thread_change_ptid): New.
4641 2008-08-18  Tom Tromey  <tromey@redhat.com>
4643         * symfile.c (reread_symbols): Update.
4644         * solib-sunos.c (allocate_rt_common_objfile): Update.
4645         * objfiles.c (allocate_objfile): Update.
4646         * objfiles.h (struct objfile) <md, mmfd, deprecated_obj_private>:
4647         Remove.
4649 2008-08-18  Tom Tromey  <tromey@redhat.com>
4651         * gdbtypes.c (copy_type_recursive): Allocate 'stored' on objfile's
4652         obstack.
4654 2008-08-18  Daniel Jacobowitz  <dan@codesourcery.com>
4656         * rs6000-tdep.c (struct rs6000_framedata): Add gpr_mask, used_bl,
4657         lr_register.
4658         (rs6000_in_function_epilogue_p): Check for bctr.
4659         (skip_prologue): Initialize lr_register.  Set lr_reg to a register
4660         number.  Set gpr_mask and used_bl.  Continue scanning while some
4661         expected registers are not saved.  Set lr_register if LR is not
4662         stored.
4663         (rs6000_frame_cache): Handle gpr_mask and lr_register.
4665 2008-08-17  Tom Tromey  <tromey@redhat.com>
4667         PR gdb/1535:
4668         * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): New macros.
4669         (ep_find_event_name_end): Remove.
4670         (catch_fork_temporary, catch_vfork_temporary,
4671         catch_fork_permanent, catch_vfork_permanent): New constants.
4672         (catch_vfork, catch_fork): Remove.
4673         (catch_fork_command_1): Add 'command' argument.  Remove
4674         'fork_kind' and 'tempflag'.  Handle NULL 'arg'.  Update switch for
4675         all cases.
4676         (catch_exec_command_1): Add 'command' argument; remove
4677         'tempflag'.  Handle NULL 'arg'.
4678         (catch_load_command_1): Likewise.
4679         (catch_unload_command_1): Likewise.
4680         (catch_ada_exception_command): Likewise.
4681         (catch_assert_command): Likewise.
4682         (catch_catch_command): New function.
4683         (catch_throw_command): Likewise.
4684         (catch_command_1): Remove.
4685         (catch_command): Just call error.
4686         (tcatch_command): Likewise.
4687         (catch_cmdlist): New global.
4688         (tcatch_cmdlist): Likewise.
4689         (add_catch_command): New function.
4690         (_initialize_breakpoint): Create "catch" and "tcatch" as prefix
4691         commands.  Create all catch sub-commands.
4693 2008-08-17  Pedro Alves  <pedro@codesourcery.com>
4695         * gdbthread.h: Add comments.
4696         * stack.c (get_selected_block): Return 0 on an exited thread.
4697         * top.c (execute_command): Check for is_stopped, not !is_running.
4698         * event-top.c (command_handler): Likewise.
4700 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4702         * mi/mi-main.c (mi_cmd_exec_next, mi_cmd_exec_next_instruction)
4703         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
4704         (mi_cmd_exec_finish): Remove "return".
4706 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4708         * target.h (pop_all_targets): Declare.
4709         * target.c (pop_all_targets): New.
4710         * top.c (quit_target): Pop all targets instead of just closing the
4711         current.
4713 2008-08-16  Vladimir Prus  <vladimir@codesourcery.com>
4714             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4716         * cli-script.c (read_next_line): Add parse_commands argument.
4717         (recurse_read_control_structure): Adapt to new read_next_line
4718         signature.
4719         (read_command_lines): Add parse_commands argument.
4720         (define_command): Adapt to new read_command_lines signature.
4721         (document_command): Likewise.
4722         * breakpoint.c (commands_command): Likewise.
4723         * defs.h (read_command_lines): Adjust function prototype.
4725 2008-08-16  Paul N. Hilfinger  <hilfinger@adacore.com>
4727         * ada-lang.c (pos_atr): Account for the possibility that the 
4728         argument may be a reference.
4730 2008-08-16  Paul N. Hilfinger  <hilfingr@adacore.com>
4732         * xcoffread.c (scan_xcoff_symtab): Do not include global symbols
4733         ('F' format) for @FIX names generated by the loader, retaining only
4734         the minimal symbols (and no partial symbol tables) for these names.
4735         Fixes warning messages about symbols that are found in partial 
4736         symbol tables, but not full symbol tables.
4738 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4740         * infrun.c (fetch_inferior_event): Only call normal_stop if not
4741         stopping quietly.
4743 2008-08-15  Luis Machado  <luisgpm@br.ibm.com>
4745         * rs6000-tdep: Include "features/rs6000/powerpc-vsx32.c".
4746         Include "features/rs6000/powerpc-vsx64.c".
4747         (ppc_supply_vsxregset): New function.
4748         (ppc_collect_vsxregset): New function.
4749         (IS_VSX_PSEUDOREG): New macro.
4750         (IS_EFP_PSEUDOREG): New macro.
4751         (vsx_register_p): New function.
4752         (ppc_vsx_support_p): New function.
4753         (rs6000_builtin_type_vec128): New function.
4754         (rs6000_register_name): Hide upper halves of vs0~vs31.  Return
4755         correct names for VSX registers and EFPR registers.
4756         (rs6000_pseudo_register_type): Return correct types for VSX
4757         and EFPR registers.
4758         (rs6000_pseudo_register_reggroup_p): Return correct group for
4759         VSX and EFPR registers.
4760         (ppc_pseudo_register_read): Rename to dfp_pseudo_register_read.
4761         (ppc_pseudo_register_write): Rename to dfp_pseudo_register_write.
4762         (vsx_pseudo_register_read): New function.
4763         (vsx_pseudo_register_write): New function.
4764         (efpr_pseudo_register_read): New function.
4765         (efpr_pseudo_register_write): New function.
4766         (rs6000_pseudo_register_read): Call new VSX and EFPR read functions.
4767         (rs6000_pseudo_register_write): Call new VSX and EFPR write functions.
4768         (rs6000_gdbarch_init): Declare have_vsx.
4769         Initialize new upper half VSX registers.
4770         Initialize VSX-related and EFPR-related pseudo-registers variables.
4771         Adjust the number of pseudo registers accordingly.
4773         * ppc-linux-nat.c: Define PTRACE_GETVSXREGS, PTRACE_SETVSXREGS
4774         and SIZEOF_VSRREGS.
4775         (gdb_vsxregset_t): New type.
4776         (have_ptrace_getsetvsxregs): New variable.
4777         (fetch_vsx_register): New function.
4778         (fetch_register): Handle VSX registers.
4779         (fetch_vsx_registers): New function.
4780         (fetch_ppc_registers): Handle VSX registers.
4781         (store_ppc_registers): Handle VSX registers.
4782         (store_vsx_register): New function.
4783         (store_register): Handle VSX registers.
4784         (store_vsx_registers): New function.
4785         (ppc_linux_read_description): Handle VSX-enabled inferiors.
4786         (gdb_vsxregset_t): New type.
4787         (supply_vsxregset): New function.
4788         (fill_vsxregset): New function.
4790         * ppc-tdep.h (vsx_register_p): New prototype.
4791         (vsx_support_p): New prototype.
4792         (ppc_vsr0_regnum): New variable.
4793         (ppc_vsr0_upper_regnum): Likewise.
4794         (ppc_efpr0_regnum): Likewise.
4795         (ppc_builtin_type_vec128): New type.
4796         (ppc_num_vsrs): New constant.
4797         (ppc_num_vshrs): New constant.
4798         (ppc_num_efprs): Likewise.
4799         Define POWERPC_VEC_VSX PPC_VSR0_UPPER_REGNUM and PPC_VSR31_UPPER_REGNUM.
4800         (ppc_supply_vsxregset): New prototype.
4801         (ppc_collect_vsxregset): New prototype.
4803         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-vsx32l.c"
4804         Include "features/rs6000/powerpc-vsx64l.c".
4805         (_initialize_ppc_linux_tdep): Initialize VSX-enabled targets.
4806         (ppc_linux_regset_sections): Add new ".reg-ppc-vsx" field.
4807         (ppc32_linux_vsxregset): New 32-bit VSX-enabled regset.
4808         (ppc_linux_regset_from_core_section): Handle VSX core section.
4809         (ppc_linux_core_read_description): Support VSX-enabled core files.
4811         * ppc-linux-tdep.h: Declare *tdesc_powerpc_vsx32l
4812         Declare tdesc_powerpc_vsx64l
4814         * corelow.c (get_core_register_section): Support VSX-enabled
4815         core files.
4817         * features/rs6000/power-vsx.xml: New VSX descriptions.
4818         * features/rs6000/powerpc-vsx32.xml: New file.
4819         * features/rs6000/powerpc-vsx32l.xml: New file.
4820         * features/rs6000/powerpc-vsx64.xml: New file.
4821         * features/rs6000/powerpc-vsx64l.xml: New file.
4822         * features/rs6000/powerpc-vsx32.c: New file (generated).
4823         * features/rs6000/powerpc-vsx32l.c: New file (generated).
4824         * features/rs6000/powerpc-vsx64.c: New file (generated).
4825         * features/rs6000/powerpc-vsx64l.c: New file (generated).
4826         * features/Makefile: Updated with new descriptions.
4827         * regformats/rs6000/powerpc-vsx32l.dat: New file (generated).
4828         * regformats/rs6000/powerpc-vsx64l.dat: New file (generated).
4830 2008-08-15  Vladimir Prus  <vladimir@codesourcery.com>
4832         * ia64-linux.nat (_initialize_ia64_linux_nat): Don't
4833         call linux_target twice.
4835 2008-08-14  Aleksandar Ristovski  <aristovski@qnx.com>
4837         * nto-tdep.c (lm_info): Updated struct lm_info definition from
4838         solib-svr4.c
4839         (LM_ADDR): Use l_addr if available; if not, use link map and set 
4840         l_addr.
4842 2008-08-14  Tom Tromey  <tromey@redhat.com>
4844         * macrocmd.c (macro_define_command): Check for NULL argument.
4845         (macro_undef_command): Likewise.
4847 2008-08-14  Pedro Alves  <pedro@codesourcery.com>
4849         * infcmd.c (continue_1): Add an ERROR_NO_INFERIOR call.
4851 2008-08-13  Pedro Alves  <pedro@codesourcery.com>
4853         * breakpoint.c (always_inserted_auto, always_inserted_on)
4854         (always_inserted_off, always_inserted_enums): New.
4855         (always_inserted_mode): Change type to char* and point to
4856         always_inserted_auto.
4857         (show_always_inserted_mode): In auto mode, also show the current
4858         effect of the option.
4859         (breakpoints_always_inserted_mode): Adjust for the new auto mode.
4860         (_initialize_breakpoint): Make the "set breakpoints
4861         always-inserted" command an enum command.  Extend help to describe
4862         the auto mode.
4864 2008-08-13  Ulrich Weigand  <uweigand@de.ibm.com>
4866         * spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status
4867         query valid) bit.  Ignore bits outside the condition field.
4868         (info_spu_proxydma_command): Ignore bits outside the field.
4870 2008-08-12  Michael Snyder  <msnyder@vmware.com>
4872         * MAINTAINERS: Update my email address.
4874 2008-08-12  Ulrich Weigand  <uweigand@de.ibm.com>
4876         * ppc-linux-nat.c (ppc_linux_get_hwcap): Really get AT_HWCAP.
4878 2008-08-12  Pedro Alves  <pedro@codesourcery.com>
4880         Add no-ack mode to the remote protocol --- optionally stop ACKing
4881         packets and responses when we have a reliable communication
4882         medium.
4884         Based on Apple's GDB, by Jason Molenda <jmolenda@apple.com>
4886         * remote.c (struct remote_state): Add noack_mode field.
4887         (PACKET_QStartNoAckMode): New.
4888         (remote_start_remote): Don't any outstanding packet here.
4889         (remote_open_1): Clear noack_mode.  Ack any outstanding packet
4890         here.  Activate noack mode if requested.
4891         (remote_protocol_features): Add QStartNoAckMode.
4892         (remote_open_1):
4893         (putpkt_binary): Don't send ack in noack mode.
4894         (read_frame): Don't recompute the checksum in noack mode.
4895         (getpkt_sane): Skip sending ack if in noack mode.
4896         (_initialize_remote): Add set/show remote noack mode.
4897         * NEWS:  Note the new features.
4899 2008-08-11  Kevin Buettner  <kevinb@redhat.com>
4901         * rs6000-tdep.c (BL_MASK, BL_INSTRUCTION, BL_DISPLACEMENT_MASK):
4902         New macros.
4903         (rs6000_skip_main_prologue): New function.
4904         (rs6000_gdb_arch_init): Register rs6000_skip_main_prologue.
4906 2008-08-11  Sandra Loosemore  <sandra@codesourcery.com>
4908         * MAINTAINERS (Write After Approval):  Add self.
4910 2008-08-11  Stan Shebs  <stan@codesourcery.com>
4912         ARM BE8 support.
4913         * disasm.c (gdb_disassemble_info): Set endian_code.
4914         * gdbarch.sh (gdbarch_info): New field byte_order_for_code.
4915         * gdbarch.h, gdbarch.c: Regenerate.
4916         * arch-utils.c (initialize_current_architecture): Set the
4917         default byte_order_for_code.
4918         (gdbarch_info_init): Ditto.
4919         (gdbarch_info_fill): Ditto.
4920         * arm-tdep.c (SWAP_INT, SWAP_SHORT): New macros.
4921         (thumb_analyze_prologue): Swap halfword if code endianness is
4922         different from general endianness.
4923         (arm_skip_prologue): Similarly.
4924         (arm_scan_prologue): Ditto.
4925         (thumb_get_next_pc): Ditto.
4926         (arm_get_next_pc): Ditto.
4927         (arm_gdbarch_init): Set byte_order_for_code from BE8 flag,
4928         choose correct endianness for breakpoints.
4930 2008-08-10  Pedro Alves  <pedro@codesourcery.com>
4932         * bsd-kvm.c: Include "gdbthread.h".
4933         (bsd_kvm_ptid): New.
4934         (bsd_kvm_open): Add a main thread.
4935         (bsd_kvm_close): Delete it.
4936         (bsd_kvm_thread_alive): New.
4937         (bsd_kvm_pid_to_str): New.
4938         (bsd_kvm_add_target): Register bsd_kvm_thread_alive and
4939         bsd_kvm_pid_to_str.
4940         (bsd_kvm_add_target): Initialize bsd_kvm_ptid.
4942 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4944         * buildsym.c (start_subfile): Properly cast sentinel in concat
4945         call.
4946         * cp-name-parser.y: Include "config.h".
4947         * xml-tdesc.c (fetch_xml_from_file): Properly cast sentinel in
4948         concat call.
4949         * gdb_select.h: Include sys/time.h if sys/select.h is not
4950         available.
4952 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4954         * go32-nat.c: Include "gdbthread.h".
4955         (go32_stop, go32_kill_inferior): Delete the main thread.
4956         (go32_create_inferior): Add it.
4957         (go32_thread_alive, go32_pid_to_str): New.
4958         (init_go32_ops): Register go32_thread_alive and go32_pid_to_str.
4960 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4962         * go32-nat.c (fetch_register, store_register): Pass the regcache
4963         gdbarch to i386_fp_regnum_p and i386_fpc_regnum_p.
4964         (go32_xfer_memory): Change type of myaddr parameter to gdb_byte.
4965         (struct seg_descr, struct seg_descr): pack the whole struct
4966         instead of each member individually.
4968 2008-08-09  Andreas Schwab  <schwab@suse.de>
4970         * python/python.c (_initialize_python): Use unabbreviated commands
4971         in prefix name.
4973 2008-08-09  Daniel Jacobowitz  <dan@codesourcery.com>
4975         * Makefile.in (stamp-h): Also create .deps.
4977 2008-08-09  Tom Tromey  <tromey@redhat.com>
4979         * Makefile.in (generated_files): Add GNULIB_H.
4981 2008-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4983         * solib-pa64.c (pa64_solib_create_inferior_hook): Don't set
4984         DT_HP_DEBUG_PRIVATE.  Add warning if DT_HP_DEBUG_PRIVATE is not set.
4985         Revise comment.
4986         (pa64_current_sos): Remove map private warning warning.
4987         * solib-som.c: Include string.h and sys/utsname.h.
4988         (get_hpux_major_release): New function.
4989         (som_solib_create_inferior_hook): Read dynamic linker header.  Warn
4990         about shared library private mapping on HP-UX 11 and later.  Only force
4991         private mapping of shared libraries on HP-UX 10 and earlier.
4992         (link_map_start): Delete warning.
4994 2008-08-09  Xuepeng Guo  <xuepeng.guo@intel.com>
4995             H.J. Lu  <hongjiu.lu@intel.com>
4996             Mark Kettenis <kettenis@gnu.org>
4998         * amd64-tdep.c (amd64_frame_cache): Add saved_sp_reg.
4999         (amd64_init_frame_cache): Initialize saved_sp_reg.
5000         (amd64_analyze_stack_align): New.
5001         (amd64_analyze_prologue): Call it.
5002         (amd64_frame_cache): Use saved_sp_reg if it is invalid.  Don't set
5003         %rip to 8 when halfway aligning the stack.
5005         * amd64-tdep.h (amd64_regnum): Add AMD64_R9_REGNUM to
5006         AMD64_R14_REGNUM.
5008         * i386-tdep.c (i386_frame_cache): Remove stack_align.  Add
5009         saved_sp_reg.
5010         (i386_alloc_frame_cache): Remove stack_align.  Initialize
5011         saved_sp_reg to -1.
5012         (i386_analyze_stack_align): Rewrite.
5013         (i386_frame_cache): Use saved_sp_reg if it is valid.
5015 2008-08-09  Ulrich Weigand  <uweigand@de.ibm.com>
5017         * target.c: Include "solib.h".
5018         (target_pre_inferior): Call no_shared_libraries.
5019         * infcmd.c (run_command_1): Do not call objfile_purge_solibs
5020         or clear_solib.
5021         (attach_command): Do not call clear_solib.
5023 2008-08-09  Mark Kettenis  <kettenis@gnu.org>
5025         * i386obsd-nat.c (i386obsd_supply_pcb): Supply the right bytes for
5026         the %eip register.
5028 2008-08-08  Tom Tromey  <tromey@redhat.com>
5030         * Makefile.in (python.o): Remove dependencies.  Use COMPILE and
5031         POSTCOMPILE.
5032         (python-utils.o): Likewise.
5034 2008-08-08  Andreas Schwab  <schwab@suse.de>
5036         * corefile.c (_initialize_core): Remove spurious paren from set
5037         gnutarget doc string.
5039 2008-08-08  Luis Machado  <luisgpm@br.ibm.com>
5041         * ppc-linux-nat.c: Include "auxv.h" and "elf/common.h".
5042         Define PPC_FEATURE_BOOKE.
5043         (ppc_linux_get_hwcap): New function.
5044         (ppc_linux_region_ok_for_hw_watchpoint): Handle PowerPC 440
5045         4-bytes alignment restrictions.
5046         (ppc_linux_insert_watchpoint): Handle PowerPC 440-specific
5047         positioning of the read/write flags.
5048         (ppc_linux_watchpoint_addr_within_range): Handle PowerPC 440
5049         4-bytes alignment.
5051 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
5053         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
5055         * win32-nat.c (win32_add_thread): Change thread argument type to
5056         ptid_t.  Adjust.
5057         (win32_add_thread): Adjust.
5058         (win32_delete_thread): Change thread argument type to ptid_t.
5059         Adjust.
5060         (win32_fetch_inferior_registers, win32_store_inferior_registers)
5061         (win32_resume, get_win32_debug_event, get_win32_debug_event)
5062         (win32_wait, win32_pid_to_exec_file, win32_pid_to_str): Adjust.
5063         (init_win32_ops): Put to_magic last.
5064         (win32_win32_thread_alive): Adjust.
5066 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
5068         * remote-m32r-sdi.c (m32r_thread_alive, m32r_pid_to_str): New.
5069         (init_m32r_ops): Register m32r_thread_alive and m32r_pid_to_str.
5071 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
5073         * remote-m32r-sdi.c: Include "gdbthread.h".
5074         (remote_m32r_ptid): New.
5075         (m32r_close): Delete the main thread.
5076         (m32r_resume): Set inferior_ptid toA remote_m32r_ptid. Add the
5077         main thread.
5078         (m32r_kill, m32r_load, sdireset_command): Delete the main thread.
5079         (_initialize_remote_m32r): Initialize remote_m32r_ptid.
5081 2008-08-07  Tom Tromey  <tromey@redhat.com>
5082             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5084         * aclocal.m4, configure: Rebuild.
5085         * configure.in: Call ZW_CREATE_DEPDIR,
5086         ZW_PROG_COMPILER_DEPENDENCIES, AC_PROG_MAKE_SET.
5087         (MAKE, GMAKE): New substs.
5088         * acinclude.m4: Include depstand.m4.
5089         * Makefile.in (DEPMODE, DEPDIR, COMPILE.post, COMPILE.pre,
5090         COMPILE, POSTCOMPILE, depcomp): New variables.
5091         Remove all _h variables.
5092         Remove many .o targets.
5093         ($(srcdir)/copying.c): avoid backslash-newline after comment
5094         sign (@maintainer_mode_true@).
5095         (HFILES_NO_SRCDIR): Regenerate.
5096         (generated_files): New variable.
5097         (all_gdbtk_cflags): Likewise.
5098         (.c.o): Rewrote.
5099         (init.o, version.o, copying.o): Remove.
5100         (distclean): Remove DEPDIR.
5101         (test-cp-name-parser.o, hpux-thread.o, main.o, monitor.o,
5102         printcmd.o, procfs.o, v850ice.o): Rewrite.
5103         (cli-cmds.o, cli-decode.o, cli-dump.o, cli-interp.o, cli-logging.o,
5104         cli-script.o, cli-setshow.o, cli-utils.o): Likewise.
5105         (gdbtk.o, gdbtk-bp.o, gdbtk-cmds.o, gdbtk-hooks.o, gdbtk-interp.o,
5106         gdbtk-main.o, gdbtk-register.o, gdbtk-stack.o, gdbtk-varobj.o,
5107         gdbtk-wrapper.o): Likewise.
5108         (mi-cmd-break.o, mi-cmd-disas.o, mi-cmd-env.o, mi-cmd-file.o,
5109         mi-cmds.o, mi-cmd-stack.o, mi-cmd-target.o, mi-cmd-var.o,
5110         mi-console.o, mi-getopt.o, mi-interp.o, mi-main.o, mi-out.o,
5111         mi-parse.o, mi-symbol-cmds.o, mi-common.o, signals.o, tui.o,
5112         tui-command.o, tui-data.o, tui-disasm.o, tui-file.o, tui-hooks.o,
5113         tui-interp.o, tui-io.o, tui-layout.o, tui-main.o, tui-out.o,
5114         tui-regs.o, tui-source.o, tui-stack.o, tui-win.o, tui-windata.o,
5115         tui-wingeneral.o, tui-winsource.o): Likewise.
5116         (all_object_files): New variable.
5117         ($(all_object_files)): New target.
5118         Include dependency files, when using GNU Make.
5120 2008-08-07  Ulrich Weigand  <uweigand@de.ibm.com>
5122         * spu-tdep.c (info_spu_dma_cmdlist): Only show entries with
5123         the valid bit set.  Ensure display order respects partial
5124         order defined by dependency bits.
5126 2008-08-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5128         * solib-pa64.c (read_dld_descriptor): Return zero if load map is not
5129         setup.
5131 2008-08-06  Mark Kettenis  <kettenis@gnu.org>
5133         * i386obsd-nat.c (i386obsd_supply_pcb): Adjust for changes in
5134         OpenBSD 4.3.
5136 2008-08-06  Vladimir Prus  <vladimir@codesourcery.com>
5137             Tom Tromey  <tromey@redhat.com>
5138             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5139             Doug Evans  <dje@google.com>
5141         * Makefile.in (SUBDIR_PYTHON_OBS, SUBDIR_PYTHON_SRCS,
5142         SUBDIR_PYTHON_DEPS, SUBDIR_PYTHON_LDFLAGS, SUBDIR_PYTHON_CFLAGS,
5143         PYTHON_CFLAGS): New.
5144         (python_h, python_internal_h): New.
5145         (cli-script.o): Depend on python.h
5146         (python.o, python-utils.o): New.
5147         * cli/cli-script.c (print_command_lines): Handle python_control.
5148         (execute_control_command): Handle python_control.
5149         (execute_control_command_untraced): New function.
5150         (while_command): Call execute_control_command_untraced.
5151         (if_command): Likewise.
5152         (get_command_line): Remove static attribute.
5153         (read_next_line): Handle "python".
5154         (recurse_read_control_structure): Handle python_control.
5155         (read_command_lines): Handle python_control.
5156         Include python.h.
5157         * cli/cli-script.h (get_command_line): Add prototype.
5158         (execute_control_command_untraced): Likewise.
5159         * configure.ac: Add --with-python.
5160         * defs.h (enum command_control_type) <python_control>: New
5161         constant.
5162         * python/python-internal.h: New file.
5163         * python/python.c: New file.
5164         * python/python.h: New file.
5165         * python/python-utils.c: New file.
5166         * NEWS: Mention Python scripting support and its new commands.
5168 2008-08-06  Ulrich Weigand  <uweigand@de.ibm.com>
5170         * spu-tdep.c (spu_gdbarch_init): Call set_gdbarch_frame_red_zone_size.
5172 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
5174         * MAINTAINERS (Write After Approval): Add self.
5176 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
5178         * breakpoint.c (hw_breakpoint_used_count): Use breakpoint_enabled.
5179         (insert_breakpoint_locations): Likewise.
5181 2008-08-05  Phil Muldoon  <pmuldoon@redhat.com>
5183         * breakpoint.c (create_longjmp_breakpoint): Remove unused struct
5184         breakpoint.
5185         (set_longjmp_breakpoint): Likewise.
5187 2008-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5189         PR build/2490
5190         * solib-pa64.c: Only compile if both HAVE_ELF_HP_H and __LP64__ are
5191         defined.
5193 2008-08-05  Tom Tromey  <tromey@redhat.com>
5195         * bcache.c (deprecated_bcache_added): Initialize obstack.
5196         (bcache_xmalloc): Don't initialize obstack.
5197         (bcache_xfree): Conditionally free obstack.
5198         (bcache_memory_used): Update.
5200 2008-08-05  Tom Tromey  <tromey@redhat.com>
5202         * symfile.c (add_psymbol_to_bcache): Return a const pointer.  Use
5203         bcache_full.
5204         (append_psymbol_to_list): Accept a const pointer.
5205         (add_psymbol_to_list): Fix const correctness.
5206         * bcache.h: (deprecated_bcache_added, deprecated_bcache): Remove.
5207         (bcache_full): Declare.
5208         * bcache.c (bcache_data, deprecated_bcache): Remove.
5209         (bcache): Use bcache_full.
5210         (bcache_full): Rename from deprecated_bcache_added.  Change return
5211         type.
5213 2008-08-04  Stan Shebs  <stan@codesourcery.com>
5215         * solib-svr4.c (BKPT_AT_SYMBOL): Remove, always defined.
5216         (bkpt_names): Remove SOLIB_BKPT_NAME, never defined.
5217         (enable_break): Remove test of BKPT_AT_SYMBOL.
5219 2008-08-02  Keith Seitz  <keiths@redhat.com>
5221         * acinclude.m4: Include ../config/tcl.m4 to pick up
5222         standard Tcl configury bits.
5223         Remove all Tcl, Tk, Itcl, Itk, etc definitions.
5224         * configure.ac: Don't check if ../itcl exists when building
5225         gdbtk. It could be installed.
5226         Rewrite gdbtk configury to allow for using system-supplied
5227         Tcl and Tk. Gdbtk no longer requires build-time access to
5228         itcl and itk.
5229         * Makefile.in: Remove everything related to itcl and itk.
5230         Rewrite the Tcl bits for gdbtk to correspond to rewrite of
5231         configure.ac.
5232         Remove v850ice.o build rule.
5233         (ALL_TCL_CFLAGS): New convenience defintion. Change all
5234         gdbtk sources to use it.
5235         * configure: Regenerate.
5237 2008-07-31  Stan Shebs  <stan@codesourcery.com>
5239         * coffread.c (coff_symtab_read): Remove FUNCTION_EPILOGUE_SIZE.
5241 2008-07-30  Stan Shebs  <stan@codesourcery.com>
5243         * objfiles.c (TARGET_KEEP_SECTION): Remove.
5244         (add_to_objfile_sections): Remove use.
5246 2008-07-29  Tom Tromey  <tromey@redhat.com>
5248         * cli/cli-decode.c (lookup_cmd_1): Use memcpy.
5249         (lookup_cmd_composition): Likewise.
5251 2008-07-29  Tom Tromey  <tromey@redhat.com>
5253         * cli/cli-cmds.c (edit_command): Remove unused variables.  Delete
5254         dead code.  Fix indentation.
5256 2008-07-29  Stan Shebs  <stan@codesourcery.com>
5258         * main.c (captured_main): Remove long-unused #if 0 blocks.
5260 2008-07-28  Tom Tromey  <tromey@redhat.com>
5262         * annotate.h (deprecated_annotate_starting_hook): Remove.
5263         (deprecated_annotate_stopped_hook): Remove.
5264         (deprecated_annotate_exited_hook): Remove.
5265         * Makefile.in (annotate.o): Depend on observer_h.
5266         * top.c (deprecated_delete_breakpoint_hook): Remove.
5267         (deprecated_create_breakpoint_hook): Likewise.
5268         (deprecated_modify_breakpoint_hook): Likewise.
5269         * interps.c (clear_interpreter_hooks): Update for removed hooks.
5270         * breakpoint.c (mention): Don't call removed hook.
5271         (delete_breakpoint): Likewise.
5272         (disable_breakpoint): Likewise.
5273         (do_enable_breakpoint): Likewise.
5274         * annotate.c: Include observer.h.
5275         (breakpoint_changed): Change type of argument.
5276         (_initialize_annotate): Register observers.
5277         (deprecated_annotate_starting_hook): Remove.
5278         (deprecated_annotate_stopped_hook): Remove.
5279         (deprecated_annotate_exited_hook): Remove.
5280         (annotate_starting): Update for hook removal.
5281         (annotate_stopped): Likewise.
5282         (annotate_exited): Likewise.
5283         * defs.h (deprecated_delete_breakpoint_hook): Remove.
5284         (deprecated_create_breakpoint_hook): Likewise.
5285         (deprecated_modify_breakpoint_hook): Likewise.
5287 2008-07-28  Tom Tromey  <tromey@redhat.com>
5289         * main.c (captured_main): Don't use BEFORE_MAIN_LOOP_HOOK.
5291 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5293         * configure.ac: Check for the GNU/Linux ptrace signature.
5294         * configure: Regenerated.
5296 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5298         * linux-nat.c (resume_callback): Add more debugging output.
5299         (linux_nat_has_pending_sigint): New function, based on
5300         linux_nat_has_pending.
5301         (set_ignore_sigint, maybe_clear_ignore_sigint): New functions.
5302         (stop_wait_callback): Remove flush_mask handling.  Honor
5303         ignore_sigint.  Call maybe_clear_ignore_sigint.  Pass NULL
5304         to recursive calls.
5305         (linux_nat_has_pending, flush_callback): Remove.
5306         (linux_nat_filter_event): Check for ignore_sigint.
5307         (linux_nat_wait): Remove flush_mask support and call to
5308         flush_callback.  Use set_ignore_sigint and maybe_clear_ignore_sigint.
5309         * linux-nat.h (struct lwp_info): Add ignore_sigint field.
5311 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5313         * linux-nat.c (count_events_callback, select_event_lwp_callback): Only
5314         report events from resumed threads.
5316 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5318         * mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
5319         (mips_linux_init_abi): Set tdep->syscall_next_pc.
5320         * mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
5321         mips-tdep.h.
5322         (mips32_next_pc): Handle the syscall instruction.
5323         * mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
5324         from mips-tdep.c.  Add syscall_next_pc to gdbarch_tdep.
5326 2008-07-26  Tom Tromey  <tromey@redhat.com>
5328         PR gdb/1158:
5329         * valops.c (value_struct_elt): Treat function-valued field as a
5330         static method.
5332 2008-07-26  Tom Tromey  <tromey@redhat.com>
5334         PR gdb/1136:
5335         * macroexp.c (get_punctuator) <punctuators>: Rearrange to put
5336         longer tokens first.
5338 2008-07-26  Vladimir Prus  <vladimir@codesourcery.com>
5340         Kill cmd_async_ok.
5341         * cli/cli-decode.h (CMD_ASYNC_OK, set_cmd_async_ok)
5342         (get_cmd_async_ok): Remove.
5343         * cli/cli-decode.c (set_cmd_async_ok, get_cmd_async_ok): Remove.
5344         * cli/cli-cmds.c (init_cli_cmds): Don't use set_cmd_async_ok.
5345         * infcmd.c (_initialize_infcmd): Likewise.
5346         * thread.c (_initialize_thread): Likewise.
5348 2008-07-25  Joseph Myers  <joseph@codesourcery.com>
5350         * mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
5351         128-bit long doubles in even-odd pairs of FPRs.  Do not
5352         right-align float arguments for big-endian.
5353         (mips_n32n64_return_value): Apply return value convention for
5354         structs containing one or two floating-point values to soft-float
5355         as well as hard-float.  Handle 128-bit long doubles in such
5356         structs.
5357         (mips_o32_push_dummy_call): Only skip one integer register for a
5358         float argument passed in an FPR.
5360 2008-07-25  Tom Tromey  <tromey@redhat.com>
5362         * tui/tui-hooks.c: Include observer.h.
5363         (tui_event_default, tui_old_event_hooks, tui_event_hooks):
5364         Remove.
5365         (tui_bp_created_observer, tui_bp_deleted_observer,
5366         tui_bp_modified_observer): New globals.
5367         (tui_install_hooks): Use observers, not events.
5368         (tui_remove_hooks): Likewise.
5369         * mi/mi-cmd-break.c: Include observer.h, not gdb-events.h.
5370         (mi_breakpoint_observers_installed, mi_can_breakpoint_notify): New
5371         globals.
5372         (breakpoint_notify): Check mi_can_breakpoint_notify.
5373         (breakpoint_hooks): Remove.
5374         (mi_cmd_break_insert): Attach observers.  Don't use events.
5375         * tracepoint.c: Include observer.h, not gdb-events.h.
5376         (tracepoint_operation, trace_pass_command): Notify observer.
5377         * interps.c: Don't include gdb-events.h.
5378         (clear_interpreter_hooks): Don't call clear_gdb_event_hooks.
5379         * gdbarch.c: Rebuild.
5380         * gdbarch.sh: Emit include for observer.h, not gdb-events.h.
5381         (deprecated_current_gdbarch_select_hack): Notify observer.
5382         * breakpoint.h: Don't include gdb-events.h.
5383         * breakpoint.c: Don't include gdb-events.h.
5384         (condition_command): Notify observer.
5385         (commands_command): Likewise.
5386         (commands_from_control_command): Likewise.
5387         (mention, delete_breakpoint, set_ignore_count): Likewise.
5388         (disable_breakpoint, do_enable_breakpoint): Likewise.
5389         * Makefile.in (gdb_events_h): Remove.
5390         (breakpoint_h): Update.
5391         (COMMON_OBS): Remove gdb-events.o.
5392         (gdb-events.o): Remove.
5393         (breakpoint.o, gdbarch.o, interps.o, tracepoint.o, gdbtk-bp.o,
5394         gdbtk-hooks.o, mi-cmd-break.o, tui-hooks.o): Update.
5395         * gdb-events.c: Remove.
5396         * gdb-events.h: Remove.
5397         * gdb-events.sh: Remove.
5399 2008-07-24  Pedro Alves  <pedro@codesourcery.com>
5401         * remote.c (remote_threads_extra_info): Don't query the remote
5402         server about info on the internally added main thread.
5404 2008-07-24  Aleksandar Ristovski  <aristovski@qnx.com>
5406         * nto-procfs.c (procfs_attach): Populate initial thread list.
5407         (procfs_wait): Return new pid, built from the inferior status.
5409 2008-07-23  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5411         * configure.ac (CONFIG_INITS): Delete long obsoleted variable.
5412         * configure: Regenerate.
5414 2008-07-23  Aleksandar Ristovski  <aristovski@qnx.com>
5416         * nto-procfs.c (procfs_xfer_memory): Changed signature.
5417         (procfs_resume): Workaround for dereferencing type-punned pointer
5418         warning.
5419         * nto-tdep.c (nto_parse_redirection): Change signature to be const
5420         correct.
5421         * nto-tdep.h (nto_parse_redirection): Likewise.
5423 2008-07-21  Stan Shebs  <stan@codesourcery.com>
5425         Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
5426         * gdbarch.sh: Adjust comment to refer to
5427         in_solib_dynsym_resolve_code().
5428         * gdbarch.h, gdbarch.c: Update.
5429         * solib-osf.c: Ditto.
5430         * infrun.c: Ditto.
5431         (handle_inferior_event): Use in_solib_dynsym_resolve_code
5432         unconditionally.
5433         * config/mips/nm-irix5.h: Remove undef of
5434         IN_SOLIB_DYNSYM_RESOLVE_CODE.
5436 2008-07-21  Tom Tromey  <tromey@redhat.com>
5438         * symfile.c (reread_symbols): Don't pass argument to observer.
5439         * exec.c (exec_file_attach): Don't pass argument to observer.
5440         * ada-lang.c (ada_executable_changed_observer): Remove argument.
5441         * symtab.c (symtab_observer_executable_changed): Remove argument.
5442         * observer.sh: Handle functions with no arguments.
5444 2008-07-20  Sergei Poselenov  <sposelenov@emcraft.com>
5445             Chris Demetriou  <cgd@google.com>
5447         * elfread.c (elf_symfile_segments): Fix the check that each loadable
5448         section fits within an ELF segment to handle ELF segments that hit
5449         the end of the address space.
5451 2008-07-20  Chris Demetriou  <cgd@google.com>
5453         * MAINTAINERS (Write After Approval): Add self.
5455 2008-07-18  Tom Tromey  <tromey@redhat.com>
5457         PR gdb/855:
5458         * NEWS: Add entry for macro commands.
5459         * Makefile.in (macrocmd.o): Add gdb_string.h.
5460         * macroscope.h (user_macro_scope): Declare.
5461         (default_macro_scope): Update documentation.
5462         (macro_user_macros): Declare.
5463         * c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
5464         Use user_macro_scope.
5465         (null_macro_lookup): Remove.
5466         * macrotab.h (macro_callback_fn): Declare.
5467         (macro_for_each): Likewise.
5468         (macro_allow_redefinitions): Likewise.
5469         * macrotab.c (foreach_macro): New function
5470         (macro_for_each): Likewise.
5471         (struct macro_table) <redef_ok>: New field.
5472         (macro_allow_redefinitions): New function.
5473         (new_macro_table): Update.
5474         (macro_define_function): Likewise.
5475         (macro_define_object): Likewise.
5476         * macroscope.c (user_macro_scope): New function.
5477         (default_macro_scope): Use it.
5478         (macro_user_macros): New global.
5479         (standard_macro_lookup): Look in macro_user_macros.
5480         (_initialize_macroscope): New function.
5481         * macroexp.h (macro_is_whitespace, macro_is_digit,
5482         macro_is_identifier_nondigit): Declare.
5483         * macroexp.c (macro_is_whitespace): Rename.  No longer static.
5484         (macro_is_digit): Likewise.
5485         (macro_is_identifier_nondigit): Likewise.
5486         (get_identifier): Update.
5487         (get_pp_number): Likewise.
5488         (get_token): Likewise.
5489         * macrocmd.c (skip_ws): New function.
5490         (extract_identifier): Likewise.
5491         (free_macro_definition_ptr): Likewise.
5492         (user_macros): Remove.
5493         (macro_define_command): Implement.
5494         (_initialize_macrocmd): Update.
5495         (macro_undef_command): Implement.
5496         (print_one_macro): New function.
5497         (macro_list_command): Implement.
5499 2008-07-18  Joseph Myers  <joseph@codesourcery.com>
5501         * configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
5502         in BFD ELF check.
5503         * configure: Regenerate.
5505 2008-07-17  Paul Pluzhnikov  <ppluzhnikov@google.com>
5507         * auxv.c (fprint_target_auxv): Stop at AT_NULL.
5509 2008-07-15  Andreas Schwab  <schwab@suse.de>
5511         * valops.c (value_cast_pointers): Follow typedefs when checking
5512         result of coercion.
5514 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5516         * block.c (block_function): Renamed to ...
5517         (block_linkage_function): ... this.  All callers changed.
5518         * block.h (block_function): Renamed to ...
5519         (block_linkage_function): ... this.
5521 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5523         * mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.
5525 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5527         * frame.c (frame_sp_unwind): Delete.
5528         (get_frame_sp): Do not use it.
5529         * frame.h (frame_sp_unwind): Delete prototype.
5531 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5533         * ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.
5535 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5537         * dwarf2-frame.c (dwarf2_frame_cache): Update comment.
5538         * frame.c (frame_unwind_address_in_block): Delete.
5539         (get_frame_address_in_block): Do not use it.  Check the type
5540         of the next frame first.
5541         (frame_cleanup_after_sniffer): Update comment.
5542         * frame.h (frame_unwind_address_in_block): Delete prototype.
5543         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
5545 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5547         * frame.c (frame_func_unwind): Delete.
5548         (get_frame_func): Do not use it.
5549         * frame.h (frame_func_unwind): Delete prototype.
5550         * hppa-tdep.c (hppa_frame_cache): Update comment.
5551         * rs6000-tdep.c (rs6000_frame_cache): Update comment.
5553 2008-07-14  Stan Shebs  <stan@codesourcery.com>
5555         * remote-sim.c (init_gdbsim_ops): Remove
5556         TARGET_REDEFINE_DEFAULT_OPS.
5558 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5560         * findvar.c (read_var_value): Remove unused variable.
5562 2008-07-15  Luis Machado  <luisgpm@br.ibm.com>
5564         * infrun.c (handle_inferior_event): Tag threads as stopped
5565         before inserting breakpoints.
5567 2008-07-15  Hui Zhu  <teawater@gmail.com>
5569         * MAINTAINERS: Added myself to section Write After Approval.
5571 2008-07-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
5573         PR gdb/2477
5574         * cp-abi.c (value_virtual_fn_field): Handle invalid pointers.
5576 2008-07-14  Pedro Alves  <pedro@codesourcery.com>
5578         * i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
5579         (i386_dicos_push_dummy_code): New.
5580         (i386_dicos_init_abi): Don't register i386_dicos_frame_align.
5581         Register i386_dicos_push_dummy_code.
5583 2008-07-14  Markus Deuling  <deuling@de.ibm.com>
5585         * mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
5586         (mips_n32n64_push_dummy_call, mips_o64_return_value)
5587         (mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
5589         (MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
5590         (fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
5591         (mips_n32n64_fp_arg_chunk_p): Update caller.
5593         (mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
5594         (mips_n32n64_push_dummy_call): Update caller.
5596         (MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
5597         current_gdbarch.
5598         (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
5599         (mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
5602         (MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
5603         current_gdbarch.
5604         (mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
5605         (mips_o64_push_dummy_call): Update caller.
5607         (MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
5608         (fp_register_arg_p, mips_dump_tdep): Update caller.
5610         (set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
5611         (mips16_scan_prologue, mips32_scan_prologue): Update caller.
5613         (reset_saved_regs): Make static.  Add gdbarch as parameter.  Replace
5614         current_gdbarch.
5615         (mips32_scan_prologue): Update caller.
5617         (heuristic_proc_start): Add gdbarch as parameter. Replace
5618         current_gdbarch.
5619         (mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
5621         * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
5622         (mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
5623         the current architecture. Update call to getregs_supplies.
5624         (getregs_supplies): Add gdbarch as parameter and replace
5625         current_gdbarch.
5627         * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
5628         get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
5629         NBSD_MIPS_JB_ELEMENT_SIZE.
5630         (NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
5631         replace current_gdbarch.
5633         * remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
5634         current_gdbarch.
5635         (mips_fetch_registers, mips_store_registers): Update call
5636         to mips_map_regno.
5637         (mips_load): Use get_regcache_arch to get at the current_architecture
5638         and replace current_gdbarch.
5640 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5642         * thread.c (restore_selected_frame): On fail to restore, select
5643         the innermost frame, and don't crash when warning the user.
5645 2008-07-13  Hui Zhu  <teawater@gmail.com>
5647         * symtab.c (expand_line_sal): Fix a memory leak.
5649 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5651         * utils.c (struct continuation): Define as inheriting struct
5652         cleanup.
5653         (add_continuation, do_all_continuations)
5654         (discard_all_continuations, add_intermediate_continuation)
5655         (do_all_intermediate_continuations)
5656         (discard_all_intermediate_continuations): Adjust.
5658 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5660         Skip varobj in running threads.
5661         * mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
5662         thread is not stopped, skip the varobj.
5663         * Makefile.in: Update dependencies.
5665 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5667         Enable all commands while inferiour is running
5668         * mi/mi-main.c (mi_cmd_execute): Don't check if
5669         inferiour is executing.
5671 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5673         Allow all CLI command even if target is executing.
5674         * gdb/top.c (execute_command_1): Don't check if the inferiour
5675         is running.
5677 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5679         * mi/mi-main.c (mi_cmd_execute): Remove unused variable.
5680         Fix printing of frame, when frame is wrong.
5682 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5684         * spu-tdep.c (spu_frame_unwind_cache): Do not error if
5685         backchain is unreadable.
5687 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5689         * spu-linux-nat.c: Include "gdbthread.h".
5690         (spu_child_post_startup_inferior): Register main thread.
5691         (spu_child_post_attach): Likewise.
5692         * Makefile.in (spu-linux-nat.o): Update dependencies.
5694 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5696         Rewrite continuations internals on top of cleanups and plug
5697         continuation arguments leaks.
5699         * defs.h (struct continuation): Make it opaque.
5700         (add_continuation, add_intermediate_continuation): Drop the int
5701         argument of the continuation hook argument.  Add
5702         continuation_free_args argument.
5703         (do_all_continuations, do_all_intermediate_continuations): Drop
5704         the error_p argument.
5706         * utils.c (add_continuation): Drop the int argument of the
5707         continuation hook argument.  Add continuation_free_args argument.
5708         Reimplement on top of cleanups.
5709         (do_all_continuations): Drop error argument.  Reimplement on top
5710         of cleanups.
5711         (discard_all_continuations): Reimplement on top of cleanups.
5712         (add_intermediate_continuation): Drop the int argument of the
5713         continuation hook argument.  Add continuation_free_args argument.
5714         Reimplement on top of cleanups.
5715         (do_all_intermediate_continuations): Drop error argument.
5716         Reimplement on top of cleanups.
5717         (discard_all_intermediate_continuations): Reimplement on top of
5718         cleanups.
5720         * breakpoint.c (until_break_command_continuation): Drop error
5721         argument.  Add xfree as continuation argument deleter.
5723         * inf-loop.c (inferior_event_handler): On error, discard all
5724         continuations.  Adjust to new do_all_intermediate_continuations
5725         and do_all_continuations interfaces.
5727         * infcmd.c (step_1_continuation): Drop error_p argument.  Adjust.
5728         Pass xfree as continuation argument deleter.
5729         (finish_command_continuation): Drop error_p argument.  Adjust.
5730         (finish_command_continuation_free_arg): New.
5731         (finish_command): Pass finish_command_continuation_free_arg as
5732         continuation argument deleter.  Adjust to new do_all_continuations
5733         interfaces.
5734         (attach_command_continuation): Drop error_p argument.
5735         (attach_command_continuation_free_args): New.
5736         (attach_command): Pass attach_command_continuation_free_args as
5737         continuation argument deleter.
5739         * interps.c (interp_set): Adjust to new do_all_continuations
5740         interfaces.
5742         * event-top.c (stdin_event_handler): In error, also discard the
5743         intermediate continuations.
5745 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5747         Replace struct continuation_args by void* and per command structs.
5749         * top.c (execute_command): Remove unused arg1 and arg2 locals.
5751         * breakpoint.c (struct until_break_command_continuation_args):
5752         New.
5753         (until_break_command_continuation): Take a void* instead of a
5754         continuations_arg.  Adjust.
5755         (until_break_command): Adjust to use struct
5756         until_break_command_continuation_args instead of struct
5757         continuation_arg.
5759         * infcmd.c (struct step_1_continuation_args): New.
5760         (step_1_continuation): Take a void* instead of a
5761         continuations_arg.  Adjust to use struct step_1_continuation_args.
5762         (step_once): Adjust to use struct step_1_continuation_args.
5764         (struct finish_command_continuation_args): New.
5765         (finish_command_continuation): Take a void* instead of a
5766         continuations_arg.  Adjust to use struct
5767         finish_command_continuation_args.
5768         (finish_command): Adjust to use struct
5769         finish_command_continuation_args.
5770         (struct attach_command_continuation_args): New.
5771         (attach_command_continuation): Take a void* instead of a
5772         continuations_arg.  Adjust to use struct
5773         attach_command_continuation_args.
5774         (attach_command): Adjust to use struct
5775         attach_command_continuation_args.
5777         * defs.h (struct continuation_arg): Delete.
5778         (struct continuation): Replace the struct continuation_arg*
5779         parameter of continuation_hook by a void*.  Replace "arg_list"
5780         member by a new "args" member with void* type.
5781         (add_continuation, add_intermediate_continuation): Replace struct
5782         continuation_arg type usages by void* usages.
5784         * utils.c (add_continuation, do_all_continuations)
5785         (add_intermediate_continuation)
5786         (do_all_intermediate_continuations): Replace struct
5787         continuation_arg type usages by void* usages.  Pass "args" instead
5788         of "arg_list".
5790 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5792         * infrun.c (struct thread_stepping_state): Delete sal member.
5793         (init_thread_stepping_state): Add local sal.  Use it instead of
5794         tss->sal.
5795         (handle_inferior_event): New local stop_pc_sal.  Use it instead of
5796         tss->sal.
5797         (step_into_function): Add local stop_func_sal.  Use it instead of
5798         tss->sal.
5800 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5802         Implement -exec-continue/-exec-interrupt --all.
5803         * infcmd.c (continue_1): New, extracted from
5804         (continue_command): ...here.
5805         (interrupt_target_1): New, extracted from
5806         (interrupt_target_command): ...here.
5807         * inferior.h (continue_1, interrupt_target_1): New.
5808         * mi/mi-main.c (mi_cmd_exec_continue)
5809         (mi_cmd_exec_interrupt): Handle --all.
5811 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5813         Implement --thread and --frame.
5814         * gdbthread.h (find_thread_id): Declare.
5815         * thread.c (find_thread_id): Make non-static.
5816         * mi/mi-main.c (mi_cmd_execute): Switch to the right
5817         thread and frame, if necessary.
5818         * mi/mi-parse.c (mi_parse): Handle --thread and --frame.
5819         * mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
5821 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5823         * infrun.c (resume): Discard cleanups on early exit path.
5825 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5827         * infrun.c (normal_stop): For MI, report which threads
5828         were stopped.
5830 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5832         Report thread state in -thread-info output.
5833         * thread.c (print_thread_info): Add new field "state".
5835 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5837         * infrun.c (handle_inferior_event): Also ignore a
5838         TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
5840 2008-07-11  Tom Tromey  <tromey@redhat.com>
5842         * completer.c (complete_line_internal): New function, from
5843         complete_line.  Add 'for_help' parameter.
5844         (complete_line): Use it.
5845         (command_completer): Move later.  Rewrite.
5847 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5849         * thread.c (thread_apply_command): Move making the cleanup out of
5850         the loop.
5852 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5854         Exited threads.
5856         * thread.c (enum thread_state): New.
5857         (thread_state main_thread_running): Delete, in favor of...
5858         (thread_state main_thread_state): ... this.  Update throughout.
5859         (clear_thread_inferior_resources): New, split from free_thread.
5860         (free_thread): Call clear_thread_inferior_resources.
5861         (init_thread_list): Set main thread to stopped state.
5862         (add_thread_silent): Take care of PTID reuses.
5863         (delete_thread): If deleting inferior_ptid or a thread with
5864         refcount > 0, mark it as exited, but still keep it in the list.
5865         Only notify of thread exits, if we haven't done so yet.
5866         (iterate_over_threads): Make it safe to delete threads while
5867         iterating over them.
5868         (do_captured_list_thread_ids): Don't account for exited threads.
5869         (thread_alive): Check for the THREAD_EXITED state, and don't set
5870         ptid to -1 on exited threads.
5871         (set_running): Update to account for extra possible states.
5872         (is_thread_state): New.
5873         (is_stopped, is_exited): New.
5874         (is_running): Implement in terms of is_thread_state.
5875         (any_running): Update.
5876         (print_thread_info): Update.  Account for exited threads.  Don't
5877         warn about missed frame restoring here, its done in the cleanup.
5878         (switch_to_thread): Don't read from a thread that has gone.
5879         (restore_current_thread): In non-stop mode, do a full context
5880         switch.
5881         (restore_selected_frame): Add a frame_level argument.  Rewrite.
5882         (struct current_thread_cleanup): Add selected_frame_level and
5883         was_stopped members.
5884         (do_restore_current_thread_cleanup): Check if thread was stopped
5885         and still is, and if the target has registers, stack and memory
5886         before restoring the selected frame.  Don't delete the cleanup
5887         argument here.
5888         (restore_current_thread_cleanup_dtor): New.
5889         (make_cleanup_restore_current_thread): Remove all arguments.
5890         Rewrite.
5891         (thread_apply_all_command): Update.  Prune threads.
5892         (thread_apply_command): Update.
5893         (thread_command): Account for currently selected exited thread.
5894         (do_captured_thread_select): Check for a running thread.  Prune
5895         threads.
5896         (_initialize_thread): Make "info threads", "thread", "thread
5897         apply", and "thread apply all" appliable without a selected thread.
5898         * gdbthread.h (struct thread_info): Replace running_ by state_.
5899         Add refcount.
5900         (is_exited, is_stopped): Declare.
5901         (make_cleanup_restore_current_thread): Remove all arguments.
5902         * infrun.c: Include "event-top.h".
5903         (fetch_inferior_event): In non-stop mode, restore selected thread
5904         and frame after handling the event and running breakpoint
5905         commands.  Display GDB prompt if needed.
5906         (normal_stop): In non-stop mode, don't print thread switching
5907         notice.
5908         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
5909         (get_cmd_no_selected_thread_ok): New.
5910         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
5911         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
5912         Declare.
5913         * cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
5914         no-selected-thread ok.
5915         * top.c (execute_command): Check for non no-selected-thread-ok
5916         commands.
5917         * linux-nat.c (struct saved_ptids, threads_to_delete)
5918         (record_dead_thread, prune_lwps): Delete.
5919         (exit_lwp): Unconditionally delete thread.
5920         (linux_nat_resume): Remove prune_lwps call.
5921         * infcmd.c (proceed_thread_callback): Check if !is_stopped instead
5922         of is_running.  Adjust to make_cleanup_restore_current_thread
5923         interface change.
5924         * mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
5925         selected thread has exited.
5926         * inf-loop.c (inferior_event_handler): Don't display the prompt
5927         here.
5928         * varobj.c (c_value_of_root): Update.
5929         * defs.h (make_cleanup_dtor): Declare.
5930         * utils.c (make_cleanup_dtor): New.
5932         * Makefile.in (infrun.o): Depend on $(event_top_h).
5934 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5936         Add "continue -a" and "interrupt -a" options for non-stop mode.
5938         * infcmd.c (proceed_thread_callback, do_context_switch_to): New.
5939         (continue_command): Add "-a" option.
5940         (interrupt_target_command): Add "-a" option.
5941         (_initialize_infcmd): Add extend help of continue and interrupt
5942         command to mention the new "-a" option.  Mark "continue" async ok.
5944 2008-07-10  Doug Evans  <dje@google.com>
5946         Add "set print symbol-loading on|off".
5947         * NEWS: Document new option.
5948         * symfile.h (print_symbol_loading): Declare.
5949         * symfile.c (print_symbol_loading): New global.
5950         (symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
5951         from ..." if print_symbol_loading.
5952         (_initialize_symfile): Add set/show print symbol-loading.
5953         * solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
5954         if print_symbol_loading.
5956 2008-07-10  Pedro Alves  <pedro@codesourcery.com>
5958         Non-stop linux native.
5960         * linux-nat.c (linux_test_for_tracefork): Block events while we're
5961         here.
5962         (get_pending_status): Implement non-stop mode.
5963         (linux_nat_detach): Stop threads before detaching.
5964         (linux_nat_resume): In non-stop mode, always resume only a single
5965         PTID.
5966         (linux_handle_extended_wait): On a clone event, in non-stop mode,
5967         add new lwp to GDB's thread table, and mark as running, executing
5968         and stopped appropriately.
5969         (linux_nat_filter_event): Don't assume there are other running
5970         threads when a thread exits.
5971         (linux_nat_wait): Mark the main thread as running and executing.
5972         In non-stop mode, don't stop all lwps.
5973         (linux_nat_kill): Stop lwps before killing them.
5974         (linux_nat_thread_alive): Use signal 0 to detect if a thread is
5975         alive.
5976         (send_sigint_callback): New.
5977         (linux_nat_stop): New.
5978         (linux_nat_add_target): Set to_stop to linux_nat_stop.
5980         * linux-nat.h (thread_db_attach_lwp): Declare.
5982         * linux-thread-db.c (thread_get_info_callback): Check for new
5983         threads if we have none.
5984         (thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
5985         stopped lwp.  Check for new threads if we have none.
5986         (thread_db_attach_lwp): New.
5987         (thread_db_init): Set proc_handle.pid to inferior_ptid.
5988         (check_event): Set proc_handle.pid to the stopped lwp.
5989         (thread_db_find_new_threads): Set proc_handle.pid to any stopped
5990         lwp available, bail out if there is none.
5992         * linux-fork.c (linux_fork_killall): Use SIGKILL instead of
5993         PTRACE_KILL.
5995 2008-07-10  Kevin Buettner  <kevinb@redhat.com>
5997         * rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
5998         `current_pc' from CORE_ADDR to ULONGEST.
6000         * remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
6001         gdbsim_stop().
6003 2008-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
6005         * NEWS (New commands): Mention "set disable-randomization".
6006         * configure.ac: Add check for HAVE_PERSONALITY and
6007         HAVE_DECL_ADDR_NO_RANDOMIZE.
6008         * configure, config.in: Regenerate.
6009         * linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>.
6010         [HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set
6011         ADDR_NO_RANDOMIZE.
6012         (disable_randomization, show_disable_randomization)
6013         (set_disable_randomization): New.
6014         (linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables
6015         PERSONALITY_ORIG and PERSONALITY_SET.  Disable randomization upon the
6016         variable DISABLE_RANDOMIZATION.
6017         (_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable
6018         DISABLE_RANDOMIZATION.
6020 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6022         Adjust all targets to new target_stop interface.
6024         * gnu-nat.c (gnu_stop): Add ptid argument.
6025         * go32-nat.c (go32_stop): Add ptid argument.
6026         (go32_create_inferior): Pass inferior_ptid to go32_stop.
6027         * hpux-thread.c (hpux_thread_stop): Add ptid argument.
6028         * monitor.c (monitor_stop): Add ptid argument.
6029         (monitor_open): Pass inferior_ptid to monitor_stop.
6030         (monitor_interrupt): Pass inferior_ptid to target_stop.
6031         (monitor_stop): Add ptid argument.
6032         * nto-procfs.c (nto_interrupt): Pass inferior_ptid to target_stop.
6033         (procfs_create_inferior): Add ptid argument.
6034         * procfs.c (procfs_stop): Add ptid argument.
6035         * remote-m32r-sdi.c (m32r_stop): Add ptid argument.
6036         * remote-sim.c (gdbsim_stop): Add ptid argument.
6037         * sol-thread.c (sol_thread_stop): Add ptid argument.
6038         * win32-nat.c (win32_stop): Add ptid argument.
6040 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6042         Non-stop inferior control.
6044         * infrun.c (resume): In non-stop mode, always resume just one
6045         thread.
6046         (proceed): Don't call prepare_to_proceed in non-stop mode.
6047         (fetch_inferior_event): In non-stop mode, switch context before
6048         handling the event.
6049         (error_is_running, ensure_not_running): New.
6050         (handle_inferior_event): In non-stop mode: Mark only the event
6051         thread as stopped.  Require that the target module manages adding
6052         threads to the thread list.  Assert that there isn't a
6053         deferred_step_ptid set.  Don't switch to infwait_thread_hop_state.
6054         (normal_stop): Only mark not-running if inferior hasn't exited.
6055         In non-stop mode, only mark the event thread.
6057         * thread.c:Include "cli/cli-decode.h".
6058         (print_thread_info): Don't read from a running thread.
6059         Output "(running)" if thread is running.
6060         (switch_to_thread): Don't read stop_pc if thread is executing.
6061         (do_restore_current_thread_cleanup): Don't write to a running
6062         thread.
6063         (thread_apply_all_command): Don't read from a running thread.  In
6064         non-stop mode, do a full context-switch instead of just switching
6065         threads.
6066         (thread_apply_command): In non-stop mode, do a full context-switch
6067         instead of just switching threads.
6068         (do_captured_thread_select): Likewise.  Inform user if selected
6069         thread is running.
6070         (_initialize_thread): Mark "info threads" and "thread" and
6071         async_ok.
6073         * inf-loop.c (inferior_event_handler): In non-stop mode, don't
6074         unregister the target from the event loop.
6076         * infcmd.c (continue_command, step_1, jump_command)
6077         (signal_command): Ensure the selected thread isn't running.
6078         (interrupt_target_command): In non-stop mode, interrupt only the
6079         selected thread.
6081         * inferior.h (error_is_running, ensure_not_running): Declare.
6083         * target.h (struct target_ops): Add ptid argument to the to_stop
6084         member.
6085         (target_stop): Add ptid_t argument.
6087         * target.c (update_current_target): Add ptid argument to to_stop's
6088         type.
6089         (debug_to_stop): Add ptid_t argument.
6090         (debug_to_rcmd): Set to_stop_ptid.
6092         * remote.c (remote_stop): Add ptid_t argument.
6093         (async_remote_interrupt): Add inferior_ptid to target_stop.
6094         * inf-ptrace.c (inf_ptrace_stop): Add ptid argument.
6096         * Makefile.in (thread.o): Depend on $(cli_decode_h).
6098 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6100         Don't rely on ecs->wait_for_more.
6102         * infrun.c (proceed): Clear the stepping state, set
6103         previous_inferior_ptid and clear infwait state.
6104         (wait_for_inferior): Don't clear the stepping state, set
6105         previous_inferior_ptid, or clear the infwait state here.
6106         (fetch_inferior_event): Don't clear the stepping state, set
6107         previous_inferior_ptid, or clear the infwait state here.  Don't
6108         condition on wait_for_more.
6110 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6112         Refactor infrun a bit.
6114         * infrun.c (currently_stepping): Take a struct
6115         thread_stepping_state instead of an execution_control_state.
6116         (struct thread_stepping_state): New, split from
6117         execution_control_state.
6118         (gtss, tss): New globals.
6119         (proceed): Clear the stepping state, set previous_inferior_ptid
6120         and clear infwait state.
6121         (init_wait_for_inferior): Clear the stepping state,
6122         previous_inferior_ptid and infwait state.
6123         (waiton_ptid, infwait_state): New, split from
6124         execution_control_state.
6125         (struct execution_control_state): Members that persist through
6126         events moved out to either struct thred_stepping_state or made
6127         global.  Deleted unneeded wp, saved_inferior_ptid, tmpstatus.
6128         (wait_for_inferior, fetch_inferior_event): Use local
6129         execution_control_state.  Update to execution_control_state split.
6130         (init_execution_control_state): Adjust.
6131         (init_thread_stepping_state): New, extracted from
6132         init_execution_control_state.
6133         (context_switch): Take a ptid instead of an
6134         execution_control_state.
6135         (context_switch_to): Adjust.
6136         (adjust_pc_after_break): Adjust.
6137         (init_infwait_state): New.
6138         (handle_inferior_event): Adjust.
6140 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6141             Vladimir Prus  <vladimir@codesourcery.com>
6143         Per-thread commands.
6145         * gdbthread.h: Remove unneeded forward declarations.
6146         Include "inferior.h".
6147         (struct thread_info): Add continuations,
6148         intermediate_continuations, proceed_to_finish, step_over_calls,
6149         stop_step, step_multi and stop_signal members.
6150         (save_infrun_state): Add continuations,
6151         intermediate_continuations, proceed_to_finish, step_over_calls,
6152         stop_step, step_multi, stop_signal and stop_bpstat parameters.
6153         (load_infrun_state): Add continuations,
6154         intermediate_continuations, proceed_to_finish, step_over_calls,
6155         stop_step, step_multi, stop_signal and stop_bpstat parameters.
6157         * thread.c (load_infrun_state): In non-stop mode, load
6158         continuations, intermediate_continuations, proceed_to_finish,
6159         step_over_calls, stop_step, step_multi and stop_signal.
6160         (save_infrun_state): Store continuations,
6161         intermediate_continuations, proceed_to_finish, step_over_calls,
6162         stop_step, step_multi, stop_signal and stop_bpstat.
6163         (save_infrun_state): Store continuations,
6164         intermediate_continuations, proceed_to_finish, step_over_calls,
6165         stop_step, step_multi, stop_signal and stop_bpstat.
6166         (free_thread): Clear The thread's stop_bpstat.
6168         * inferior.h (context_switch_to): Declare.
6170         * infrun.c (ecss): New global.
6171         (context_switch): Context switch continuations,
6172         intermediate_continuations, proceed_to_finish, step_over_calls,
6173         stop_step, step_multi, stop_signal and stop_bpstat.
6174         (wait_for_inferior): Use global ecss.
6175         (async_ecss, async_ecs): Delete.
6176         (fetch_inferior_event): Use global ecss.
6177         (context_switch_to): New.
6179         * top.c (execute_command): In non-stop, only check if the current
6180         thread is running, in all-stop, check if there's any thread
6181         running.
6183         * breakpoint.c (bpstat_remove_breakpoint): New.
6184         (bpstat_remove_breakpoint_callback): New.
6185         (delete_breakpoint): Clear the stop_bpstats of all threads.
6187         * mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
6188         current thread is running, in all-stop, check if there's any
6189         thread running.
6191         * Makefile.in (gdbthread_h): Depend on $(inferior_h).
6193 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6195         Add non_stop global.
6197         * inferior.h (non_stop): Declare.
6198         * infrun.c (non_stop, non_stop_1): New.
6199         (set_non_stop, show_non_stop): New.
6200         (_initialize_infrun): Add "set/show non-stop" command.
6202 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6204         Adjust fork/vfork/exec to pass ptids around.
6206         * target.h (struct target_waitstatus): Store related_pid as a ptid.
6207         (inferior_has_forked, inferior_has_vforked, inferior_has_execd):
6208         Take a ptid_t.
6209         * breakpoint.h (struct breakpoint): Change forked_inferior_pid
6210         type to ptid.
6211         * breakpoint.c (print_it_typical, bpstat_check_location)
6212         (print_one_breakpoint_location, set_raw_breakpoint_without_location)
6213         (create_fork_vfork_event_catchpoint): Adjust.
6214         * infrun.c (fork_event): Change parent_pid and child_pid types to
6215         ptid.
6216         (follow_exec, inferior_has_forked, inferior_has_vforked)
6217         (inferior_has_execd): Take a ptid_t and don't trim it.
6218         * linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
6219         * linux-nat.c (linux_child_follow_fork): Adjust.
6220         * inf-ptrace.c (inf_ptrace_wait): Adjust.
6221         * inf-ttrace.c (inf_ttrace_wait): Adjust.
6222         * win32-nat.c (get_win32_debug_event): Don't set related_pid.
6224 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6226         Add "executing" property to threads.
6228         * inferior.h (target_executing): Delete.
6229         * gdbthread.h (struct thread_info): Add executing_ field.
6230         (set_executing, is_executing): New.
6231         * thread.c (main_thread_executing): New.
6232         (init_thread_list): Clear it and also main_thread_running.
6233         (is_running): Return false if target has no execution.
6234         (any_running, is_executing, set_executing): New.
6236         * top.c: Include "gdbthread.h".
6237         (target_executing): Delete.
6238         (execute_command): Replace target_executing check by any_running.
6239         * event-top.c: Include "gdbthread.h".
6240         (display_gdb_prompt, command_handler): Replace target_executing by
6241         is_running.
6242         * inf-loop.c: Include "gdbthread.h".  Don't mark as not executing
6243         here.  Replace target_executing by is_running.
6244         * infrun.c (handle_inferior_event): Mark all threads as
6245         not-executing.
6246         * linux-nat.c (linux_nat_resume): Don't mark thread as executing
6247         here.
6248         * stack.c (get_selected_block): Return null if inferior is
6249         executing.
6250         * target.c (target_resume): Mark resumed ptid as executing.
6251         * breakpoint.c (until_break_command): Replace target_executing
6252         check by is_executing.
6253         * remote.c (remote_async_resume): Don't mark inferior as executing
6254         here.
6255         * mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
6256         by any_running.
6258         * mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
6259         (mi_execute_async_cli_command): Replace target_executing by
6260         is_running.
6262         * frame.c (get_current_frame): Error out if the current thread is
6263         executing.
6264         (has_stack_frames): New.
6265         (get_selected_frame, deprecated_safe_get_selected_frame): Check
6266         has_stack_frames.
6268         * Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
6269         $(gdbthread_h).
6271 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6273         * symfile.c (load_command): Reopen the exec file and reread
6274         symbols before anything else.
6276 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6278         * remote-sim.c: Include gdbthread.h.
6279         (remote_sim_ptid): New global.
6280         (gdbsim_create_inferior): Silently add the main task to GDB's
6281         thread list.
6282         (gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
6283         task from GDB's thread list.
6284         (gdbsim_resume): Adjust to use remote_sim_ptid.
6285         (gdbsim_thread_alive, gdbsim_pid_to_str): New.
6286         (init_gdbsim_ops): Register gdbsim_thread_alive and
6287         gdbsim_pid_to_str.
6288         (_initialize_remote_sim): Initialize remote_sim_ptid.
6289         * Makefile.in (remote-sim.o): Depend on $(gdbthread_h).
6291 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6293         * monitor (monitor_ptid): New global.
6294         (monitor_open): Silently add the main task to GDB's thread list.
6295         (monitor_close, monitor_mourn_inferior): Silently delete the main
6296         task from GDB's thread list.
6297         (monitor_thread_alive, monitor_pid_to_str): New.
6298         (init_base_monitor_ops): Register monitor_thread_alive and
6299         monitor_pid_to_str.
6300         (_initialize_remote_monitors): Initialize monitor_ptid.
6302         * gdbthread.h (delete_thread_silent): Declare.
6303         * thread.c (delete_thread): Rename to ...
6304         (delete_thread_1): ... this.  Add "silent" parameter.  If silent,
6305         don't do exit notifications.
6306         (delete_thread, delete_thread_silent): New, as wrappers to
6307         delete_thread_1.
6309 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6311         * breakpoint.c (update_global_location_list): Add boolean
6312         "should_insert" argument.  Only insert locations if caller told it
6313         too.
6314         (update_global_location_list_nothrow): Add boolean "should_insert"
6315         argument.  Pass it to update_global_location_list.
6316         (insert_breakpoints, create_longjmp_breakpoint)
6317         (create_overlay_event_breakpoint, enable_overlay_breakpoints)
6318         (create_thread_event_breakpoint, create_solib_event_breakpoint)
6319         (create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
6320         (enable_watchpoints_after_interactive_call_stop)
6321         (set_momentary_breakpoint, create_breakpoints)
6322         (break_command_really, watch_command_1)
6323         (create_ada_exception_breakpoint, update_breakpoint_locations)
6324         (do_enable_breakpoint, enable_command): Pass true to
6325         update_global_location_list.
6326         (bpstat_stop_status, disable_overlay_breakpoints)
6327         (disable_watchpoints_before_interactive_call_start)
6328         (delete_breakpoint, disable_breakpoint, disable_command): Pass
6329         false to update_global_location_list.
6330         (update_breakpoints_after_exec): Don't temporarily disable
6331         always-inserted mode.
6333 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6335         * breakpoint.c (mark_breakpoints_out): Make public.
6336         (update_breakpoints_after_exec): Don't call mark_breakpoints_out
6337         here.  Update comment.
6338         * breakpoint.h (mark_breakpoints_out): Declare.
6340         * linux-nat.c (linux_handle_extended_wait): On
6341         TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
6342         * inf-ttrace.c (inf_ttrace_wait): Likewise.
6344 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6346         * infrun.c (follow_exec): Reset shared libraries before adding the
6347         main exec file.
6349 2008-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6351         * breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.
6353 2008-07-07  Pedro Alves  <pedro@codesourcery.com>
6355         * i386-dicos-tdep.c: Include "inferior.h".
6356         (i386_dicos_frame_align): New.
6357         (i386_dicos_init_abi): Register i386_dicos_frame_align.  Set call
6358         dummy location ON_STACK.
6359         * Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).
6361 2008-07-07  Joel Brobecker  <brobecker@adacore.com>
6363         * gstdint.h: New file.
6365 2008-07-05  Vladimir Prus  <vladimir@codesourcery.com>
6367         * mi/mi-interp.c (mi_on_resume): Don't try to report
6368         resumed thread it the thread list is empty.
6370 2008-07-05  Pierre Muller  <muller@ics.u-strasbg.fr>
6372         * cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
6373         completer for set to filename_completer.
6375         NEWS: Mention it.
6377 2008-07-04  Vladimir Prus  <vladimir@codesourcery.com>
6379         Implement -target-attach.
6380         * mi/mi-cmds.c (mi_cmds): Forward -target-attach to CLI attach.
6382 2008-06-21  Hui Zhu  <teawater@gmail.com>
6384         * target-descriptions.c (maint_print_c_tdesc_cmd): Fix a memory leak.
6386 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6388         * config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.
6389         * config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete.
6391         * target.h (struct target_ops): Add to_attach_no_wait member.
6392         (target_attach_no_wait): New.
6393         * target.c (update_current_target): Inherit to_attach_no_wait.
6395         * infcmd.c: Replace ATTACH_NO_WAIT compile time check by
6396         target_attach_no_wait runtime check.
6398         * gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops.
6399         * win32-nat.c (init_win32_ops): Set to_attach_no_wait in
6400         win32_ops.
6402 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6404         * i386-tdep.c (i386_displaced_step_fixup): Condition log printing
6405         on debug_displaced being set.
6407 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6409         * frame.c (get_prev_frame_1): Call frame_unwind_find_by_frame
6410         directly instead of get_frame_id.
6412 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6414         * rs6000-tdep.c (ppc_displaced_step_fixup): New function.
6415         (deal_with_atomic_sequence): Update BC masks.
6416         (rs6000_gdbarch_init): Init displaced stepping infra-structure.
6417         Define BRANCH_MASK, B_INSN, BC_INSN, BXL_INSN, BP_MASK and BP_INSN.
6419 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6421         * cris-tdep.c (crisv32_single_step_through_delay): Get this frame's
6422         register, not the previous frame's.
6424 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6426         * source.c (select_source_symtab): Make sure we skip namespace
6427         symtabs when showing cpp source code.
6429 2008-06-30  Hans-Peter Nilsson  <hp@axis.com>
6431         * MAINTAINERS (Authorized committers): Fix my email address.
6433 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6435         * mi/mi-cmds.c (mi_cmds): Route -exec-run, -exec-until,
6436         -target-download and -target-select via CLI, so that
6437         the quoting rules are the same as they were (unfortunately)
6438         in all prior gdb releases.
6439         * mi/mi-cmds.h (mi_cmd_exec_run, mi_cmd_exec_until)
6440         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6441         * mi/mi-main.c (mi_cmd_exec_run, mi_cmd_exec_until)
6442         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6443         (mi_cmd_execute): Set current_token even for commands
6444         routed via CLI.
6446 2008-06-28  Ulrich Weigand  <uweigand@de.ibm.com>
6448         * alphafbsd-tdep.c: Update for unwinder changes.
6449         * alpha-linux-tdep.c: Likewise.
6450         * alphanbsd-tdep.c: Likewise.
6451         * alphaobsd-tdep.c: Likewise.
6452         * avr-tdep.c: Likewise.
6453         * cris-tdep.c: Likewise.
6454         * frv-linux-tdep.c: Likewise.
6455         * frv-tdep.c: Likewise.
6456         * h8300-tdep.c: Likewise.
6457         * hppa-linux-tdep.c: Likewise.
6458         * iq2000-tdep.c: Likewise.
6459         * m32c-tdep.c: Likewise.
6460         * m32r-linux-tdep.c: Likewise.
6461         * m32r-tdep.c: Likewise.
6462         * m68hc11-tdep.c: Likewise.
6463         * mep-tdep.c: Likewise.
6464         * mn10300-tdep.c: Likewise.
6465         * mt-tdep.c: Likewise.
6466         * score-tdep.c: Likewise.
6467         * sh64-tdep.c: Likewise.
6468         * sh-tdep.c: Likewise.
6469         * sparc64fbsd-tdep.c: Likewise.
6470         * sparc64nbsd-tdep.c: Likewise.
6471         * sparc64obsd-tdep.c: Likewise.
6472         * v850-tdep.c: Likewise.
6473         * vaxobsd-tdep.c: Likewise.
6474         * vax-tdep.c: Likewise.
6475         * xstormy16-tdep.c: Likewise.
6477 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6479         * mi/mi-main.c (enum captured_mi_execute_command_actions)
6480         (captured_mi_execute_command_args): Remove.
6481         (captured_mi_execute_command): Cast the closure to mi_parse
6482         pointer, not to captured_mi_execute_command_args, and don't
6483         set the action field thereof.
6484         (mi_execute_command): Pass struct mi_parse, not
6485         captured_mi_execute_command_args to captured_mi_execute_command.
6486         (mi_execute_command): Remove (dead) code for suppressing
6487         printing prompt.
6489 2008-06-28  Pedro Alves  <pedro@codesourcery.com>
6491         * linux-nat.c (enum sigchld_state): New.
6492         (linux_nat_async_events_state): Renamed from
6493         linux_nat_async_events_enabled.
6494         (linux_nat_event_pipe_push, my_waitpid): Adjust.
6495         (sigchld_default_action): New.
6496         (lin_lwp_attach_lwp): Adjust.  Call linux_nat_async_events
6497         unconditionally.
6498         (linux_nat_create_inferior): Set events state to sigchld_default
6499         state.
6500         (linux_nat_resume): Adjust.
6501         (linux_nat_wait): Call linux_nat_async_events unconditionally.
6502         (sigchld_handler): Adjust.
6503         (linux_nat_async_mask): Don't set SIGCHLD actions here.
6504         (get_pending_events): Adjust.
6505         (linux_nat_async_events): Rewrite to handle enum sigchld_state
6506         instead of a boolean.
6507         (linux_nat_async): Adjust.
6508         (_initialize_linux_nat): Capture default SIGCHLD action into
6509         sigchld_default_action.
6511 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6513         * breakpoint.c (moribund_locations): New.
6514         (bpstat_stop_status): Process moribund locations.
6515         (update_global_location_list): Add removed
6516         locations to moribund_locations.
6517         (breakpoint_retire_moribund): New.
6518         * breakpoint.h (struct bp_location): New field
6519         events_till_retirement.
6520         (breakpoint_retire_moribund): Declare.
6521         * thread.c (thread_count): New.
6522         * infrun.c (handle_inferior_event): Call
6523         breakpoint_retire_moribund.
6524         * gdbthread.h (thread_count): Declare.
6526 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6528         * dfp.c (decimal_convert): Call match_endianness before and after
6529         conversion.
6531 2008-06-27  Jonathan Larmour  <jifl@eCosCentric.com>
6533         * remote.c (remote_insert_breakpoint): Ensure that if Z0
6534         unsupported and we fall back to memory_insert_breakpoint, we
6535         use the unmodified requested address.
6537 2008-06-27  Joel Brobecker  <brobecker@adacore.com>
6539         * dwarf2read.c (read_attribute_value): Issue a complaint when
6540         adjusting size attribute values of 0xffffffff as zero.
6542 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6544         * i386-tdep.c (i386_16_byte_align_p): New.
6545         (i386_push_dummy_call): Determine stack space required for
6546         arguments going forwards allowing for 16-byte alignment, then push
6547         arguments going forwards.
6549 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6551         * infrun.c (start_remote): Don't clear thread list here.
6552         * monitor.c (monitor_open): Include "gdbthread.h".  Clear thread
6553         list here.
6554         * remote.c (record_currthread): Upgrade the main thread and its
6555         entry in the thread list if this is the first time we hear about
6556         threads.
6557         (remote_thread_alive): Consider magic_null_ptid or a ptid without
6558         a tid member always alive.
6559         (remote_find_new_threads): Don't update the main thread here.
6560         (remote_start_remote): Clear thread list here.  Always add the
6561         main thread.
6562         (extended_remote_attach_1): Add the main thread here.
6563         (extended_remote_mourn_1): Re-add the main thread here.
6564         (extended_remote_create_inferior_1): Add a main thread.
6566         * Makefile.in (monitor.o): Depend on $(gdbthread_h).
6568 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6570         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
6572         * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
6573         globals.
6574         (general_thread, continue_thread): Change type to ptid_t.
6575         (record_currthread): Take a ptid_t parameter instead of an
6576         integer.
6577         (MAGIC_NULL_PID): Delete.
6578         (set_thread): Take a ptid_t parameter and adjust.
6579         (set_general_thread, set_continue_thread): New.
6580         (remote_thread_alive, remote_newthread_step)
6581         (remote_current_thread, remote_find_new_threads)
6582         (remote_threads_info, remote_start_remote, remote_vcont_resume)
6583         (remote_resume_1, remote_wait, extended_remote_create_inferior_1)
6584         (threadalive_test, remote_pid_to_str)
6585         (remote_get_thread_local_address): Adjust.
6586         (_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
6587         and any_thread_ptid.
6589 2008-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
6591         * configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
6592         * configure: Regenerated.
6594 2008-06-26  Joel Brobecker  <brobecker@adacore.com>
6596         * dwarf2read.c (read_attribute_value): Treat size attribute
6597         values of 0xffffffff as if the attribute value was zero.
6599 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6601         * linux-nat.c: Add description of overall logic.
6603 2008-06-26  Daniel Jacobowitz  <dan@codesourcery.com>
6605         * Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
6606         (gdb_stdint_h, gdb_stdint.h, stamp-int): Delete.  Remove
6607         all dependencies on $(gdb_stdint_h).
6608         (distclean): Do not delete gdb_stdint.h.
6609         * acinclude.m4: Do not use stdint.m4.
6610         * configure.ac: Set GNULIB_STDINT_H.  Remove tests for stdint.h,
6611         uintptr_t, and gdb_stdint.h.
6612         * defs.h: Include <stdint.h>.
6613         * gdb_thread_db.h: Assume stdint.h is already included.
6614         * breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
6615         rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
6616         include gdb_stdint.h.
6617         * configure, config.in: Regenerate.
6619 2008-06-26  Joseph Myers  <joseph@codesourcery.com>
6621         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
6622         decimal floating-point values in GPRs for soft-float.
6623         (do_ppc_sysv_return_value): Handle returning decimal
6624         floating-point values in GPRs for soft-float.
6626 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6628         * target.c (target_read_until_error): New.
6629         * target.h (target_read_until_error): Declare.
6630         * mi/mi-main.c (mi_cmd_data_read_memory): Use
6631         target_read_until_error.
6633 2008-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
6635         Fix a memory leak found by Hui Zhu <teawater@gmail.com>.
6636         * c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
6637         after the DECFLOAT detection to fix a memory leak.  Remove the
6638         redundant NUM initialization.  Protect the DECFLOAT detection memory
6639         access before the P block.  Restore the P memory content for the
6640         DECFLOAT detection.
6642 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6644         Kill the return value for all MI command functions.
6645         * mi/mi-cmds.h (enum mi_cmd_result): Remove.
6646         (mi_cmd_argv_ftype): Change return type to void.
6648         * mi/mi-main.c: Adjust all function that implement
6649         MI commands to return nothing.
6650         (struct captured_mi_execute_command_actions):
6651         Remove the rc field.
6652         (mi_cmd_execute): Return nothing.
6653         (mi_execute_async_cli_command): Return nothing.
6654         (mi_cmd_exec_interrupt): Don't print ^done here.
6655         (mi_cmd_target_select): Don't print ^connected here.
6656         (captured_mi_execute_command): Don't check for MI_CMD_DONE.
6657         Special-case -target-select and output ^connected, not ^done.
6659         * mi/mi-cmd-break.c: Adjust.
6660         * mi/mi-cmd-disas.c: Adjust.
6661         * mi/mi-cmd-env.c: Adjust.
6662         * mi/mi-cmd-file.c: Adjust.
6663         * mi/mi-cmd-stack.c: Adjust.
6664         * mi/mi-cmd-target.c: Adjust.
6665         * mi/mi-cmd-var.c: Adjust.
6666         * mi/mi-interp.c: Adjust.
6667         * mi/mi-symbol-cmds.c: Adjust.
6669 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6671         Emit ^running via observer.
6672         * mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
6673         ^running here.
6674         (mi_on_resume): Print ^running if not previously output.
6675         * mi/mi-main.c (running_result_record_printed): New.
6676         (captured_mi_execute_command): Reset
6677         running_result_record_printed.  Use running_result_record_printed
6678         to decide if we should skip ^done.
6679         (mi_execute_async_cli_command): Don't print ^running here.
6680         * mi/mi-main.h (current_token, running_result_record_printed):
6681         Declare.
6683 2008-06-24  Michael Snyder  <msnyder@specifix.com>
6685         * infrun.c (_initialize_infrun): White space and typo fix.
6687 2008-06-23  Christopher Faylor  <me.gdb.changelog@cgf.cx>
6689         * win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
6690         (do_initial_win32_stuff): Fix problem with inability to set breakpoints
6691         when first loading DLL with "dll" command.
6693 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6695         * gnu-nat.c (proc_string): Use capital T for "Thread".
6697 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6699         * win32-nat.c (win32_pid_to_str): Use capital T for "Thread".
6701 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6703         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6704         the target cannot run.
6706 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6708         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6709         we're attaching to a running process.
6711 2008-06-18  Pierre Muller  <muller@ics.u-strasbg.fr>
6713         * win32-nat.c (handle_load_dll): Give dll name and load address
6714         if debug_events is on.
6715         (handle_unload_dll): Likewise.
6717 2008-06-14  Vladimir Prus  <vladimir@codesourcery.com>
6719         Don't suppress *running when doing finish.
6720         * infcall.c (call_function_by_hand): Set both
6721         suppress_resume_observer and suppress_stop_observer.
6722         * infcmd.c (suppress_run_stop_observers): Split into...
6723         (suppress_resume_observer, suppress_stop_observer): ...those.
6724         (finish_command_continuation): Clear suppress_stop_observer.
6725         (finish_command): Set suppress_stop_observer.
6726         * inferior.h (suppress_run_stop_observers): Split into...
6727         (suppress_resume_observer, suppress_stop_observer): ...those.
6728         * infrun.c (normal_stop): Check for suppress_stop_observer.
6729         * thread.c (set_running): Check for suppress_resume_observer.
6731 2008-06-12  Pedro Alves  <pedro_alves@portugalmail.pt>
6732             Pierre Muller  <muller@ics.u-strasbg.fr>
6734         * gdbarch.sh (gdbarch_skip_main_prologue): New.
6735         * gdbarch.h, gdbarch.c: Regenerate.
6736         * i386-tdep.h (i386_skip_main_prologue): Declare.
6737         * i386-tdep.c (i386_skip_main_prologue): New.
6738         * i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
6739         i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
6740         * symtab.c (find_function_start_sal): When pc points at the "main"
6741         function, call gdbarch_skip_main_prologue.
6743 2008-06-11  Daniel Jacobowitz  <dan@codesourcery.com>
6745         * value.c (value_primitive_field): Fetch lazy register values.
6747 2008-06-11  Pedro Alves  <pedro@codesourcery.com>
6749         * NEWS: Mention support removal of undocumented S AA p PID stop
6750         reply packet.
6752         * remote.c (remote_wait): Remove undocumented S AA p PID support.
6754 2008-06-10  Stan Shebs  <stan@codesourcery.com>
6756         * MAINTAINERS: Update my affiliation and address.
6758 2008-06-10  Andreas Schwab  <schwab@suse.de>
6760         * top.c (print_gdb_version): Don't print final newline.
6762 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6764         Implement *running.
6765         * Makefile.in: Update dependencies.
6766         * gdbthread.h (struct thread_info): New field
6767         running_.
6768         (set_running, is_running): New.
6769         * thread.c (set_running, is_running): New.
6770         * inferior.h (suppress_normal_stop_observer): Rename to...
6771         (suppress_run_stop_observers): ..this.
6772         * infcmd.c (suppress_normal_stop_observer): Rename to...
6773         (suppress_run_stop_observers): ..this.
6774         (finish_command_continuation, finish_command): Adjust.
6775         * infcall.c (call_function_by_hand): Adjust.
6776         * infrun.c (normal_stop): Call set_running.
6777         * target.c (target_resume): New.  Call set_running.
6778         * target.h (target_resume): Convert from macro to
6779         a function.
6781         * mi/mi-interp.c (mi_on_resume): New.
6782         (mi_interpreter_init): Register mi_on_resume.
6784 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6786         Use observers to report stop events in MI.
6787         * mi/mi-interp.c (mi_on_normal_stop): New.
6788         (mi_interpreter_init): Register mi_on_normal_stop.
6789         (mi_interpreter_exec_continuation): Remove.
6790         (mi_cmd_interpreter_exec): Don't register the above.
6791         * mi/mi-main.c (captured_mi_execute_command): Don't care
6792         about sync_execution.
6793         (mi_execute_async_cli_command): Don't install continuation.  Don't
6794         print *stopped.
6795         (mi_exec_async_cli_cmd_continuation): Remove.
6797 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6799         Suppress normal stop observer when it's problematic.
6800         * inferior.h (suppress_normal_stop_observer): New.
6801         * infcall.c (call_function_by_hand): Disable stop events when
6802         doing function calls.
6803         * infmcd.c (suppress_normal_stop_observer): New.
6804         (finish_command_continuation): Call normal_stop observer
6805         explicitly.
6806         (finish_command): Disable stop events inside proceed.
6807         * infrun.c (normal_stop): Don't call normal stop observer if
6808         suppressed of if multi-step is in progress.
6810 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6812         Remove stale code.
6813         * infrun.c (finish_command): Don't pass cleanup
6814         to continuation.
6815         (finish_command_continuation): Don't grab cleanup from
6816         the passed data, as we don't use, and cannot, use it anyway.
6818 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6820         Introduce common cleanup for restoring integers.
6821         * defs.h (make_cleanup_restore_integer): New declaration.
6822         (struct cleanup): New field free_arg.
6823         (make_my_cleanup_2): New.
6824         * utils.c (restore_integer_closure, restore_integer)
6825         (make_cleanup_restore_integer): New.
6826         (make_my_cleanup): Initialize the free_arg field and
6827         renamed to make_my_cleanup_2.
6828         (do_my_cleanups): Call free_arg.
6829         (discard_cleanups): Call free_arg.
6830         * breakpoint.c (restore_always_inserted_mode): Remove.
6831         (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
6833 2008-06-09  Doug Evans  <dje@google.com>
6835         * remote.c (remote_wait): Include beginning of malformed packet
6836         in error output.
6838 2008-06-09  Tom Tromey  <tromey@redhat.com>
6840         * completer.c (complete_line): Don't special-case
6841         expression_completer.
6842         (expression_completer): Only pass last word to
6843         location_completer.
6844         * c-exp.y (yylex): Check 'token', not 'operator'.
6846 2008-06-09  Daniel Jacobowitz  <dan@codesourcery.com>
6848         * configure.ac (build_warnings): Add -Wno-format for mingw.
6849         * configure: Regenerated.
6851 2008-06-07  Daniel Jacobowitz  <dan@codesourcery.com>
6853         * NEWS: Make indentation consistent.  Move exec tracing entry out
6854         of remote packet list.
6856 2008-06-06  Tom Tromey  <tromey@redhat.com>
6858         * value.h (evaluate_subexpression_type, extract_field_op):
6859         Declare.
6860         * printcmd.c (_initialize_printcmd): Use expression_completer for
6861         'p', 'inspect', 'call'.
6862         * parser-defs.h (parse_field_expression): Declare.
6863         * parse.c: Include exceptions.h.
6864         (in_parse_field, expout_last_struct): New globals.
6865         (mark_struct_expression): New function.
6866         (prefixify_expression): Return int.
6867         (prefixify_subexp): Return int.  Use expout_last_struct.
6868         (parse_exp_1): Update.
6869         (parse_exp_in_context): Add 'out_subexp' argument.  Handle
6870         in_parse_field.
6871         (parse_field_expression): New function.
6872         * expression.h (parse_field_expression): Declare.
6873         (in_parse_field): Likewise.
6874         * eval.c (evaluate_subexpression_type): New function.
6875         (extract_field_op): Likewise.
6876         * completer.h (expression_completer): Declare.
6877         * completer.c (expression_completer): New function.
6878         (count_struct_fields, add_struct_fields): New functions.
6879         * c-exp.y (yyparse): Redefine.
6880         (COMPLETE): New token.
6881         (exp): New productions.
6882         (saw_name_at_eof, last_was_structop): New globals.
6883         (yylex): Return COMPLETE when needed.  Recognize in_parse_field.
6884         (c_parse): New function.
6885         * breakpoint.c (_initialize_breakpoint): Use expression_completer
6886         for watch, awatch, and rwatch.
6887         * Makefile.in (parse.o): Depend on exceptions_h.
6889 2008-06-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
6891         PR gdb/1147
6892         * gdb/valopts.c (find_overload_match): Handle references
6893         to pointers.
6895 2008-06-06  Paul N. Hilfinger  <hilfinger@adacore.com>
6897         * ada-lang.c (ada_value_assign): Correct big-endian case to take into
6898         account the bitsize of the 'from' operand.
6900 2008-06-06  Pedro Alves  <pedro@codesourcery.com>
6902         * annotate.h (annotate_thread_changed): Declare.
6904 2008-06-06  Nick Roberts  <nickrob@snap.net.nz>
6906         * annotate.c (annotate_thread_changed): New function.
6907         * thread.c (thread_command) : Use it.
6908         * infrun.c (normal_stop): Use it.
6910 2008-06-05  Vladimir Prus  <vladimir@codesourcery.com>
6911             Nathan Sidwell  <nathan@codesourcery.com>
6912             Joseph Myers  <joseph@codesourcery.com>
6914         * acinclude.m4: Include ../config/acx.m4.
6915         * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
6916         * configure, config.in: Regenerate.
6917         * main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
6918         address.
6919         * top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.
6921 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6923         Replace 'target async' by 'maintenance set remote-async' and
6924         'target remote' combination.
6926         * remote.c (remote_async_wait): Merge into remote_wait, and
6927         remove.
6928         (remote_async_permitted, remote_async_permitted_set): New
6929         variables.
6930         (set_maintenance_remote_async_permitted)
6931         (show_maintenance_remote_async_permitted): New functions.
6932         (remote_async_ops, extended_async_remote_ops): Delete.
6933         (remote_async_open, extended_remote_async_open): Delete.
6934         (remote_open_1): Drop async_p parameter.  Update callers.  Replace
6935         async_p with remote_async_permitted checks.
6936         (extended_async_remote_attach): Delete.
6937         (remote_resume, remote_async_resume): Merge and leave remote_resume.
6938         (remote_async_terminal_inferior): Rename to...
6939         (remote_terminal_inferior): ... this, and add
6940         remote_async_termitted check.
6941         (remote_async_terminal_ours): Rename to...
6942         (remote_terminal_ours): ... this, and add remote_async_termitted
6943         check.
6944         (remote_wait, remote_async_wait): Merge and leave remote_wait
6945         only.
6946         (remote_kill, remote_async_kill): Merge and leave remote_kill
6947         only.
6948         (remote_async_mourn, extended_async_remote_mourn): Delete.
6949         (extended_remote_create_inferior_1): Drop async_p parameter.
6950         Update callers.  Always use extended_remote_ops.
6951         (extended_remote_async_create_inferior): Delete.
6952         (remote_return_zero): Delete.
6953         (init_remote_ops): Register remote_can_async_p, remote_async,
6954         remote_async_mask, remote_terminal_inferior and
6955         remote_terminal_ours.
6956         (remote_can_async_p, remote_is_async_p): Check for
6957         remote_async_permitted.
6958         (init_remote_async_ops, init_extended_async_remote_ops): Remove.
6959         (set_remote_cmd): Don't add async and extended-async targets.
6960         (_initialize_remote): Add set/show remote-async maintenance
6961         commands.
6963 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6965         * remote.c (kill_kludge): Delete.
6966         (remote_wait, remote_async_wait): Don't set it.
6967         (remote_kill, remote_async_kill): Don't do anything with it.
6969 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6971         * linux-thread-db.c (thread_db_wait): Don't trim event ptid.
6973 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6975         * bcache.c (bcache_data): Call deprecated_bcache_added function.
6976         (deprecated_bcache_added): New function name. Body of function
6977         bcache_data is used here with the addition of 'added' argument.
6978         * bcache.h (deprecated_bcache_added): New function.
6979         * symfile.c (add_psymbol_to_bcache): New helper function, takes part of
6980         work from add_psymbol_to_list - initialises partial symbol and stashes
6981         it in objfile's cache.
6982         (append_psymbol_to_list): New helper function, takes other part of
6983         work from add_psymbol_to_list - adds partial symbol to the given list.
6984         (add_psymbol_to_list): Call helper functions instead of doing work
6985         here. If adding to global list, do not duplicate partial symbols in the
6986         partial symtab.
6988 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6990         * breakpoint.c (print_exception_catchpoint): Put 'exception' back to
6991         'exception caught|thrown' message.
6993 2008-06-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
6995         * Makefile.in: Update dependencies.
6996         * dwarf2expr.c: New include "gdb_assert.h".
6997         (new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
6998         (dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
6999         (execute_stack_op): Error out on too large RECURSION_DEPTH.
7000         Increase/decrease RECURSION_DEPTH around the function.
7002 2008-06-05  Daniel Jacobowitz  <dan@codesourcery.com>
7004         * remote.c (get_offsets): Handle a single segment.
7005         * symfile.c (symfile_map_offsets_to_segments): Allow more bases
7006         than segments.
7008 2008-06-03  Daniel Jacobowitz  <dan@codesourcery.com>
7010         * solib-svr4.c (struct lm_info): Add lm_addr.
7011         (main_lm_addr): New.
7012         (svr4_default_sos): Set lm_addr.
7013         (svr4_current_sos): Set lm_addr and main_lm_addr.
7014         (svr4_fetch_objfile_link_map): Rewrite.
7015         (svr4_clear_solib): Clear main_lm_addr.
7017 2008-06-03  Michael Snyder  <msnyder@redhat.com>
7018             Joseph Myers  <joseph@codesourcery.com>
7020         * mips-tdep.c (mips_eabi_return_value): Replace stub that always
7021         returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
7023 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
7025         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.
7027 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
7029         * m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.
7031 2008-06-01  Joel Brobecker  <brobecker@adacore.com>
7033         * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
7034         treat pointers in data space as function descriptors if the
7035         target address is also in the data space.
7037 2008-05-30  Joel Brobecker  <brobecker@adacore.com>
7039         * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
7040         the trad-frame register value for the SP register.
7042 2008-05-29  Mark Kettenis  <kettenis@gnu.org>
7044         * sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.
7046 2008-05-28  Joel Brobecker  <brobecker@adacore.com>
7048         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
7049         that identifies function descriptors outside of the .opd section.
7051 2008-05-28  Aleksandar Ristovski  <aristovski@qnx.com>
7053         * breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
7054         temporary catchpoints.  In MI add missing fields 'reason', 'disp',
7055         'bkptno'.
7056         (print_mention_exception_catchpoint): Add 'Temporary' for temporary
7057         catchpoints.
7058         (handle_gnu_v3_exceptions): Use tempflag.
7060 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
7062         Refactor varobj_update interface.
7063         * varobj.c (varobj_update): Report changes as vector.  Also
7064         return not just a list of varobj, but a list of special structures
7065         that tell what exactly has changed.
7066         * varobj.h (enum varobj_update_error): Rename to
7067         varobj_scope_status.
7068         (struct varobj_update_result_t): New.
7069         (varobj_update): Adjust prototype.
7070         * mi/mi-cmd-var.c: Adjust for changes.
7072 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
7074         * varobj.c (varobj_update): Fix comment typo.
7075         Fix indentation.
7077 2008-05-26  Joel Brobecker  <brobecker@adacore.com>
7079         Set the symtab field of symbols read from ECOFF debugging entries.
7080         * mdebugread.c (add_symbol): Add new parameter symtab.
7081         (parse_symbol): Update calls to add_symbol throughout.
7083 2008-05-27  Andreas Schwab  <schwab@suse.de>
7085         * symtab.h (enum address_class): Remove LOC_REGPARM and
7086         LOC_COMPUTED_ARG.
7087         (struct symbol): Add is_argument.
7088         (SYMBOL_IS_ARGUMENT): Define.
7090         * ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
7091         * buildsym.c (finish_block): Likewise.
7092         * stack.c (print_frame_args, print_block_frame_locals)
7093         (print_frame_arg_vars): Likewise.
7094         * symtab.c (lookup_block_symbol): Likewise.
7095         * tracepoint.c (add_local_symbols): Likewise.
7096         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7098         * coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
7099         * dwarf2read.c (new_symbol): Likewise.
7100         * mdebugread.c (parse_symbol): Likewise.
7101         * stabsread.c (define_symbol): Likewise.
7103         * ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
7104         and LOC_COMPUTED_ARG.
7105         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7106         * ax-gdb.c (gen_var_ref): Likewise.
7107         * eval.c (evaluate_subexp_for_address): Likewise.
7108         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7109         * m2-exp.y (yylex): Likewise.
7110         * printcmd.c (address_info): Likewise.
7111         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7112         * tracepoint.c (collect_symbol, scope_info): Likewise.
7114 2008-05-24  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
7116         * gdbarch.sh: Added new gdbarch struct
7117         core_regset_sections.
7118         * gdbarch.c: Refreshed.
7119         * gdbarch.h: Refreshed.
7120         * regset.h (core_regset_section): Declared.
7121         * linux-nat.c (linux_nat_do_thread_registers): Added
7122         support for the new gdbarch struct core_regset_sections.
7123         * utils.c (host_address_to_string): New function.
7124         * defs.h (host_address_to_string): New prototype.
7125         * i386-linux-tdep.c (i386_regset_rections): New register
7126         sections list for i386.
7127           (i386_linux_init_abi): Initialized new gdbarch struct
7128           core_regset_sections.
7129         * Makefile.in: Updated to reflect dependency changes.
7130         * ppc-linux-tdep.c (ppc_regset_sections): Register
7131         sections list for ppc.
7132           (ppc_linux_init_abi): Initialized new gdbarch struct
7133           core_regset_sections
7135 2008-05-24  Andreas Schwab  <schwab@suse.de>
7137         * linespec.c (decode_objc): Save current language around call to
7138         get_selected_block.
7140 2008-05-23  Joel Brobecker  <brobecker@adacore.com>
7142         * valprint.h (get_array_bounds): Renames get_array_low_bound.
7143         * valprint.c (get_array_bounds): Renames get_array_low_bound.
7144         Return the proper bound value if the array index type is an
7145         enumerated type. Compute the high bound if requested.
7146         (val_print_array_elements): Handle the case when the array
7147         element has a null size.
7148         * ada-valprint.c (print_optional_low_bound): Add handling
7149         for empty arrays or arrays of zero-size elements.
7150         (ada_val_print_array): New function, extracted out from
7151         ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
7152         handle empty arrays and arrays of zero-size elements.
7153         (ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
7154         code by call to ada_val_print_array.
7155         (ada_value_print): Remove handling of null array.  The handling
7156         was incomplete and is now better handled by ada_val_print_array.
7158 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
7160         * annotate.c (annotate_source, annotate_frame_begin): Replace
7161         deprecated_print_address_numeric with paddress.
7162         * cli/cli-cmds.c (list_command, edit_command): Likewise.
7163         * tui/tui-stack.c (tui_make_status_line): Likewise.
7165         * defs.h (deprecated_print_address_numeric): Remove.
7166         * printcmd.c (deprecated_print_address_numeric): Remove.
7167         * maint.c (maint_print_section_info): Fix comment.
7169 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
7171         * valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
7172         print_binary_chars, print_char_chars): Add byte_order parameter and
7173         replace gdbarch_byte_order.
7174         (print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
7175         expressions and remove them.  Remove unused TWO_TO_FOURTH.
7176         (val_print_type_code_int): Introduce gdbarch_byte_order to get at the
7177         endianness.  Update call to print_hex_chars.
7178         * valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
7179         print_binary_chars, print_char_chars): Add byte_order parameter.
7180         * printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
7181         get at the endianness.  Update print_*_char calls to use byte_order.
7183 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7185         * symtab.h (struct symbol): Make "aux_value" member a void pointer
7186         instead of a union.
7187         (SYMBOL_LOCATION_BATON): Update.
7189 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7191         * symtab.h (enum address_class): Remove LOC_BASEREG and
7192         LOC_BASEREG_ARG.
7193         (struct symbol): Remove "basereg" member of "aux_value" union.
7194         (SYMBOL_BASEREG): Remove.
7196         * ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
7197         or LOC_BASEREG_ARG.
7198         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7199         (ada_add_block_symbols): Likewise.
7200         * ax-gdb.c (gen_var_ref): Likewise.
7201         * buildsym.c (finish_block): Likewise.
7202         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7203         * m2-exp.y (yylex): Likewise.
7204         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7205         * printcmd.c (address_info): Likewise.
7206         * stack.c (print_frame_args, print_block_frame_locals): Likewise.
7207         (print_frame_arg_vars): Likewise.
7208         * symmisc.c (print_symbol): Likewise.
7209         * symtab.c (lookup_block_symbol): Likewise.
7210         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
7211         (scope_info): Likewise.
7213 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7215         * symtab.h (enum address_class): Remove LOC_LOCAL_ARG.
7217         * ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
7218         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7219         (ada_add_block_symbols): Likewise.
7220         * ax-gdb.c (gen_var_ref): Likewise.
7221         * buildsyms.c (finish_block): Likewise.
7222         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7223         * m2-exp.y (yylex): Likewise.
7224         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7225         * printcmd.c (address_info): Likewise.
7226         * stack.c (print_frame_args, print_frame_arg_vars): Likewise.
7227         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7228         * symtab.c (lookup_block_symbol): Likewise.
7229         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
7230         (scope_info): Likewise.
7232 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7234         * symtab.h (enum address_class): Remove LOC_INDIRECT and
7235         LOC_HP_THREAD_LOCAL_STATIC.
7237         * findvar.c (symbol_read_needs_frame, read_var_value): Do not
7238         handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
7239         (read_var_value): Likewise.
7240         * buildsym.c (finish_block): Likewise.
7241         * objfiles.c (objfile_relocate): Likewise.
7242         * printcmd.c (address_info): Likewise.
7243         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7244         * tracepoint.c (scope_info): Likewise.
7246 2008-05-21 Markus Deuling  <deuling@de.ibm.com>
7247            Maxim Grigoriev  <maxim2405@gmail.com>
7249         * xtensa-tdep.c (xtensa_read_register): Remove.
7250         (xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
7251         argument litbase to call0_frame_cache().
7252         (call0_track_op, call0_analyze_prologue)
7253         (call0_frame_cache): Use extra argument litbase.
7255 2008-05-21  Joel Brobecker  <brobecker@adacore.com>
7257         * infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
7259 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
7261         * frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
7263 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
7265         * alpha-mdebug-tdep.c: Include "trad-frame.h".
7266         (struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
7267         struct trad_frame_saved_reg *.
7268         (alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
7269         trad_frame_alloc_saved_regs.  Update accesses.  Record previous
7270         value of SP as being vfp.
7271         (alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
7272         * Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
7274 2008-05-21  Markus Deuling  <deuling@de.ibm.com>
7276         * score-tdep.c (score_print_insn): Get the current endianess from
7277         disassemble_info instead of gdbarch_byte_order.
7279 2008-05-21  Pedro Alves  <pedro@codesourcery.com>
7281         * frame.c (get_prev_frame_1): Build frame id before setting
7282         this_frame->prev_p, not after.
7284 2008-05-21  Nick Roberts  <nickrob@snap.net.nz>
7286         * annotate.c (annotate_new_thread): New function for new-thread
7287         annotation.
7288         * annotate.h: (annotate_new_thread): New extern.
7289         * thread.c (add_thread_with_info): Use it.
7290         * Makefile.in (thread.o): Add dependency on annotate.h.
7292 2008-05-20  Joel Brobecker  <brobecker@adacore.com>
7294         * win32-nat.c (win32_wait): Block the control-c event while
7295         waiting for a debug event.
7297 2008-05-19  Pedro Alves  <pedro@codesourcery.com>
7299         * symtab.h (lookup_symbol_in_language): Update comment.
7300         * symtab.c (lookup_symbol_aux_block): Update comment.
7301         * ada-lang.c (ada_lookup_symbol_list): Update comment.
7303 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7305         * symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
7306         (lookup_symbol): Likewise.
7307         * symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
7308         (lookup_symbol): Likewise.
7309         (search_symbols): Update.
7311         * linespec.c (find_methods, collect_methods): Update.
7312         (add_matching_methods, add_constructors): Update.
7313         (decode_compound, decode_dollar, decode_variable): Update.
7314         (lookup_prefix_sym): Update.
7316         (symbol_found): Remove SYM_SYMTAB parameter.
7317         Use SYMBOL_SYMTAB (sym) instead.
7319         * gdbtypes.c (lookup_typename): Update.
7320         (lookup_struct, lookup_union, lookup_enum): Update.
7321         (lookup_template_type): Update.
7322         (check_typedef): Update.
7323         * language.c (lang_bool_type): Update.
7324         * mdebugread.c (parse_procedure): Update.
7325         * mi/mi-cmd-stack.c (list_args_or_locals): Update.
7326         * parse.c (write_dollar_variable): Update.
7327         * printcmd.c (address_info): Update.
7328         * source.c (select_source_symtab): Update.
7329         * stack.c (print_frame_args, print_frame_arg_vars): Update.
7330         * valops.c (find_function_in_inferior): Update.
7331         (value_struct_elt_for_reference): Update.
7332         * value.c (value_static_field, value_fn_field): Update.
7334         * alpha-mdebug-tdep.c (find_proc_desc): Update.
7335         * arm-tdep.c (arm_skip_prologue): Update.
7336         * mt-tdep.c (mt_skip_prologue): Update.
7337         * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
7339         * ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
7340         * ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
7341         (add_defn_to_vec): Likewise.
7342         (ada_add_block_symbols): Likewise.
7343         (lookup_cached_symbol, cache_symbol): Likewise.
7344         (standard_lookup): Update.
7345         (ada_lookup_symbol_list): Update.
7347         * c-valprint.c (c_val_print): Update.
7348         * cp-support.c (cp_lookup_rtti_type): Update.
7349         * jv-lang.c (java_lookup_class, get_java_object_type): Update.
7350         * objc-lang.c (lookup_struct_typedef, find_imps): Update.
7351         * p-valprint.c (pascal_val_print): Update.
7352         * scm-lang.c (scm_lookup_name): Update.
7354         * c-exp.y: Update.
7355         * f-exp.y: Update.
7356         * jv-exp.y: Update.
7357         * m2-exp.y: Update.
7358         * objc-exp.y: Update.
7359         * p-exp.y: Update.
7361 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7363         * language.h (struct language_defn): Remove SYMTAB parameter from
7364         la_lookup_symbol_nonlocal callback function pointer.
7366         * ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7367         (ada_lookup_encoded_symbol): Likewise.
7368         * ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7369         Always call fixup_symbol_section.
7370         (ada_lookup_symbol): Remove SYMTAB parameter.
7371         (ada_lookup_symbol_nonlocal): Likewise.
7372         * ada-exp.y (write_object_renaming): Update.
7373         (find_primitive_type): Likewise.
7375         * cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7376         (cp_lookup_symbol_namespace): Likewise.
7377         * cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
7378         (lookup_symbol_file): Likewise.
7379         (lookup_possible_namespace_symbol): Likewise.
7380         (cp_lookup_symbol_nonlocal): Likewise.
7381         (cp_lookup_symbol_namespace): Likewise.
7382         (cp_lookup_nested_type): Update.
7384         * scm-valprint.c (scm_inferior_print): Update.
7385         * valops.c (value_maybe_namespace_elt): Update.
7387         * solist.h (struct target_so_ops): Remove SYMTAB parameter from
7388         lookup_lib_global_symbol callback function pointer.
7389         (solib_global_lookup): Remove SYMTAB parameter.
7390         * solib.c (solib_global_lookup): Remove SYMTAB parameter.
7391         * solib-svr4.c (elf_lookup_lib_symbol): Likewise.
7393         * symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7394         (lookup_symbol_static): Likewise.
7395         (lookup_symbol_global): Likewise.
7396         (lookup_symbol_aux_block): Likewise.
7397         (lookup_global_symbol_from_objfile): Likewise.
7398         * symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
7399         (lookup_symbol_aux_local): Likewise.
7400         (lookup_symbol_aux_block): Likewise.
7401         (lookup_symbol_aux_symtabs): Likewise.
7402         (lookup_symbol_aux_psymtabs): Likewise.
7403         (lookup_global_symbol_from_objfile): Likewise.
7404         (basic_lookup_symbol_nonlocal): Likewise.
7405         (lookup_symbol_static): Likewise.
7406         (lookup_symbol_global): Likewise.
7408         (lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
7410 2008-05-17  Pedro Alves  <pedro@codesourcery.com>
7412         * remote.c (init_extended_remote_ops): Fix typo.
7414 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7416         * NEWS: Mention new DICOS x86 target configuration.
7418 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7419             Ulrich Weigand  <uweigand@de.ibm.com>
7421         * minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
7422         * symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
7424         * symtab.c (fixup_section): Remove prototype.  Add ADDR parameter;
7425         use it instead of ginfo->value.address.  Look up minimal symbol by
7426         address and name.  Assume OBJFILE is non-NULL.
7427         (fixup_symbol_section): Ensure we always have an objfile to look
7428         into.  Extract and pass to fixup_section the symbol's address that
7429         will match the minimal symbol's address.
7430         (fixup_psymbol_section): Likewise.
7432         (find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
7433         overlays and the addrmap returned the wrong section.
7435         * dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
7436         calling fixup_symbol_section.
7438 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7440         * minsyms.c: Include "target.h".
7441         (find_solib_trampoline_target): Handle minimal symbols pointing
7442         to function descriptors as well.
7443         * Makefile.in (minsyms.o): Update dependencies.
7445         * ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
7446         (ppc64_standard_linkage1): ... this.  Fix optional instructions.
7447         (PPC64_STANDARD_LINKAGE_LEN): Rename to ...
7448         (PPC64_STANDARD_LINKAGE1_LEN): ... this.
7449         (ppc64_standard_linkage2, ppc64_standard_linkage3): New.
7450         (PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
7451         (ppc64_standard_linkage_target): Rename to ...
7452         (ppc64_standard_linkage1_target): ... this.
7453         (ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
7454         (ppc64_skip_trampoline_code): Support three variants of standard
7455         linkage stubs.  Call find_solib_trampoline_target to handle
7456         glink stubs.
7458 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7460         * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
7461         ppc64_sysv_abi_adjust_breakpoint_address.
7462         * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7463         * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7465 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7467         * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
7468         (ppc_linux_init_abi): Install find_solib_trampoline_target instead
7469         of ppc_linux_skip_trampoline_code.
7471 2008-05-15  Daniel Jacobowitz  <dan@codesourcery.com>
7473         * gdbarch.sh: Delete dwarf_reg_to_regnum.
7474         * gdbarch.c, gdbarch.h: Regenerated.
7475         * amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
7476         hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
7477         s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
7479 2008-05-15  Pedro Alves  <pedro@codesourcery.com>
7481         * linux-nat.c (trap_ptid): Delete.
7482         (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
7483         Adjust.
7484         * linux-thread-db.c (thread_db_wait): Adjust.
7486 2008-05-15  Joel Brobecker  <brobecker@adacore.com>
7488         * linespec.c (decode_line_1): Fix a couple of comments.
7490 2008-05-15  Alan Modra  <amodra@bigpond.net.au>
7492         * dbxread.c: Formatting.
7493         (INTERNALIZE_SYMBOL): Init n_other.
7494         (set_namestring): Take pointer to nlist arg rather than struct
7495         copy.  Update all callers.
7497 2008-05-15  Andreas Schwab  <schwab@suse.de>
7499         * Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
7500         (dwarf2read.o): Add $(addrmap_h).
7502 2008-05-14  Ulrich Weigand  <uweigand@de.ibm.com>
7504         * ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
7505         (ppc64_linux_convert_from_func_ptr_addr): ... to this.  No longer try
7506         to handle ppc32 PLT entries.
7507         (ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
7508         only on ppc64.
7510 2008-05-14  Daniel Jacobowitz  <dan@codesourcery.com>
7512         * elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
7513         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
7514         lookup_minimal_symbol_by_pc_section.  Prefer trampolines if requested.
7515         (lookup_minimal_symbol_by_pc_section): Use
7516         lookup_minimal_symbol_by_pc_section_1.
7517         (lookup_solib_trampoline_symbol_by_pc): Likewise.
7519 2008-05-13  Joel Brobecker  <brobecker@adacore.com>
7521         * findcmd.c: Add #include "gdb_stdint.h".
7522         * Makefile.in (findcmd.o): Update dependencies.
7524 2008-05-11  David S. Miller  <davem@davemloft.net>
7526         * sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
7527         long double size override, Linux does use 128-bit now.
7529         * sparc-linux-tdep.c (PSR_SYSCALL): Define.
7530         (sparc_linux_write_pc): New function.
7531         (sparc32_linux_init_abi): Register it.
7532         * sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
7533         (sparc64_linux_write_pc): New function.
7534         (sparc64_linux_init_abi): Register it.
7536         * sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
7537         dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
7539 2008-05-11  Ulrich Weigand  <uweigand@de.ibm.com>
7541         * rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
7542         and info.tdep_info before calling gdbarch_init_osabi.
7544 2008-05-09  Joel Brobecker  <brobecker@adacore.com>
7546         * ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
7547         the type of the right hand side of the assignment to the type
7548         of the left hand side if the left hand side is a convenience
7549         variable.
7551 2008-05-09  Ulrich Weigand  <uweigand@de.ibm.com>
7553         * NEWS: Mention gdbserver bi-arch capability.
7555 2008-05-09  Doug Evans  <dje@google.com>
7557         New "find" command.
7558         * NEWS: Document find command and qSearch:memory packet.
7559         * Makefile.in (SFILES): Add findcmd.c.
7560         (COMMON_OBJS): Add findcmd.o.
7561         (findcmd.o): New rule.
7562         * findcmd.c: New file.
7563         * target.h (target_ops): New member to_search_memory.
7564         (simple_search_memory): Declare.
7565         (target_search_memory): Declare.
7566         * target.c (simple_search_memory): New fn.
7567         (target_search_memory): New fn.
7568         * remote.c (PACKET_qSearch_memory): New packet kind.
7569         (remote_search_memory): New fn.
7570         (init_remote_ops): Init to_search_memory.
7571         (init_extended_remote_ops): Ditto.
7572         (_initialize_remote): Add qSearch:memory packet config command.
7574 2008-05-09  Eli Zaretskii  <eliz@gnu.org>
7576         * thread.c (_initialize_thread): Don't use commas and periods in
7577         first line of doc string of "set/show print thread-events".
7579 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7581         * alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
7582         Update for unwinder changes.
7584 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7586         * frame.c (get_frame_base_address, get_frame_locals_address)
7587         (get_frame_args_address): Pass the correct frame when calling
7588         frame_base_find_by_frame.
7590 2008-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7592         * remote.c (extended_remote_attach_1): Call target_find_description.
7594 2008-05-08  Daniel Jacobowitz  <dan@codesourcery.com>
7596         * remote.c (extended_remote_create_inferior_1): Clean up
7597         before marking the target running.
7599 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7601         * hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
7602         changes.
7604 2008-05-07  Joel Brobecker  <brobecker@adacore.com>
7606         * sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
7607         sparc64-sol2-tdep.c: Update for unwinder changes.
7609 2008-05-07  Daniel Jacobowitz  <dan@codesourcery.com>
7611         * cp-support.c (mangled_name_to_comp): Initialize storage.
7612         (unqualified_name_from_comp): Likewise.
7614 2008-05-07  Jie Zhang  <jie.zhang@analog.com>
7616         * remote.c (remote_insert_breakpoint): Call get_remote_state
7617         after gdbarch_breakpoint_from_pc is called.
7618         (remote_insert_hw_breakpoint): Likewise.
7620 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7622         * valprint.c (val_print): Add new language parameter and use it
7623         instead of using the current_language. Update calls to val_print
7624         throughout.
7625         (common_val_print): Add new langauge parameter and pass it to
7626         val_print.
7627         * value.h (struct language_defn): Add opaque declaration.
7628         (val_print, common_val_print): Update declarations.
7629         * stack.c (print_frame_args): Update call to common_val_print
7630         using the appropriate language.
7631         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7632         * c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
7633         mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
7634         scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
7635         #include "language.h" if necessary.
7636         Update calls to val_print and common_val_print.
7637         * Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
7638         Update dependencies.
7640 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7642         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
7643         pointing inside a non-executable section as function descriptors.
7645 2008-05-06  Pedro Alves  <pedro@codesourcery.com>
7647         * inf-loop.c (inferior_event_handler): Run all continuations and
7648         print any language change before running the breakpoint commands.
7650 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7652         * frame-unwind.c (frame_unwind_got_bytes): New function.
7653         * frame-unwind.h (frame_unwind_got_bytes): Add declaration.
7654         * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
7655         for unwinder changes.
7657 2008-05-05  Doug Evans  <dje@google.com>
7659         * NEWS: Mention new /m modifier for disassemble command.
7660         * cli/cli-cmds.c (print_disassembly): New function.
7661         (disassemble_current_function): New function
7662         (disassemble_command): Recognize /m modifier, print mixed
7663         source+assembly.
7664         (init_cli_cmds): Update disassemble help text.
7666 2008-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
7668         * xtensa-tdep.c: Update for unwinder changes.
7670 2008-05-05  Andreas Schwab  <schwab@suse.de>
7672         Update m68k port for unwinder changes.
7673         * m68k-tdep.c (m68k_frame_cache): Expect this_frame.
7674         (m68k_frame_this_id, m68k_frame_prev_register): Update signature.
7675         (m68k_frame_unwind): Use default_frame_sniffer.
7676         (m68k_frame_sniffer): Remove.
7677         (m68k_frame_base_address): Expect this_frame.
7678         (m68k_dummy_id): Renamed from m68k_unwind_dummy_id.  Expect
7679         this_frame.
7680         (m68k_gdbarch_init): Use set_gdbarch_dummy_id,
7681         dwarf2_append_unwinders, and frame_unwind_append_unwinder.
7682         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
7683         parameter instead of pc value.
7684         (m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
7685         Expect this_frame.
7686         (m68k_linux_sigtramp_frame_this_id)
7687         (m68k_linux_sigtramp_frame_prev_register)
7688         (m68k_linux_sigtramp_frame_sniffer): Update signature.
7689         (m68k_linux_sigtramp_frame_unwind): Use
7690         m68k_linux_sigtramp_frame_sniffer.
7691         (m68k_linux_init_abi): Use frame_unwind_append_unwinder.
7693         * m68klinux-nat.c (store_register): Fix typo.
7695 2008-05-05  Pedro Alves  <pedro@codesourcery.com>
7697         * infcmd.c (step_1): Put thread id on the stack to avoid possible
7698         NULL dereferencing.
7700 2008-05-05  Luis Machado  <luisgpm@br.ibm.com>
7702         * symfile.c (reread_symbols): Update objfile's entry point.
7704 2008-05-05  Aleksandar Ristovski  <aristovski@qnx.com>
7705             Joel Brobecker  <brobecker@adacore.com>
7707         * ada-lang.c: Update throughout to use symbol_matches_domain
7708         instead of matching the symbol domain explictly.
7709         * dwarf2read.c (add_partial_symbol): Do not add new psym for
7710         STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
7711         class as typedefs. See lookup_partial_symbol function.
7712         (new_symbol): Similar to add_partial_symbol, do not create
7713         symbol for the typedef. See lookup_block_symbol.
7714         * symtab.c (symbol_matches_domain): New function, takes care
7715         of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
7716         (lookup_partial_symbol): Use symbol_matches_domain to see if the
7717         found psym domain matches the given domain.
7718         (lookup_block_symbol): Likewise.
7720 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7722         * top.c (command_line_handler_continuation): Remove.
7723         (execute_command): Do not install the above.
7725 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7727         * inf-loop.c (inferior_event_handler): Call bpstat_do_action,
7728         and catch all exceptions from it.
7729         * top.c (command_line_handler_continuation): Don't
7730         call bpstat_do_action here.
7732 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7734         * dwarf2read.c (struct dwarf2_cu): Add type_hash.
7735         (struct die_info): Remove type.
7736         (read_type_die, read_typedef, read_base_type, read_subrange_type)
7737         (read_structure_type, read_enumeration_type, read_array_type)
7738         (read_tag_pointer_type, read_tag_ptr_to_member_type)
7739         (read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
7740         (read_tag_string_type, read_subroutine_type, read_set_type)
7741         (read_unspecified_type): Delete prototypes.  Remove check for
7742         already-loaded type.  Return the new type.
7743         (set_die_type): Return the new type.
7744         (reset_die_and_siblings_types): Delete.
7745         (load_comp_unit, load_full_comp_unit): Set type_hash.
7746         (process_queue): Remove call to reset_die_and_siblings_types.
7747         (process_die): Do not read most types here.  Use read_type_die
7748         for others.
7749         (read_func_scope, dwarf2_add_member_fn): Use read_type_die.
7750         (quirk_gcc_member_function_pointer): Return the new type.
7751         (process_structure_scope, process_enumeration_scope): Use
7752         get_die_type and read the DIE's type.
7753         (read_full_die): Do not initialize die->type.
7754         (tag_type_to_type): Use read_type_die.
7755         (read_type_die): Check for already defined types.  Return the
7756         type.
7757         (determine_prefix): Use get_die_type.
7758         (set_die_type): Return the type.
7759         (get_die_type): Take a CU argument.  Check for no type_hash.
7761 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7763         * dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
7764         locals.
7766 2008-05-04  Pedro Alves  <pedro@codesourcery.com>
7768         * breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
7769         and bp_longjmp_resume breakpoints.
7770         (breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
7771         meaningful.
7772         (create_longjmp_breakpoint): Don't create bp_longjmp_resume
7773         breakpoints.  Create bp_longjmp breakpoints as momentary
7774         breakpoints.
7775         (enable_longjmp_breakpoint): Delete.
7776         (set_longjmp_breakpoint): New.
7777         (disable_longjmp_breakpoint): Delete.
7778         (delete_longjmp_breakpoint): New.
7779         (set_longjmp_resume_breakpoint): Delete.
7780         (set_momentary_breakpoint_at_pc): New.
7781         (breakpoint_re_set_one): Don't delete bp_longjmp and
7782         bp_longjmp_resume breakpoints.
7783         (breakpoint_re_set): Don't create longjmp and longjmp-resume
7784         breakpoints.
7786         * infrun.c (step_resume_breakpoint): Add comment.
7787         (struct execution_control_state): Delete handling_longjmp member.
7788         (init_execution_control_state). Don't clear handling_longjmp.
7789         (context_switch): Don't context switch handling_longjmp.
7790         (handle_inferior_event): If handling a bp_longjmp breakpoint,
7791         create a bp_longjmp_resume breakpoint, and set it as current
7792         step_resume_breakpoint, then step over the longjmp breakpoint.  If
7793         handling a bp_longjmp_resume breakpoint, don't delete the longjmp
7794         breakpoint, delete the longjmp-resume breakpoint, and stop
7795         stepping.
7796         (currently_stepping): Remove handling_longjmp from expression.
7797         (insert_step_resume_breakpoint_at_sal): Update comment.
7798         (insert_longjmp_resume_breakpoint): New.
7800         * breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
7801         (enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
7802         declarations.
7803         (set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
7804         (set_longjmp_resume_breakpoint): Delete declaration.
7806         * gdbthread.h (save_infrun_state): Remove handling_longjmp
7807         parameter.
7808         (load_infrun_state): Delete *handling_longjmp parameter.
7809         * thread.c (save_infrun_state): Remove handling_longjmp parameter.
7810         Update body.
7811         (load_infrun_state): Delete *handling_longjmp parameter.  Update
7812         body.
7814         * infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
7815         (delete_longjmp_breakpoint_cleanup): New.
7816         (step_1): Call set_longjmp_breakpoint instead of
7817         enable_longjmp_breakpoint.  Use delete_longjmp_breakpoint_cleanup
7818         instead of disable_longjmp_breakpoint_cleanup when making cleanup.
7819         (step_1_continuation): Pass thread id in the continuation args to
7820         step_once.
7821         (step_once): Add thread parameter.  Pass thread id the the
7822         continuation.
7824 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7826         Set CU BASE_ADDRESS already from partial DIEs.
7827         * dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
7828         BASE_ADDRESS_TYPE.  Set these variables from DW_AT_LOW_PC and
7829         DW_AT_ENTRY_PC.  Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
7830         from these variables if it was still unset.
7832         * Makefile.in: Update dependencies.
7833         * dwarf2read.c: Include "addrmap.h"
7834         (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
7835         (dwarf2_ranges_read): New prototype.
7836         (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
7837         Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
7838         HAS_RANGES_OFFSET, otherwise add there the contiguous range.
7839         (dwarf2_ranges_read): New parameter RANGES_PST, update the function
7840         comment for it.  Add the found ranges to RANGES_PST.  New variable
7841         BASEADDR, initialize it the common way.
7842         (dwarf2_get_pc_bounds): Update the caller for the new parameter.
7843         (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
7844         HAS_RANGES_OFFSET for the later processing.
7845         * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
7846         * symtab.c: Include "addrmap.h"
7847         (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
7848         Move the psymtab locator into ...
7849         (find_pc_sect_psymtab_closer): ... a new function.
7851 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7853         * arch-utils.c (gdbarch_update_p): Use default values for
7854         info.abfd and info.target_desc if they are NULL.
7855         (gdbarch_from_bfd): Remove assertion.
7856         (set_gdbarch_from_file): Call gdbarch_find_by_info directly,
7857         using the current target description.
7858         (gdbarch_info_fill): Do not use default values for info->abfd
7859         and info->target_desc.
7861 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7863         * symfile.c (reread_symbols): Reload EXEC_BFD on its change.
7865 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7867         * inferior.h (read_pc_pid, write_pc_pid): Remove.
7868         * regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.
7870         * regcache.c (read_pc_pid): Remove, replace by ...
7871         (regcache_read_pc): ... this function.
7872         (write_pc_pid): Remove, replace by ...
7873         (regcache_write_pc): ... this function.
7874         (read_pc, write_pc): Update.
7876         * infrun.c (displaced_step_prepare): Replace read_pc_pid and
7877         write_pc_pid by regcache_read_pc and regcache_write_pc.
7878         (displaced_step_fixup): Likewise.
7879         (resume): Likewise.  Use regcache arch instead of current_gdbarch.
7880         (prepare_to_proceed): Likewise.
7881         (proceed): Likewise.
7882         (adjust_pc_after_break): Likewise.
7883         (handle_inferior_event): Likewise.
7885         * linux-nat.c (cancel_breakpoint): Likewise.
7886         * linux-thread-db.c (check_event): Likewise.
7887         * aix-thread.c (aix_thread_wait): Likewise.
7888         * tracepoint.c (trace_dump_command): Likewise.
7890 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7892         * dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
7893         SYMBOL_LOCATION_BATON.
7895 2008-05-04  Vladimir Prus  <vladimir@codesourcery.com>
7897         * target.h (struct target_ops): New field to_auxv_parse.
7898         * auxv.c (default_auxv_parse): New, renamed from previous
7899         target_auxv_parse.
7900         (target_auxv_parse): Try to call target method.  Fallback to
7901         default_auxv_parse if not found.
7902         * procfs.c (procfs_auxv_parse): New.
7903         (init_procfs_ops): On Solaris, in 64-bit mode, install
7904         procfs_auxv_parse.
7906 2008-05-03  Adam Nemet  <anemet@caviumnetworks.com>
7908         * symfile.c (add_symbol_file_command):  Use paddress rather than
7909         hex_string to print the address.
7911 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7913         * rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
7914         return the null frame ID to terminate the backtrace.
7916 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7918         * rs6000-tdep.c: Do not include "rs6000-tdep.h".
7919         (rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
7920         (SIG_FRAME_PC_OFFSET): Likewise.
7921         (SIG_FRAME_LR_OFFSET): Likewise.
7922         (SIG_FRAME_FP_OFFSET): Likewise.
7923         (rs6000_push_dummy_call): Likewise.
7924         (rs6000_return_value): Likewise.
7925         (rs6000_convert_from_func_ptr_addr): Likewise.
7926         (branch_dest, rs6000_software_single_step): Likewise.
7927         (deal_with_atomic_sequence): Rename to ...
7928         (ppc_deal_with_atomic_sequence): ... this.  Adapt all callers.
7929         Do not call branch_dest; inline required parts of that function.
7930         (rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
7931         with SYMBOL_LINKAGE_NAME.
7932         (struct reg, regsize): Delete.
7933         (read_memory_addr): Delete; inline into callers.
7934         (rs6000_skip_prologue): Move after skip_prologue.
7935         (skip_prologue): Remove prototype.
7936         (rs6000_gdbarch_init): Remove sysv_abi variable; perform all
7937         initialization as if this variable were true.  Do not install
7938         ppc64_sysv_abi_adjust_breakpoint_address.
7940         * rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
7941         "gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
7942         and "breakpoint.h".
7943         (rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
7944         (SIG_FRAME_PC_OFFSET): Likewise.
7945         (SIG_FRAME_LR_OFFSET): Likewise.
7946         (SIG_FRAME_FP_OFFSET): Likewise.
7947         (rs6000_push_dummy_call): Likewise.
7948         (rs6000_return_value): Likewise.
7949         (rs6000_convert_from_func_ptr_addr): Likewise.
7950         (branch_dest, rs6000_software_single_step): Likewise.  Replace
7951         tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
7952         (rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
7953         rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
7954         Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
7955         Set tdep->lr_frame_offset.  Do not set tdep->text_segment_base.
7957         * rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
7958         (AIX_TEXT_SEGMENT_BASE): New macro.
7959         * rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
7960         by AIX_TEXT_SEGMENT_BASE.
7962         * ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
7963         (struct gdbarch_tdep): Remove text_segment_base member.
7964         * ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
7965         ppc64_sysv_abi_adjust_breakpoint_address.
7967         * Makefile.in (rs6000-tdep.o): Update dependencies.
7968         (rs6000-aix-tdep.o): Likewise.
7970 2008-05-03  Luis Machado  <luisgpm@br.ibm.com>
7971             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7973         * cli/cli-decode.c (lookup_cmd_1): Fix indentation.
7974         * doublest.c (convert_typed_floating): Fix typo in comment.
7975         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
7976         * frame-unwind.h (frame_sniffer_ftype): Likewise.
7977         * frame.c (frame_unwind_address_in_block): Likewise.
7978         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
7979         * symtab.h (struct symbol): Likewise.
7980         * tramp-frame.h (struct trad_frame_cache): Likewise.
7981         * value.c (allocate_repeat_value): Likewise.
7983 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7985         * infrun.c (handle_inferior_event): Do not insert breakpoints at
7986         TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).
7988 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
7990         * parse.c (parse_exp_in_context): Don't override
7991         expression_context_pc if get_selected_block returned a valid
7992         block.
7994 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
7996         * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
7997         * arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
7998         * breakpoint.c (args_for_catchpoint_enable, current_exception_event):
7999         Delete.
8000         * c-typeprint.c (c_type_print_base): Delete handling of template
8001         instantiations.
8002         * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
8003         (METHOD_PTR_TO_VOFFSET): Delete.
8004         * defs.h (QUIT_FIXME): Delete.
8005         * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
8006         (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
8007         * gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
8008         ninstantiations, and instantiations.
8009         (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
8010         (TYPE_FN_FIELD_INLINED): Delete.
8011         * srec.h (SREC_BINARY): Delete.
8012         * symtab.c (symbol_init_demangled_name): Delete.
8013         * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
8014         (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
8015         (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
8016         (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
8017         (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
8018         (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
8019         * target.h (enum thread_control_capabilities): Delete tc_switch.
8020         (target_can_switch_threads): Delete.
8022 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
8024         * Makefile.in (objfiles.o): Update.
8025         * exec.c (exec_set_section_address): Support p->addr != 0.
8026         * objfiles.c (objfile_relocate): Update exec_ops section
8027         addresses.
8028         * symfile.c (place_section): Move exec_set_section_address call...
8029         (default_symfile_offsets): ...to here.
8031 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
8033         * Makefile.in (ppc_linux_tdep_h): New macro.
8034         (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
8035         (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
8036         (powerpc_e500l_c): Likewise.
8037         (ppc-linux-nat.o): Update dependencies.
8038         (ppc-linux-tdep.o): Update dependencies.
8039         (rs6000-tdep.o): Update dependencies.
8041         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
8042         (ppc_linux_svr4_fetch_link_map_offsets): Remove.
8043         (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
8044         (ppc_supply_reg, ppc_collect_reg): Add prototypes.
8045         (tdesc_powerpc_e500): Remove.
8047         * rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
8048         and "features/rs6000/powerpc-altivec64.c".
8049         (ppc_supply_reg, ppc_collect_reg): Make global.
8050         (variants): Use tdesc_powerpc_32 for "powerpc" and
8051         tdesc_powerpc_altivec64 for "powerpc64".
8052         (_initialize_rs6000_tdep): Initialize AltiVec descriptions.
8054         * ppc-linux-tdep.h: New file.
8056         * ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
8057         Include "features/rs6000/powerpc-32l.c".
8058         Include "features/rs6000/powerpc-altivec32l.c".
8059         Include "features/rs6000/powerpc-64l.c".
8060         Include "features/rs6000/powerpc-altivec64l.c".
8061         Include "features/rs6000/powerpc-e500l.c".
8062         (ppc_linux_supply_gregset): New function.
8063         (ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
8064         (ppc32_linux_gregset): Use ppc_linux_supply_gregset.
8065         (ppc64_linux_gregset): Likewise.
8066         (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
8067         (ppc_linux_trap_reg_p): New function.
8068         (ppc_linux_write_pc): New function.
8069         (ppc_linux_core_read_description): New function.
8070         (ppc_linux_init_abi): Install ppc_linux_write_pc and
8071         ppc_linux_core_read_description.  Install orig_r3 and trap
8072         registers if present in the target description.
8073         (_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
8075         * ppc-linux-nat.c: Include "ppc-linux-tdep.h".
8076         (PT_ORIG_R3, PT_TRAP): Define if necessary.
8077         (ppc_register_u_addr): Handle orig_r3 and trap registers.
8078         (fetch_ppc_registers): Likewise.
8079         (store_ppc_registers): Likewise.
8080         (store_register): Likewise.
8081         (ppc_linux_read_description): Check whether AltiVec is supported.
8082         Check whether inferior is 32-bit or 64-bit.  Return the appropriate
8083         Linux target description.
8085         * features/Makefile (WHICH): Use rs6000/powerpc-32l and
8086         rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
8087         Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
8088         of rs6000/powerpc-64.  Use rs6000/powerpc-e500l instead of
8089         rs6000/powerpc-e500.  Update -expedite variables accordingly.
8091         * features/rs6000/power-spe.xml: Use regnum 73 for "acc".
8092         * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
8093         * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
8094         * features/rs6000/powerpc-e500.c: Regenerate.
8095         * features/rs6000/powerpc-32.c: Regenerate.
8096         * features/rs6000/powerpc-64.c: Regenerate.
8098         * features/rs6000/power-linux.xml: New file.
8099         * features/rs6000/power64-linux.xml: New file.
8100         * features/rs6000/powerpc-32l.xml: New file.
8101         * features/rs6000/powerpc-altivec32l.xml: New file.
8102         * features/rs6000/powerpc-64l.xml: New file.
8103         * features/rs6000/powerpc-altivec64l.xml: New file.
8104         * features/rs6000/powerpc-e500l.xml: New file.
8105         * features/rs6000/powerpc-32l.c: New (generated) file.
8106         * features/rs6000/powerpc-altivec32l.c: New (generated) file.
8107         * features/rs6000/powerpc-64l.c: New (generated) file.
8108         * features/rs6000/powerpc-altivec64l.c: New (generated) file.
8109         * features/rs6000/powerpc-e500l.xml: New (generated) file.
8111         * regformats/reg-ppc.dat: Remove.
8112         * regformats/reg-ppc64.dat: Remove.
8113         * regformats/rs6000/powerpc-32.dat: Remove.
8114         * regformats/rs6000/powerpc-64.dat: Remove.
8115         * regformats/rs6000/powerpc-e500.dat: Remove.
8116         * regformats/rs6000/powerpc-32l.dat: New (generated) file.
8117         * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
8118         * regformats/rs6000/powerpc-64l.dat: New (generated) file.
8119         * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
8120         * regformats/rs6000/powerpc-e500l.dat: New (generated) file.
8122 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
8124         * thread.c (delete_thread): Call observer_notify_thread_exit.
8125         * mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
8126         thread_exit observer.
8127         (mi_thread_exit): New.
8129 2008-05-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8131         * breakpoint.c (create_exception_catchpoint): Remove prototype
8132         for already deleted function.
8133         * breakpoint.h (ep_is_exception_catchpoint): Likewise.
8134         * frame.h (show_stack_frame): Remove prototype.
8135         * stack.c (show_stack_frame): Remove empty, unused function.
8136         * source.c (symtab_to_fullname, print_source_lines): Small fix
8137         in comment.
8138         * value.c (show_values): Update comments to mention "show values"
8139         command instead of "info history".
8141 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
8143         * linespec.c: Include "target.h".
8144         (minsym_found): Handle minimal symbols pointing to function
8145         descriptors.  Use find_function_start_pc.
8146         * minsyms.c (msymbol_objfile): New function.
8147         * parse.c (write_exp_msymbol): Handle minimal symbols pointing
8148         to function descriptors.
8149         * symtab.c (fixup_section): Only use minimal symbol at the same
8150         address to determine section of a symbol.
8151         (find_function_start_pc): New function.
8152         (find_function_start_sal): Use it.
8153         * symtab.h (msymbol_objfile): Add prototype.
8154         (find_function_start_pc): Likewise.
8155         * value.c: Include "objfiles.h".
8156         (value_fn_field): Handle minimal symbols pointing to function
8157         descriptors.
8158         * Makefile.in (linespec.o): Update dependencies.
8159         (value.o): Likewise.
8161 2008-05-02  Joel Brobecker  <brobecker@adacore.com>
8163         * ada-lang.c (unwrap_value): Handle the case where the "F" field
8164         inside a PAD type is a bitfield.
8166 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
8168         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
8169         TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
8170         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
8171         Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
8172         Allow typedefs when checking for function pointer arguments.
8173         Right-align small structs passed on the stack.
8174         (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
8175         TYPE_CODE_CHAR the same as TYPE_CODE_INT.
8176         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
8178 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8180         * Makefile.in (arm-tdep.o): Update.
8181         * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
8182         (struct arm_per_objfile, arm_compare_mapping_symbols): New.
8183         (arm_pc_is_thumb): Use mapping symbols.
8184         (arm_objfile_data_cleanup, arm_record_special_symbol): New.
8185         (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
8186         (_initialize_arm_tdep): Initialize arm_objfile_data_key.
8187         * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
8188         * gdbarch.sh: Add record_special_symbol.
8189         * gdbarch.c, gdbarch.h: Regenerated.
8190         * objfiles.c (struct objfile_data): Add cleanup member.
8191         (register_objfile_data_with_cleanup): New function, from
8192         register_objfile_data.
8193         (register_objfile_data): Use it.
8194         (objfile_free_data): Call clear_objfile_data.
8195         (clear_objfile_data): Call cleanup functions.
8196         * objfiles.h (register_objfile_data_with_cleanup): Declare.
8198 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8200         * objfiles.c (init_entry_point_info): Handle shared libraries.
8202 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8204         * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
8205         lowest_pc.
8207 2008-05-02  Jim Blandy  <jimb@codesourcery.com>
8208             Pedro Alves  <pedro@codesourcery.com>
8210         Implement displaced stepping.
8212         * gdbarch.sh (max_insn_length): New 'variable'.
8213         (displaced_step_copy, displaced_step_fixup)
8214         (displaced_step_free_closure, displaced_step_location): New
8215         functions.
8216         (struct displaced_step_closure): Add forward declaration.
8217         * gdbarch.c, gdbarch.h: Regenerated.
8219         * arch-utils.c: #include "objfiles.h".
8220         (simple_displaced_step_copy_insn)
8221         (simple_displaced_step_free_closure)
8222         (displaced_step_at_entry_point): New functions.
8223         * arch-utils.h (simple_displaced_step_copy_insn)
8224         (simple_displaced_step_free_closure)
8225         (displaced_step_at_entry_point): New prototypes.
8227         * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
8228         (I386_MAX_MATCHED_INSN_LEN): ... this.
8229         (i386_absolute_jmp_p, i386_absolute_call_p)
8230         (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
8231         (i386_displaced_step_fixup): New functions.
8232         (struct i386_insn, i386_match_insn): Update.
8233         (i386_gdbarch_init): Set gdbarch_max_insn_length.
8234         * i386-tdep.h (I386_MAX_INSN_LEN): New.
8235         (i386_displaced_step_fixup): New prototype.
8236         * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
8237         Register gdbarch_displaced_step_copy,
8238         gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
8239         and gdbarch_displaced_step_location functions.
8241         * infrun.c (debug_displaced): New variable.
8242         (show_debug_displaced): New function.
8243         (struct displaced_step_request): New struct.
8244         (displaced_step_request_queue, displaced_step_ptid)
8245         (displaced_step_gdbarch, displaced_step_closure)
8246         (displaced_step_original, displaced_step_copy)
8247         (displaced_step_saved_copy, can_use_displaced_stepping): New
8248         variables.
8249         (show_can_use_displaced_stepping, use_displaced_stepping)
8250         (displaced_step_clear, cleanup_displaced_step_closure)
8251         (displaced_step_dump_bytes, displaced_step_prepare)
8252         (displaced_step_clear_cleanup, write_memory_ptid)
8253         (displaced_step_fixup): New functions.
8254         (resume): Call displaced_step_prepare.
8255         (proceed): Call read_pc once, and remember the value.  If using
8256         displaced stepping, don't remove breakpoints.
8257         (handle_inferior_event): Call displaced_step_fixup.  Add some
8258         debugging output.  When we try to step over a breakpoint, but get
8259         a signal to deliver to the thread instead, ensure the step-resume
8260         breakpoint is actually inserted.  If a thread hop is needed, and
8261         displaced stepping is enabled, don't remove breakpoints.
8262         (init_wait_for_inferior): Call displaced_step_clear.
8263         (_initialize_infrun): Add "set debug displaced" command.  Add
8264         "maint set can-use-displaced-stepping" command.  Clear
8265         displaced_step_ptid.
8266         * inferior.h (debug_displaced): Declare variable.
8267         (displaced_step_dump_bytes): Declare function.
8269         * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
8270         dependencies.
8272 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8274         * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
8275         (arm_force_mode_string, arm_show_fallback_mode)
8276         (arm_show_force_mode): New.
8277         (arm_pc_is_thumb): Honor fallback-mode and force-mode.  Use
8278         arm_frame_is_thumb.
8279         (_initialize_arm_tdep): Add "set arm fallback-mode"
8280         and "set arm force-mode".
8281         * NEWS: Document new commands.
8283 2008-05-02  Andrew Stubbs  <andrew.stubbs@st.com>
8285         * main.h (batch_silent): Declare.
8286         * event-top.c: Include main.h.
8287         (gdb_setup_readline): Remove extern batch_silent declaration.
8288         * infrun.c (normal_stop): Don't print source location when running in
8289         --batch-silent mode.
8290         * Makefile.in (event-top.o): Add main.h dependency.
8292 2008-05-02  Andreas Schwab  <schwab@suse.de>
8294         * target.h (struct target_ops): Add
8295         to_watchpoint_addr_within_range.
8296         (target_watchpoint_addr_within_range): New function.
8297         * target.c (update_current_target): Inherit
8298         to_watchpoint_addr_within_range, defaulting to
8299         default_watchpoint_addr_within_range.
8300         (default_watchpoint_addr_within_range): New function.
8301         (debug_to_watchpoint_addr_within_range): New function.
8302         (setup_target_debug): Set to_watchpoint_addr_within_range.
8303         * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
8304         New function.
8305         (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
8306         * breakpoint.c (watchpoints_triggered): Use
8307         target_watchpoint_addr_within_range.
8309 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8311         * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
8312         (i[34567]86-*-dicos*, x86_64-*-dicos*):
8313         Set gdb_osabi to GDB_OSABI_DICOS.
8315         * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
8316         * osabi.c (gdb_osabi_name): Add "DICOS".
8318         * i386-dicos-tdep.c: New file.
8320         * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
8321         (ALLDEPFILES): Add i386-dicos-tdep.c.
8322         (i386-dicos-tdep.o): New rule.
8324 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8326         * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
8327         and register the fork's PTID as a thread.
8329 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8331         PR gdb/1665
8332         * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
8333         assign its value to the breakpoint created.
8334         (create_breakpoints): Add breakpoint_ops argument and pass it
8335         to create_breakpoint call.
8336         (break_command_really): Add breakpoint_ops argument and pass/assign
8337         appropriately.
8338         (break_command_1): Pass NULL as ops argument.
8339         (set_breakpoint): Pass NULL as ops argument.
8340         (print_one_exception_catchpoint): Print <PENDING> if no loc available.
8341         (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
8342         catch and throw catchpoints.
8344 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8346         PR gdb/2343
8347         * corelow.c (core_open): Use gdbarch_target_signal_from_host to
8348         translate signal numeric value from the target to GDB's enum
8349         target_signal.
8350         * gdbarch.c, gdbarch.h: Regenerated.
8351         * gdbarch.sh: Added two new functions target_signal_from_host and
8352         target_signal_to_host.
8353         * target.h (default_target_signal_from_host,
8354         default_target_signal_to_host): New functions - declarations.
8355         * signals/signals.c (struct gdbarch): New declaration.
8356         (default_target_signal_to_host, default_target_signal_from_host): New
8357         functions.
8359 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8360             Pedro Alves  <pedro@codesourcery.com>
8362         Based on work by Jan Kratochvil <jan.kratochvil@redhat.com> and Jeff
8363         Johnston <jjohnstn@redhat.com>.
8365         * NEWS: Mention attach to stopped process fix.
8366         * infcmd.c (detach_command, disconnect_command): Discard the thread
8367         list.
8368         * infrun.c (handle_inferior_event): Do not ignore non-SIGSTOP while
8369         attaching.  Use signal_stop_state.
8370         (signal_stop_state): Check stop_soon.
8371         * linux-nat.c (kill_lwp): Declare earlier.
8372         (pid_is_stopped, linux_nat_post_attach_wait): New.
8373         (lin_lwp_attach_lwp): Use linux_nat_post_attach_wait.  Update
8374         comments.
8375         (linux_nat_attach): Use linux_nat_post_attach_wait.
8376         (detach_callback, linux_nat_detach): Improve handling for signalled
8377         processes.
8378         (linux_nat_pid_to_str): Always print out the LWP ID if it differs
8379         from the process ID.
8380         * Makefile.in (infcmd.o): Update.
8382 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8384         * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
8385         * arm-tdep.c (arm_frame_is_thumb): New.
8386         (arm_pc_is_thumb): Clarify comment.
8387         (thumb_analyze_prologue): Remove PC special case.
8388         (thumb_scan_prologue): Take a block_addr argument.  Use it for
8389         find_pc_partial_function.  Remove unused variables.
8390         (arm_scan_prologue): Use arm_frame_is_thumb.  Use the block address
8391         for find_pc_partial_function.  Remove PC special case.
8392         (arm_prologue_prev_register): Add special handling for PC and CPSR.
8393         (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
8394         (arm_get_next_pc): Use arm_frame_is_thumb.
8395         (arm_write_pc): Use CPSR_T instead of 0x20.
8396         (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
8397         * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
8398         (CPSR_T): Define.
8399         * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
8400         DWARF2_FRAME_REG_FN.
8401         * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
8402         DWARF2_FRAME_REG_FN.
8403         (struct dwarf2_frame_state_reg): Add FN to loc union.
8405 2008-05-01  Nick Roberts  <nickrob@snap.net.nz>
8407         * exec.c (print_section_info): Add missing '\n'.
8409 2008-05-01  Vladimir Prus  <vladimir@codesourcery.com>
8411         * thread.c (add_thread): Move observer call to ...
8412         (add_thread_silent): ... here.
8414 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8416         * rs6000-tdep.c: Update for unwinder changes.
8417         * ppcobsd-tdep.c: Likewise.
8419 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8421         * s390-tdep.c: Update for unwinder changes.
8423 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8425         * spu-tdep.c: Update for unwinder changes.
8427 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8429         * hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
8430         ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
8431         sparc64-linux-tdep.c: Update for unwinder changes.
8433 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8435         * mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
8436         for unwinder changes.
8437         * mips-tdep.c: Likewise.
8438         (mips_stub_frame_cache): Unwind the ABI stack pointer, not the
8439         raw one.
8441 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8443         * arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
8444         unwinder changes.
8446 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8448         Update i386 and amd64 ports for unwinder changes.
8450         * amd64-tdep.c (amd64_frame_cache): Expect this_frame.
8451         (amd64_frame_this_id, amd64_frame_prev_register): Update signature.
8452         (amd64_frame_unwind): Use default_frame_sniffer.
8453         (amd64_frame_sniffer): Delete.
8454         (amd64_sigtramp_frame_cache): Expect this_frame.
8455         (amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
8456         (amd64_sigtramp_frame_sniffer): Update signature.
8457         (amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
8458         (amd64_frame_base_address): Expect this_frame.
8459         (amd64_dummy_id): Renamed from amd64_unwind_dummy_id.  Expect
8460         this_frame.
8461         (amd64_init_abi): Use set_gdbarch_dummy_id and
8462         frame_unwind_append_unwinder.
8463         * i386-tdep.c (i386_frame_cache): Expect this_frame.
8464         (i386_frame_this_id, i386_frame_prev_register): Update signature.
8465         (i386_frame_unwind): Use default_frame_sniffer.
8466         (i386_frame_sniffer): Delete.
8467         (i386_sigtramp_frame_cache): Expect this_frame.
8468         (i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
8469         (i386_sigtramp_frame_sniffer): Update signature.
8470         (i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
8471         (i386_frame_base_address): Update signature.
8472         (i386_dummy_id): Rename from i386_unwind_dummy_id.  Expect this_frame.
8473         (i386_push_dummy_call): Update comment.
8474         (i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
8475         Expect this_frame.
8476         (i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
8477         and frame_unwind_append_unwinder.
8478         * amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
8479         amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
8480         i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
8481         i386nbsd-tdep.c: Update for unwinder changes.
8483 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8485         * trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
8486         (trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
8487         this_frame.
8488         (trad_frame_get_prev_register, trad_frame_get_register): Update signature.
8489         * trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
8490         (trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
8491         signature.
8492         * tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
8493         this_frame.
8494         (tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
8495         Update signature.
8496         * tramp-frame.h (struct tramp_frame): Update signature of init.
8497         * Makefile.in (trad-frame.o): Update.
8499 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8501         * dwarf2-frame.c (read_reg): Expect this_frame in the baton.
8502         (execute_stack_op): Put this_frame in the baton.
8503         (execute_cfa_program): Take this_frame.
8504         (struct dwarf2_frame_ops): Update comment for signal_frame_p.
8505         (dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
8506         (dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
8507         (dwarf2_frame_this_id): Adjust to work on this_frame.
8508         (dwarf2_signal_frame_this_id): Delete.
8509         (dwarf2_frame_prev_register): Update signature.  Use new frame
8510         unwind methods.
8511         (dwarf2_frame_sniffer): Update signature.  Expect this_frame.
8512         (dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
8513         dwarf2_frame_sniffer.
8514         (dwarf2_append_unwinders): New.
8515         (dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
8516         this_frame.
8517         * sparc-tdep.c (sparc32_dwarf2_struct_return_p)
8518         (sparc32_dwarf2_frame_init_reg): Expect this_frame.
8519         * cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
8520         * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
8521         * s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
8522         * sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
8523         * sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
8524         * dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
8525         (dwarf2_append_unwinders): Declare.
8526         (dwarf2_frame_base_sniffer): Update declaration.
8527         * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
8528         this_frame.
8530 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8532         Convert frame unwinders to use the current frame and
8533         "struct value".
8535         * frame.c (frame_debug): Make global.
8536         (get_frame_id): Pass this frame to unwinder routines.
8537         (frame_pc_unwind): Remove unused unwind->prev_pc support.
8538         (do_frame_register_read): Do not discard the return value of
8539         frame_register_read.
8540         (frame_register_unwind): Remove debug messages.  Use
8541         frame_unwind_register_value.
8542         (frame_unwind_register_value, get_frame_register_value): New
8543         functions.
8544         (create_new_frame, get_frame_base_address, get_frame_locals_address)
8545         (get_frame_args_address, get_frame_type): Pass this frame to
8546         unwinder routines.
8547         (frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
8548         functions.
8549         * frame.h: Update comments.
8550         (frame_debug, frame_unwind_register_value, get_frame_register_value)
8551         (frame_prepare_for_sniffer): Declare.
8552         * frame-unwind.h: Update comments and parameter names.
8553         (default_frame_sniffer): Declare.
8554         (frame_prev_register_ftype): Return a struct value *.
8555         (struct frame_unwind): Remove prev_pc member.
8556         (frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
8557         (frame_unwind_append_unwinder, frame_unwind_got_optimized)
8558         (frame_unwind_got_register, frame_unwind_got_memory)
8559         (frame_unwind_got_constant, frame_unwind_got_address): Declare.
8560         * frame-base.h: Update comments and parameter names.
8561         * valops.c (value_fetch_lazy): Use get_frame_register_value.  Iterate
8562         if necessary.  Add debugging output.
8563         * sentinel-frame.c (sentinel_frame_prev_register)
8564         (sentinel_frame_this_id): Update for new signature.
8565         (sentinel_frame_prev_pc): Delete.
8566         (sentinel_frame_unwinder): Remove prev_pc.
8567         * ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
8568         prev_pc.
8569         * libunwind-frame.c (libunwind_frame_unwind): Likewise.
8570         * frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
8571         (frame_unwind_append_sniffer): Delete.
8572         (frame_unwind_append_unwinder): New function.
8573         (frame_unwind_find_by_frame): Take this frame.  Only use sniffers
8574         from unwinders.  Use frame_prepare_for_sniffer.
8575         (default_frame_sniffer, frame_unwind_got_optimized)
8576         (frame_unwind_got_register, frame_unwind_got_memory)
8577         (frame_unwind_got_constant, frame_unwind_got_address): New functions.
8578         * dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
8579         (dummy_frame_prev_register, dummy_frame_this_id): Update for new
8580         signature.
8581         * gdbarch.sh: Replace unwind_dummy_id with dummy_id.
8582         * gdbarch.c, gdbarch.c: Regenerated.
8583         * frame-base.c (default_frame_base_address)
8584         (default_frame_locals_address, default_frame_args_address): Update
8585         for new signature.
8586         (frame_base_find_by_frame): Pass this frame to unwinder routines.
8587         * infcall.c (call_function_by_hand): Update comments.
8588         * Makefile.in (frame-unwind.o): Update dependencies.
8590 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8592         * ada-lang.c (ada_value_primitive_packed_val): Only check
8593         value_lazy for memory lvals.
8594         * findvar.c (value_of_register_lazy): New function.
8595         (locate_var_value): Only check value_lazy for memory lvals.
8596         * valarith.c (value_subscripted_rvalue): Likewise.
8597         * valops.c (value_fetch_lazy): Handle both memory and register
8598         lvals.
8599         (search_struct_field, value_slice): Only check value_lazy for memory
8600         lvals.
8601         * value.c (struct value): Update comment for lazy.
8602         (value_primitive_field): Only check value_lazy for memory lvals.
8603         * value.h (value_lazy): Update comment.
8604         (value_of_register_lazy): Declare.
8606 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8608         * corefile.c (reopen_exec_file): Close any open files.
8610 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8612         * ia64-tdep.c (ia64_memory_remove_breakpoint): Set
8613         show_memory_breakpoints to 1 while reading the instruction bundle.
8615 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8617         * gdbarch.sh: Document the return_value method. Explain that
8618         the FUNCTYPE parameter might be NULL.
8619         * gdbarch.h: Regenerated.
8620         * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
8621         type when calling using_struct_return, as this is unnecessary
8622         on this target.
8624 2008-04-28  Joel Brobecker  <brobecker@adacore.com>
8626         * terminal.h (create_tty_session): Fix return type.
8628 2008-04-26  Vladimir Prus  <vladimir@codesourcery.com>
8630         * mi/mi-interp.c (mi_new_thread): Quote the thread id.
8632 2008-04-26  Joel Brobecker  <brobecker@adacore.com>
8634         * breakpoint.c (condition_command, commands_from_control_command)
8635         (break_command_really): Minor reformatting.
8637 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8639         * dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.
8641 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8643         * amd64-tdep.c (amd64_get_longjmp_target): New.
8644         (amd64_init_abi): Register amd64_get_longjmp_target as
8645         gdbarch_get_longjmp_target callback.
8646         * i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
8648 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8650         * breakpoint.h (enum bpstat_what_main_action): Delete
8651         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
8653         * breakpoint.c (clrs): Delete.
8654         (bpstat_what): Update table.
8656         * infrun.c (handle_inferior_event): Remove
8657         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
8659 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8661         * mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
8662         Adjust all prototypes using mi_cmd_args_ftype to use
8663         mi_cmd_argv_ftype.
8664         (struct mi_cmd): Remove the args_func field.
8665         * mi/mi-cmds.c: Don't provide value for the args_func field.
8666         * mi/mi-main.c (mi_execute_async_cli_command)
8667         (mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
8668         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
8669         (mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
8670         (mi_cmd_exec_continue, mi_cmd_exec_interrupt)
8671         (mi_cmd_target_download): Adjust.
8672         (mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
8673         (mi_cmd_execute): Do not check for args_func.
8674         (mi_execute_async_cli_command): Adjust.
8675         * mi/mi-parse.c: Don't check for args_func.
8677 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8679         * breakpoint.c (bpstat_check_location)
8680         (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
8681         New, extracted from bpstat_stop_status.
8682         (bpstat_stop_status): Use the above.
8684 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8686         * mi/mi-main.c (last_async_command): Rename to current_token.
8687         (previous_async_command): Remove.
8688         (mi_cmd_gdb_exit): Adjust.
8689         (mi_cmd_exec_interrupt): Don't dance with previous_async_command.
8690         (mi_cmd_target_select): Adjust.
8691         (mi_cmd_execute): Don't set previous_async_command.  Free token
8692         here even in async mode.
8693         (mi_execute_async_cli_command): Adjust.
8694         (mi_exec_async_cli_cmd_continuation): Adjust.  Do not free the
8695         token.
8696         (mi_load_progress): Adjust.
8698 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8700         * infcmd.c (step_1_continuation): Always disable longjmp
8701         breakpoint if we're not going to do another step.
8703 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8705         exec_cleanup murder.
8706         * breakpoint.c (until_break_command_continuation): Add
8707         the 'error' parameter.  Directly delete the breakoint as
8708         opposed to running cleanups.
8709         (until_break_command): Install continuation only
8710         after starting the target.  Don't use exec cleanups,
8711         use ordinary cleanups.  Discard cleanups is successfully
8712         started the target in async mode.
8713         (make_cleanup_delete_breakpoint): Remove.
8714         * breakpoint.h (make_cleanup_delete_breakpoint): Remove
8715         declaration.
8716         * defs.h (do_exec_cleanups, make_exec_cleanup): Remove
8717         declarations.
8718         (struct continations): Add the 'error' parameter to the
8719         continuation_hook field.
8720         (add_continuation, do_all_continuations)
8721         (add_intermediate_continuation)
8722         (do_all_intermediate_continuations): Add the 'error' parameter.
8723         * exceptions.c (throw_exception): Don't call do_exec_cleanups.
8724         * inf-loop.c (inferior_event_handler): Instead of calling
8725         discard_all_continuations, use do_all_continuations with 1 as
8726         'error' parameter.  Pass 0 as 'error' parameter in existing uses
8727         of discard_all_continuations.
8728         * infcmd.c (step_1): Do not use exec cleanup.  For async case, discard
8729         cleanups.
8730         (step_once): Install continuation only after resuming the target.
8731         (step_1_continuation): Disable longjmp breakpoint on error.
8732         (finish_command_continuation): Add the error parameter.  Delete
8733         the finish breakpoint directly, do not use cleanups.
8734         (finish_command): Do not use exec_cleanups. Always setup
8735         continuation.  For sync case, immediately run them.
8736         (attach_command_continuation): Add the error parameter.
8737         * infrun.c (fetch_inferior_event): Do not use exec cleanups to
8738         remove step_resume_breakpoint -- adjust delete it directly.
8739         * interps.c (interp_set): Adjust call to do_all_continations.
8740         * mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
8741         do exec cleanups.
8742         * mi/mi-main.c (mi_cmd_target_select): Do not do exec
8743         cleanups.
8744         (mi_cmd_execute): Do not use exec_cleanup.
8745         (mi_execute_async_cli_command): Simplify the string concatenation
8746         logic.  Do no use exec cleanup.
8747         (mi_exec_async_cli_cmd_continuation): New parameter error.
8748         Free last_async_command.
8749         * top.c (command_line_handler_continuation): New parameter error.
8750         * utils.c (exec_cleanup_chain, make_exec_cleanup)
8751         (do_exec_cleanups): Remove.
8752         (add_continuation, do_all_continations)
8753         (add_intermediate_continuation)
8754         (do_all_intermediate_continuations): New parameter error.
8756 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8758         * breakpoint.h (bp_location_p): New typedef.
8759         Register a vector of bp_location_p.
8760         * breakpoint.c (always_inserted_mode)
8761         (show_always_inserted_mode): New.
8762         (unlink_locations_from_global_list): Remove.
8763         (update_global_location_list)
8764         (update_global_location_list_nothrow): New.
8765         (update_watchpoint): Don't free locations.
8766         (should_insert_location): New.
8767         (insert_bp_location): Use should_insert_location.
8768         (insert_breakpoint_locations): Copied from
8769         insert_breakpoints.
8770         (insert_breakpoint): Use insert_breakpoint_locations.
8771         (bpstat_stop_status): Call update_global_location_list
8772         when disabling breakpoint.
8773         (allocate_bp_location): Don't add to bp_location_chain.
8774         (set_raw_breakpoint)
8775         (create_longjmp_breakpoint, enable_longjmp_breakpoint)
8776         (disable_longjmp_breakpoint, create_overlay_event_breakpoint)
8777         (enable_overlay_breakpoints, disable_overlay_breakpoints)
8778         (set_longjmp_resume_breakpoint)
8779         (enable_watchpoints_after_interactive_call_stop)
8780         (disable_watchpoints_before_interactive_call_start)
8781         (create_internal_breakpoint)
8782         (create_fork_vfork_event_catchpoint)
8783         (create_exec_event_catchpoint, set_momentary_breakpoint)
8784         (create_breakpoints, break_command_1, watch_command_1)
8785         (create_exception_catchpoint)
8786         (handle_gnu_v3_exceptions)
8787         (disable_breakpoint, breakpoint_re_set_one)
8788         (create_thread_event_breakpoint, create_solib_event_breakpoint)
8789         (create_ada_exception_breakpoint): : Don't call check_duplicates.
8790         Call update_global_location_list.
8791         (delete_breakpoint): Don't remove locations and don't
8792         try to reinsert them. Call update_global_location_list.
8793         (update_breakpoint_locations): Likewise.
8794         (restore_always_inserted_mode): New.
8795         (update_breakpoints_after_exec): Temporary disable
8796         always inserted mode.
8797         * Makefile.in: Update dependencies.
8799         * infrun.c (proceed): Remove breakpoints while stepping
8800         over breakpoint.
8801         (handle_inferior_event): Don't remove or insert
8802         breakpoints.
8803         * linux-fork.c (checkpoint_command): Remove breakpoints
8804         before fork and insert after.
8805         (linux_fork_context): Remove breakpoints before switch
8806         and insert after.
8807         * target.c (target_disconnect, target_detach): Remove
8808         breakpoints from target.
8811 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8813         * breakpoint.c (print_one_breakpoint_location): In MI
8814         mode, report the location string the breakpoint was
8815         originally created with.
8817 2008-04-23  Maxim Grigoriev  <maxim2405@gmail.com>
8819         * Makefile.in (xtensa-tdep.o): Update dependencies.
8820         * configure.tgt (xtensa*): Update dependencies.
8821         * xtensa-tdep.c (arreg_number): Renamed from areg_number.
8822         Local variable areg renamed to arreg.
8823         (areg_number): New function.
8824         (xtensa_pseudo_register_read, xtensa_pseudo_register_write)
8825         (xtensa_extract_return_value, xtensa_store_return_value): areg_number
8826         replaced by arreg_number.
8827         (xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
8828         (xtensa_alloc_frame_cache): Initialize cache->wd.ws.
8829         (xtensa_scan_prologue): New function.
8830         (xtensa_frame_cache): New local fp_regnum. Handle separately the case,
8831         when ENTRY instraction hasn't been executed yet. Get the frame pointer
8832         value based on prologue analysis. Fix the bugs preventing WS and
8833         AR4-AR7/A11 registers from getting right values for intermediate frames,
8834         whose registers have been already spilled.
8835         (xtensa_frame_prev_register): Fix WS register value. Use are_number
8836         and arreg_number appropriately.
8837         (xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
8838         svr4_ilp32_fetch_link_map_offsets.
8840 2008-04-23  Andrew Stubbs  <andrew.stubbs@st.com>
8842         * printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
8843         (printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
8845 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
8847         * acinclude.m4: Add override.m4.
8848         * configure: Regenerate.
8850 2008-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
8852         * ada-lang.c (get_selections): Variable PROMPT made non-const and
8853         initialized with a trailing space now.  Use PROMPT_ARG of
8854         COMMAND_LINE_INPUT instead of printing it ourselves.
8856 2008-04-22  Joel Brobecker  <brobecker@adacore.com>
8858         * NEWS: Document support for 64-bit core file.
8860 2008-04-22  Corinna Vinschen  <vinschen@redhat.com>
8862         * NEWS: Add information on calling convention and new SH CLI options.
8864         * sh-tdep.c (sh_cc_gcc): New static string.
8865         (sh_cc_renesas): Ditto.
8866         (sh_cc_enum): New static string array.
8867         (sh_active_calling_convention): New static string pointer denoting
8868         active user chosen ABI.
8869         (sh_is_renesas_calling_convention): New function to return function
8870         specific ABI, or user choice if necessary.
8871         (sh_use_struct_convention): Rename first argument and turn around its
8872         meaning.  Check for renesas ABI and return accordingly.
8873         (sh_use_struct_convention_nofpu): New function.
8874         (sh_next_flt_argreg): Get function type as third parameter.  Check
8875         for renesas ABI and choose floating registers accordingly.
8876         (sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
8877         struct return slot accordingly.
8878         (sh_push_dummy_call_nofpu): Ditto.
8879         (sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
8880         Evaluate ABI and give to sh_use_struct_convention_nofpu.
8881         (sh_return_value_fpu):  Evaluate ABI and give to
8882         sh_use_struct_convention.
8883         (show_sh_command): New function.
8884         (set_sh_command): Ditto.
8885         (_initialize_sh_tdep): Initialize `set/show sh calling-convention
8886         CLI command.
8888         * gdbarch.sh (return_value): Add func_type argument.
8889         * gdbarch.c: Regenerate.
8890         * gdbarch.h: Ditto.
8891         * eval.c (evaluate_subexp_standard): Rename local variable value_type to
8892         val_type so as not to collide with value_type function.  Call
8893         using_struct_return with additional function type argument.
8894         * infcall.c (call_function_by_hand): Call using_struct_return and
8895         gdbarch_return_value with additional function type argument.
8896         * infcmd.c (print_return_value): Take addition func_type argument.
8897         Call gdbarch_return_value with additional function type argument.
8898         (finish_command_continuation): Call print_return_value with additional
8899         function type argument.
8900         (finish_command): Ditto.
8901         * sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
8902         additional function type argument.
8903         * stack.c (return_command): Call using_struct_return and
8904         gdbarch_return_value with additional function type argument.
8905         * value.c (using_struct_return): Take additional function type argument.
8906         * value.h (using_struct_return): Accommodate declaration.
8907         * alpha-tdep.c (alpha_return_value): Add func_type argument.
8908         * amd64-tdep.c (amd64_return_value): Ditto.
8909         * arm-tdep.c (arm_return_value): Ditto.
8910         * avr-tdep.c (avr_return_value): Ditto.
8911         * cris-tdep.c (cris_return_value): Ditto.
8912         * frv-tdep.c (frv_return_value): Ditto.
8913         * h8300-tdep.c (h8300_return_value): Ditto.
8914         (h8300h_return_value): Ditto.
8915         * hppa-tdep.c (hppa32_return_value): Ditto.
8916         (hppa64_return_value): Ditto.
8917         * i386-tdep.c (i386_return_value): Ditto.
8918         * ia64-tdep.c (ia64_return_value): Ditto.
8919         * iq2000-tdep.c (iq2000_return_value): Ditto.
8920         * m32c-tdep.c (m32c_return_value): Ditto.
8921         * m32r-tdep.c (m32r_return_value): Ditto.
8922         * m68hc11-tdep.c (m68hc11_return_value): Ditto.
8923         * m68k-tdep.c (m68k_return_value): Ditto.
8924         (m68k_svr4_return_value): Ditto.
8925         * m88k-tdep.c  (m88k_return_value): Ditto.
8926         * mep-tdep.c (mep_return_value): Ditto.
8927         * mips-tdep.c (mips_eabi_return_value): Ditto.
8928         (mips_n32n64_return_value): Ditto.
8929         (mips_o32_return_value): Ditto.
8930         (mips_o64_return_value): Ditto.
8931         * mn10300-tdep.c (mn10300_return_value): Ditto.
8932         * mt-tdep.c (mt_return_value): Ditto.
8933         * ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
8934         * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
8935         (ppc_sysv_abi_broken_return_value): Ditto.
8936         (ppc64_sysv_abi_return_value): Ditto.
8937         * ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
8938         (ppc_sysv_abi_broken_return_value): Ditto.
8939         (ppc64_sysv_abi_return_value): Ditto.
8940         * ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
8941         * rs6000-tdep.c (rs6000_return_value): Ditto.
8942         * s390-tdep.c (s390_return_value): Ditto.
8943         * score-tdep.c (score_return_value): Ditto.
8944         * sh-tdep.c (sh_return_value_nofpu): Ditto.
8945         (sh_return_value_fpu): Ditto.
8946         * sh64-tdep.c (sh64_return_value): Ditto.
8947         * sparc-tdep.c (sparc32_return_value): Ditto.
8948         * sparc64-tdep.c (sparc64_return_value): Ditto.
8949         * spu-tdep.c (spu_return_value): Ditto.
8950         * v850-tdep.c (v850_return_value): Ditto.
8951         * vax-tdep.c (vax_return_value): Ditto.
8952         * xstormy16-tdep.c (xstormy16_return_value): Ditto.
8953         * xtensa-tdep.c (xtensa_return_value): Ditto.
8955         * gdbtypes.h (struct type): Add calling_convention member.
8956         * dwarf2read.c (read_subroutine_type): Add calling convention read
8957         from DW_AT_calling_convention attribute to function type.
8959 2008-04-22  Markus Deuling  <deuling@de.ibm.com>
8961         * eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
8962         multi_f77_subscript to support values from registers.
8963         * valarith.c (value_subscripted_rvalue): Remove prototype and static.
8964         * value.h (value_subscripted_rvalue): Add prototype.
8966         * f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
8967         Fix output.
8968         * f-valprint.c (f_val_print): Likewise.
8970 2008-04-21  Craig Silverstein  <csilvers@google.com>
8972         * dwarf2read.c (zlib_decompress_section): Define abfd in the
8973         !HAVE_ZLIB_H case.
8975 2008-04-21  Pedro Alves  <pedro@codesourcery.com>
8977         * symfile.c (syms_from_objfile): Don't warn if lowest loadable
8978         section is not a code section.
8980 2008-04-19  Craig Silverstein  <csilvers@google.com>
8982         * NEWS: Add information on compressed debug sections.
8984 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8986         * mi/mi-cmd-var.c (varobj_update_one): Print new
8987         value for variable objects that changed type.
8989 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8991         * varobj.c (varobj_invalidate): Don't touch floating
8992         varobjs.
8994 2008-04-19  Mark Kettenis  <kettenis@gnu.org>
8996         * symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
8997         (multiple_symbols_cancel): Remove extra const.
8998         * symtab.h: Likewise.
9000 2008-04-19  Nick Roberts  <nickrob@snap.net.nz>
9002         * interps.c (top_level_interpreter): Rename static variable...
9003         (top_level_interpreter_ptr): ...to this.
9004         (top_level_interpreter): New function.
9006         * interps.h: New extern for top_level_interpreter.
9008         * linespec.c: Include interps.h and mi/mi-cmds.h.
9009         (decode_line_2): When using MI, always set all breakpoints in menu.
9011         * Makefile.in (linespec.o, mi-interp.o): Add dependencies.
9013 2008-04-18  Craig Silverstein  <csilvers@google.com>
9015         * configure.ac (AC_SEARCH_LIBS): Add check for zlib.
9016         * config.in, configure: Regenerate.
9017         * dwarf2read.c: Include zlib.h if present.
9018         Modified *_SECTION macros.
9019         (section_is_p): New.
9020         (dwarf2_locate_sections): Use section_is_p instead of strcmp
9021         (dwarf2_resize_section): New.
9022         to determine whether a given section has a given name.
9023         (zlib_decompress_section): New.
9024         (dwarf2_read_section): Read the compressed section if present
9025         in the binary.
9026         * MAINTAINERS: Added myself to section Write After Approval.
9028 2008-04-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9030         * defs.h (exec_set_section_offsets): Remove prototype.
9031         * exec.c (exec_set_section_offsets): Remove function.
9033 2008-04-18  Joel Brobecker  <brobecker@adacore.com>
9035         * stabsread.c (cleanup_undefined_types_1): Add instance flags check
9036         in the search for the matching symbol.
9038 2008-04-17  Marc Khouzam  <marc.khouzam@ericsson.com>
9040         * breakpoint.c (update_watchpoint): Always reparse
9041         condition.
9043 2008-04-17  Joel Brobecker  <brobecker@adacore.com>
9045         * breakpoint.c (print_one_breakpoint_location): Make sure to print
9046         the breakpoint address only once.
9048 2008-04-17  Dennis Roberts  <dennis.roberts@sunquestinfo.com>
9050         * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
9051         rather than a hard-coded architecture, for xcoff executables.
9053 2008-04-17  Doug Evans  <dje@google.com>
9055         * buildsym.c (watch_main_source_file_lossage): New fn.
9056         (end_symtab): Call it.
9058         * source.c (find_and_open_source): Add some comments clarifying
9059         handling of FULLNAME argument.  Make static.  Remove pointless
9060         xstrdup/xfree.
9062 2008-04-17  Pedro Alves  <pedro@codesourcery.com>
9064         * inf-loop.c (inferior_event_handler): Also run the intermediate
9065         continuations in the INF_EXEC_COMPLETE case.
9067 2008-04-16  Tom Tromey  <tromey@redhat.com>
9069         * cli/cli-decode.h (CMD_ASYNC_OK): New define.
9070         (set_cmd_async_ok, get_cmd_async_ok): Declare.
9071         * cli/cli-decode.c (set_cmd_async_ok): New function.
9072         (get_cmd_async_ok): New function.
9073         * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
9074         "show" as async-ok.
9075         * top.c (execute_command): Use get_cmd_async_ok.
9076         * infcmd.c: Include cli/cli-decode.h.
9077         (_initialize_infcmd): Mark "interrupt" as async-ok.
9078         * Makefile.in (infcmd.o): Depend on cli_decode_h.
9080 2008-04-16  Daniel Jacobowitz  <dan@codesourcery.com>
9082         PR gdb/2445
9083         * exec.c: Correct "arch-utils.h" include.
9085 2008-04-15  Aleksandar Ristovski  <aristovski@qnx.com>
9087         PR gdb/2424
9088         * infrun.c (normal_stop) Move breakpoint_auto_delete further down
9089         to allow printing to 'see' real reason of stop. This fixes PR 2424.
9090         * breakpoint.c (bpdisp_texst): New function. The function takes over
9091         the role of bpstats static array in print_one_breakpoint_location.
9092         (print_it_typical): Print "Temporary breakpoint" instead
9093         of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
9094         protocols, print disp field.
9095         (print_one_breakpoint_location): Removed bpdisps static definition.
9096         Call new bpstat_text function to get value for 'disp' field.
9097         (mention): Print "Temporary breakpoint" instead of just "Breakpoint".
9099 2008-04-15  Daniel Jacobowitz  <dan@codesourcery.com>
9101         * gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
9102         gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
9103         by rerunning gnulib-tool with --aux-dir=gnulib/extra.
9104         * gnulib/Makefile.in: Regenerate.
9106 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
9108         * Makefile.in (GNULIB_H): New.  Trigger all-lib.
9109         (defs_h): Use $(GNULIB_H).
9110         (all-lib): Depend on gnulib/Makefile.
9111         (gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
9112         * config.in, gnulib/Makefile.in: Regenerated.
9114 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
9116         * Makefile.in (LIBGNU, INCGNU): Define.
9117         (INTERNAL_CFLAGS_BASE): Add INCGNU.
9118         (INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
9119         (CLEANDIRS): New.
9120         ($(LIBGNU), all-lib): New rules.
9121         (clean, distclean, do-maintainer-clean): Use CLEANDIRS.
9122         * configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
9123         Simplify AC_CONFIG_AUX_DIR.  Generate gnulib/Makefile.
9124         * gnulib: New directory, from gnulib-tool.
9125         * configure, aclocal.m4: Regenerated.
9127 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
9129         * linux-thread-db.c (have_threads_callback): Check thread->private.
9131 2008-04-13  Nick Roberts  <nickrob@snap.net.nz>
9132             Vladimir Prus  <vladimir@codesourcery.com>
9134         Fix @-varobjs.
9135         * varobj.c (value_of_root): Update the expression for
9136         floating varobjs.
9137         * mi/mi-cmd-var.c (varobj_update_one): If type has changed,
9138         report that.
9140 2008-04-09  Marc Khouzam  <marc.khouzam@ericsson.com>
9142         * mi/mi-cmd-var.c: Include "mi-getopt.h".
9143         (mi_parse_format): New.  Factored out from mi_cmd_var_set_format.
9144         (mi_cmd_var_set_format): Use new mi_parse_format.
9145         (mi_cmd_var_evaluate_expression): Support for -f option to specify
9146         format.
9147         * Makefile.in (mi-cmd-var.o): Update dependencies.
9149         * varobj.h (varobj_get_formatted_value): Declare.
9150         * varobj.c (my_value_of_variable): Added format parameter.
9151         (cplus_value_of_variable): Likewise.
9152         (java_value_of_variable): Likewise.
9153         (c_value_of_variable): Likewise.  Evaluate expression based
9154         on format parameter.
9155         (struct language_specific): Add format parameter to function member
9156         *value_of_variable.
9157         (varobj_get_formatted_value): New.
9158         (varobj_get_value): Added format parameter to method call.
9160 2008-04-08  Joel Brobecker  <brobecker@adacore.com>
9162         * stabsread.c (cleanup_undefined_types_noname): Manually set the
9163         instance flags of the undefined type before calling replace_type.
9165 2008-04-08  Vladimir Prus  <vladimir@codesourcery.com>
9167         * target.h (enum strata): Remove the download_stratum.
9169 2008-04-07  Doug Evans  <dje@google.com>
9171         * buildsym.h (last_source_file): Add dwarf info to comment.
9172         (last_source_start_addr): Ditto.
9174 2008-04-07  Pedro Alves  <pedro@codesourcery.com>
9176         * alphanbsd-tdep.c: Include "target.h".
9177         * mn10300-tdep.c: Include "target.h".
9178         * Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.
9180 2008-04-06  Vladimir Prus  <vladimir@codesourcery.com>
9182         Fix breakpoint condition that use member variables.
9183         * valops.c (check_field): Remove.
9184         (check_field_in): Rename to check_field.
9185         (value_of_this): Use la_name_of_this.
9186         * value.h (check_field): Adjust prototype.
9188         * language.h (la_value_of_this): Rename to la_name_of_this.
9189         * language.c (unknown_language_defn): Specify "this" for
9190         name_of_this.
9191         (auto_language_defn): Likewise.
9192         (local_language_defn): Likewise.
9193         * ada-lang.c (ada_language_defn): Adjust comment.
9194         * c-lang.c (c_language_defn): Adjust comment.
9195         (cplus_language_defn): Specify "this" for name_of_this.
9196         (asm_language_defn): Adjust comment.
9197         (minimal_language_defn): Adjust comment.
9198         * f-lang.c (f_language_defn): Specify NULL for name_of_this.
9199         * jv-lang.c (java_language_defn): Specify "this" for name_of_this.
9200         * m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
9201         * objc-lang.c (objc_language_defn): Specify "self" for
9202         name_of_this.
9203         * p-lang.c (pascal_language_defn): Specify "this" for
9204         name_of_this.
9205         * scm-lang.c (scm_language_defn): Specify NULL for name_of_this.
9207         * symtab.c (lookup_symbol_aux): Lookup "this" in the
9208         proper scope, and check for field in type of "this", without
9209         trying to create a value.
9211 2008-04-04  Pedro Alves  <pedro@codesourcery.com>
9213         * mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
9214         (mi_error_message): Delete declaration.
9215         * mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
9216         returning MI_CMD_ERROR.
9217         * mi/mi-main.c (mi_error_message): Delete.
9218         (mi_cmd_exec_interrupt):
9219         (mi_cmd_thread_select, mi_cmd_thread_list_ids)
9220         (mi_cmd_thread_info): Call error instead of returning
9221         MI_CMD_ERROR.
9222         (mi_cmd_data_list_register_values): Call error instead of
9223         returning MI_CMD_ERROR.  Adapt to new get_register interface.
9224         (get_register): Change return typo to void.  Call error instead of
9225         returning MI_CMD_ERROR.
9226         (mi_cmd_data_write_register_values): Call error instead of
9227         returning MI_CMD_ERROR.
9228         (mi_cmd_list_features): Return MI_CMD_DONE.
9229         (captured_mi_execute_command): Remove MI_CMD_ERROR handling.
9230         (mi_execute_command): Always print exceptions with -error.
9232 2008-04-04  Joel Brobecker  <brobecker@adacore.com>
9234         * NEWS: Mention new commands set/show multiple-symbols.
9236 2008-04-03  Joel Brobecker  <brobecker@adacore.com>
9238         * symtab.c (multiple_symbols_ask, multiple_symbols_all)
9239         (multiple_symbols_cancel): New constants.
9240         (multiple_symbols_modes, multiple_symbols_mode): New static globals.
9241         (multiple_symbols_select_mode): New function.
9242         (_initialize_symtab): Add new set/show multiple-symbols commands.
9243         * symtab.h (multiple_symbols_ask, multiple_symbols_all)
9244         (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
9245         * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
9246         setting.
9247         * linespec.c (decode_line_2): Likewise.
9249 2008-04-03  Doug Evans  <dje@sebabeach.org>
9251         * symtab.h (enum free_code): Delete free_contents, unused.
9252         * symmisc.c (free_symtab_block): Delete.
9253         (free_symtab, case free_code): Delete.
9255 2008-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
9257         * valops.c (value_cast_structs): New function. Cast related
9258         STRUCT types up/down and return cast value. The body of this
9259         function comes mostly from value_cast_pointers.
9260         (value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
9261         to value_cast_structs. Now value_cast_pointers needs only create
9262         appropriate reference after using value_cast_structs for actual
9263         casting.
9264         (value_cast): Handle references.
9266 2008-04-01  Marc Khouzam  <marc.khouzam@ericsson.com>
9268         * MAINTAINERS: Added myself to section Write After Approval.
9270 2008-03-30  Daniel Jacobowitz  <dan@codesourcery.com>
9272         * ia64-tdep.c (examine_prologue): Correct array access.
9274 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
9276         * cp-support.c (first_component_command): Return if no arguments.
9278 2008-03-28  Carlos O'Donell  <carlos@codesourcery.com>
9280         * ser-mingw.c (ser_windows_open): Open requested name.
9282 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
9284         * MAINTAINERS: Added myself.
9286 2008-03-28  Pedro Alves  <pedro@codesourcery.com>
9288         * target.c (find_default_run_target): Allow a NULL `do_mesg'
9289         parameter.  If it is NULL, don't call error.
9290         (find_default_can_async_p, find_default_is_async_p): Pass NULL as
9291         `do_mesg' parameter to find_default_run_target.  If no target was
9292         found, return 0.
9294 2008-03-28  Daniel Jacobowitz  <dan@codesourcery.com>
9296         * mips-linux-tdep.c: Update N32/N64 signal frame comments.
9297         (N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
9298         (N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
9299         Delete.
9300         (mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.
9302 2008-03-27  Joel Brobecker  <brobecker@adacore.com>
9304         GDB 6.8 released.
9306 2008-03-27  Ulrich Weigand  <uweigand@de.ibm.com>
9308         * features/Makefile (%.dat): Set xmltarget to the base filename
9309         of the XML source, without subdirectory.
9310         * regformats/rs6000/powerpc-32.dat: Regenerate.
9311         * regformats/rs6000/powerpc-64.dat: Regenerate.
9312         * regformats/rs6000/powerpc-e500.dat: Regenerate.
9314 2008-03-27  Markus Deuling  <deuling@de.ibm.com>
9316         * xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
9317         objfile arch.
9319 2008-03-27  Nick Roberts  <nickrob@snap.net.nz>
9321         * mi/mi-main.c (enum captured_mi_execute_command_actions):
9322         Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.
9324 2008-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
9326         * objfiles.h (struct objfile): New GDBARCH member.
9327         (get_objfile_arch): Add prototype.
9328         * objfiles.c: Include "arch-utils.h".
9329         (allocate_objfile): Look up gdbarch associated with bfd.
9330         (get_objfile_arch): New function.
9331         * Makefile (objfiles.o): Update dependencies.
9333         * dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
9334         by objfile arch.
9335         * dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
9336         by frame arch.
9337         (locexpr_describe_location): Replace current_gdbarch by
9338         objfile arch.
9339         * dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
9340         (dwarf2_add_field): Likewise.
9341         (read_tag_pointer_type): Likewise.
9342         (read_base_type): Likewise.
9343         (new_symbol): Likewise.
9345         * coffread.c (decode_type): Add OBJFILE argument.  Update callers.
9346         (decode_base_type, decode_function_type): Likewise.
9347         (coff_read_struct_type, coff_read_enum_type): Likewise.
9348         (coff_symtab_read): Replace current_gdbarch by objfile arch.
9349         (decode_base_type): Likewise.
9350         (coff_read_enum_type): Likewise.
9351         (coff_read_struct_type): Replace current_objfile by OBJFILE argument.
9352         (coff_read_enum_type): Likewise.
9354         * dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
9355         (end_psymtab): Likewise.
9356         (process_one_symbol): Likewise.
9358         * mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
9359         (parse_procedure): Likewise.
9360         (parse_partial_symbols): Likewise.
9362         * somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.
9364         * stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
9365         Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
9366         built-in types.
9367         (read_range_type): Replace current_gdbarch by objfile arch.  Replace
9368         static range_index_type by built-in type.
9369         (read_one_struct_field): Replace current_gdbarch by objfile arch.
9370         (read_enum_type): Likewise.
9372         * xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
9373         objfile arch.
9375 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9377         * varobj.h (varobj_floating_p): Declare.
9378         * varobj.c (varobj_floating_p): New.
9379         * mi/mi-cmd-var.c (mi_cmd_var_update): When passed
9380         '@' as the name, update all floating varobjs.
9382 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9384         * varobj.c (struct varobj_root): Rename use_selected_frame to
9385         floating, and clarify the meaning.
9386         (varobj_create, varobj_update,  new_root_variable): Adjust.
9387         (value_of_root): Don't use type_changed as in variable,
9388         adjust comment.
9389         (c_value_of_root): Adjust.
9391 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9393         * linux-nat.c (linux_nat_attach): Add the pid we attached to, to
9394         gdb's thread list.
9395         (linux_nat_wait): Add main lwp to gdb's thread list.
9396         * linux-thread-db.c (find_new_threads_callback): Also attach to
9397         already listed threads which thread_db didn't know about yet.
9399 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9401         * linux-nat.c (drain_queued_events): Fix comment typo.
9402         (linux_nat_attach): In async mode, don't rely on storing a pending
9403         status.  Instead place the wait status on the pipe.
9404         (linux_nat_resume): Remove unreacheable shortcut code in async
9405         mode.
9406         (stop_wait_callback): In async mode, don't store pending status.
9407         Instead, cancel breakpoints or resend the signal appropriatelly.
9408         (cancel_breakpoint): New, refactored from
9409         cancel_breakpoints_callback.
9410         (cancel_breakpoints_callback): Call cancel_breakpoint.
9411         (pipe_to_local_event_queue): Remove special token processing.
9412         (linux_nat_wait): Issue an internal error if a pending status is
9413         found in async mode.
9415 2008-03-24  Daniel Jacobowitz  <dan@codesourcery.com>
9417         * inflow.c (gdb_has_a_terminal): Guard access to our_process_group.
9419 2008-03-24  Nick Roberts  <nickrob@snap.net.nz>
9420             Vladimir Prus  <vladimir@codesourcery.com>
9422         * varobj.c  (struct varobj_root): New component thread_id.
9423         (varobj_get_thread_id, check_scope): New functions.
9424         (c_value_of_root): Use check_scope.  Switch to the
9425         proper thread if necessary.
9427         * varobj.h (varobj_get_thread_id): New extern.
9429         * mi/mi-cmd-var.c (print_varobj): Add thread-id field.
9431 2008-03-23  Daniel Jacobowitz  <dan@codesourcery.com>
9433         PR gdb/544
9434         * top.c: Revert 2008-03-21 changes.
9436 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9438         * thread.c (make_cleanup_restore_current_thread): Make it
9439         globally visible.
9440         * gdbthread.h (make_cleanup_restore_current_thread): Declare.
9441         * varobj.c (varobj_update): Don't save/restore frame.
9442         (c_value_of_root): Save/restore thread and frame here,
9443         using make_cleanup_restore_current_thread.
9444         * Makefile.in: Update dependecies.
9446 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9448         * varobj.c (struct varobj_root): Clarify
9449         comment on the frame field.
9450         (varobj_create): Don't set frame if we have no
9451         block.
9453 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9455         PR gdb/544
9456         Suggested by Jan Kratochvil:
9457         * top.c (gdb_rl_operate_and_get_next_completion): Call
9458         rl_redisplay_function.
9459         (gdb_rl_redisplay): New.
9460         (init_main): Set rl_redisplay_function.
9462 2008-03-21  Thomas Mittelstaedt  <T.Mittelstaedt@cadenas.de>  (tiny change)
9464         * aix-thread.c (pdc_read_regs): Fix compiler warning.
9465         (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
9466         (store_regs_kernel_thread): Likewise.
9468 2008-03-21  Pedro Alves  <pedro@codesourcery.com>
9470         Linux native async support.
9472         * target.h (struct target_ops): Delete to_async_mask_value and add
9473         to_async_mask.
9474         (target_is_async_p, target_async): Formatting.
9475         (target_async_mask_value): Delete.
9476         (target_async_mask): Delete function declaration, and add new
9477         target macro with the same name.
9479         * target.c (update_current_target): Replace to_async_mask_value by
9480         to_async_mask.  Default to_async_mask to return_one.
9481         (target_async_mask): Delete.
9482         (find_default_can_async_p, find_default_is_async_p): New.
9483         (init_dummy_target): register find_default_can_async_p and
9484         find_default_is_async_p on the dummy target.
9486         * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
9487         (debug_linux_nat_async): New global.
9488         (show_debug_linux_nat_async): New function.
9489         (linux_nat_async_enabled, linux_nat_async_mask_value)
9490         (linux_nat_event_pipe, linux_nat_num_queued_events)
9491         (linux_nat_async_events_enabled): New globals.
9492         (struct waitpid_result): New struct.
9493         (waitpid_queue): New global.
9494         (queued_waitpid, push_waitpid, drain_queued_events): New.
9495         (my_waitpid): Call queued_waitpid.
9496         (linux_child_follow_fork): Disable async events during the call.
9497         (blocked_mask): Delete.
9498         (sync_sigchld_action, async_sigchld_action): New globals.
9499         (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD.  In
9500         async mode, block events during the call.
9501         (linux_nat_create_inferior): New.
9502         (linux_nat_attach): In sync mode, restore the mask states.  In
9503         async mode, wake the event loop immediatelly.
9504         (detach_callback): Drain all queued events of the lwp we're
9505         detaching from.
9506         (linux_nat_detach): Block async mode, and drain events of the main
9507         process.
9508         (linux_nat_resume): If in async mode, mask async events during the
9509         call.  If short circuiting, force event loop to wake up.  If
9510         resuming, set target_executing, and register target events in the
9511         event loop.
9512         (pipe_to_local_event_queue, local_event_queue_to_pipe): New.
9513         (linux_nat_wait): In async mode, block events during the call.
9514         Only enable/disable passing SIGINT to the inferior in sync mode.
9515         Get events from local waitpid queue.  If no interesting events was
9516         found, return to events loop.  Reregister target events in the
9517         event loop on exit.  In sync mode, no need to reblock SIGCHLD.
9518         (linux_nat_kill): Disable events on entry.
9519         (linux_nat_mourn_inferior): In sync mode, don't restore the masks
9520         here.  Detach async mode from the event loop if there are no more
9521         forks available, otherwise leave it on.
9522         (sigchld_handler): Assure this is called only in sync mode.
9523         (linux_async_permitted, linux_async_permitted_1): New globals.
9524         (set_maintenance_linux_async_permitted)
9525         (show_maintenance_linux_async_permitted): New functions.
9526         (linux_nat_is_async_p, linux_nat_can_async_p)
9527         (linux_nat_async_mask): New.
9528         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
9529         (get_pending_events, async_sigchld_handler): New.
9530         (linux_nat_async_events): New.
9531         (async_terminal_is_ours): New global.
9532         (linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
9533         (async_client_callback, async_client_context): New.
9534         (linux_nat_async_file_handler, linux_nat_async)
9535         (linux_nat_disable_async, linux_nat_enable_async): New.
9536         (linux_nat_add_target): Register linux_nat_create_inferior,
9537         linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
9538         linux_nat_async_mask, linux_nat_terminal_inferior and
9539         linux_nat_terminal_ours.
9540         (_initialize_linux_nat): Remove local action variable, and update
9541         code that used it to use sync_sigchld_action.  Add new
9542         "lin-lwp-async" debug set/show command.  Put the "lin-lwp" debug
9543         set/show command in the maintenance class.  Add new "linux-async"
9544         maintenance set/show command.  Block SIGCHLD by default.  Setup
9545         async_sichld_action, and sync_sigchld_action.  Install the default
9546         async mode.
9547         (lin_thread_get_thread_signals): Use a local sigset_t for blocking
9548         the cancel signals.
9550         * linux-thread-db.c (re_check_for_thread_db): New.
9551         (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
9552         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
9553         (thread_db_async_mask): New.
9554         (init_thread_db_ops): Register thread_db_can_async_p,
9555         thread_db_is_async_p, thread_db_async and thread_db_async_mask.
9557         * remote.c (remote_async_mask_value): New.
9558         (remote_return_zero): New.
9559         (init_remote_ops): Register remote_return_zero as callbacks of
9560         to_can_async_p and to_is_async_p.
9561         (remote_can_async_p, remote_is_async_p, remote_async): Update to
9562         use remote_async_mask_value.
9563         (remote_async_mask): New.
9564         (init_remote_async_ops): Remove to_async_mask_value setting and
9565         register remote_async_mask as to_async_mask callback in
9566         remote_async_ops.
9568         * Makefile.in (linux-nat.o): Update.
9570 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9572         * gdbthread.h (add_thread_with_info): New.
9573         * linux-thread-db.c: Add some documentation.
9574         (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
9575         (struct private_thread_info): Remove th_valid and ti_valid.
9576         Replace ti with tid.
9577         (thread_get_info_callback): Do not add TID to the new ptid.  Do
9578         not cache th or ti.
9579         (thread_db_map_id2thr, lwp_from_thread): Delete functions.
9580         (thread_from_lwp): Assert that the LWP is set.  Do not add TID to the
9581         new PTID.
9582         (attach_thread): Handle an already-existing thread.  Use
9583         add_thread_with_info.  Cache the th and tid.
9584         (detach_thread): Verify that private was set.  Remove verbose
9585         argument and printing.  Update caller.
9586         (thread_db_detach): Do not adjust inferior_ptid.
9587         (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
9588         (check_event, find_new_threads_callback): Do not add TID to the new PTID.
9589         (thread_db_wait): Do not use lwp_from_thread.
9590         (thread_db_pid_to_str): Use the cached TID.
9591         (thread_db_extra_thread_info): Check that private is set.
9592         (same_ptid_callback): Delete.
9593         (thread_db_get_thread_local_address): Do not use it or check
9594         is_thread.  Check that private is set.  Assume that the thread
9595         handle is already cached.
9596         (init_thread_db_ops): Remove to_resume and to_kill.
9597         * thread.c (add_thread_with_info): New.
9598         (add_thread): Use it.
9599         * linux-nat.c (find_thread_from_lwp): Delete.
9600         (exit_lwp): Do not use it.  Check print_thread_events.  Print before
9601         deleting the thread.
9602         (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
9603         * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
9604         * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
9605         printf_unfiltered for thread exits.
9606         * procfs.c (procfs_wait): Likewise.
9608 2008-03-21  Chris Demetriou  <cgd@google.com>
9610         * symtab.c (rbreak_command): Quote symbol name before passing
9611         it to break_command.
9613 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9615         * eval.c (evaluate_subexp_for_address): Clarify error message.
9616         Use value_must_coerce_to_target.
9617         * infcall.c (value_arg_coerce): Call value_coerce_to_target.
9618         * valops.c (value_assign): Call value_coerce_to_target when
9619         assigning to anything but internalvars.  Leave GDB-side arrays
9620         as arrays when assigning to internalvars.
9621         (value_must_coerce_to_target, value_coerce_to_target): New.
9622         (value_coerce_array, value_addr): Call value_coerce_to_target.
9623         (value_array): Create the array in GDB's memory instead of
9624         the inferior's.
9625         * value.h (value_must_coerce_to_target, value_coerce_to_target):
9626         Declare.
9628 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9630         * top.c (quit_confirm): Warn that we will kill the program.
9632 2008-03-19  Pedro Alves  <pedro@codesourcery.com>
9634         * inflow.c (terminal_ours_1): Guard access to
9635         inferior_process_group with #ifdef PROCESS_GROUP_TYPE.
9637 2008-03-18  Ulrich Weigand  <uweigand@de.ibm.com>
9638             Jim Blandy  <jimb@codesourcery.com>
9639             Daniel Jacobowitz  <drow@false.org>
9641         * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
9642         (dwarf2_read_address): Update prototype.
9644         * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
9645         (signed_address_type): Likewise.
9646         (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
9647         (execute_stack_op): Update calls to unsigned_address_type,
9648         signed_address_type and dwarf2_read_address.  Fix implementation
9649         of DW_OP_deref_size.
9651         * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
9652         (dwarf2_per_cu_addr_size): Likewise.
9653         (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
9654         (struct dwarf2_loclist_baton): Likewise.
9656         * dwarf2loc.c (find_location_expression): Update calls to
9657         dwarf2_read_address.  Use dwarf2_per_cu_objfile and
9658         dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
9659         (locexpr_describe_location): Likewise.
9660         (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
9661         Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
9662         (dwarf2_loc_desc_needs_frame): Add PER_CU parameter.  Set ctx->addr_size
9663         to dwarf2_per_cu_addr_size (per_cu).
9664         (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
9665         (loclist_read_variable): Likewise.
9666         (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.
9668         * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
9669         instead of baton->objfile.
9670         (dwarf2_per_cu_obfile): New function.
9671         (dwarf2_per_cu_addr_size): Likewise.
9673         * dwarf2-frame.c (struct comp_unit): Move higher.
9674         (struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
9675         (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
9676         (execute_cfa_program): Add FDE parameter.  Replace EH_FRAME_P
9677         parameter by using fde->eh_frame_p.  Use read_encoded_value
9678         to implement DW_CFA_set_loc.
9679         (struct dwarf2_frame_cache): Add ADDR_SIZE member.
9680         (dwarf2_frame_cache): Set cache->addr_size.  Update calls to
9681         execute_stack_op and execute_cfa_program.
9682         (dwarf2_frame_prev_register): Update calls to execute_stack_op.
9683         (size_of_encoded_value): Remove.
9684         (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
9685         Remove call to size_of_encoded_value.  Implement DW_EH_PE_funcrel.
9686         (add_cie): Set cie->unit backlink.
9687         (decode_frame_entry_1): Set cie->addr_size.  Update calls to
9688         read_encoded_value.
9689         (dwarf2_build_frame_info): Allocate UNIT on objfile obstack.
9691 2008-03-17  Markus Deuling  <deuling@de.ibm.com>
9693         * i386-tdep.c (i386_print_insn): Remove unnecessary call to
9694         gdbarch_bfd_arch_info.
9696 2008-03-17  Joel Brobecker  <brobecker@adacore.com>
9698         * aix-thread.c (pdc_read_regs): Minor reformatting.
9700 2008-03-17  Vladimir Prus  <vladimir@codesourcery.com>
9702         * thread.c (print_thread_info): Don't insist
9703         on having current thread if there are no
9704         threads at all.
9706 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9708         * infcmd.c (attach_command_post_wait)
9709         (attach_command_continuation): New.
9710         (attach_command): Support background async execution, and async
9711         execution in synchronous mode.
9713 2008-03-17  Daniel Jacobowitz  <dan@codesourcery.com>
9715         * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
9716         * symmisc.c (dump_symtab_1): Likewise.
9717         * wrapper.c (gdb_value_struct_elt): Likewise.
9719 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9721         * linux-nat.c (linux_nat_filter_event): Fix comment typo.
9723 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9725         * linux-nat.c (linux_nat_filter_event): New, refactored from
9726         linux_nat_wait.
9727         (linux_nat_wait): Call linux_nat_filter_event.
9729 2008-03-17  Ulrich Weigand  <uweigand@de.ibm.com>
9731         * top.c (execute_command): Fix uninitialized variable error.
9733 2008-03-16  Nick Hudson  <nick.hudson@dsl.pipex.com>
9735         * Makefile.in (amd64nbsd-nat.o): New dependency.
9736         * amd64nbsd-nat.c: Include "nbsd-nat.h".
9737         (_initialize_amd64nbsd_nat): Update target vector to use
9738         nbsd_pid_to_exec_file.
9739         * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
9741 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9743         Remove ignoring leading exec events code.
9744         * fork-child.c (startup_inferior): Do not set
9745         inferior_ignoring_leading_exec_events.
9746         * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
9747         (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
9748         * infrun.c (inferior_ignoring_leading_exec_events): Remove.
9749         (handle_inferior_event): Remove code for ignoring leading exec
9750         events.
9751         * target.c (update_current_target): Do not inherit, or default,
9752         to_reported_exec_events_per_exec_call.
9753         (debug_to_reported_exec_events_per_exec_call): Remove.
9754         (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
9755         * target.h (target_reported_exec_events_per_exec_call): Remove.
9756         (struct target): Remove the to_reported_exec_events_per_exec_call
9757         field.
9759 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9761         Implement -thread-info.
9762         * gdbthread.h (print_thread_info): Declare.
9764         * thread.c (print_thread_info): New, extracted
9765         from info_threads_command and adjusted to
9766         work for CLI and MI.
9767         (info_threads_command): Use print_thread_info.
9768         * Makefile.in: Update dependencies.
9770         * mi/mi-cmds.c (mi_cmds): Specify a handler
9771         for -thread-info.
9772         * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
9773         * mi/mi-main.c (mi_cmd_thread_info): New.
9774         (mi_cmd_list_features): Include 'thread-info'.
9776 2008-03-14  Kevin Buettner  <kevinb@redhat.com>
9778         * mips-tdep.c (mips32_scan_prologue): Use the ABI register size
9779         to decide whether to match instruction patterns using "sw" and "sd".
9781 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9783         * infcmd.c (jump_command): Postpone disabling stdin until after
9784         the possible query.
9786 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9788         * inflow.c (gdb_getpgrp): New.
9789         (gdb_has_a_terminal): Use get_getpgrp.
9790         (terminal_ours_1): If attach_flag is set, don't refetch
9791         inferior_process_group.
9793 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9795         * features/library-list.dtd: Allow "section" elements as children
9796         of "library".  Add "section" element and describe its attributes.
9798         * solib-target.c (struct lm_info): Add section_bases member.
9799         (library_list_start_segment): Error out if seen a section element.
9800         (library_list_start_section): New.
9801         (library_list_end_library): New.
9802         (solib_target_free_library_list): Free section_bases.
9803         (section_attributes): New.
9804         (library_children): Make "segment" optional.  Add "section" child.
9805         (library_list_children): Register library_list_end_library.
9806         (solib_target_relocate_section_addresses): Handle section bases.
9808         * NEWS: Mention new qXfer:libraries:read section offsets support.
9810 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9812         * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
9813         (make_exec_error_cleanup): Remove declarations.
9814         * utils.c (exec_error_cleanup_chain): Remove.
9815         (do_exec_error_cleanups, discard_exec_error_cleanups)
9816         (make_exec_error_cleanup): Remove.
9817         * event-loop.c (start_event_loop): Adjust call to
9818         async_enable_stdin.
9819         * event-top.c (async_enable_stdin): Remove the paramater dummy.
9820         (async_disable_stdin): Don't register async_enable_stdin via
9821         cleanup.
9822         * inf-loop.c (inferior_event_handler): Don't
9823         call do_exec_error_cleanups.  Call async_enable_stdin instead.
9824         * event-loop.c (start_event_loop): Adjust call to
9825         async_enable_stdin.
9826         * tui/tui-interp.c (tui_command_loop): Adjust call to
9827         async_enable_stdin.
9829 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9831         Async mode fixes.
9832         * Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
9833         * breakpoint.c (bpstat_do_actions): In async mode,
9834         don't jump to top expecting stop_bpstat to be already
9835         updated.
9836         * event-loop.c (start_event_loop): Call async_enable_stdin
9837         on exception.
9838         * event-top.c (async_enable_stdin): Do nothing if sync_execution
9839         is not set.
9840         (command_handler): Do not setup continuation here.
9841         (command_line_handler_continuation): Move to...
9842         * top.c (command_line_handler_continuation): ... here.
9843         (execute_command): In async mode, register continuation.
9844         Don't check frame's language in running in async mode.
9845         * exceptions.c (throw_exception): Don't do exec_error_cleanups.
9846         * inf-loop.c (complete_execution): Inline into...
9847         (inferior_event_handler): ... here.  Clear target_executing before
9848         doing any cleanups.  Don't try to show prompt if the target was
9849         resumed.
9850         * infcmd.c (signal_command): Add support for async mode.
9851         (finish_command): Only add continuation if the target was
9852         successfully resumed.
9853         * remote.c (init_async_opts): Register to_get_thread_local_address
9854         handler.
9855         * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
9856         with sync_execution.
9857         * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
9858         on exception.
9860 2008-03-14  Daniel Jacobowitz  <dan@codesourcery.com>
9862         * corefile.c (reopen_exec_file): Use exec_bfd_mtime.
9863         * exec.c (exec_bfd_mtime): Define.
9864         (exec_close): Clear it.
9865         (exec_file_attach): Set it.
9866         * gdbcore.h (exec_bfd_mtime): Declare.
9867         * source.c (find_source_lines): Do not use bfd_get_mtime.
9869 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9871         * top.c (simplified_command_loop): Remove.
9873 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9875         Remove unused remote.c hooks.
9876         * remote.c (deprecated_target_resume_hook)
9877         (deprecated_target_wait_loop_hook): Remove.
9878         (remote_resume): Do not call deprecated_target_resume_hook.
9879         (remote_wait): Do not call deprecated_target_wait_loop_hook.
9880         (remote_async_wait): Likewise.
9882 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9884         Implement MI notification for new threads.
9885         * doc/observer.texi (new_thread): Document.
9886         * observer.sh: Forward declare struct thread_info.
9887         * thread.c (add_thread): Notify observer.
9889         * interps.h (interp_init_ftype): New parameter
9890         top_level.
9891         (interp_set): Likewise.
9892         (top_level_interpreter_data): Declare.
9893         * interps.c (interp_set): New parameter top_level.
9894         Pass it to interpreter's init function.  Remember
9895         top level interpreter.
9896         (interpreter_exec_cmd): Adjust.
9897         (top_level_interpreter_data): New.
9898         * main.c (captured_main): Pass 1 for top_level
9899         parameter of interp_set.
9900         * cli/cli-interp.c (cli_interpreter_init): New
9901         parameter top_level.
9902         * tui/tui-interp.c (tui_init): New parameter top_level.
9904         * mi/mi-interp.c (mi_new_thread): New.
9905         (mi_interpreter_init): If top level, register
9906         observer for new threads.
9908         * Makefile.in (mi-interp.o, thread.o): Update dependencies.
9910 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9912         * top.c (execute_command): Disable break and stop
9913         commands in async mode.
9915 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9917         revert:
9918         2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9919         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9920         Call target_stop in the INF_QUIT_REQ case.
9921         * Makefile.in (inf-loop.o): Update.
9923 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9925         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9926         Call target_stop in the INF_QUIT_REQ case.
9927         * Makefile.in (inf-loop.o): Update.
9929 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9931         * top.c (execute_command): Enable break, info and interrupt
9932         commands in async mode.
9934 2008-03-13  Vladimir Prus  <vladimir@codesourcery.com>
9935             Daniel Jacobowitz  <dan@codesourcery.com>
9937         * breakpoint.h (breakpoint_restore_shadows): New
9938         declaration.
9939         * breakpoint.c (breakpoint_restore_shadows): New.
9940         (read_memory_nobpt): Delete.
9941         * gdbcore.h (read_memory_nobpt): Delete declaration.
9942         * target.c (memory_xfer_partial): Call
9943         breakpoint_restore_shadows.
9944         (restore_show_memory_breakpoints)
9945         (make_show_memory_breakpoints_cleanup): New.
9946         (show_memory_breakpoints): New.
9947         * target.h (make_show_memory_breakpoints_cleanup): Declare.
9948         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
9949         Make sure we see memory breakpoints when checking if
9950         breakpoint is still there.
9951         * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
9952         hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
9953         m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
9954         sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
9956 2008-03-12  Pedro Alves  <pedro@codesourcery.com>
9958         * thread.c (add_thread): Use printf_unfiltered to print.
9960 2008-03-12  Joel Brobecker  <brobecker@gnat.com>
9962         * sol-thread.c: Replace use of TM_I386SOL2_H by an expression
9963         that is true only on x86-solaris and x86_64-solaris.
9964         * procfs.c: Likewise. Move procfs_find_LDT_entry up together
9965         with proc_get_LDT_entry.
9967 2008-03-12  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9969         * configure.ac (AC_CHECK_FUNCS): Add check for setsid.
9970         * config.in, configure: Regenerate.
9971         * fork-child.c (fork_inferior): Call create_tty_session.
9972         * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
9973         (create_tty_session): New function.
9974         * terminal.h: Declare create_tty_session.
9976 2008-03-12  Alan Modra  <amodra@bigpond.net.au>
9978         PR 5900
9979         * elfread.c (elf_symtab_read): Make shndx an unsigned int.
9980         * mipsread.c: Include elf/internal.h.
9981         (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
9982         to internal range.
9984 2008-03-11  Markus Deuling  <deuling@de.ibm.com>
9986         * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
9987         to get at the current architecture and at the target specific vector.
9988         Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
9989         remove define of I387_ST0_REGNUM.
9991         * amd64-tdep.c (I387_ST0_REGNUM): Remove define.
9993         (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
9994         get at the current architecture
9995         (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
9996         parameter.
9998         * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
9999         I387_NUM_XMM_REGS and I387_MM0_REGNUM.
10001         (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
10002         I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
10003         (I387_FSTAT_REGNUM): Add target specific vector as parameter.
10005         (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
10006         at the target specific vector.
10008         (i386_get_longjmp_target): Use get_frame_arch to get at the current
10009         architecture. Use gdbarch_tdep to get at the target specific vector.
10011         (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
10012         update caller. Use gdbarch_tdep to get at the target specific vector.
10014         (i386_register_to_value: Use get_frame_arch to get at the current
10015         architecture.
10017         * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
10018         parameter.
10020         * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
10021         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
10022         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
10023         FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.
10025         (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
10026         undef's.
10028         (i387_convert_register_p, i387_register_to_value,
10029         i387_value_to_register): Update call for i386_fp_regnum_p.
10031         * i387-tdep.h: Remove comment.
10032         (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
10033         (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
10034         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
10035         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
10036         I387_MXCSR_REGNUM): Add target specific vector as parameter.
10038 2008-03-10  Daniel Jacobowitz  <dan@codesourcery.com>
10040         * Makefile.in (fork-child.o): Update.
10041         * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
10042         argument.  Gather all gdbserver features together.
10043         * fork-child.c (exec_wrapper): New variable.
10044         (fork_inferior): Use it.
10045         (startup_inferior): Skip an extra trap if using "set exec-wrapper".
10046         (unset_exec_wrapper_command, _initialize_fork_child): New.
10048 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
10050         * source.c (directory_command): Modify the determination of
10051         condition of terminal "from_tty".
10053 2008-03-10  Matt Rice  <ratmice@gmail.com>
10055         * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.
10057 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
10059         * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
10060         of the data passing to strtoulst function.
10061         (info_spu_signal_command): Likewise.
10063 2008-03-08  Vladimir Prus  <vladimir@codesourcery.com>
10065         * mi/mi-interp.c (mi_command_loop): Remove
10066         commented-out code.
10068 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
10070         * remote.c (extended_remote_attach_1): Make local variable pid an int
10071         instead of a pid_t.
10073 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
10075         * solib-svr4.c (svr4_same_1): New function, originally extracted
10076         from svr4_same and expanded to handle the sparc64 case.
10077         (svr4_same): Move up and reimplement using svr4_same_1.
10078         (enable_break): Use svr4_same_1 to do shared library name comparisons.
10080 2008-03-07  Ramana Radhakrishnan  <ramana.r@gmail.com>
10082         * MAINTAINERS: Move self to Paper trail.
10084 2008-03-05  Daniel Jacobowitz  <dan@codesourcery.com>
10086         * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
10087         * event-loop.c (call_async_signal_handler): New.
10088         * event-loop.h (call_async_signal_handler)
10089         (gdb_call_async_signal_handler): Declare.
10090         (mark_async_signal_handler): Add comments.
10091         * event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
10092         * mingw-hdep.c (sigint_event, sigint_handler): New.
10093         (gdb_select): Use them.  Wait for the readline signal handler
10094         to finish.
10095         (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
10096         * posix-hdep.c (gdb_call_async_signal_handler): New function.
10097         * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
10098         New.
10099         (remote_fileio_ctrl_c_signal_handler): Use
10100         gdb_call_async_signal_handler.
10101         (initialize_remote_fileio): Initialize sigint_fileio_token.
10102         * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
10103         not initialize tokens here.
10104         (handle_remote_sigint_twice): Likewise.  Reinstall
10105         handle_remote_sigint.
10106         (async_remote_interrupt_twice): Just call interrupt_query.
10107         (cleanup_sigint_signal_handler): Do not delete tokens.
10108         (remote_interrupt, remote_interrupt_twice): Use
10109         gdb_call_async_signal_handler.
10110         (interrupt_query): Reinstall the default signal handler.
10111         (_initialize_remote): Initialize tokens here.
10113 2008-03-04  Joel Brobecker  <brobecker@adacore.com>
10115         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
10116         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
10117         Change the type of the lr register to code_ptr.
10118         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
10119         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
10120         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
10121         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
10122         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
10123         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
10124         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.
10126 2008-03-03  James E. Wilson  <wilson@tuliptree.org>
10128         * MAINTAINERS: Update my email address.
10130 2008-03-03  Keith Seitz  <keiths@redhat.com>
10132         From Dave Murphy  <davem@devkitpro.org>:
10133         * configure.ac: Set tcl configdir to win under mingw.
10134         * configure: Regenerate.
10136 2008-03-03  Daniel Jacobowitz  <dan@codesourcery.com>
10138         * breakpoint.c (fetch_watchpoint_value): New function.
10139         (update_watchpoint): Set and clear val_valid.  Use
10140         fetch_watchpoint_value.  Handle unreadable values on the
10141         value chain.  Correct check for user-requested array watchpoints.
10142         (breakpoint_init_inferior): Clear val_valid.
10143         (watchpoint_value_print): New function.
10144         (print_it_typical): Use it.  Do not free or clear old_val.  Print
10145         watchpoints even if old_val == NULL.
10146         (watchpoint_check): Use fetch_watchpoint_value.  Check for values
10147         becoming readable or unreadable.
10148         (watch_command_1): Use fetch_watchpoint_value.  Set val_valid.
10149         (do_enable_watchpoint): Likewise.
10150         * breakpoint.h (struct breakpoint): Update comment for val.  Add
10151         val_valid.
10152         * NEWS: Mention watchpoints on inaccessible memory.
10154 2008-02-29  Daniel Jacobowitz  <dan@codesourcery.com>
10156         * Makefile.in (i386-nat.o): Update.
10157         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
10158         i386_use_watchpoints.
10159         * i386-linux-nat.c (_initialize_i386_linux_nat): Call
10160         i386_use_watchpoints.
10161         * i386-nat.c (i386_stopped_data_address): Take two arguments.
10162         (i386_stopped_by_watchpoint): Update call.
10163         (i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
10164         * config/i386/nm-i386.h: Conditionalize definitions on
10165         ! I386_WATCHPOINTS_IN_TARGET_VECTOR.
10166         (i386_use_watchpoints): Declare.
10167         (i386_stopped_data_address): Update.
10168         * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
10169         * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
10171 2008-02-29  Joel Brobecker  <brobecker@adacore.com>
10173         GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
10174         * version.in: Bump version to 6.8.50.20080229-cvs.
10176 2008-02-28  Markus Deuling  <deuling@de.ibm.com>
10178         * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
10179         properly.
10181 2008-02-28  Tom Tromey  <tromey@redhat.com>
10183         * infcmd.c (notice_args_read): Print result of get_inferior_args.
10185 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
10187         * infcmd.c (kill_if_already_running): Make static.  Use
10188         target_require_runnable.
10189         * target.c (target_require_runnable): New.
10190         * target.h (target_require_runnable): Declare.
10192 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
10194         * frame.c (reinit_frame_cache): Only annotate if frames were
10195         previously valid.
10197 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
10199         * regformats/reg-ppc.dat: Rename "ps" to "msr".
10200         * regformats/reg-ppc64.dat: Likewise.
10202 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
10204         * features/Makefile (%.dat): Emit xmltarget statement.
10206         * regformats/regdat.sh: Support xmltarget and xmlarch statments.
10207         Generate code to set gdbserver_xmltarget in init_registers_${name}.
10209         * regformats/arm-with-iwmmxt.dat: Regenerate.
10210         * regformats/mips64-linux.dat: Regenerate.
10211         * regformats/mips-linux.dat: Regenerate.
10212         * regformats/rs6000/powerpc-32.dat: Regenerate.
10213         * regformats/rs6000/powerpc-64.dat: Regenerate.
10214         * regformats/rs6000/powerpc-e500.dat: Regenerate.
10216         * regformats/reg-arm.dat: Add xmlarch statement.
10217         * regformats/reg-i386.dat: Likewise.
10218         * regformats/reg-i386-linux.dat: Likewise.
10219         * regformats/reg-x86-64-linux.dat: Likewise.
10220         * regformats/reg-spu.dat: Likewise.
10222 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
10224         * remote.c (remote_wait, remote_async_wait): Stop if we receive
10225         an error.
10227 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
10229         * utils.c (debug_timestamp): New.
10230         (vfprintf_unfiltered): Print timestamps if requested.
10231         (show_debug_timestamp): New.
10232         (initialize_utils): Register "set debug timestamp".
10233         * NEWS: Mention "set debug timestamp".  Add GDB 6.8 section.
10235 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
10237         * breakpoint.c (skip_prologue_sal): New function.
10238         (resolve_sal_pc): Adjust SAL past prologue if the SAL was
10239         computed from a line number.
10241 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
10243         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml
10244         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
10245         Set PC register type to "code_ptr".
10246         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
10247         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
10248         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
10249         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
10250         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
10251         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
10252         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
10253         Regenerate.
10255 2008-02-27  Ulrich Weigand  <uweigand@de.ibm.com>
10257         * regformats/regdat.sh: Rename init_registers function in
10258         generated file to init_registers_${name}.
10260         * regformats/reg-crisv32.dat: Set "name" to crisv32.
10261         * regformats/reg-ppc64.dat: Set "name" to ppc64.
10262         * regformats/reg-s390x.dat: Set "name" to s390x.
10264 2008-02-26  Greg Law  <glaw@undo-software.com>
10266         * regcache.c (registers_changed): Call reinit_frame_cache.
10268 2008-02-26  Daniel Jacobowitz  <dan@codesourcery.com>
10270         * configure.tgt (sh-*-linux*): Match sh*.  Add glibc-tdep.o.
10271         * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
10272         and svr4_fetch_objfile_link_map.
10273         * Makefile.in (sh-linux-tdep.o): Update.
10275 2008-02-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10277         * amd64-tdep.c (amd64_classify): Add support for decimal float
10278         types.
10279         * i386-tdep.c (i386_return_value): Make 128-bit decimal float
10280         use the struct return convention.
10282 2008-02-26  Nick Roberts  <nickrob@snap.net.nz>
10284         * breakpoint.c (print_one_breakpoint_location): Revert Enb field
10285         to old format.  Discard breakpoint address if shared library is
10286         unloaded.
10287         (breakpoint_1): Adjust formatting of table header accordingly.
10289 2008-02-25  Vladimir Prus  <vladimir@codesourcery.com>
10291        * remote.c (remote_get_threadlist): If the response
10292        is empty, don't try to parse it.
10294 2008-02-23  Vladimir Prus  <vladimir@codesourcery.com>
10296         Unbreak 'target async'.
10297         * serial.c (serial_async): Set the
10298         handler function before enabling async
10299         mode.
10301 2008-02-22  Daniel Jacobowitz  <dan@codesourcery.com>
10303         * solib-svr4.c (enable_break): Convert r_brk to a code address.
10305 2008-02-21  Pedro Alves  <pedro@codesourcery.com>
10307         * remote.c (extended_remote_attach_1): Set attach_flag.
10308         (extended_remote_create_inferior_1): Clear attach_flag.
10310 2008-02-20  Daniel Jacobowitz  <dan@codesourcery.com>
10312         * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
10313         r_brk_offset.
10314         (mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
10315         * solib-svr4.c (solib_svr4_r_brk): New.
10316         (open_symbol_file_object, svr4_current_sos): Always check the
10317         debug base.
10318         (svr4_fetch_objfile_link_map): Do not set debug_base.
10319         (enable_break): Use r_brk if it is set.
10320         (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
10321         (svr4_lp64_fetch_link_map_offsets): Likewise.
10322         * solib-svr4.h (struct link_map_offsets): Add r_brk_offset.
10324 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10325             Mark Kettenis  <kettenis@gnu.org>
10327         * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
10328         trad_frame_saved_reg.
10329         (trad-frame.h): New include.
10331         (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
10332         instead of frame_obstack_zalloc.
10333         (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.
10335         * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
10337 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10339         * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
10340         from disassemble_info instead of gdbarch_byte_order.
10342         * mips-tdep.c (gdb_print_insn_mips): Likewise.
10343         * arm-tdep.c (gdb_print_insn_arm): Likewise.
10345 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10347         * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
10348         gdbarch as parameter.
10350         * gdbarch.{c,h}: Regenerate.
10352         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10353         parameter.
10354         * mem-break.c (default_memory_insert_breakpoint)
10355         (default_memory_remove_breakpoint): Likewise.
10356         * target.h (default_memory_remove_breakpoint)
10357         (default_memory_insert_breakpoint): Likewise.
10359         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10360         parameter. Replace current_gdbarch by gdbarch.
10361         * m32r-tdep.c (m32r_memory_insert_breakpoint)
10362         (m32r_memory_remove_breakpoint): Likewise.
10364 2008-02-19  Daniel Jacobowitz  <dan@codesourcery.com>
10366         * MAINTAINERS: Add Vladimir Prus as MI maintainer.
10368 2008-02-19  Joel Brobecker  <brobecker@adacore.com>
10370         * NEWS: Add entry describing Add support improvements.
10372 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10374         * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
10375         M68K_FP0_REGNUM.
10377 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10379         * sentinel-frame.c (sentinel_frame_prev_register): Do not call
10380         register_offset_hack anymore.
10382         * regcache.{c,h} (register_offset_hack): Remove.
10384 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10386         * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.
10388         * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
10389         current_gdbarch by gdbarch.
10390         (hppa64_hpux_find_global_pointer): Likewise.
10391         * hppa-tdep.c (hppa_find_global_pointer): Likewise.
10392         (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
10393         find_global_pointer.
10395         * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
10396         parameter.
10397         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.
10399         * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
10400         of gdbarch_num_regs.
10402         * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
10403         replace current_gdbarch by gdbarch.
10404         (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.
10406 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10408         * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
10409         and replace current_gdbarch by gdbarch.
10411         (store_register): Update call for exec_one_dummy_insn.
10412         (fetch_register, store_register): Update call of regmap.
10414         * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
10415         parameter and replace current_gdbarch by gdbarch.
10417         (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
10418         the current architecture. Update call for getregs_supplies and
10419         getfpregs_supplies.
10420         (ppcnbsd_fetch_inferior_registers): Likewise.
10422         * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
10423         replace current_gdbarch by gdbarch.
10424         (ppcobsd_fetch_registers, ppcobsd_store_registers): Use
10425         get_regcache_arch to get at the current architecture. Update call for
10426         getfpregs_supplies.
10428 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10430         * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
10431         variables.
10433 2008-02-15  Markus Deuling  <deuling@de.ibm.com>
10435         * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.
10437 2008-02-14  Vladimir Prus  <vladimir@codesourcery.com>
10439         * NEWS: Mention pending breakpints in MI.
10441 2008-02-14  Markus Deuling  <deuling@de.ibm.com>
10443         * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.
10445 2008-02-13  Markus Deuling  <deuling@de.ibm.com>
10447         Add script to build and test GDB using enable-targets=all.
10449         * gdb_buildall.sh: New file.
10451 2008-02-11  Maxim Grigoriev  <maxim2405@gmail.com>
10453         * NEWS (New native configurations): Xtensa GNU/Linux.
10454         (New targets): Xtensa GNU/Linux.
10455         * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and
10456         xtensa-linux-tdep.o
10457         (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c
10458         (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies.
10459         * configure.tgt (xtensa*-*-linux*): New entry.
10460         * xtensa-config.c (xtensa_tdep): New variable.
10461         (xtensa_config_byte_order, xtensa_config_tdep): Removed.
10462         (rmap): Change format based on new macro XTREG.
10463         (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h.
10464         * xtensa-linux-nat.c: New.
10465         * xtensa-linux-tdep.c: New.
10466         * xtensa-xtregs.c: New.
10467         * xtensa-tdep.h (xtensa_elf_gregset_t): Update.
10468         (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE)
10469         (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros.
10470         (xtensa_register_t): New field coprocessor.
10471         (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected.
10472         * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed.
10473         (xtensa_pseudo_register_read, xtensa_pseudo_register_write):
10474         Update to handle privileged registers.
10475         (xtensa_supply_gregset) Remove exccause and excvaddr registers.
10476         (xtensa_push_dummy_call): Set windowstart register correctly.
10477         (call0_analyze_prologue): Initialize xtensa_default_isa.
10478         (xtensa_derive_tdep): New.
10479         (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and
10480         xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead.
10481         Call xtensa_derive_tdep().
10482         * config/xtensa/linux.mh: New.
10483         * regformats/reg-xtensa.dat: New.
10485 2008-02-09  Aleksandar Ristovski  <aristovski@qnx.com>  (tiny change)
10487         * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
10488         (filenames.h): New include.
10489         * Makefile.in (corelow.o): Add dependency for filenames.h.
10491 2008-02-08  Doug Evans  <dje@google.com>
10493         * source.c (find_and_open_source): Always rewrite absolute filenames.
10495 2008-02-07  Doug Evans  <dje@google.com>
10497         * breakpoint.c: #include "hashtab.h".
10498         (ambiguous_names_p): New fn.
10499         (update_breakpoint_locations): When restoring bp enable status, don't
10500         compare function names if any functions have same name.
10501         * Makefile.in (breakpoint.o): Add hashtab.h dependency.
10503 2008-02-07  Joel Brobecker  <brobecker@adacore.com>
10505         * ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
10506         instead of just a VEC*. Update use of SV.
10507         (ada_make_symbol_completion_list): Update symbol_completion_add calls.
10509 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10511         * NEWS: Put all new commands since gdb-6.7 together.
10513 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10515         * ada-lang.c: #include "vec.h".
10516         (struct string_vector, new_string_vector, string_vector_append):
10517         Delete.
10518         (char_ptr): New typedef.
10519         (DEF_VEC_P (char_ptr)): New VEC type.
10520         (symbol_completion_add): Update profile to take the new VEC type
10521         instead of the old string_vector structure. Update code accordingly.
10522         (ada_make_symbol_completion_list): Use the new VEC type instead of
10523         the old string_vector structure, and update the code accordingly.
10524         * Makefile.in (ada-lang.o): Add dependency on vec.h.
10526 2008-02-06  Pierre Muller  <muller@ics.u-strasbg.fr>
10528         * p-exp.y: Set current_type in missing places.
10529         (leftdiv_is_integer): New static variable.
10530         Typecast right operand of BINOP_DIV to long_double if both operands
10531         are integers.
10533 2008-02-06  Maciej W. Rozycki  <macro@mips.com>
10535         * remote-mips.c (set_breakpoint): Rename to...
10536         (mips_set_breakpoint): ... this.
10537         (clear_breakpoint): Rename to...
10538         (mips_clear_breakpoint): ... this.
10539         (common_breakpoint): Rename to...
10540         (mips_common_breakpoint): ... this.
10541         (check_lsi_error): Rename to...
10542         (mips_check_lsi_error): ... this.
10544 2007-02-05  Joel Brobecker  <brobecker@adacore.com>
10546         * language.h (struct language_defn): Add new field
10547         la_make_symbol_completion_list.
10548         * symtab.c (default_make_symbol_completion_list): Renames
10549         make_symbol_completion_list.
10550         (make_symbol_completion_list): New function.
10551         * symtab.h (default_make_symbol_completion_list): Add declaration.
10552         * langauge.c (unknown_language): Set la_make_symbol_completion_list.
10553         (auto_language, local_language): Likewise.
10554         * objc-lang.c (objc_language_defn): Likewise.
10555         * scm-lang.c (scm_language_defn): Likewise.
10556         * m2-lang.c (m2_language_defn): Likewise.
10557         * f-lang.c (f_language_defn): Likewise.
10558         * jv-lang.c (java_language_defn): Likewise.
10559         * p-lang.c (pascal_language_defn): Likewise.
10560         * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
10561         (minimal_language_defn): Likewise.
10562         * ada-lang.c (struct string_vector): New structure.
10563         (new_string_vector, string_vector_append, ada_unqualified_name)
10564         (add_angle_brackets, symbol_completion_match, symbol_completion_add)
10565         (ada_make_symbol_completion_list): New functions.
10566         (ada_language_defn): Set la_make_symbol_completion_list.
10567         * ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
10568         this function is static.
10570 2008-02-05  Kevin Buettner  <kevinb@redhat.com>
10572         * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
10573         to account for call site optimizations.
10575 2008-02-05  Andrzej Zaborowski  <balrogg@gmail.com>
10577         * tracepoint.c (read_actions): Handle end-of-text indicator
10578         in action list properly.  (Committed by Jim Blandy)
10580 2008-02-05  Jim Blandy  <jimb@red-bean.com>
10582         * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
10583         pseudoregister, not an internal error.
10584         Reported by: Andrzej Zaborowski
10586 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10588         * varobj.c (c_value_of_variable): Use xstrdup.
10590 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10592         Update stored rendition of varobj value when format changes.
10593         * varobj.c (varobj_set_display_format): Recomputed
10594         print_value.
10595         (c_value_of_variable): Return print_value.
10597 2008-02-03  Doug Evans  <dje@google.com>
10599         * eval.c (evaluate_subexp_standard): Fix type of result of mixed
10600         integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
10601         * valops.c (value_one): New function.
10602         * value.h (value_one): Declare.
10604         Fix argument promotion for binary arithmetic ops for C.
10605         * valarith.c (unop_result_type): New fn.
10606         (binop_result_type): New fn.
10607         (value_binop): Move result type computation to binop_result_type.
10608         (value_pos, value_neg, value_complement): Move result type
10609         computation to unop_result_type.
10611         PR 2384
10612         * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10613         Return basetype, fieldno if found.  All callers updated.
10614         Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
10615         objfile.
10616         * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10617         * symfile.h (fill_in_vptr_fieldno): Delete.
10619 2008-02-02  Doug Evans  <dje@google.com>
10621         * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.
10623         * typeprint.c (*): Whitespace cleanup.
10625 2008-02-02  Mark Kettenis  <kettenis@gnu.org>
10626             Luis Machado  <luisgpm@br.ibm.com>
10627             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10629         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
10630         don't fit into registerson the stack the way GCC does.
10632 2008-02-01  Joel Brobecker  <brobecker@adacore.com>
10634         * symtab.c (symbol_set_names): Do not add an entry in the demangling
10635         hash table for Ada symbols. Just store the linkage name as is,
10636         and leave the demangled_name as NULL.
10638 2007-02-01  Joel Brobecker  <brobecker@adacore.com>
10640         * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
10641         in the global scope.
10642         (new_symbol): Likewise.
10644 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10646         * breakpoint.c (break_command_1): Return void.
10647         (break_command_really): Return void.  Rethrow
10648         exceptions instead of returning.
10649         (gdb_breakpoint): Remove the error_message parameter.
10650         Return void.  Rename to set_breakpoint.
10651         * gdb.h (gdb_breakpoint): Rename and move to...
10652         * breakpoint.h (set_breakpoint): ...here.
10653         * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
10654         event hooks even if exception is thrown.  Adjust to
10655         gdb_breakpoint interface changes.
10658 2008-02-01  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10660         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
10661         float in both first and second word in the doubleword, to support
10662         old and new ABIs.
10664 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10666         Properly rethrow exception.  This fixes errors
10667         about non-existent functions for -break-insert.
10668         * breakpoint.c (break_command_really): Use throw_exception
10669         for rethrowing.  If rethrowing, don't print the exception.
10671 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10673         * NEWS: Mention Decimal Floating Point support.
10675 2008-01-31  Joel Brobecker  <brobecker@adacore.com>
10677         * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
10678         value type to builtin_type_void_func_ptr.
10680 2008-01-31  Andreas Krebbel  <krebbel1@de.ibm.com>
10682         * s390-tdep.c (is_float_singleton, is_float_like,
10683         alignment_of, s390_return_value): Make checks for
10684         TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.
10686 2008-01-31  Luis Machado  <luisgpm@br.ibm.com>
10687             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10689         * infcmd.c (default_print_registers_info): Also print hex
10690         raw contents for TYPE_CODE_DECFLOAT registers.
10691         * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
10692         * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
10693         (rs6000_register_name): Add support for DFP pseudo-registers.
10694         (rs6000_pseudo_register_type): Likewise.
10695         rs6000_pseudo_register_reggroup_p): Likewise.
10696         (ppc_pseudo_register_read): New function.
10697         (ppc_pseudo_register_write): Likewise.
10698         (rs6000_pseudo_register_read): Likewise.
10699         (rs6000_pseudo_register_write): Likewise.
10700         (e500_pseudo_register_read): Move checks to
10701         rs6000_pseudo_register_read.
10702         (e500_pseudo_register_write): Move checks to
10703         rs6000_pseudo_register_write.
10704         (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum.  Install
10705         rs6000_pseudo_register_read and rs6000_pseudo_register_write
10706         in gdbarch if SPE or DFP is available.  Adjust gdbarch's
10707         num_pseudo_regs to account for DFP pseudo regs.
10709 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10711         * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
10712         * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
10713         (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
10714         rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
10715         e500_pseudo_register_read, e500_pseudo_register_write): Use
10716         IS_SPE_PSEUDOREG macro.
10717         (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
10718         (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
10719         Remove initialization of tdep->ppc_ev31_regnum.
10721 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
10723         * printcmd.c (print_formatted): Handle references as for unformatted
10724         prints.
10726 2008-01-30  Joel Brobecker  <brobecker@adacore.com>
10728         * eval.c (evaluate_subexp_standard): Add handling of user
10729         registers when in EVAL_AVOID_SIDE_EFFECTS mode.
10731 2008-01-30  Pierre Muller  <muller@ics.u-strasbg.fr>
10733         * eval.c (evaluate_subexp_standard): Support
10734         BINOP_INTDIV opcode.
10736 2008-01-30  Paul N. Hilfinger  <hilfinger@adacore.com>
10738         * valarith.c (value_binop): Add floating-point BINOP_MIN and
10739         BINOP_MAX cases.
10740         For BINOP_EXP, use length and signedness of left operand only for
10741         result, as for shifts.
10742         For integral operands to BINOP_EXP, use new integer_pow and
10743         uinteger_pow functions so as to get full range of results.
10744         (integer_pow): New function.
10745         (uinteger_pow): New function.
10747 2008-01-30  Vladimir Prus  <vladimir@codesourcery.com>
10749         Use vector for varobj_list_children interface.
10750         * gdb/varobj.c (varobj_list_children): Return vector
10751         of varobjs.
10752         * gdb/varobj.h (varobj_list_children): Adjust
10753         prototype.
10754         (varobj_p): Declare.  Declare vector thereof.
10755         * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
10756         for varobj_list_children change.
10757         * Makefile.in (varobj_h): Update dependencies.
10759 2008-01-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10761         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
10762         TYPE_CODE_DECFLOAT arguments.
10763         (ppc64_sysv_abi_push_dummy_call) Likewise.
10764         (get_decimal_float_return_value): New function.
10765         (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
10766         values by calling get_decimal_float_return_value.
10767         (ppc64_sysv_abi_return_value): Likewise.
10769 2008-01-30  Nick Roberts  <nickrob@snap.net.nz>
10771         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file):  Add field
10772         for preprocessor macro information.  Formatting changes.
10774 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10776         * remote.c (struct remote_state): Add cached_wait_status.
10777         (remote_exec_file): New variable.
10778         (PACKET_vAttach, PACKET_vRun): New constants.
10779         (extended_remote_restart): Do not query for status.
10780         (struct start_remote_args): New.
10781         (remote_start_remote): Take it as a second argument.  Check
10782         whether the target is running.  Issue an error for non-running
10783         non-extended targets.  Cache the wait status.  Set inferior_ptid
10784         here.
10785         (remote_open_1): Prompt to disconnect non-running targets.  Make
10786         sure the target is marked running.  Do not set inferior_ptid here.
10787         Update call to remote_start_remote.  Do not call remote_check_symbols
10788         if the target is not running.
10789         (remote_detach_1): Rename from remote_detach.  Take an EXTENDED
10790         argument.  Handle a non-running target.
10791         (remote_detach): Use it.
10792         (extended_remote_detach): New.
10793         (remote_disconnect): Fix typo.  Use remoute_mourn_1.
10794         (extended_remote_attach_1, extended_remote_attach)
10795         (extended_async_remote_attach): New.
10796         (remote_vcont_resume): Remove unused variable.
10797         (remote_wait, remote_async_wait): Use any cached wait status.
10798         (putpkt_binary, getpkt): Clear any cached wait status.
10799         (extended_remoute_mourn_1): New.
10800         (extended_remote_mourn): Use it.
10801         (extended_async_remote_mourn, extended_remote_run): New.
10802         (extended_remote_create_inferior_1): New.
10803         (extended_remote_create_inferior): Use it.
10804         (extended_remote_async_create_inferior): Likewise.
10805         (remote_xfer_partial): Skip for non-executing targets.
10806         (init_extended_remote_ops): Set to_detach and to_attach.
10807         (init_extended_async_remote_ops): Likewise.  Use
10808         extended_async_remote_mourn.
10809         (_initialize_remote): Register vAttach, vRun, and
10810         set remote exec-file.
10811         * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.
10813 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10815         * Makefile.in (symfile.o): Update.
10816         * NEWS: Mention exec tracing support.
10817         * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
10818         exec events.
10819         * infcmd.c (kill_if_already_running, detach_command)
10820         (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
10821         * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
10822         (follow_exec): Do not check may_follow_exec.  Do not mourn and push
10823         targets.  Apply the sysroot path to the loaded executable.  Use
10824         no_shared_libraries.
10825         * linux-nat.c (linux_child_follow_fork): Print fork following
10826         messages if verbose.
10827         (kill_wait_callback): Kill again before waiting a second time.
10828         * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
10829         no_shared_libraries.
10831 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10833         * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.
10835 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10837         * nto-tdep.h: Remove #include "defs.h".
10838         * nto-tdep.c: Add #include "defs.h".
10839         * Makefile.in (nto_tdep_h): Update dependencies.
10840         (nto-tdep.o): Likewise.
10842 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10844         * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
10845         and use it.
10846         (proceed, start_remote): Update call to wait_for_inferior.
10847         * inferior.h (wait_for_inferior): Update declaration.
10848         * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
10849         solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
10850         * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
10851         TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.
10853 2008-01-29  Aleksandar Ristovski  <aristovski@qnx.com>
10855         * varobj (adjust_value_for_child_access): Added checking for
10856         returned value from gdb_value_ind.
10857         (c_describe_child): Likewise.
10858         (cplus_describe_child): Fixed a typo.
10860 2008-01-29  Jim Blandy  <jimb@red-bean.com>
10862         * MAINTAINERS: Update my info.
10864 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10866         Use multiple locations for hardware watchpoints.
10867         This eliminates the need to traverse value chain, doing
10868         various checks, in three different places.
10870         * breakpoint.h (struct bp_location): New fields
10871         lengths and watchpoint_type.
10872         (struct breakpoint): Remove the val_chain field.
10873         * breakpoint.c (is_hardware_watchpoint): New.
10874         (free_valchain): Remove.
10875         (update_watchpoint): New.
10876         (insert_bp_location): For hardware watchpoint, just
10877         directly insert it.
10878         (insert_breakpoints): Call update_watchpoint_locations
10879         on all watchpoints.  If we have failed to insert
10880         any location of a hardware watchpoint, remove all inserted
10881         locations.
10882         (remove_breakpoint): For hardware watchpoints, directly
10883         remove location.
10884         (watchpoints_triggered): Iterate over locations.
10885         (bpstat_stop_status): Use only first location of
10886         a resource watchpoint.
10887         (delete_breakpoint): Don't call free_valchain.
10888         (print_one_breakpoint): Don't print all
10889         locations for watchpoints.
10890         (breakpoint_re_set_one): Use update_watchpoint for
10891         watchpoints.
10893 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10895         Don't reset watchpoint block on solib load.
10897         * breakpoint.c (insert_bp_location): For watchpoints,
10898         recompute condition.
10899         (breakpoint_re_set_one): Instead of recomputing value
10900         and condition for watchpoints, just reset value and
10901         let insert_breakpoints/insert_bp_location recompute it.
10902         Don't do anything about disabled watchpoint.
10904 2008-01-29  Pierre Muller  <muller@ics.u-strasbg.fr>
10906         * valarith.c (value_binop): Handle unsigned integer
10907         division by zero.
10909 2008-01-28  Kevin Buettner  <kevinb@redhat.com>
10911         * mn10300-tdep.c (mn10300_analyze_prologue): Check for an
10912         instruction pattern that appears frequently in position
10913         independent code.  Fix bug in code which looks for "fmov" and
10914         backtracks if no "fmov" is found.
10916 2008-01-28  Doug Evans  <dje@google.com>
10918         * dbxread.c (read_dbx_symtab): Fix indentation.
10919         Reformat comments to 80 columns.
10920         Move local var def closer to only use.
10922 2008-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
10924         * fork-child.c (SHELL_FILE): Remove #ifndef.
10925         (fork_inferior): Remove SHELL_COMMAND_CONCAT.
10927 2008-01-25  Pierre Muller  <muller@ics.u-strasbg.fr>
10929         * i386-tdep.c (i386_skip_noop): New function.
10930         (i386_analyze_prologue): Call i386_skip_noop function.
10932 2008-01-24  Michael Snyder  <msnyder@specifix.com>
10934         * procfs.c (procfs_xfer_partial): Comment, cut/paste error.
10935         * win32-nat.c (win32_xfer_partial): Ditto.
10936         * target.c (default_xfer_partial): Minor whitespace adjustment.
10938 2008-01-24  Pedro Alves  <pedro@codesourcery.com>
10940         * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
10941         strip bit 1 even if pc doesn't point to thumb code.
10943 2008-01-23  Daniel Jacobowitz  <dan@codesourcery.com>
10945         * remote.c (remote_wait): Handle SIGINT between packets.
10946         (remote_async_wait): Likewise.
10948 2008-01-23  Vladimir Prus  <vladimir@codesourcery.com>
10949             Chris Demetriou  <cgd@google.com>
10951         * thread.c (add_thread_silent): Renamed
10952         from add_thread.
10953         (print_thread_events): New variable definition.
10954         (show_print_thread_events): New function.
10955         (_initialize_thread): Add "set print thread-events" and
10956         "show print thread-events" commands.
10957         (add_thread): Announce new thread.
10958         * gdbthread.h (add_thread_silent): Declare.
10959         (print_thread_events): New variable declaration.
10960         * inf-ttrace.c (inf_ttrace_wait): Don't
10961         inform about new thread, as add_thread is always
10962         called too, and will take care of that.
10963         * infrun.c (handle_inferior_event): Likewise.
10964         * procfs.c (procfs_wait): Likewise.
10965         * remote.c (remote_currthread): Likewise.
10966         * sol-thread.c (sol_thread_wait): Likewise.
10967         * win32-nat.c (get_win32_debug_event): Likewise.
10968         * linux-thread-db.c (attach_thread): Likewise.
10969         Remove the verbose parameter.
10970         (check_event): Make detach_thread be verbose
10971         only if print_thread_events is set.
10972         * linux-nat.c (lin_lwp_attach_lwp): Don't inform
10973         about new thread.  This is called only from
10974         linux-thread-db.c:attach_thread, which will take care.
10975         Remove the verbose parameter.
10976         * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.
10978 2008-01-23  Nick Roberts  <nickrob@snap.net.nz>
10980         * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.
10982 2008-01-22  Vladimir Prus  <vladimir@codesourcery.com>
10984         * breakpoint.c (break_command_really): New parameter
10985         ignore_count.
10986         (break_command_1): Pass 0 as
10987         ignore_count to break_command_really.
10988         (gdb_breakpoint): Pass ignore_count to
10989         break_command_really.
10991 2008-01-21  Kevin Buettner  <kevinb@redhat.com>
10993         * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
10994         sigcontext struct via pointer.
10995         (struct sigframe comment): Update to show new field `psc'.
10997 2008-01-21  Vladimir Prus  <vladimir@codesourcery.com>
10999         * infrun.c (handle_inferior_event): If
11000         we failed to remove breakpoints, error,
11001         don't try to increment PC by hand.
11003 2008-01-18  Nick Hudson  <nick.hudson@dsl.pipex.com>
11005         Add NetBSD/hppa target and host support.
11007         * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
11008         (hppabsd_gregset): Move to ...
11009         (hppabsd_regset_from_core_section): Rename
11010         hppaobsd_regset_from_core_section and move to ...
11011         (hppabsd_find_global_pointer): Update comment.
11012         (hppabsd_init_abi): Make global. Do not register
11013         hppabsd_regset_from_core_section.
11014         (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
11015         move to ...
11016         (_initialize_hppabsd_tdep): Move to ...
11017         * hppaobsd-tdep.c: ... here. New file.
11018         * hppnbsd-tdep.c: New file.
11019         * hppnbsd-nat.c: New file.
11020         * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
11021         (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
11022         (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
11023         (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
11024         * configure.host (hppa*-*-netbsd*): New entry.
11025         * configure.tgt (hppa*-*-netbsd*): New entry.
11026         (hppa*-*-openbsd*): Update.
11027         * NEWS (New native configuration): Mention NetBSD/hppa.
11028         (New targets): Mention NetBSD/hppa.
11030 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
11032         * gdbarch.sh (function_list): Add new property bits_big_endian to
11033         gdbarch structure.
11034         * gdbarch.{c,h}: Regenerate.
11036         * value.c (struct value): Replace BITS_BIG_ENDIAN by
11037         gdbarch_bits_big_endian (comment).
11038         (unpack_field_as_long, modify_field): Likewise.
11039         * value.h: Likewise (comment).
11040         * valops.c (value_slice): Likewise.
11041         * valarith.c (value_subscript, value_bit_index): Likewise.
11042         * gdbtypes.h (field): Likewise (comment).
11043         * eval.c (evaluate_subexp_standard): Likewise.
11044         * dwarf2read.c (dwarf2_add_field): Likewise.
11045         * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
11046         (move_bits, ada_value_assign, value_assign_to_component): Likewise.
11048         * defs.h (BITS_BIG_ENDIAN): Remove.
11050 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
11052         * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
11053         function calls.
11054         * m2-exp.y (yylex): Likewise.
11055         * objc-exp.y (yylex): Likewise.
11057         * defs.h (DEPRECATED_STREQN): Remove.
11059 2008-01-17  H.J. Lu  <hjl.tools@gmail.com>
11061         * MAINTAINERS: Update my email address.
11063 2008-01-17  Jim Blandy  <jimb@codesourcery.com>
11065         * README: Mention gdbserver/README.
11067 2008-01-17  Pierre Muller  <muller@ics.u-strasbg.fr>
11069         * valarith.c (value_binop): Handle BINOP_INTDIV
11070         for unsigned and signed integers.
11072 2008-01-17  Ulrich Weigand  <uweigand@de.ibm.com>
11074         * s390-tdep.c (s390_gdbarch_init): Set default long double
11075         type to 128-bit IEEE quad.
11077 2008-01-17  Joel Brobecker  <brobecker@adacore.com>
11079         * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
11081 2008-01-16  Mark Kettenis  <kettenis@gnu.org>
11083         * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.
11085         * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
11086         * value.c: All callers changed.
11088 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11090         * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
11091         DEPRECATED_STREQ by its expression.
11092         * coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
11093         * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
11094         (scan_xcoff_symtab): Likewise.
11095         * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
11096         * f-lang.c (find_common_for_function): Likewise.
11097         * objc-exp.y (parse_number): Likewise.
11099         * defs.h (DEPRECATED_STREQ): Remove.
11101 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11103         * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
11104         * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
11105         get_frame_arch to get at the current_architecture. Update AM33_MODE
11106         call.
11107         (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
11108         (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
11109         architecture.
11110         (set_reg_offsets, mn10300_analyze_prologue): Fix indentation.
11112 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11114         * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
11115         parameter.
11116         * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.
11118         (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
11119         current_gdbarch by gdbarch. Update caller.
11121         * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
11122         (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
11123         the current architecture. Update calls of
11124         amd64_native_gregset_supplies_p.
11125         * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
11126         (amd64bsd_store_inferior_registers): Likewise.
11128 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11130         * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
11131         Replace current_gdbarch by gdbarch. Update caller.
11133 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11135         * dbxread.c (repeated_header_complaint, dbx_symfile_init)
11136         (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
11137         (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
11138         (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
11139         (stabsect_build_psymtabs): Fix indentation.
11141 2008-01-15  Michael Snyder  <msnyder@specifix.com>
11143         * corelow.c (core_xfer_partial): Comment, cut/paste error.
11145 2008-01-14  Pierre Muller  <muller@ics.u-strasbg.fr>
11147         * win32-nat.c (win32_create_inferior): Restore code calling
11148         CloseHandle on ProcessInformation structure.
11150 2008-01-13  Nick Hudson  <nick.hudson@dsl.pipex.com>
11152         * configure.ac: Check for void * as 3 argument of ptrace.
11153         * configure: regenerate.
11155 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11157         * alpha-tdep.c (alpha_heuristic_proc_start)
11158         (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
11159         current_gdbarch by gdbarch.
11161         (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
11162         current architecture by frame_info. Update alpha_heuristic_proc_start
11163         call.
11165         (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
11166         get_frame_arch to get at the current architecture by frame_info. Update
11167         alpha_sigtramp_register_address call.
11169         * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
11170         current_gdbarch by gdbarch. Update caller.
11171         (convert_to_extended, convert_from_extended): Add endianess parameter
11172         for comparison. Update caller.
11173         (arm_extract_return_value, arm_store_return_value): Use
11174         get_regcache_arch to get at the current architecture.
11176         * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
11177         current_gdbarch by gdbarch. Update caller.
11178         (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
11179         gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.
11181         * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
11182         gdbarch as parameter. Update caller.
11183         (h8300_init_frame_cache): Add gdbarch as parameter. Replace
11184         current_gdbarch by gdbarch. Update caller.
11186         * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
11187         update caller. Replace current_gdbarch by gdbarch.
11189         * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
11190         the current architecture. Replace current_gdbarch by gdbarch.
11191         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
11192         (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
11193         expression. Add gdbarch as parameter and replace current_gdbarch with
11194         it. Update caller.
11195         (M6811_TDEP): Remove.
11196         (m68hc11_frame_prev_register): Use get_frame_arch to get at the current
11197         architecture.
11198         (m68hc11_scan_prologue): Add gdbarch as parameter. Replace
11199         current_gdbarch by gdbarch. Update caller.
11201         * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
11202         update caller.
11203         (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
11204         by gdbarch.
11206         * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
11207         caller. Relace current_gdbarch by gdbarch.
11208         (altivec_register_p, spe_register_p): Likewise.
11209         * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
11210         parameter.
11211         * ppc-linux-nat.c (fetch_register, store_register): Update caller of
11212         altivec_register_p and spe_register_p.
11214         * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
11215         caller. Replace current_gdbarch by gdbarch.
11216         (score_analyze_prologue): use get_frame_arch to get at the current
11217         architecture.
11219         * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
11220         * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
11221         current_gdbarch by gdbarch. Update caller.
11222         (sparc_frame_cache): Use get_frame_arch to get at the current
11223         architecture.
11224         * sparce64-tdep.c (sparc64_skip_prologue): Update call of
11225         sparc_analyze_prologue.
11227         * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
11228         parameter.
11230 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11232         * exec.c: #include "arch-utils.h"
11233          (print_section_info): Use gdbarch_from_bfd to get at the
11234         current architecture. Replace current_gdbarch. Fix indention. Replace
11235         deprecated_print_address_numeric by paddress.
11236         * Makefile.in (exec.o) Add dependency to arch-utils.h.
11238         * valprint.c (val_print_string): Replace
11239         deprecated_print_address_numeric.
11240         * tracepoint.c (trace_mention, scope_info): Likewise.
11241         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
11242         (print_symbol, print_partial_symbols, maintenance_info_psymtabs)
11243         (maintenance_check_symtabs): Likewise.
11244         * symfile.c (list_overlays_command): Likewise.
11245         * stack.c (frame_info, print_block_frame_labels): Likewise.
11246         * printcmd.c (print_address, print_address_demangle)
11247         (address_info): Likewise.
11248         * corefile.c (memory_error): Likewise.
11249         * infcmd.c (jump_command): Likewise.
11250         * breakpoint.c (insert_bp_location, describe_other_breakpoints)
11251         (mention, delete_breakpoint): Likewise.
11252         * c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
11253         * dwarf2read.c (dump_die): Likewise.
11254         * ada-valprint.c (ada_val_print_1): Likewise.
11255         * f-valprint.c (f_val_print): Likewise.
11256         * linux-fork.c (info_forks_command): Likewise.
11257         * m32r-com.c (m32r_load_section, m32r_load)
11258         (m32r_upload_command): Likewise.
11260         * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
11262 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11264         * gdbarch.sh (skip_prologue): Add gdbarch
11265         as parameter.
11266         * gdbarch.{c,h}: Regenerate.
11268         * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
11269         * amd64-tdep.c (amd64_skip_prologue): Likewise.
11270         * avr-tdep.c (avr_skip_prologue): Likewise.
11271         * cris-tdep.c (cris_skip_prologue): Likewise.
11272         * frv-tdep.c (frv_skip_prologue): Likewise.
11273         * h8300-tdep.c (h8300_skip_prologue): Likewise.
11274         * hppa-tdep.c (hppa_skip_prologue): Likewise.
11275         * i386-tdep.c (i386_skip_prologue): Likewise.
11276         * ia64-tdep.c (ia64_skip_prologue): Likewise.
11277         * iq2000-tdep.c (iq2000_skip_prologue): Likewise.
11278         * m32r-tdep.c (m32r_skip_prologue): Likewise.
11279         * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
11280         * m68k-tdep.c (m68k_skip_prologue): Likewise.
11281         * m88k-tdep.c (m88k_skip_prologue): Likewise.
11282         * mep-tdep.c (mep_skip_prologue): Likewise.
11283         * mips-tdep.c (mips_skip_prologue): Likewise.
11284         * mn10300-tdep.c (mn10300_skip_prologue): Likewise.
11285         * mt-tdep.c (mt_skip_prologue): Likewise.
11286         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
11287         * score-tdep.c (score_skip_prologue): Likewise.
11288         * sh64-tdep.c (sh64_skip_prologue): Likewise.
11289         * sh-tdep.c (sh_skip_prologue): Likewise.
11290         * sparc64-tdep.c (sparc64_skip_prologue): Likewise.
11291         * sparc-tdep.c (sparc32_skip_prologue): Likewise.
11292         * spu-tdep.c (spu_skip_prologue): Likewise.
11293         * v850-tdep.c (v850_skip_prologue): Likewise.
11294         * vax-tdep.c (vax_skip_prologue): Likewise.
11295         * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
11296         * xtensa-tdep.c (xtensa_skip_prologue): Likewise.
11298         * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
11299         current_gdbarch by gdbarch.
11300         * m32c-tdep.c (m32c_skip_prologue): Likewise.
11301         * s390-tdep.c (s390_skip_prologue): Likewise.
11303 2008-01-10  Doug Evans  <dje@google.com>
11305         * defs.h (struct continuation_arg): Fix typo in comment.
11306         * target.c (target_translate_tls_address): Fix comment spelling error.
11308 2008-01-09  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11310         * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
11311         (DOUBLEST_SCAN_FORMAT): Likewise.
11312         * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
11313         * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
11314         * c-exp.y (parse_number): Likewise.
11315         * jv-exp.y (parse_number): Likewise.
11316         * objc-exp.y (parse_number): Likewise.
11317         * p-exp.y (parse_number): Likewise.
11319 2008-01-09  Joel Brobecker  <brobecker@adacore.com>
11321         * gdbtypes.c (create_array_type): Add handling of null Ada arrays.
11322         (check_typedef): Likewise.
11324 2008-01-09  Luis Machado  <luisgpm@br.ibm.com>
11326         * printcmd.c (printf_command): Add seen_big_h, seen_big_d and
11327         seen_double_big_d, treat the new H, D, and DD modifiers as length
11328         modifiers.
11330 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11332         * dwarf2read.c (read_enumeration_type): Add comment.
11334 2008-01-08  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11336         * config.in: Regenerate.
11338 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11340         * ada-lang.c (ada_convert_actual): Renames convert_actual.
11341         Make non-static.
11342         (ada_convert_actuals): Delete.
11343         * ada-lang.h (ada_convert_actual): Add declaration.
11344         (ada_convert_actuals): Remove declaration.
11345         * infcall.c: #include "ada-lang.h".
11346         (value_arg_coerce): Add new parameter sp.  Update function
11347         documetnation.  Add handling of Ada function call parameters.
11348         * Makefile.in (infcall.o): Update dependencies.
11350 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
11352         * ada-lang.c (ensure_lval): Fix value lval kind.
11353         (convert_actual): Add handling for arguments passed by reference.
11355 2008-01-08  Doug Evans  <dje@google.com>
11357         * dbxread.c (read_dbx_symtab): Fix indentation.
11359 2008-01-07  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11361         * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
11362         (valarith.o): Depend on dfp.h.
11363         (valops.o): Likewise.
11364         * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
11365         (set_decnumber_context): New function.
11366         (decimal_check_errors): Likewise.
11367         (decimal_from_number): Likewise.
11368         (decimal_to_number): Likewise.
11369         (decimal_from_string): Use set_decnumber_context and
11370         decimal_check_errors.
11371         (decimal_from_integral): New function.
11372         (decimal_from_floating): Likewise.
11373         (decimal_to_double): Likewise.
11374         (promote_decimal): Likewise.
11375         (decimal_binop): Likewise.
11376         (decimal_is_zero): Likewise.
11377         (decimal_compare): Likewise.
11378         (decimal_convert): Likewise.
11379         * dfp.h (decimal_from_integral): New prototype.
11380         (decimal_from_floating): Likewise.
11381         (decimal_to_double): Likewise.
11382         (decimal_binop): Likewise.
11383         (decimal_is_zero): Likewise.
11384         (decimal_compare): Likewise.
11385         (decimal_convert): Likewise.
11386         * eval.c (evaluate_subexp_standard): Remove expect_type argument from
11387         call to value_from_decfloat.
11388         * valarith.c: Include dfp.h.
11389         (value_args_as_decimal): New function.
11390         (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
11391         (value_logical_not): Likewise.
11392         (value_equal): Likewise.
11393         (value_less): Likewise.
11394         (value_pos): Likewise.
11395         (value_neg): Formatting fix.
11396         * valops.c: Include dfp.h.
11397         (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
11398         * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
11399         (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
11400         (value_from_decfloat): Remove expect_type argument.
11401         * value.h (value_from_decfloat): Update prototype.
11403 2008-01-07  Vladimir Prus  <vladimir@codesourcery.com>
11405         Ignore change in name of dynamic linker during
11406         execution on Solaris.  This also unbreaks pending breakpoints.
11408         * solist.h (struct target_so_ops): New field same.
11409         * solib-svr4.c (svr4_same): New.
11410         (_initialize_svr4_solib): Register svr4_same.
11411         * solib.c (update_solib_list): Use ops->same, if available.
11413 2008-01-06  Christopher Faylor  <me+cygwin@cgf.cx>
11415         * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
11416         when using MS-DOS paths.
11418 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11420         * NEWS: Mention --pid and --core command line behaviour changes.
11422 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11424         * main.c (captured_main): Remove 'count' varible and the
11425         ALIGN_STACK_ON_ENTRY block that used it.  Error out if --core and
11426         --pid options were issued simultaneously.  If an explicit pid
11427         option was passed, don't fallback to core file.  Detect extra
11428         arguments better in the presence of explicit pid or core
11429         arguments.
11431 2008-01-05  Joel Brobecker  <brobecker@adacore.com>
11433         * ada-lang.c (ada_which_variant_applies): Correctly compute
11434         the value of the discriminant when the variant record is packed.
11436 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11438         * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
11439         that are used to differentiate homonyms.
11441 2008-01-04  Jerome Guitton  <guitton@adacore.com>
11443         * ada-lang.c (decode_packed_array_type): Avoid a seg fault
11444         when the type is an anonymous pointer type.
11445         (ada_check_typedef): Avoid a seg fault when the type is null.
11446         * ada-typeprint.c (print_array_type): Add support for pointer
11447         to packed arrays.
11449 2008-01-04  Paul N. Hilfinger  <hilfinger@adacore.com>
11451         * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.
11453 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11455         * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
11456         EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.
11458 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11460         * ada-exp.y (chop_separator): New function.
11461         (write_selectors): Rewrite to re-use chop_separator.
11462         (ada_nget_field_index, get_symbol_field_type): New functions.
11463         (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
11464         expressions.
11466 2008-01-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11468         * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
11469         of SYMBOL_VALUE when working with function symbols.
11471 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11473         * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
11474         expressions.  These expressions do not need to be rewriten.
11476 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11478         * dwarf2read.c (read_enumeration_type): Flag type as stub if
11479         the given die is a declaration.
11481 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11483         * ada-lang.c (ada_array_bound_from_type): Make non-static.
11484         Handle properly the case when the index type is an enumerated type.
11485         Do not return the subtype of the bounds type, just return the
11486         bounds type directly - this is not needed and is more consistent
11487         with what we do for arrays when no XA parallel type exists.
11489 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11491         * ada-lang.c (static_unwrap_type): Add forward declaration.
11492         (template_to_static_fixed_type): Fields of dynamic types sometimes
11493         also need to be unwrapped. Take this into account.
11494         (ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
11495         (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
11496         * ada-typeprint.c (ada_print_type): Get the typename from
11497         the original type, not the base type.
11499 2008-01-03  Jerome Guitton  <guitton@adacore.com>
11501         * ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
11502         (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
11503         Update calls to ada_to_fixed_type.
11504         (ada_template_to_fixed_record_type_1): Ditto, but without looking
11505         for the tag.
11506         (ada_to_fixed_type): Add check_tag parameter; do not look for
11507         tag if null.  When looking for a tag, use a fixed record type.
11508         * ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
11509         * ada-valprint.c (printable_val_type, ada_value_print): Update
11510         calls to ada_to_fixed_type.
11512 2008-01-03  Luis Machado  <luisgpm@br.ibm.com>
11514         * doublest.c (convert_floatformat_to_doublest): Call
11515         floatformat_to_doublest instead of floatformat_to_double and use
11516         DOUBLEST variables.
11517         (convert_doublest_to_floatformat): Call floatformat_from_doublest
11518         instead of floatformat_from_double and use DOUBLEST variables.
11520 2008-01-03  Nick Hudson  <nick.hudson@dsl.pipex.com>
11522         * MAINTAINERS (Write After Approval): Add self.
11524 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11526         * symfile.c (set_initial_language): Make non-static.
11527         * symfile.h (set_initial_language): Add declaration.
11528         * language.c: #include "symfile.h".
11529         (set_language): Call set_initial_language if the frame language
11530         could not be determined.
11532 2008-01-03  Paul N. Hilfinger  <hilfinger@adacore.com>
11534         * eval.c (evaluate_subexp_for_address): Provide frame address to
11535         locate_var_value only if it will be needed.
11537 2008-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
11539         * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.
11541 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11543         * ada-lang.c (ada_evaluate_subexp): Modify the value returned
11544         when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
11545         This is needed to make sure that any other treatment applied
11546         to the resulting value does not fail for spurious reason,
11547         such as trying to take the address of this value.
11549 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11551         * ada-lang.c (ada_value_equal): Dereference reference types when
11552         comparing arrays.
11554 2008-01-01  Daniel Jacobowitz  <dan@codesourcery.com>
11556         Updated copyright notices for most files.
11558 2008-01-01  Christopher Faylor  <me+gdb@cgf.cx>
11560         * win32-nat.c (psapi_module_handle): Remove static.
11561         (get_module_name): Rename from psapi_get_dll_name.  Revamp slightly to
11562         return first module found if base_address is zero.  Don't initialize
11563         psapi function pointers here.  Convert to cygwin paths when
11564         appropriate.
11565         (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
11566         executable name.  Use get_module_name when that fails or when
11567         !__CYGWIN__.
11568         (_initialize_psapi): New function.  Initialize psapi stuff before it is
11569         needed or issue a warning if it is not found.  Move psapi_module_handle
11570         here.
11572 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11574         * ada-lang.c (ada_remove_trailing_digits): New function.
11575         (ada_remove_po_subprogram_suffix): New function.
11576         (ada_decode): Improve. Move the description of the algorithm
11577         directly inside the code, instead of in the function global
11578         description.
11580 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11582         * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
11583         and always print the dereferenced value.
11585 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11587         * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
11588         of the case where the first argument is a reference.
11589         (ada_evaluate_subexp, case BINOP_ADD): Likewise.
11591 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11593         Implement support for Ada interface types.
11595         * ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
11596         (ada_is_ignored_field): Ignore fields that are a dispatch table
11597         of a tagged type.
11599 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11601         * top.c (print_gdb_version): Update copyright year.
11603 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11605         * ChangeLog-2007: New ChangeLog rotation.
11606         * ChangeLog: Reset for 2008.
11607         * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
11608         ChangeLog-2007.
11610 For older changes see ChangeLog-2007.
11612 Local Variables:
11613 mode: change-log
11614 left-margin: 8
11615 fill-column: 74
11616 version-control: never
11617 coding: utf-8
11618 End: