OSDN Git Service

* gc.h (gc_process_relocs): Call is_section_foldable_candidate to
[pf3gnuchains/pf3gnuchains3x.git] / gdb / ChangeLog-2008
1 2008-12-31  Pedro Alves  <pedro@codesourcery.com>
2
3         PR gdb/8812:
4         * infrun.c (handle_command): Don't print a header or notify the
5         target about signal changes if we didn't change any signal.
6
7 2008-12-29  Joel Brobecker  <brobecker@adacore.com>
8
9         * valops.c (find_method_list): Minor reformatting in comment.
10
11 2008-12-29  Pedro Alves  <pedro@codesourcery.com>
12
13         PR gdb/7536:
14         * valprint.c (input_radix_1): New static global.
15         (set_input_radix): Use it instead of "input_radix".
16         (set_input_radix_1): Always leave input_radix_1 set to
17         input_radix.
18         (output_radix_1): New static global.
19         (set_output_radix): Use it instead of "output_radix".
20         (set_output_radix_1): Always leave output_radix_1 set to
21         output_radix.
22         (_initialize_valprint): Use "input_radix_1" instead of
23         "input_radix" with the "input-radix" command.  Use
24         "output_radix_1" instead of "output_radix" with the "output-radix"
25         command.
26
27 2008-12-28  Pedro Alves  <pedro@codesourcery.com>
28
29         * linux-fork.c (linux_fork_detach): New.
30         * linux-fork.h (linux_fork_detach): Declare.
31         * linux-nat.c (linux_child_follow_fork): When following the fork
32         child, add the child inferior before possibly detaching from the
33         parent.  Don't reinstall ourselves.
34         (linux_nat_detach): Call linux_fork_detach if there are other
35         forks to debug.
36         * linux-thread-db.c (thread_db_detach): Don't call
37         target_mourn_inferior.  Instead inline the necessary bits.
38         * inf-ptrace.c (inf_ptrace_detach): Don't unpush the target if
39         there are other inferiors to debug.
40
41 2008-12-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
42
43         Fix TYPE_HIGH_BOUND for TYPE_CODE_RANGE using arbitrary TYPE_NFIELDS in
44         preparation for supporting DW_AT_byte_stride.
45         * ada-lang.c (packed_array_type, ada_index_type): Use TYPE_INDEX_TYPE.
46         (ada_array_bound_from_type): Move `index_type' declaration to the
47         function start.  New variable `retval'.  Return the bounds for
48         TYPE_CODE_RANGE using TYPE_LOW_BOUND and TYPE_HIGH_BOUND.  Abort on
49         invalid index type codes.
50         * ada-typeprint.c (print_range): Set `upper_bound' for TYPE_CODE_RANGE
51         now using TYPE_HIGH_BOUND.
52         * ada-valprint.c (val_print_packed_array_elements): Use `index_type'.
53         * eval.c (evaluate_subexp_standard): Use TYPE_INDEX_TYPE.
54         * gdbtypes.c (create_range_type): Use TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
55         refer to the number of fields only through TYPE_NFIELDS.
56         (create_array_type): Use TYPE_INDEX_TYPE.
57         (check_typedef): Use TYPE_INDEX_TYPE, TYPE_LOW_BOUND, TYPE_HIGH_BOUND.
58         * gdbtypes.h (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED)
59         (TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): Use TYPE_INDEX_TYPE.
60         (TYPE_ARRAY_UPPER_BOUND_VALUE, TYPE_ARRAY_LOWER_BOUND_VALUE): Use
61         TYPE_INDEX_TYPE, TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
62         * hppa-tdep.c (hppa_alignof <TYPE_CODE_ARRAY>): Use TYPE_INDEX_TYPE.
63         * mdebugread.c (parse_type): Use TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
64         * valarith.c (value_bit_index): Use TYPE_INDEX_TYPE.
65
66 2008-12-26  Sandra Loosemore  <sandra@codesourcery.com>
67
68         * breakpoint.c (update_watchpoint): Refactor to avoid compiler
69         warning.
70
71 2008-12-22  Tom Tromey  <tromey@redhat.com>
72
73         * stack.c (print_block_frame_locals): Print spaces, not tabs.
74         Update for call to print_variable_and_value.
75         (print_frame_arg_vars): Update.
76         * value.h (print_variable_and_value): Rename from
77         print_variable_value.  Add 'name' and 'indent' parameters.
78         * printcmd.c (print_variable_and_value): Rename from
79         print_variable_value.  Add 'name' and 'indent' parameters.  Use
80         common_val_print.
81         * f-valprint.c (info_common_command): Update.
82
83 2008-12-22  Tom Tromey  <tromey@redhat.com>
84
85         * python/python-value.c (valpy_length): Remove #if.
86
87 2008-12-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
88
89         * python/python-internal.h (PyEval_ReleaseLock): New define.
90         
91 2008-12-22  Tom Tromey  <tromey@redhat.com>
92
93         * c-exp.y (ident_tokens): New global.
94         (struct token) <cxx_only>: New field.
95         (tokentab3): Update.
96         (tokentab2): Update.
97         (yylex): Use ident_tokens.
98
99 2008-12-22  Adam Denton  <adenton@yahoo.com>
100
101         PR gdb/8307:
102         * environ.c (free_environ): Free e->vector.
103
104 2008-12-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
105
106         Fix memory double-free.
107         * completer.c (line_completion_function): Clear LIST after called xfree.
108
109 2008-12-22  Joel Brobecker  <brobecker@adacore.com>
110
111         * breakpoint.c (update_watchpoint): Adjust and extend the description
112         of this function.  Fix one error message accordingly.
113
114 2008-12-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
115
116         Fix hw watchpoints created before the inferior was started.
117         * breakpoint.c (update_watchpoint): Convert the bp_watchpoint and
118         bp_hardware_watchpoint types according to the current runtime state.
119
120 2008-12-18  Pedro Alves  <pedro@codesourcery.com>
121
122         * linux-nat.c (linux_child_follow_fork): If following the child,
123         and not detaching the parent, also add the child fork to the fork
124         list.
125         * linux-fork.c (linux_fork_context): Remove dead error call.
126         Assert that the incoming newfp argument is not null.  Do not add a
127         new fork for inferior_ptid.  Assert that there is one already.
128
129 2008-12-16  Tristan Gingold  <gingold@adacore.com>
130
131         * inflow.c: Remove old_sigio, handle_sigio, old_fcntl_flags,
132         set_sigio_trap, clear_sigio_trap definitions.
133         * inferior.h: Remove set_sigio_trap and clear_sigio_trap declarations.
134         * inf-ptrace.c (inf_ptrace_wait): Remove call to set_sigio_trap
135         and clear_sigio_trap.
136         * inf-ttrace.c (inf_ttrace_wait): Ditto.
137         * linux-nat.c (linux_nat_wait): Ditto.
138         * spu-linux-nat.c (spu_child_wait): Ditto.
139         * rs6000-nat.c (rs6000_wait): Ditto.
140         * target.c: Remove target_activity_function and target_activity_fd.
141         * target.h: Remove target_activity_function and target_activity_fd
142         declarations.
143
144 2008-12-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
145
146         * dbxread.c (read_ofile_symtab): Sign-extend 32-bit N_LSYM and
147         N_PSYM STABS values for 64-bit GDB.
148
149 2008-12-15  Tristan Gingold  <gingold@adacore.com>
150
151         * dwarf2expr.c (execute_stack_op): Handle DW_OP_swap.
152
153 2008-12-15  Jerome Guitton  <guitton@adacore.com>
154
155         * ada-lang.c (ada_value_slice_ptr): Rename to...
156         (ada_value_slice_from_ptr): ... this. Return a lazy value instead
157         of a reference. Update comment.
158         (ada_value_struct_elt): Ditto if arg is a pointer or a reference.
159         Update comment as well.
160         (ada_evaluate_subexp): Update use of ada_value_slice_ptr.
161
162 2008-12-12  Kevin Buettner  <kevinb@redhat.com>
163
164         * gnu-v3-abi.c (vtable_ptrdiff_type): New function.
165         (gnuv3_decode_method_ptr, gnuv3_print_method_ptr)
166         (gnuv3_method_ptr_to_value): Use a better approximation for
167         `ptrdiff_t' instead of `long'.
168
169 2008-12-12  Kevin Buettner  <kevinb@redhat.com>
170
171         * m32c-tdep.c (m32c_gdbarch_init): Call set_gdbarch_vbit_in_delta().
172         (m32c_push_dummy_call): Dereference pointer type.
173
174 2008-12-12  Tom Tromey  <tromey@redhat.com>
175
176         PR cli/2563:
177         * cli/cli-decode.c (delete_cmd): Add hook-related out parameters.
178         (add_cmd): Update.  Install hooks into new command.
179         (add_alias_cmd): Update.
180
181 2008-12-11  Tom Tromey  <tromey@redhat.com>
182
183         * macroexp.c (get_pp_number): Require digit after leading ".".
184         Correctly handle suffixes.
185
186 2008-12-11  Tom Tromey  <tromey@redhat.com>
187
188         * macrocmd.c (macro_define_command): Skip whitespace after
189         macro name.
190         (print_one_macro): Print space after macro name.
191
192 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
193
194         * infrun.c (handle_inferior_event): Correctly tag non-executing
195         threads in multi-process.
196         (normal_stop): Correctly tag stopped threads in multi-process.
197
198 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
199
200         * remote.c (extended_remote_mourn_1): Always call
201         generic_mourn_inferior.
202
203 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
204
205         * remote.c (remote_detach_1): Don't delete the inferior here.
206         (process_stop_reply): Ditto.
207         (extended_remote_kill): Ditto.
208
209 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
210
211         * remote.c (read_ptid): If we don't know about any inferior yet,
212         use the pid of magic_null_ptid.
213         (remote_start_remote): In the non-stop mode case, don't set
214         inferior_ptid to magic_null_ptid here.
215
216 2008-12-11  Daniel Jacobowitz  <dan@codesourcery.com>
217             Pedro Alves  <pedro@codesourcery.com>
218
219         * infcmd.c (step_1): Use step_once in the synchronous case too.
220         (step_1_continuation): Wrap line.
221         (step_once): Adjust comment.  Only install the continuation in
222         async mode.
223
224 2008-12-11  Pedro Alves  <pedro@codesourcery.com>
225
226         * infrun.c (handle_inferior_event): On a TARGET_WAITKIND_EXITED or
227         TARGET_WAITKIND_SIGNALLED, switch inferior_ptid to the event ptid.
228         * linux_thread_db.c (thread_db_wait): On a TARGET_WAITKIND_EXITED
229         or TARGET_WAITKIND_SIGNALLED, return the ptid the beneath target
230         returned.
231         * inf-ptrace.c (inf_ptrace_wait): Return inferior_ptid instead of
232         minus_one_ptid if the inferior disappeared.
233         * rs6000-nat.c (rs6000_wait): Likewise.
234         * spu-linux-nat.c (spu_child_wait): Likewise.
235
236 2008-12-11  Tom Tromey  <tromey@redhat.com>
237
238         PR macros/2564:
239         * c-exp.y (macro_original_text, expansion_obstack,
240         expression_macro_scope): New globals.
241         (scan_macro_expansion): New function.
242         (scanning_macro_expansion): Likewise.
243         (finished_macro_expansion): Likewise.
244         (scan_macro_cleanup): Likewise.
245         (c_parse): Find macro scope.  Initialize obstack.
246         * c-lang.h (scan_macro_expansion, scanning_macro_expansion,
247         finished_macro_expansion, expression_macro_lookup_func,
248         expression_macro_lookup_baton): Remove.
249         * c-lang.c (scan_macro_expansion, scanning_macro_expansion,
250         finished_macro_expansion, expression_macro_lookup_func,
251         expression_macro_lookup_baton): Remove.
252         (macro_original_text, macro_expanded_text,
253         c_preprocess_and_parse): Remove.
254         (c_language_defn, cplus_language_defn, asm_language_defn,
255         minimal_language_defn): Use c_parse.
256
257 2008-12-10  Pedro Alves  <pedro@codesourcery.com>
258
259         * infcmd.c (until_next_command, finish_backward): Use get_frame_pc
260         instead of read_pc.
261
262 2008-12-09  Tom Tromey  <tromey@redhat.com>
263
264         PR gdb/1815:
265         * cli/cli-decode.c (delete_cmd): Forward declare.
266         (delete_cmd): Now static.  Change return type.  Remove command
267         from alias chain.  Rewrite.
268         (add_cmd): Initialize new fields.  Update cmd_pointer on all
269         aliases.
270         (add_alias_cmd): Put command on alias chain.
271         * command.h (delete_cmd): Don't declare.
272         * cli/cli-decode.h (delete_cmd): Don't declare.
273         (struct cmd_list_element) <aliases, alias_chain>: New fields.
274
275 2008-12-09  Tom Tromey  <tromey@redhat.com>
276
277         * config.in, configure: Rebuild.
278         * configure.ac: Check for locale.h, setlocale.  Call
279         AM_LC_MESSAGES.
280         * acinclude.m4: Include lcmessage.m4.
281
282 2008-12-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
283
284         * remote.c (remote_parse_stop_reply): Use REG only after its NULL check.
285
286 2008-12-08  Joel Brobecker  <brobecker@adacore.com>
287
288         * python/python-value.c (values_in_python): Add specific initialization
289         to NULL to work-around a MacOS linker bug.
290
291 2008-12-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
292
293         Fix loc_type of `bp_location's created by update_watchpoint.
294         * breakpoint.c (allocate_bp_location): Remove the bp_type parameter.
295         Replace bp_type by bpt->type.  Update prototype.  All callers updated.
296         (add_location_to_breakpoint):  Remove the bp_type parameter.
297         Replace bp_type by b->type.  All callers updated.
298         (set_breakpoint_location_function): Replace bptype by b->type.
299
300 2008-12-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
301
302         * breakpoint.c (update_global_location_list): Fix the comment.
303
304 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
305
306         * infcmd.c (step_1, step_once): Look up the stepping range based
307         on the current frame's PC, not on stop_pc.
308
309 2008-12-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
310
311         Fix compilation on 32-bit host configurations.
312         * ia64-tdep.c (ia64_breakpoint_from_pc): Suffix a constant by `LL'.
313
314 2008-12-05  Tristan Gingold  <gingold@adacore.com>
315
316         * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn): New function.
317         (amd64_darwin_sstep_at_sigreturn): New function.
318         (darwin_set_sstep): The sigreturn is a special case: the trace flag
319         must be set in the mcontext structure.
320
321 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
322
323         * infcmd.c (step_once): Remove dead code.
324
325 2008-12-04  Doug Evans  <dje@google.com>
326
327         * infcall.c (call_function_by_hand): Clean up use of local dummy_addr.
328
329 2008-12-02  Doug Evans  <dje@google.com>
330
331         * infrun.c (handle_inferior_event): Remove redundant resetting of
332         stepping_past_singlestep_breakpoint.
333
334 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
335
336         * target.h (target_get_osdata): Describe.
337         * osdata.h (make_cleanup_osdata_free): Declare.
338         * osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is
339         not defined.
340         (osdata_free_cleanup): New.
341         (make_cleanup_osdata_free): New.
342         (get_osdata): Fix leak.
343         (info_osdata_command): Use make_cleanup_osdata_free.
344         (info_processes_command): Delete.
345         (_initialize_osdata): Drop undocumented "info processes" alias.
346         * mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.
347
348 2008-12-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
349
350         Fix resolving external references to TLS variables.
351         * findvar.c: Include `objfiles.h'.
352         (read_var_value <LOC_UNRESOLVED>): New variable `obj_section'.  Handle
353         SEC_THREAD_LOCAL variables.
354         * printcmd.c (address_info <LOC_UNRESOLVED>): Handle SEC_THREAD_LOCAL
355         variables.
356
357 2008-12-02  Doug Evans  <dje@google.com>
358
359         * infrun.c (handle_inferior_event): Delete unused local tp.
360
361 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
362             Vladimir Prus  <vladimir@codesourcery.com>
363
364         Implement -list-thread-groups --available
365
366         * Makefile.in (XMLFILES): Add osdata.dtd.
367         (SFILES): Add osdata.c.
368         (COMMON_OBS): Add osdata.o.
369         * linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h.
370         (linux_nat_xfer_osdata): New function.
371         (linux_xfer_partial): Handle TARGET_OBJECT_OSDATA.
372         * osdata.c: New file.
373         * osdata.h: New file.
374         * remote.c (PACKET_qXfer_osdata): New packet enum.
375         (remote_protocol_features): Add "qXfer:osdata:read".
376         (remote_read_qxfer): Handle TARGET_OBJECT_OSDATA.
377         (extended_remote_can_run): New.
378         (init_extended_remote_ops): Set to_can_run to
379         extended_remote_can_run.
380         (_initialize_remote): Add packet config command for
381         "qXfer:osdata:read".
382         * xml-support.c (obstack_xml_printf): New function.
383         * xml-support.h (obstack_xml_printf): Declare.
384         * target.c (target_get_osdata): New function.
385         * target.h (enum target_object): Add TARGET_OBJECT_OSDATA.
386         (target_os_data): Declare.
387         * features/osdata.dtd: New file.
388         * mi/mi-main.c (mi_list_thread_groups): Handle the --available
389         option.
390
391 2008-12-01  Doug Evans  <dje@google.com>
392
393         * infrun.c (proceed): Delete unused local stop_signal.
394
395 2008-11-27  Tristan Gingold  <gingold@adacore.com>
396
397         * NEWS: Add entry for new native configuration: Darwin.
398         * configure.host: Add Darwin host.
399         * configure.tgt: Add Darwin target.
400         * defs.h (enum gdb_osabi): Add GDB_OSABI_DARWIN.
401         * osabi.c (gdb_osabi_names): Add name for Darwin abi.
402         * i386-darwin-nat.c: New file.
403         * i386-darwin-tdep.c: New file.
404         * machoread.c: New file.
405         * darwin-nat-info.c: New file.
406         * darwin-nat.c: New file.
407         * darwin-nat.h: New file.
408         * darwin.defs: New file.
409         * config/i386/darwin.mh: New file.
410
411 2008-11-26  Tristan Gingold  <gingold@adacore.com>
412
413         * MAINTAINERS: Add myself for write after approval privileges.
414
415 2008-11-26  Jerome Guitton  <guitton@adacore.com>
416
417         * value.h (allocate_value_lazy): New function declaration.
418         (value_free): Remove macro, make it a function.
419         * value.c (value): Move actual content outside of the memory space
420         of the struct; add a pointer to this actual content.
421         (allocate_value_lazy, allocate_value_contents): New function.
422         (allocate_value): Reimplement using these two new functions.
423         (value_contents_raw, value_contents_all_raw): If no memory
424         has been allocated yet for the actual content, allocate it.
425         (value_contents_all): Resync with struct value's changes.
426         (value_free): New function.
427         (value_copy, value_primitive_field): Use new function
428         allocate_value_lazy to allocate lazy values.
429         (value_change_enclosing_type): Resync with struct value's changes.
430         As the value is not reallocated, remove the special handling for
431         the value chain (now obsolete).
432         * valops.c (value_at_lazy): Use new function allocate_value_lazy.
433         (value_fetch_lazy): Allocate value content. Use allocate_value_lazy
434         to allocate lazy values.
435         (value_slice): Use allocate_value_lazy to allocate lazy values.
436
437 2008-11-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
438
439         Fix automatic restoration of breakpoints memory for ia64.
440         * ia64-tdep.c: New #if check on BREAKPOINT_MAX vs. BUNDLE_LEN.  
441         (ia64_memory_insert_breakpoint): New comment part for SHADOW_CONTENTS
442         content.  Remove variable instr.  New variable cleanup.  Disable
443         automatic breakpoints restoration.  PLACED_SIZE and SHADOW_LEN are now
444         set larger, to BUNDLE_LEN - 2.  Variable `bundle' type update.  Return
445         error if even just final target_write_memory has failed.
446         (ia64_memory_remove_breakpoint): Rename variables bundle to bundle_mem
447         and instr to instr_saved.  New variables bundle_saved and
448         instr_breakpoint.  Comment new reasons why we need to disable automatic
449         restoration of breakpoints.  Assert PLACED_SIZE and SHADOW_LEN.  New
450         check of the original memory content.  Return error if even just final
451         target_write_memory has failed.
452         (ia64_breakpoint_from_pc): Implement the emulation of permanent
453         breakpoints compatible with current bp_loc_is_permanent.
454         (template_encoding_table): Make it `const'.
455         * breakpoint.c (bp_loc_is_permanent): Support unsupported software
456         breakpoints.  New variables `cleanup' and `retval'.
457
458 2008-11-24  Tom Tromey  <tromey@redhat.com>
459
460         * ada-lang.c (value_from_contents_and_address): Move...
461         * value.c: ... here.
462         * ada-lang.h (value_from_contents_and_address): Move
463         declaration...
464         * value.h: ... here.
465
466 2008-11-24  Paul Pluzhnikov  <ppluzhnikov@google.com>
467
468         * valprint.c (val_print_array_elements): Pass correct
469         element address to val_print.
470         
471 2008-11-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
472
473         Fix access of an already freed memory.
474         * parse.c (parse_field_expression): Call xstrdup on `*name'.
475         * completer.c (expression_completer): Free fieldname.
476
477 2008-11-24  Daniel Jacobowitz  <dan@codesourcery.com>
478
479         PR gdb/2474
480         * remote.c (remote_read_description_p): New function.
481         (remote_start_remote): Try to fetch the target description
482         before adding shared libraries.  Try again later if the
483         target is running but stopped.
484         (remote_open_1): Mark extended targets as exited by default.
485         (remote_read_description): Check target_has_execution.
486
487 2008-11-24  Jerome Guitton  <guitton@adacore.com>
488
489         * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Use
490         the frame address in block instead of the return address to
491         locate the mdebug PDR of the frame.
492
493 2008-11-21  Joel Brobecker  <brobecker@adacore.com>
494
495         Remove the unused BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
496
497         * breakpoint.h (enum bpstat_what_main_action): Remove
498         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
499         * breakpoint.c (bpstat_what): Delete catch_shlib_event from enum class.
500         Remove the BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK column from
501         variable table.
502         * infrun.c (wait_for_inferior): Remove handling of
503         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
504
505 2008-11-21  Tom Tromey  <tromey@redhat.com>
506
507         * configure: Rebuild.
508         * configure.ac: Merge calls to AC_CHECK_FUNCS, AC_CHECK_HEADERS,
509         AC_CHECK_DECLS, and AC_CHECK_MEMBERS.
510
511 2008-11-21  Tom Tromey  <tromey@redhat.com>
512
513         * python/python-internal.h (PyGILState_Ensure): New define.
514         (PyGILState_Release): Likewise.
515         (PyEval_InitThreads): Likewise.
516         (PyThreadState_Swap): Likewise.
517         (PyEval_InitThreads): Likewise.
518         * python/python.c (_initialize_python): Initialize threads.
519         Release GIL.
520         (eval_python_from_control_command): Acquire GIL.
521         (python_command): Likewise.
522         * python/python-internal.h (make_cleanup_py_restore_gil):
523         Declare.
524         * python/python-utils.c (py_gil_restore): New function.
525         (make_cleanup_py_restore_gil): Likewise.
526
527 2008-11-20  Doug Evans  <dje@google.com>
528
529         * frame.c (frame_debug_got_null_frame): Remove file arg.
530         All callers updated.
531
532 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
533
534         * infrun.c (resume): If following a fork, also reset regcache,
535         gdbarch and pc.
536
537 2008-11-20  Doug Evans  <dje@google.com>
538
539         * printcmd.c (sym_info): Don't print the offset if it's zero.
540
541 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
542
543         * infrun.c (resume): If following a fork, reread the current
544         thread.  Avoid dereferencing a possibly dangling pointer.
545
546 2008-11-19  Doug Evans  <dje@google.com>
547
548         * inferior.h (proceed_to_finish): Delete, unused.
549         (stop_registers): Tweak comment.
550         * infrun.c (stop_registers): Tweak comment.
551
552 2008-11-19  Kevin Buettner  <kevinb@redhat.com>
553
554         * frv-tdep.c (frv_skip_main_prologue): New function.
555         (frv_gdbarch_init): Register frv_skip_main_prologue.
556         * solib-frv.c (fetch_loadmap): Return early when no segments are
557         found.
558         (frv_relocate_main_executable): Return early when both interpreter
559         and executable loadmap addresses are zero.
560
561 2008-11-19  Bob Wilson  <bob.wilson@acm.org>
562         
563         * xtensa-config.c (rmap): Remove entries for ar32 through ar63.  Add
564         threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7,
565         excsave5, excsave6, excsave7, cpenable, and vecbase registers.
566         (xtensa_submask0, xtensa_submask1, xtensa_submask2)
567         (xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6)
568         (xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10)
569         (xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14)
570         (xtensa_submask15): Adjust register numbers.
571         * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
572         (xtensa_regmap_table): Add entry for scompare1.
573         * regformats/reg-xtensa.dat: Remove ar32 through ar63.  Add threadptr
574         and scompare1.
575         
576 2008-11-19  Pedro Alves  <pedro@codesourcery.com>
577
578         * remote.c (escape_buffer): New.
579         (putpkt_binary, read_frame, getpkt_or_notif_sane_1): Use it.  Make
580         sure debug output printing a packet buffer goes through a single
581         fprintf_unfiltered call.
582         * utils.c (vfprintf_unfiltered): If outputting timestamps, end
583         output with a newline if it wasn't going to already.
584
585 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
586
587         * maint.c (maintenance_translate_address): Fix a buglet.
588         
589 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
590
591         * features/Makefile (rs6000/powerpc-isa205-32l-expedite,
592         rs6000/powerpc-isa205-altivec32l-expedite,
593         powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite,
594         rs6000/powerpc-isa205-altivec64l-expedite,
595         powerpc-isa205-vsx64l-expedite): New variables.
596         * regformats/rs6000/powerpc-isa205-32l.dat: Generate.
597         * regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate.
598         * regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate.
599         * regformats/rs6000/powerpc-isa205-64l.dat: Generate.
600         * regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate.
601         * regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate.
602
603 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
604
605         * ppc-linux-nat.c (ppc_register_u_addr): Add special case to return
606         offset for full 64-bit slot of FPSCR when in 32-bits.
607         (ppc_linux_read_description): Return target description with 64-bit
608         FPSCR when inferior is running on an ISA 2.05 or later processor.
609         * ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Call
610         initialize_tdec_powerpc_isa205_32l,
611         initialize_tdec_powerpc_isa205_altivec32l,
612         initialize_tdec_powerpc_isa205_vsx32l,
613         initialize_tdec_powerpc_isa205_64l,
614         initialize_tdec_powerpc_isa205_altivec64l and
615         initialize_tdec_powerpc_isa205_vsx64l.
616         * ppc-linux-tdep.h: Add external declaration for
617         tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l,
618         tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_64l,
619         tdesc_powerpc_isa205_altivec64l and tdesc_powerpc_isa205_vsx64l.
620         * features/rs600/powerpc-fpu-isa205.xml: New file.
621         * features/rs600/powerpc-isa205-32l.xml: New file.
622         * features/rs600/powerpc-isa205-64l.xml: New file.
623         * features/rs600/powerpc-isa205-altivec32l.xml: New file.
624         * features/rs600/powerpc-isa205-altivec64l.xml: New file.
625         * features/rs600/powerpc-isa205-vsx32l.xml: New file.
626         * features/rs600/powerpc-isa205-vsx64l.xml: New file.
627         * features/rs600/powerpc-isa205-32l.c: Generate.
628         * features/rs600/powerpc-isa205-64l.c: Generate.
629         * features/rs600/powerpc-isa205-altivec32l.c: Generate.
630         * features/rs600/powerpc-isa205-altivec64l.c: Generate.
631         * features/rs600/powerpc-isa205-vsx32l.c: Generate.
632         * features/rs600/powerpc-isa205-vsx64l.c: Generate.
633
634 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
635
636         * objfiles.h: New MULTI_OBJFILE_P macro.
637         * printcmd.c (sym_info): Print object name.
638         * maint.c (maintenance_translate_address): Likewise.
639         
640 2008-11-18  Joel Brobecker  <brobecker@adacore.com>
641
642         * NEWS: Document the removal of "catch load" and "catch unload".
643
644 2008-11-17  Doug Evans  <dje@google.com>
645
646         * infcall.c (call_function_by_hand): Fix punctuation and capitalization
647         on error messages.
648
649 2008-11-17  Ulrich Weigand  <uweigand@de.ibm.com>
650
651         PR gdb/2250
652         * infrun.c (clear_proceed_status_thread): New function.
653         (clear_proceed_status_callback): New function.
654         (clear_proceed_status): In all-stop mode, clear per-thread
655         proceed status of *all* threads, not only the current.
656         (handle_inferior_event): In all-stop mode, if we're stepping
657         one thread, but got some inferior event in another thread
658         that does not cause GDB to break to the user interface,
659         ensure the interrupted stepping operation continues in the
660         original thread.
661         (currently_stepping): Move thread-related tests to ...
662         (currently_stepping_thread): ... this new function.
663         (currently_stepping_callback): New function.
664
665 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
666
667         Implement =thread-selected notification.
668
669         * mi/mi-common.h (struct mi_interp): New, moved from ...
670         * mi/mi-interp.c: ...here.
671         * mi/mi-main.c (mi_execute_command): If the thread changed
672         as result of command, report that.
673
674 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
675
676         Implement continue/interrupt of thread groups.
677
678         * mi/mi-main.c (proceed_thread_callback): New.
679         (mi_cmd_exec_continue): If --thread-group is specified, resume all
680         threads in that group.
681         (interrupt_thread_callback): New.
682         (mi_cmd_exec_interrupt): If --thread-group is specified, interrupt
683         all threads in that group.
684
685 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
686
687         Implement '-target-detach pid'.
688
689         * infcmd.c (detach_command): Make nonstatic.
690         * inferior.h (detach_command): Declare.
691         * mi/mi-cmds.c (mi_cmds): Don't route -target-detach via CLI.
692         * mi/mi-cmds.h (mi_cmd_target_detach): Declare.
693         * mi/mi-main.c (find_thread_of_process, mi_cmd_target_detach): New.
694
695 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
696
697         Include group-id in thread-created notification.
698
699         * mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include
700         group id in the output.
701
702 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
703
704         Notification for attach/detach.
705
706         * inferior.c: Call the process observers.
707         * mi/mi-interp.c (mi_new_inferior, mi_inferior_exit): New.
708         (mi_interpreter_init): Register the above.
709
710 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
711
712         Implement -list-thread-groups.
713
714         * thread.c (print_thread_info): New parameter pid, to print
715         threads of specific process.
716         * gdbthread.h (print_thread_info): New parameter pid.
717         * mi/mi-cmds.c (mi_cmds): Register -list-thread-groups.
718         * mi/mi-cmds.h (mi_cmd_list_thread_groups): New.
719         * mi/mi-main.c (mi_cmd_thread_info): Adjust.
720         (print_one_process, mi_cmd_list_thread_groups): New.
721
722 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
723
724         Remove some unused macros related to the old load/unload catchpoints.
725
726         * breakpoint.c (SOLIB_LOADED_LIBRARY_PATHNAME)
727         (SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_CREATE_CATCH_LOAD_HOOK)
728         (SOLIB_CREATE_CATCH_UNLOAD_HOOK): Delete. No longer used.
729
730 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
731
732         Remove support for catch load and catch unload commands.
733
734         * breakpoint.h (enum bptype): Remove bp_catch_load and bp_catch_unload.
735         (struct breakpoint): Remove fields dll_pathname and
736         triggered_dll_pathname.
737         (bpstat_get_triggered_catchpoints, ep_is_shlib_catchpoint): Delete.
738         * breakpoint.c (ep_is_catchpoint): Remove handling of
739         bp_catch_load and bp_catch_unload.
740         (print_it_typical, bpstat_check_location, bpstat_what)
741         (print_one_breakpoint_location, print_one_breakpoint_location)
742         (user_settable_breakpoint, allocate_bp_location)
743         (set_raw_breakpoint_without_location, mention, delete_breakpoint,
744         (breakpoint_re_set_one, disable_command, enable_command): Likewise.
745         (ep_is_shlib_catchpoint, bpstat_get_triggered_catchpoints)
746         (catch_load_command_1, catch_unload_command_1): Delete.
747         (_initialize_breakpoint): Remove the "catch load" and "catch unload"
748         command creation.
749         * infrun.c (handle_inferior_event): Remove the handling of
750         load/unload catchpoint events.
751
752 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
753
754         From  Jerome Guitton  <guitton@adacore.com>
755         * dwarf2read.c (dwarf2_debug_line_missing_end_sequence_complaint):
756         New function.
757         (dwarf_decode_lines): Detect null file numbers. Detect the end of
758         the line program sequence when no end sequence is emitted.
759
760 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
761
762         * ada-lang.c (ada_evaluate_subexp): Improve handling of integer
763         type dereferencing.
764
765 2008-11-15  Daniel Jacobowitz  <dan@codesourcery.com>
766
767         * NEWS: Mention sparc64-linux-gnu gdbserver support.
768
769 2008-11-14  Daniel Gutson  <dgutson@codesourcery.com>
770
771         * configure.tgt (sparc64-*-linux*): Added gdbserver support.
772         * regformats/reg-sparc64.dat: New file.
773
774 2008-11-14  Tom Tromey  <tromey@redhat.com>
775
776         PR mi/2549:
777         * mi/mi-main.c (get_register): Use get_formatted_print_options.
778
779 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
780
781         * printcmd.c: define PRINTF_HAS_LONG_LONG only if not yet defined.
782
783 2008-11-13  Ulrich Weigand  <uweigand@de.ibm.com>
784
785         * auxv.c (fprint_target_auxv): Handle AT_BASE_PLATFORM and
786         AT_EXECFN.  Re-sort AT_SECURE.
787
788 2008-11-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
789
790         * monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'.
791
792 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
793
794         * ia64-tdep.c: Remove commented out #define.
795
796 2008-11-12  Joel Brobecker  <brobecker@adacore.com>
797
798         From Joel Sherrill  <joel.sherrill@oarcorp.com>
799         * remote-sim.c (gdbsim_mourn_inferior): Use "target" parameter
800         instead of the "gdbsim_ops" global.
801
802 2008-11-11  Doug Evans  <dje@google.com>
803
804         * infcall.c (call_function_by_hand): Handle inferior exit.
805
806 2008-11-11  Thiago Jung Bauermann  <bauerman@br.ibm.com>
807
808         * remote-sim.c (gdbsim_create_inferior, gdbsim_mourn_inferior): Add
809         missing struct target_ops argument.
810
811 2008-11-11  Joel Sherrill <joel.sherrilL@oarcorp.com>
812
813         * MAINTAINERS: Add myself for write after approval privileges.
814
815 2008-11-10  Tom Tromey  <tromey@redhat.com>
816
817         * gdbtypes.c (copy_type_recursive): Clear new fields.
818
819 2008-11-10  Tom Tromey  <tromey@redhat.com>
820
821         * cli/cli-cmds.c (source_script): Clean up full_pathname.  Run
822         cleanups on early return.
823
824 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
825
826         Kill pthread_ops_hack
827
828         * target.h (struct target_ops): Make to_attach, to_detach,
829         to_create_inferior and to_mourn_inferior accept a pointer
830         to struct target_ops.
831         (target_attach, target_create_inferior, target_create_inferior):
832         Convert from macros to function.  Find the right target to
833         invoke a method of.
834         (find_default_attach, find_default_create_inferior): New parameter
835         ops.
836         * corefile.c (core_file_command): Pass target to to_detach.
837         * corelow.c (core_detach): Add 'ops' parameter.
838         * fork-child.c (fork_inferior): Return the pid.  Allow
839         init_trace_fun to be NULL.
840         * inf-ptrace (ptrace_ops_hack): Remove.
841         (inf_ptrace_him): Remove, moving all logic into....
842         (inf_ptrace_create_inferior): ... here.  Push the target
843         passed as parameter.
844         (inf_ptrace_mourn_inferior, inf_ptrace_attach, inf_ptrace_detach):
845         Push/pop target passed as parameter, no ptrace_ops_hack.
846         (inf_ptrace_target): Don't remember result.
847         * inferior.h (fork_inferior): Adjust prototype.
848         * linux-nat.c (linux_nat_create_inferior, linux_nat_attach)
849         (linux_nat_detach, linux_nat_mourn_inferior): New parameter ops.
850         Pass it to linux_ops target.
851         * linux-thread-db.c (thread_db_detach, thread_db_mourn_inferior):
852         New parameter ops. Pass it to the target beneath.
853         * remote.c (remote_mourn, extended_remote_mourn, remote_detach)
854         (extended_remote_create_inferior): New parameter ops. Pass it
855         further.
856         * target.c (debug_to_attach, debug_to_detach)
857         (debug_to_mourn_inferior): New parameter ops.
858         (target_create_inferior): New.
859         (update_current_target): Do not inherit to_attach, to_detach,
860         to_create_inferiour, to_mourn_inferior.  Do not default
861         to_detach and to_mourn_inferior.
862         (target_detach): Find the right target to use.
863         (target_mourn_inferior): New.
864         (find_default_attach, find_default_create_inferior): New parameter
865         ops.  Pass the found target when calling its method.
866         (init_dummy_target): Provide fallback definition of to_detach.
867         (target_attach): New.
868         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
869         (debug_to_mourn_inferiour): New parameter ops.
870         * aix-thread.c: Adjust.
871         * bsd-uthread.c: Adjust.
872         * gnu-nat.c: Adjust.
873         * go32-nat.c: Adjust.
874         * hpux-thread.c: Adjust.
875         * inf-ttrace.c: Ajust.
876         * monitor.c: Adjust.
877         * nto-procfs.c: Adjust.
878         * procfs.c: Adjust.
879         * remote-m32r-sdi.c: Adjust.
880         * remote-mips.c: Adjust.
881         * remote-sim.c: Adjust.
882         * rs6000-nat.c: Adjust.
883         * sol-thread.c: Adjust.
884         * win32-nat.c: Adjust.
885         * dec-thread.c: Adjust.
886
887 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
888
889         * thread.c (print_thread_info): Eliminate now useless checks
890         for exited threads.
891
892 2008-11-06  Pedro Alves  <pedro@codesourcery.com>
893
894         * i386-dicos-tdep.c (i386_dicos_init_abi): Set decr_pc_after_break
895         to 0.
896
897 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
898
899         * remote.c (notice_new_inferiors): Add a new inferior only when
900         we're going to add a new thread.
901
902 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
903
904         * defs.h (add_inferior_continuation)
905         (do_all_inferior_continuations)
906         (discard_all_inferior_continuations): Declare.
907         * utils.c (add_inferior_continuation)
908         (do_all_inferior_continuations)
909         (discard_all_inferior_continuations): New.
910         * inferior.h (struct inferior) <continuations>: New field.
911         * inferior.c (free_inferior): Discard all the inferior
912         continuations.
913         * inf-loop.c (inferior_event_handler): Do all current inferior
914         continuations.
915         * infcmd.c (attach_command): Register an inferior continuation
916         instead of a thread continuation.
917         * infrun.c (handle_inferior_event): If stop_soon is
918         STOP_QUIETLY_NO_SIGSTOP, also expect a TARGET_SIGNAL_0.
919
920 2008-11-04  Pedro Alves  <pedro@codesourcery.com>
921
922         * inf-loop.c (inferior_event_handler): On INF_ERROR and
923         INF_REG_EVENT throwing, don't call target_async or pop_target.
924         Call pop_all_targets_above.
925         * remote.c (remote_close): Call remote_terminal_ours.  Don't call
926         signal or target_async.
927
928 2008-11-04  Daniel Jacobowitz  <dan@codesourcery.com>
929
930         * eval.c (evaluate_subexp_standard): Assert that there is at
931         least one array dimension.
932
933 2008-11-03  Vladimir Prus  <vladimir@codesourcery.com>
934
935         Make attach_command exception-safe
936         * infcmd.c (attach_command): Call async_enable_stdin
937         if exception is thrown.
938
939 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
940
941         * gdbarch.sh (has_global_solist): Mention global breakpoints.
942         * gdbarch.h: Regenerate.
943
944 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
945
946         * remote.c (remote_start_remote): If the solib list is global,
947         fetch libraries and insert breakpoints after connecting.
948         * infcmd.c (post_create_inferior): If the solist is shared between
949         inferiors, no need to refetch it on every new inferior.
950         (detach_command): If the shared library list is shared between
951         inferiors, then don't clear it on every inferior detach.
952         * gdbarch.sh (has_global_solist): New.
953         * i386-dicos-tdep.c (i386_dicos_init_abi): Set
954         gdbarch_has_global_solist.
955         * target.c (target_pre_inferior): If the shared library list is
956         shared between inferiors, then don't clear it here, neither
957         invalidate the memory regions or clear the target description.
958         (target_detach): If the shared library list is shared between
959         inferiors, then don't remove breakpoints from the target here.
960         (target_disconnect): Comment.
961         * solib.c (update_solib_list): Check for null_ptid.
962         * breakpoint.c (insert_breakpoints, update_global_location_list):
963         If the shared library list is shared between inferiors, insert
964         breakpoints even if there's no execution.
965         (breakpoint_init_inferior): If the shared library list is shared
966         between inferiors, don't delete breakpoints or mark them
967         uninserted here.
968
969         * gdbarch.c, gdbarch.h: Regenerate.
970
971 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
972
973         * inferior.h (inferior_ignoring_leading_exec_events): Delete
974         declaration.
975
976 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
977
978         * inferior.h (write_inferior_status_register): Delete.
979         * infrun.c (write_inferior_status_register): Delete.
980
981 2008-10-30  Tom Tromey  <tromey@redhat.com>
982
983         * value.c (coerce_array): Use check_typedef.
984
985 2008-10-30  Tom Tromey  <tromey@redhat.com>
986
987         * cli/cli-logging.c (handle_redirections): Make a cleanup.
988         * reggroups.c (maintenance_print_reggroups): Make a cleanup.
989         * regcache.c (regcache_print): Make a cleanup.
990         * maint.c (maintenance_print_architecture): Make a cleanup.
991         * dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.
992
993 2008-10-30  Tom Tromey  <tromey@redhat.com>
994
995         * utils.c (make_cleanup_close): Use make_cleanup_dtor.
996         (do_close_cleanup): Don't free 'fd'.
997
998 2008-10-30  Tom Tromey  <tromey@redhat.com>
999
1000         * source.c (symtab_to_fullname): Test 'r >= 0'.
1001         (psymtab_to_fullname): Likewise.
1002         (get_filename_and_charpos): Make a cleanup.
1003         (forward_search_command): Likewise.
1004         (reverse_search_command): Likewise.
1005         * exec.c (exec_file_attach): Close scratch_chan on failure.
1006         * nto-procfs.c (procfs_open): Make a cleanup.
1007         (procfs_pidlist): Likewise.
1008         (do_closedir_cleanup): New function.
1009
1010 2008-10-30  Andreas Schwab  <schwab@suse.de>
1011
1012         * infcmd.c (construct_inferior_arguments): Handle newlines
1013         specially.
1014
1015 2008-10-30  Joel Brobecker  <brobecker@adacore.com>
1016
1017         * breakpoint.h (enum bptype): Delete bp_catch_exec.
1018         * breakpoint.c (insert_catchpoint): Remove handling for
1019         bp_catch_exec breakpoint kinds.
1020         (insert_bp_location, update_breakpoints_after_exec, remove_breakpoint)
1021         (ep_is_catchpoint, print_it_typical, bpstat_check_location),
1022         (bpstat_check_location, bpstat_what, print_one_breakpoint_location)
1023         (print_one_breakpoint_location, user_settable_breakpoint)
1024         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
1025         (allocate_bp_location, mention, breakpoint_re_set_one)
1026         (disable_command, enable_command): Likewise.
1027         (create_exec_event_catchpoint): Delete.
1028         (insert_catch_exec, remove_catch_exec, breakpoint_hit_catch_exec)
1029         (print_it_catch_exec, print_one_catch_exec, print_mention_catch_exec):
1030         New functions.
1031         (catch_exec_breakpoint_ops): New static global.
1032         (catch_exec_command_1): Use create_catchpoint instead of
1033         create_exec_event_catchpoint to create the exec catchpoint.
1034
1035 2008-10-28  Tom Tromey  <tromey@redhat.com>
1036
1037         * Makefile.in (SUBDIR_CLI_OBS): Don't mention cli-utils.o.
1038         (SUBDIR_CLI_DEPS): Don't mention cli-utils.c.
1039         (HFILES_NO_SRCDIR): Don't mention cli-utils.h.
1040         (cli-utils.o): Remove.
1041         * cli/cli-utils.c: Remove.
1042         * cli/cli-utils.h: Remove.
1043
1044 2008-10-28  Tom Tromey  <tromey@redhat.com>
1045
1046         * varobj.c (value_get_print_value): Include valprint.h.
1047         (value_get_print_value): Use get_formatted_print_options.
1048         * value.h (struct value_print_options): Declare.
1049         (value_print, val_print, common_val_print, val_print_string):
1050         Update.
1051         * value.c: Include valprint.h.
1052         (show_values): Use get_user_print_options.
1053         (show_convenience): Likewise.
1054         * valprint.h (prettyprint_arrays, prettyprint_structs): Don't
1055         declare.
1056         (struct value_print_options): New type.
1057         (vtblprint, unionprint, addressprint, objectprint, print_max,
1058         inspect_it, repeat_count_threshold, output_format,
1059         stop_print_at_null): Don't declare.
1060         (user_print_options, get_user_print_options,
1061         get_raw_print_options, get_formatted_print_options): Declare.
1062         (print_array_indexes_p): Don't declare.
1063         (maybe_print_array_index, val_print_array_elements): Update.
1064         * valprint.c (print_max): Remove.
1065         (user_print_options): New global.
1066         (get_user_print_options, get_raw_print_options,
1067         get_formatted_print_options): New functions.
1068         (print_array_indexes, repeat_count_threshold, stop_print_at_null,
1069         prettyprint_structs, prettyprint_arrays, unionprint,
1070         addressprint): Remove.
1071         (val_print): Remove format, deref_ref, pretty arguments; add
1072         options.  Update.
1073         (common_val_print): Likewise.
1074         (print_array_indexes_p): Remove.
1075         (maybe_print_array_index): Remove format, pretty arguments; add
1076         options.  Update.
1077         (val_print_array_elements): Remove format, deref_ref, pretty
1078         arguments; add options.  Update.
1079         (val_print_string): Add options argument.  Update.
1080         (_initialize_valprint): Use user_print_options.
1081         (output_format): Remove.
1082         (set_output_radix_1): Use user_print_options.
1083         * typeprint.c: Include valprint.h.
1084         (objectprint): Don't declare.
1085         (whatis_exp): Use get_user_print_options.
1086         * tui/tui-regs.c: Include valprint.h.
1087         (tui_register_format): Use get_formatted_print_options.
1088         * tracepoint.c: Include valprint.h.
1089         (addressprint): Don't declare.
1090         (trace_mention): Use get_user_print_options.
1091         (tracepoints_info): Likewise.
1092         * stack.c (print_frame_args): Use get_raw_print_options.
1093         (print_frame_info): Use get_user_print_options.
1094         (print_frame): Likewise.
1095         * sh64-tdep.c: Include valprint.h
1096         (sh64_do_register): Use get_formatted_print_options.
1097         * scm-valprint.c (scm_inferior_print): Remove format, deref_ref,
1098         pretty arguments; add options.
1099         (scm_scmlist_print): Likewise.  Update.
1100         (scm_scmval_print): Likewise.
1101         (scm_val_print): Likewise.
1102         (scm_value_print): Remove format, pretty arguments; add options.
1103         Update.
1104         * scm-lang.h (scm_value_print, scm_val_print, scm_scmval_print):
1105         Update.
1106         * scm-lang.c (scm_printstr): Add options argument.
1107         * python/python-value.c: Include valprint.h.
1108         (valpy_str): Use get_user_print_options.
1109         * printcmd.c: Include valprint.h.
1110         (addressprint): Don't declare.
1111         (inspect_it): Remove.
1112         (print_formatted): Remove format option; add options.  Update.
1113         (print_scalar_formatted): Likewise.
1114         (print_address_demangle): Use get_user_print_options.
1115         (do_examine): Use get_formatted_print_options.
1116         (print_command_1): Likewise.
1117         (output_command): Use get_formatted_print_options.
1118         (do_one_display): Likewise.
1119         (print_variable_value): Use get_user_print_options.
1120         * p-valprint.c (pascal_val_print): Remove format, deref_ref,
1121         pretty arguments; add options.  Update.
1122         (pascal_value_print): Remove format, pretty arguments; add
1123         options.  Update.
1124         (vtblprint, objectprint): Don't declare.
1125         (pascal_static_field_print): Remove.
1126         (pascal_object_print_value_fields): Remove format, pretty
1127         arguments; add options.  Update.
1128         (pascal_object_print_static_field): Likewise.
1129         (_initialize_pascal_valprint): Use user_print_options.  Update.
1130         * p-lang.h (pascal_val_print, pascal_value_print,
1131         pascal_printstr, pascal_object_print_value_fields): Update.
1132         (vtblprint, static_field_print): Don't declare.
1133         * p-lang.c (pascal_printstr): Add options argument.  Update.
1134         * objc-lang.c (objc_printstr): Add options argument.  Update.
1135         * mt-tdep.c: Include valprint.h.
1136         (mt_registers_info): Use get_raw_print_options.
1137         * mips-tdep.c: Include valprint.h.
1138         (mips_print_fp_register): Use get_formatted_print_options.
1139         (mips_print_register): Likewise.
1140         * mi/mi-main.c: Include valprint.h.
1141         (get_register): Use get_user_print_options.
1142         (mi_cmd_data_evaluate_expression): Likewise.
1143         (mi_cmd_data_read_memory): Use get_formatted_print_options.
1144         * mi/mi-cmd-stack.c: Include valprint.h.
1145         (list_args_or_locals): Use get_raw_print_options.
1146         * m2-valprint.c (print_function_pointer_address): Add addressprint
1147         argument.
1148         (m2_print_long_set): Remove format, pretty arguments.
1149         (m2_print_unbounded_array): Remove format, deref_ref, pretty
1150         arguments; add options.  Update.
1151         (print_unpacked_pointer): Remove format argument; add options.
1152         Now static.  Update.
1153         (print_variable_at_address): Remove format, deref_ref, pretty
1154         arguments; add options.  Update.
1155         (m2_print_array_contents): Likewise.
1156         (m2_val_print): Likewise.
1157         * m2-lang.h (m2_val_print): Update.
1158         * m2-lang.c (m2_printstr): Add options argument. Update.
1159         * language.h (struct value_print_options): Declare.
1160         (struct language_defn) <la_printstr>: Add options argument.
1161         <la_val_print>: Remove format, deref_ref, pretty argument; add
1162         options.
1163         <la_value_print>: Remove format, pretty arguments; add options.
1164         <la_print_array_index>: Likewise.
1165         (LA_VAL_PRINT, LA_VALUE_PRINT, LA_PRINT_STRING,
1166         LA_PRINT_ARRAY_INDEX): Update.
1167         (default_print_array_index): Update.
1168         * language.c (default_print_array_index): Remove format, pretty
1169         arguments; add options.  Update.
1170         (unk_lang_printstr): Add options argument.
1171         (unk_lang_val_print): Remove format, deref_ref, pretty arguments;
1172         add options.
1173         (unk_lang_value_print): Remove format, pretty arguments; add
1174         options.
1175         * jv-valprint.c (java_value_print): Remove format, pretty
1176         arguments; add options.  Update.
1177         (java_print_value_fields): Likewise.
1178         (java_val_print): Remove format, deref_ref, pretty arguments; add
1179         options.  Update.
1180         * jv-lang.h (java_val_print, java_value_print): Declare.
1181         * infcmd.c: Include valprint.h.
1182         (print_return_value): Use get_raw_print_options.
1183         (default_print_registers_info): Use get_user_print_options,
1184         get_formatted_print_options.
1185         (registers_info): Use get_formatted_print_options.
1186         * gdbtypes.h (struct value_print_options): Declare.
1187         (print_scalar_formatted): Update.
1188         * f-valprint.c (f77_print_array_1): Remove format, deref_ref,
1189         pretty arguments; add options.  Update.
1190         (f77_print_array): Likewise.
1191         (f_val_print): Likewise.
1192         * f-lang.h (f_val_print): Update.
1193         * f-lang.c (f_printstr): Add options argument.  Update.
1194         (c_value_print): Update declaration.
1195         * expprint.c: Include valprint.h.
1196         (print_subexp_standard): Use get_raw_print_options,
1197         get_user_print_options.
1198         * eval.c: Include valprint.h.
1199         (objectprint): Don't declare.
1200         (evaluate_subexp_standard): Use get_user_print_options.
1201         * cp-valprint.c (vtblprint, objectprint, static_field_print):
1202         Remove.
1203         (cp_print_value_fields): Remove format, pretty arguments; add
1204         options.  Update.
1205         (cp_print_value): Likewise.
1206         (cp_print_static_field): Likewise.
1207         (_initialize_cp_valprint): Use user_print_options.  Update.
1208         * c-valprint.c (print_function_pointer_address): Add addressprint
1209         argument.
1210         (c_val_print): Remove format, deref_ref, pretty arguments; add
1211         options.  Update.
1212         (c_value_print): Add options argument.  Update.
1213         * c-lang.h (c_val_print, c_value_print, c_printstr): Update.
1214         (vtblprint, static_field_print): Don't declare.
1215         (cp_print_value_fields): Update.
1216         * c-lang.c (c_printstr): Add options argument.  Update.
1217         * breakpoint.c: Include valprint.h.
1218         (addressprint): Don't declare.
1219         (watchpoint_value_print): Use get_user_print_options.
1220         (print_one_breakpoint_location): Likewise.
1221         (breakpoint_1, print_it_catch_fork, print_it_catch_vfork, mention,
1222         print_exception_catchpoint): Likewise.
1223         * auxv.c (fprint_target_auxv): Don't declare addressprint.  Use
1224         get_user_print_options.
1225         * ada-valprint.c (struct ada_val_print_args): Remove format,
1226         deref_ref, and pretty; add options.
1227         (print_optional_low_bound): Add options argument.
1228         (val_print_packed_array_elements): Remove format and pretty
1229         arguments; add options.  Update.
1230         (printstr): Add options argument.  Update.
1231         (ada_printstr): Likewise.
1232         (ada_val_print): Remove format, deref_ref, pretty arguments; add
1233         options argument.  Update.
1234         (ada_val_print_stub): Update.
1235         (ada_val_print_array): Remove format, deref_ref, pretty arguments;
1236         add options.  Update.
1237         (ada_val_print_1): Likewise.
1238         (print_variant_part): Likewise.
1239         (ada_value_print): Remove format, pretty arguments; add options.
1240         Update.
1241         (print_record): Likewise.
1242         (print_field_values): Likewise.
1243         * ada-lang.h (ada_val_print, ada_value_print, ada_printstr):
1244         Update.
1245         * ada-lang.c (ada_print_array_index): Add options argument; remove
1246         format and pretty arguments.
1247         (print_one_exception): Use get_user_print_options.
1248
1249 2008-10-28  Tom Tromey  <tromey@redhat.com>
1250
1251         * cli/cli-script.c (do_fclose_cleanup): Remove.
1252         (script_from_file): Use make_cleanup_fclose.
1253         * xml-tdesc.c (do_cleanup_fclose): Remove.
1254         (fetch_xml_from_file): Use make_cleanup_fclose.
1255         * tracepoint.c (tracepoint_save_command): Use
1256         make_cleanup_fclose.  Always free pathname.
1257         * source.c (print_source_lines_base): Use make_cleanup_fclose.
1258         * remote.c (fclose_cleanup): Remove.
1259         (remote_file_put): Use make_cleanup_fclose.
1260         (remote_file_get): Likewise.
1261         * linux-nat.c (linux_nat_find_memory_regions): Use
1262         make_cleanup_fclose.
1263         (linux_nat_info_proc_cmd): Likewise.
1264         (linux_proc_pending_signals): Likewise.
1265         * fbsd-nat.c (fbsd_find_memory_regions): Use make_cleanup_fclose.
1266         Free file name.
1267         * cli/cli-dump.c (do_fclose_cleanup): Remove.
1268         (make_cleanup_fclose): Remove.
1269         * defs.h (make_cleanup_fclose): Declare.
1270         * utils.c (do_fclose_cleanup): New function.
1271         (make_cleanup_fclose): Likewise.
1272
1273 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1274
1275         * inflow.c (kill_command): If the target claims there is still
1276         execution, don't clear the thread list.
1277
1278 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1279
1280         * cp-name-parser.y: Include defs.h instead of config.h.
1281         (parse_escape): Rename to ...
1282         (cp_parse_escape): ... this.
1283         (yylex): Update.
1284         (xfree) [TEST_CPNAMES]: New.
1285
1286 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1287
1288         * CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
1289         2.13 and configure.in.
1290
1291 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1292
1293         * target.h (struct target_ops) <to_supports_multi_process>: New
1294         field.
1295         (target_supports_multi_process): New define.
1296         * target.c (update_current_target): Inherit and de_fault
1297         to_supports_multi_process.
1298         * infcmd.c (attach_command): Allow attaching to multiple processes
1299         if the target supports it.
1300         (detach_command): If the target claims there is still execution,
1301         don't clear the thread list.
1302         * remote.c (remote_supports_multi_process): New.
1303         (init_remote_ops): Register remote_supports_multi_process.
1304
1305 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1306
1307         * Makefile.in (.y.c, .l.c): sed free to xfree.
1308
1309 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1310
1311         * Makefile.in (INSTALLED_LIBS, CLIBS): Remove reference to
1312         $(TM_CLIBS).
1313         (CDEPS): Remove reference to $(TM_CDEPS).
1314
1315 2008-10-26  Michael Snyder  <msnyder@vmware.com>
1316
1317         * infrun.c (handle_inferior_event): Handle dynamic symbol
1318         resolution in reverse.
1319
1320 2008-10-25  Joel Brobecker  <brobecker@adacore.com>
1321
1322         * infrun.c: Minor comment reformatting.
1323
1324 2008-10-25  Pedro Alves  <pedro@codesourcery.com>
1325
1326         * ada-exp.y (write_object_renaming): Use malloc instead of
1327         xmalloc.
1328         * p-exp.y (pop_current_type): Use free instead of xfree.
1329
1330 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1331
1332         * fork-child.c (startup_inferior): Only set threads not-executing
1333         after getting all the pending execs.  On TARGET_WAITKIND_IGNORE,
1334         keep waiting, don't resume.  On all other cases but
1335         TARGET_WAITKIND_SIGNALLED and TARGET_WAITKIND_EXITED, switch to
1336         the event ptid.
1337
1338 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1339
1340         Remote non-stop mode support.
1341
1342         * remote.c (pending_stop_reply): New.
1343         (struct remote_state) <non_stop_aware, support_vCont_t>: New
1344         fields.
1345         (remote_async_inferior_event_token)
1346         (remote_async_get_pending_events_token): New.
1347         (notice_new_inferiors): New, abstracted out from record_currthread.
1348         (record_currthread): Call it.
1349         (remote_threads_info): Default threads to running in non-stop
1350         mode.  In non-stop mode, only qfThreadInfo is supported.
1351         (remote_close): Discard all pending stop_replies.  Close the event
1352         sources.
1353         (set_stop_requested_callback): New.
1354         (remote_start_remote): Implement non-stop mode startup.  In
1355         all-stop, don't clear the thread list here.
1356         (remote_non_stop_feature): New.
1357         (remote_protocol_features): Add a "QNonStop" feature.
1358         (remote_open_1): Clear cached_wait_status and non_stop_aware.
1359         Clear the thread list here.
1360         (remote_detach_1): Discard pending stop replies of the process we
1361         detached from.
1362         (extended_remote_attach_1): Implement non-stop mode.
1363         (remote_vcont_probe): Recognize `vCont;t'.
1364         (remote_vcont_resume): Implement non-stop mode.
1365         (remote_resume): Don't set waiting_for_stop_reply in non-stop
1366         mode.
1367         (remote_stop_ns): New.
1368         (remote_stop): Rename to ...
1369         (remote_stop_as): ... this.  If we have a cached wait status,
1370         don't bother interrupting the remote.
1371         (remote_stop): Reimplement as wrapper around remote_stop_as and
1372         remote_stop_ns.
1373         (interrupt_query): Don't query in async mode.
1374         (struct cached_reg, cahed_reg_t): New.
1375         (struct stop_reply): New.
1376         (stop_reply_queue): New.
1377         (stop_reply_xmalloc, stop_reply_xfree)
1378         (discard_pending_stop_replies, do_stop_reply_xfree)
1379         (queued_stop_reply, push_stop_reply, peek_stop_reply)
1380         (remote_parse_stop_reply, remote_get_pending_stop_replies)
1381         (process_stop_reply): New.
1382         (remote_wait_ns): New.
1383         (remote_wait_as): Use remote_parse_stop_reply.  Invalidate the
1384         notion of current general thread is a process exit was reported.
1385         (remote_wait): Call remote_wait_ns in non-stop mode.
1386         (handle_notification): New.
1387         (putpkt_binary): Handle notifications.  Don't care for
1388         waiting_for_stop_reply in non-stop mode.
1389         (getpkt_sane): Rename to ...
1390         (getpkt_or_notif_sane_1): ... this.  Add `expecting_notif'
1391         argument.  Handle it.  Handle notifications.
1392         (getpkt_sane): Reimplement as wrapper around getpkt_or_notif_sane_1.
1393         (getpkt_or_notif_sane): New.
1394         (select_new_thread_callback): Check for exited state instead of
1395         comparing the ptid against minus_one_ptid.
1396         (extended_remote_create_inferior_1): Query the remote about the
1397         current thread.
1398         (remote_supports_non_stop): New.
1399         (init_remote_ops): Register it.
1400         (remote_async_inferior_event_handler): New.
1401         (remote_async_get_pending_events_handler): New.
1402
1403         * infcmd.c (proceed_thread_callback): Comment.
1404         (proceed_after_attach_callback, proceed_after_attach): New.
1405         (attach_command_post_wait): In background attach, resume all
1406         threads, but only if they are unsignalled, and not explicitly
1407         stopped.  In foreground attach, in non-stop mode, make sure to
1408         stop all threads of the just attached to process.
1409         (attach_command): In non-stop mode: If doing a background attach,
1410         stop at least one thread.  If a foreground attach, stop all
1411         threads.
1412
1413 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1414
1415         * event-loop.h: Mention async_event_handlers.
1416         (async_event_handler): Forward declare.
1417         (async_event_handler_func): New typedef.
1418         (create_async_event_handler, delete_async_event_handler)
1419         (mark_async_event_handler): Declare.
1420         * event-loop.c (event_data): New.
1421         (event_handler_func): Take an event_data instead of an integer.
1422         (struct gdb_event): Replace the integer file descriptor by a
1423         generic event_data.
1424         (async_event_handler): New.
1425         (async_handler_ready): Delete.
1426         (async_event_handler_list): New.
1427         (create_event): New.
1428         (create_file_event): Use it.
1429         (process_event): Adjust.
1430         (gdb_do_one_event): Poll from the event sources in round-robin
1431         fashion across calls.  Be sure to consult all sources before
1432         blocking.
1433         (handle_file_event): Take an event_data instead of an integer.
1434         Adjust.
1435         (gdb_wait_for_event): Add `block' argument.  Handle it.
1436         (mark_async_signal_handler): Remove unneeded cast.
1437         (invoke_async_signal_handler): Rename to ...
1438         (invoke_async_signal_handlres): ... this.  Return true if any was
1439         handled.
1440         (check_async_ready): Delete
1441         (create_async_event_handler): New.
1442         (mark_async_event_handler): New.
1443         (struct async_event_handler_data): New.
1444         (invoke_async_event_handler): New.
1445         (check_async_event_handlers): New.
1446         (delete_async_event_handler): New.
1447         (handle_timer_event): Adjust.
1448
1449 2008-10-24  Doug Evans  <dje@google.com>
1450
1451         * dwarf2read.c (typename_concat): Don't segv if prefix or suffix
1452         is NULL.  Simplify obs == NULL case.
1453
1454 2008-10-24  Hui Zhu  <teawater@gmail.com>
1455             Pedro Alves  <pedro@codesourcery.com>
1456
1457         * infrun.c (can_use_displaced_stepping): Change type to
1458         const char pointer.
1459         (can_use_displaced_stepping_auto): New string.
1460         (can_use_displaced_stepping_on): New string.
1461         (can_use_displaced_stepping_off): New string.
1462         (can_use_displaced_stepping_enum): New array.
1463         (show_can_use_displaced_stepping): In auto mode, also show
1464         the current effect of the option.
1465         (use_displaced_stepping): Return non-zero if displaced
1466         stepping is auto, and can be used with GDBARCH, and in
1467         non-stop mode.  Return non-zero if displaced stepping is on,
1468         and can be used with GDBARCH.  Return zero otherwise.
1469         (_initialize_infrun): Make the "set displaced-stepping"
1470         command an enum command.  Change its class to class_run.
1471         Place it in the top level set list.  Extend help to describe
1472         the auto mode.
1473
1474 2008-10-23  Pedro Alves  <pedro@codesourcery.com>
1475
1476         * defs.h: Mention ptid_is_pid.
1477         * inferior.h (ptid_is_pid): Declare.
1478         * gdbthread.h (struct thread_info) <stop_requested>: New field.
1479         (set_stop_requested): Declare.
1480         * infcmd.c (interrupt_target_1): Call set_stop_requested.
1481         * infrun.c (clear_proceed_status): Clear stop_requested.
1482         (infrun_thread_stop_requested_callback,
1483         infrun_thread_stop_requested): New.
1484         (handle_inferior_event): If a TARGET_SIGNAL_TRAP is reported on a
1485         thread that had an explicit stop request, pretend we got a
1486         TARGET_SIGNAL_0.  Always stop if the thread had an explicit stop
1487         request.
1488         (print_stop_reason): In the SIGNAL_RECEIVED case, if we're not
1489         outputting to MI, and we got a TARGET_SIGNAL_0, print "# Stopped",
1490         instead of mentioning signal 0.
1491         (ptid_is_pid): New.
1492         * thread.c (set_stop_requested): New.
1493
1494         * linux-nat.c (queued_waitpid): Rename to ...
1495         (queued_waitpid_1): ... this.  Add `peek' argument.  Handle it.
1496         (queued_waitpid): New, as wrapper to queued_waitpid_1.
1497         (push_waitpid): Push the SIGTRAP to the local event queue, to the
1498         kernel's.
1499         (send_sigint_callback): Delete.
1500         (linux_nat_stop_lwp): New.
1501         (linux_nat_stop): Use it.
1502
1503 2008-10-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
1504
1505         * python/python-value (valpy_getitem): Fix heap corruption.
1506         
1507 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1508
1509         * nto-procfs.c (do_attach): Form proper ptid including pid and tid.
1510         (procfs_create_inferior): Fetch list of threads.
1511
1512 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1513
1514         * nto-procfs.c (procfs_files_info): Fix a typo.
1515         (procfs_create_inferior): Make attach_flag per-inferior.
1516
1517 2008-10-23  Tom Tromey  <tromey@redhat.com>
1518
1519         * python/python-value.c (value_to_value_object): Initialize
1520         owned_by_gdb field.
1521         (valpy_new): Likewise.
1522         
1523 2008-10-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1524             Joel Brobecker  <brobecker@adacore.com>
1525
1526         * ada-tasks.c (task_states, long_task_states): Use constant N_()
1527         initializer.  Define the strings as const.
1528         (short_task_info, info_task): Translate the strings above.
1529
1530 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1531
1532         * NEWS: Add entry for new feature (Ada tasking support).
1533
1534 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1535
1536         * configure.ac: On alpha-osf, error out if enable_tui is set to
1537         "yes", and set enable_tui to "no" if previously set to "auto".
1538         Check for waddstr only if TUI support was requested. Move the
1539         part of the configure script that updates various Makefile
1540         variables up, together with the check for waddstr.
1541         * configure: Regenerate.
1542
1543 2008-10-22  Joel brobecker  <brobecker@adacore.com>
1544
1545         * gdbtypes.c (copy_type): New function.
1546         * gdbtypes.h (copy_type): Add declaration.
1547         * ada-lang.c (ada_to_fixed_type_1): If there is a parallel XVZ
1548         variable, then use it.
1549
1550 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1551
1552         * target.h (struct target_ops): Add new field to_get_ada_task_ptid.
1553         (target_get_ada_task_ptid): New macro.
1554         * target.c (default_get_ada_task_ptid): New function.
1555         (update_current_target): Inherit field default_get_ada_task_ptid.
1556         (update_current_target): Make default_get_ada_task_ptid the default
1557         value for field to_get_ada_task_ptid.
1558         * ada-lang.h (struct task_control_block): Delete. Never used.
1559         (struct task_ptid, task_ptid_t, struct task_entry, task_list):
1560         Likewise.
1561         (struct ada_task_info): New.
1562         (ada_task_is_alive, ada_find_printable_frame)
1563         (ada_task_list_iterator_ftype, iterate_over_live_ada_tasks): Add
1564         declarations.
1565         (ada_build_task_list): Update prototype.
1566         (init_task_list, ada_is_exception_breakpoint): Remove prototypes.
1567         * ada-lang.c (ada_find_printable_frame): Make non-static.
1568         * ada-tasks.c: New file.
1569         * Makefile.in (SFILES): Add ada-tasks.c.
1570         (COMMON_OBS): Add ada-tasks.o.
1571         * linux-thread-db.c (thread_db_find_thread_from_tid)
1572         (thread_db_get_ada_task_ptid): New functions.
1573         (init_thread_db_ops): Set thread_db_ops.to_get_ada_task_ptid.
1574
1575 2008-10-22  Tom Tromey  <tromey@redhat.com>
1576
1577         PR gdb/2506:
1578         * c-exp.y (string_exp): New production.
1579         (exp): Use it.
1580
1581 2008-10-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1582
1583         * mips-tdep.c (mips_n32n64_fp_arg_chunk_p): Update TYPE_FIELD_STATIC
1584         removed before.
1585
1586 2008-10-20  Joel Brobecker  <brobecker@adacore.com>
1587
1588         * NEWS: Add entry mentioning thread-support on Tru64
1589
1590 2008-10-19  Joel Brobecker  <brobecker@adacore.com>
1591
1592         * dec-thread.c: New file.
1593         * config/alpha/alpha-osf3.mh (NATDEPFILES): Add dec-thread.o.
1594         (NAT_CLIBS): Define.
1595
1596 2008-10-19  Hui Zhu  <teawater@gmail.com>
1597
1598         * infrun.c (handle_inferior_event): Set "stop_pc" when
1599         TARGET_WAITKIND_NO_HISTORY.
1600
1601 2008-10-19  Pedro Alves  <pedro@codesourcery.com>
1602
1603         * python/python-value.c (value_object_methods)
1604         (value_object_as_number, value_object_as_mapping): Move to bottom
1605         of file.
1606         (valpy_dealloc, valpy_new, valpy_length, valpy_getitem)
1607         (valpy_setitem, valpy_str, valpy_add, valpy_subtract)
1608         (valpy_multiply, valpy_divide, valpy_remainder, valpy_power)
1609         (valpy_negative, valpy_positive, valpy_absolute, valpy_nonzero)
1610         (valpy_richcompare, valpy_dereference): Don't forward-declare.
1611         (valpy_length) [HAVE_LIBPYTHON2_4]: Change return type to `int'.
1612
1613 2008-10-18  Pedro Alves  <pedro@codesourcery.com>
1614
1615         * infrun.c (adjust_pc_after_break): Do nothing if executing in
1616         reverse.
1617
1618 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1619
1620         * infcmd.c (GO_USAGE): Delete.
1621         (go_command): Adjust.
1622
1623 2008-10-17  Michael Snyder  <msnyder@vmware.com>
1624         Target interface for reverse debugging.
1625         * target.h (enum target_waitkind): 
1626         Add new wait event, TARGET_WAITKIND_NO_HISTORY.
1627         (struct target_ops): New method to_can_execute_reverse.
1628         (target_can_execute_reverse): New macro.
1629         * target.c (update_current_target): Inherit to_can_execute_reverse.
1630
1631         Remote interface for reverse debugging.
1632         * remote.c (remote_can_execute_reverse): New target method.
1633         (remote_resume): Check for reverse exec direction, and send 
1634         appropriate command to target.
1635         (remote_wait_as): Check target response for NO_HISTORY status.
1636         Also check for empty reply (target doesn't understand "bs" or "bc).
1637         (remote_vcont_resume): Jump out if attempting reverse execution.
1638
1639         Event handling interface for reverse debugging.
1640         * infrun.c (execution_direction): New state variable.
1641         (enum inferior_stop_reason): Add NO_HISTORY reason.
1642         (handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY.
1643         Handle stepping over a function call in reverse.
1644         Handle stepping thru a line range in reverse.
1645         Handle setting a step-resume breakpoint in reverse.
1646         Handle stepping into a function in reverse.
1647         Handle stepping between line ranges in reverse.
1648         (print_stop_reason): Print reason for NO_HISTORY.
1649         (step_into_function): Rename to handle_step_into_function.
1650         (handle_step_into_function_backward): New function.
1651         (set_exec_direction_func, show_exec_direction_func): New funcs.
1652         (proceed): No need to singlestep over a breakpoint
1653         when resuming in reverse.
1654         
1655         * inferior.h (enum exec_direction_kind): New enum.
1656         (execution_direction): Export new execution state variable.
1657
1658         * breakpoint.c (make_breakpoint_silent): New function.
1659         * breakpoint.h (make_breakpoint_silent): Export.
1660         * infcmd.c (finish_command): Check for reverse exec direction.
1661         (finish_backward): New function, handle finish cmd in reverse.
1662
1663         User interface for reverse execution.
1664         * Makefile.in (reverse.c): New file.
1665         * reverse.c: New file.  User interface for reverse execution.
1666
1667 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1668
1669         * remote.c (record_currthread): Add inferior before child threads.
1670         (remote_threads_info): Check for exited threads.  Mention
1671         notification order.
1672
1673 2008-10-16  Joel Brobecker  <brobecker@adacore.com>
1674
1675         * breakpoint.h (enum bptype): New enum bp_catchpoint.
1676         Delete bp_catch_fork and bp_catch_vfork.
1677         (struct breakpoint_ops): Add new methods "insert", "remove"
1678         and "breakpoint_hit".
1679         * breakpoint.c (create_fork_vfork_event_catchpoint)
1680         (create_fork_event_catchpoint, create_vfork_event_catchpoint): Remove.
1681         (insert_catchpoint): Remove handling of bp_catch_fork and
1682         bp_catch_vfork catchpoints, and handle them as bp_catchpoint
1683         catchpoints instead.
1684         (insert_bp_location, update_breakpoints_after_exec)
1685         (remove_breakpoint, bpstat_check_location, bpstat_what)
1686         (allocate_bp_location): Likewise.
1687         (print_it_typical, print_one_breakpoint_location, mention): Remove
1688         handling of bp_catch_fork and bp_catch_vfork breakpoints.
1689         (ep_is_catchpoint, user_settable_breakpoint)
1690         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
1691         (breakpoint_re_set_one, disable_command, enable_command):
1692         Remove use of bp_catch_fork and bp_catch_vfork.  Add handling of
1693         bp_catchpoint breakpoints.
1694         (insert_catch_fork, remove_catch_fork, breakpoint_hit_catch_fork)
1695         (print_it_catch_fork, print_one_catch_fork, print_mention_catch_fork):
1696         New functions.
1697         (catch_fork_breakpoint_ops): New static constant.
1698         (insert_catch_vfork, remove_catch_vfork, breakpoint_hit_catch_vfork)
1699         (print_it_catch_vfork, print_one_catch_vfork)
1700         (print_mention_catch_vfork): New functions.
1701         (catch_vfork_breakpoint_ops): New static constant.
1702         (create_catchpoint, create_fork_vfork_event_catchpoint): New functions.
1703         (catch_fork_command_1): Use create_fork_vfork_event_catchpoint
1704         to create the fork and vfork catchpoints.
1705         (gnu_v3_exception_catchpoint_ops): Set new breakpoint_ops fields.
1706         * ada-lang.c (catch_exception_breakpoint_ops): Set new breakpoint_ops
1707         fields.
1708         (catch_exception_unhandled_breakpoint_ops): Likewise.
1709         (catch_assert_breakpoint_ops): Likewise.
1710
1711 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1712
1713         * remote.c (set_general_process): New.
1714         (remote_check_symbols): Use it.
1715
1716 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1717
1718         * remote.c (push_remote_target): Delete.
1719         * target.h (push_remote_target): Delete declaration.
1720
1721 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1722
1723         * remote.c (remote_close): Unregister remote_desc from the event
1724         loop.  Always restore the SIGINT handler.  Discard all inferiors
1725         here.
1726         (remote_detach_1, remote_disconnect): Don't unregister the file
1727         descriptor from the event loop here.
1728         (interrupt_query, readchar, getpkt_sane): Pop the target instead
1729         of morning the current inferior.
1730         (remote_kill): Don't unregister the file descriptor from the event
1731         loop here.
1732         (remote_mourn_1): Don't discard inferiors here.
1733
1734 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1735
1736         * breakpoint.c (breakpoint_init_inferior): Clean up the moribund
1737         locations list.
1738         (moribund_breakpoint_here_p): Record the moribund
1739         location in the moribund_locations vector.
1740         * breakpoint.h (moribund_breakpoint_here_p): Declare.
1741         (displaced_step_fixup): Check if the breakpoint the thread was
1742         trying to step over has been removed since having been placed in
1743         the displaced stepping queue.
1744         (adjust_pc_after_break): In non-stop mode, check for a moribund
1745         breakpoint at the stop pc.
1746         (handle_inferior_event): Don't retire moribund breakpoints on
1747         TARGET_WAITKIND_IGNORE.
1748
1749 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1750
1751         * infrun.c (displaced_step_prepare): Switch thread temporarily
1752         while we're here.
1753         (displaced_step_fixup): Make sure target_resume sees ptid as
1754         inferior_ptid.  Add debug output.
1755
1756 2008-10-14  Pedro Alves  <pedro@codesourcery.com>
1757
1758         Remove dead code.
1759
1760         * breakpoint.c (show_breakpoint_hit_counts): Delete.
1761         (print_one_breakpoint_location): Adjust.
1762         (breakpoint_clear_ignore_counts): Delete.
1763         * breakpoint.h (breakpoint_clear_ignore_counts): Remove
1764         declaration.
1765         * target.c (generic_mourn_inferior): Don't clear ignore
1766         counts (never reached).
1767
1768 2008-10-10  Doug Evans  <dje@google.com>
1769
1770         * dwarf2read.c (comp_unit_head): Use unsigned int consistently
1771         for dwarf section offsets and sizes.
1772         (dwarf2_cu): Ditto.
1773         (dwarf2_per_cu_data): Ditto.
1774         (create_all_comp_units): Change offset to unsigned int.
1775         (load_full_comp_unit,find_partial_die_in_comp_unit,find_partial_die,
1776         dwarf2_find_containing_comp_unit,dwarf2_find_comp_unit): Ditto.
1777
1778         * dwarf2read.c (read_initial_length): Delete cu_header arg.
1779         All callers updated.
1780         (read_checked_initial_length_and_offset): New function.
1781         (read_offset_1): New function.
1782         (read_offset): Call it.
1783         (dwarf_decode_line_header): Call read_checked_initial_length_and_offset
1784         instead of read_initial_length.  Call read_offset_1 instead of
1785         read_offset.
1786
1787         * dwarf2read.c (dwarf2_get_ref_die_offset): Remove unused arg `cu'.
1788         All callers updated.
1789
1790         * dwarf2read.c (dwarf_attr_name): Unconditionally support all
1791         DW_AT_MIPS_* except DW_AT_MIPS_fde which collides with
1792         DW_AT_HP_block_index.
1793
1794 2008-10-10  Pedro Alves  <pedro@codesourcery.com>
1795
1796         * remote.c (remote_start_remote): Always tell the stub if we're in
1797         extended-remote.
1798
1799 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1800
1801         * remote.c (remote_wait): Rename to...
1802         (remote_wait_as): ... this.  Don't loop here.  If the remote
1803         didn't stop, return TARGET_WAITKIND_IGNORE.
1804         (remote_wait): New, reimplemented on top of remote_wait_as.
1805
1806 2008-10-09  Thomas Schwinge  <tschwinge@gnu.org>
1807
1808         * Makefile.in (gnu-nat.o): Revert the 2008-09-10 change, as the problem
1809         is fixed upstream.
1810
1811         * reply_mig_hack.awk: Use the `BAD_TYPECHECK' macro.
1812
1813         * MAINTAINERS (Write After Approval): Add myself.
1814
1815 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1816
1817         Make it compile without warnings.
1818
1819         * procfs.c (create_procinfo): Initialize `parent'.
1820         (dead_procinfo): Pass a constant string as format to error.
1821         (procfs_address_to_host_pointer): Add cast to gdb_type *.
1822         (procfs_find_LDT_entry): Adjust format string to long int
1823         ptid.tid.
1824         (procfs_xfer_partial): Adjust prototype.  Add gdb_byte* cast.
1825         (procfs_xfer_memory): Adjust prototype.
1826         (info_mappings_callback, info_proc_mappings): Adjust to not pass a
1827         variable as printf_filtered format.
1828         (procfs_make_note_section): Change type of auxv local to gdb_byte.
1829         * Makefile.in: Remove special rule.
1830
1831 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1832             Daniel Jacobowitz  <dan@codesourcery.com>
1833
1834         * remote.c (remote_open_1): Move acknowledging any pending ack,
1835         querying supported features, activating noack mode, finding the
1836         target description, enabling extended remote, and checking remote
1837         symbols from here ...
1838         (remote_start_remote): ... to here.
1839         (remote_open_1): Don't pop the target if it is already gone.
1840         * target.c (unpush_target): Check for the dummy target.
1841
1842 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1843
1844         * ser-mingw.c: Include "command.h".
1845         (pipe_windows_open): Declare locals at the beginning of the scope.
1846
1847 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1848
1849         * remote.c (struct remote_state) <waiting_for_stop_reply>: New
1850         field.
1851         (remote_open_1): Clear waiting_for_stop_reply.
1852         (remote_resume): Set waiting_for_stop_reply.
1853         (remote_wait): Clear or set waiting_for_stop_reply accordingly.
1854         (putpkt_binary): If we're in async mode and waiting for a stop
1855         reply, bail out with an error.
1856         (extended_remote_mourn_1): Clear waiting_for_stop_reply.
1857
1858 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1859
1860         * remote.c (remote_get_thread_info): If the remote doesn't support
1861         the query, bail out.
1862
1863 2008-10-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
1864
1865         Convert static_kind into loc_kind enum.
1866         * gdbtypes.h (enum field_loc_kind): New.
1867         (union field_location): New field dwarf_block.
1868         (struct field): Rename static_kind as loc_kind.
1869         (FIELD_STATIC_KIND): Rename to ...
1870         (FIELD_LOC_KIND): ... here.
1871         (TYPE_FIELD_STATIC_KIND): Rename to ...
1872         (TYPE_FIELD_LOC_KIND): ... here and use there now new FIELD_LOC_KIND.
1873         (TYPE_FIELD_STATIC_HAS_ADDR): Remove.
1874         (TYPE_FIELD_STATIC): Remove.
1875         (TYPE_FIELD_BITPOS): Reformat.
1876         (SET_FIELD_BITPOS): New.
1877         (FIELD_PHYSADDR): Rename to ...
1878         (FIELD_STATIC_PHYSADDR): ... here.
1879         (TYPE_FIELD_STATIC_PHYSADDR): Follow the FIELD_PHYSADDR rename.
1880         (SET_FIELD_PHYSADDR): Use new FIELD_LOC_KIND.
1881         (FIELD_PHYSNAME): Rename to ...
1882         (FIELD_STATIC_PHYSNAME): ... here.
1883         (TYPE_FIELD_STATIC_PHYSNAME): Follow the FIELD_PHYSNAME rename.
1884         (SET_FIELD_PHYSNAME): Use new FIELD_LOC_KIND.
1885         (FIELD_DWARF_BLOCK, TYPE_FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK): New.
1886         (field_is_static): New declaration.
1887         * gdbtypes.c (field_is_static): New function.
1888         (copy_type_recursive): Update throughout.
1889         * amd64-tdep.c, c-typeprint.c, coffread.c, cp-valprint.c, dwarf2read.c,
1890         eval.c, jv-typeprint.c, jv-valprint.c, mdebugread.c, p-typeprint.c,
1891         p-valprint.c, valops.c, value.c, varobj.c: Update throughout.
1892
1893 2008-10-07  Thomas Schwinge  <tschwinge@gnu.org>
1894             Pedro Alves  <pedro@codesourcery.com>
1895
1896         * gnu-nat.h: Rename `current_inferior' to `gnu_current_inf' to
1897         avoid a name collision.
1898         * gnu-nat.c: Likewise.
1899         * i386gnu-nat.c: Likewise.
1900
1901 2008-10-07  Joel Brobecker  <brobecker@adacore.com>
1902
1903         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Add handling
1904         of arguments that are references.
1905
1906 2008-10-06  Doug Evans  <dje@google.com>
1907
1908         * dwarf2read.c (dwarf2_die_debug): New static global.
1909         (dump_die_shallow): Renamed from dump_die, New args f, indent.
1910         Print to specified file, indented by the specified amount.
1911         (dump_die_for_error): New fn.  Point all existing callers of
1912         dump_die here.
1913         (dump_die_die_1,dump_die): New fns, replaces ...
1914         (dump_die_list): ... deleted.
1915         (read_die_and_children_1): Old contents of read_die_and_children
1916         moved here.
1917         (read_die_and_children): Rewrite.
1918         (read_die_and_siblings): Call read_die_and_children_1 instead of
1919         read_die_and_children.
1920         (_initialize_dwarf2_read): New option "debug dwarf2-die".
1921         * gdbinit.in (pdie): New macro.
1922
1923         * dwarf2read.c (offset_in_cu_p): New function.
1924         (find_partial_die,follow_die_ref): Use it.
1925
1926         * symmisc.c (maintenance_info_symtabs): Watch for ^c.
1927         (maintenance_info_psymtabs): Ditto.
1928
1929 2008-10-05  Michael Snyder  <msnyder@vmware.com>
1930
1931         * infrun.c (handle_inferior_event): Fix typo in comment.
1932
1933 2008-10-04  Vladimir Prus  <vladimir@codesourcery.com>
1934
1935         * mi/mi-interp.c (mi_on_resume): Flush raw_stdout.
1936
1937 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1938
1939         PR gdb/2384:
1940         * gdbtypes.c (get_vptr_fieldno): baseclass and basetype may have
1941         different lifetimes.
1942         
1943 2008-10-03  Joel Brobecker  <brobecker@adacore.com>
1944
1945         * solib-osf.c: Include "solib.h".
1946
1947 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1948         
1949         * utils.c, defs.h (gdb_buildargv): New fn. Wrap buildargv
1950         and check for out-of-memory condition.
1951         * exec.c (exec_file_command): Call it.
1952         * infrun.c (handle_command, xdb_handle_command): Likewise.
1953         * interps.c (interpreter_exec_cmd): Likewise.
1954         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
1955         * procfs.c (info_proc_cmd): Likewise.
1956         * remote-mips.c (common_open): Likewise.
1957         * remote-sim.c (gdbsim_kill, gdbsim_create_inferior)
1958         (gdbsim_open): Likewise.
1959         * remote.c (extended_remote_run, remote_put_command)
1960         (remote_get_command, remote_delete_command): Likewise.
1961         * ser-mingw.c (pipe_windows_open): Likesise.
1962         * source.c (add_path, show_substitute_path_command)
1963         (unset_substitute_path_command, set_substitute_path_command):
1964         Likewise.
1965         * stack.c (backtrace_command): Likewise.
1966         * symfile.c (symbol_file_command, generic_load)
1967         (add_symbol_file_command): Likesise.
1968         * symmisc.c (maintenance_print_symbols, maintenance_print_psymbols)
1969         (maintenance_print_msymbols): Likewise.
1970
1971 2008-10-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1972
1973         Replace TYPE_ARRAY_{UPPER,LOWER}_BOUND_TYPE by a bit if {un,}defined.
1974         * c-typeprint.c (c_type_print_varspec_suffix), m2-typeprint.c
1975         (m2_array), p-typeprint.c (pascal_type_print_varspec_prefix),
1976         valops.c (value_cast), varobj.c (c_number_of_children): Replace
1977         TYPE_ARRAY_UPPER_BOUND_TYPE compared to BOUND_CANNOT_BE_DETERMINED by
1978         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1979         * parse.c (follow_types): Use TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1980         * f-valprint.c (f77_get_dynamic_upperbound): Replace with ...
1981         (f77_get_upperbound): ... this function handling now only
1982         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1983         (f77_get_dynamic_lowerbound): Replace with ...
1984         (f77_get_lowerbound): ... this function handling now only
1985         TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED.
1986         (f77_get_dynamic_length_of_aggregate, f77_create_arrayprint_offset_tbl):
1987         Update their callers.
1988         * eval.c (evaluate_subexp_standard): Update their callers.
1989         * f-lang.h (f77_get_dynamic_upperbound, f77_get_upperbound)
1990         (f77_get_dynamic_lowerbound, f77_get_lowerbound): Update their
1991         prototypes.
1992         (BOUND_FETCH_OK, BOUND_FETCH_ERROR): Remove.
1993         * f-typeprint.c (f_type_print_varspec_suffix, f_type_print_base): Remove
1994         the lower_bound_was_default variable.  Update the
1995         f77_get_dynamic_upperbound, f77_get_upperbound and
1996         TYPE_ARRAY_UPPER_BOUND_TYPE calls.
1997         * gdbtypes.c (print_bound_type): Remove the function.
1998         (recursive_dump_type): Remove its calls printing UPPER_BOUND_TYPE and
1999         LOWER_BOUND_TYPE.
2000         * gdbtypes.h (enum array_bound_type): Remove.
2001         (struct main_type): Remove the fields upper_bound_type and
2002         lower_bound_type.  Comment the new overload of the field artificial.
2003         (TYPE_ARRAY_UPPER_BOUND_TYPE): Replace by ...
2004         (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED): ... this macro.
2005         (TYPE_ARRAY_LOWER_BOUND_TYPE): Replace by ...
2006         (TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): ... this macro.
2007
2008 2008-10-02  Tom Tromey  <tromey@redhat.com>
2009
2010         * Makefile.in (HFILES_NO_SRCDIR): Remove gdb-events.h, gstdint.h.
2011
2012 2008-10-02  Daniel Jacobowitz  <dan@codesourcery.com>
2013
2014         * mips-linux-tdep.c (mips_linux_in_dynsym_resolve_code): Update
2015         comments.
2016         (mips_linux_skip_resolver): Also use glibc_skip_solib_resolver.
2017         (mips_linux_init_abi): Do not override skip_trampoline_code.
2018         * configure.tgt (mips*-*-linux*): Add glibc-tdep.o.
2019         * mips-tdep.c (mips32_scan_prologue): Stop scanning at branches.
2020         (mips_stub_frame_sniffer): Use the stub frame sniffer for PIC stubs.
2021         (mips_skip_mips16_trampoline_code): Rename from
2022         mips_skip_trampoline_code.
2023         (mips_skip_pic_trampoline_code, mips_skip_trampoline_code): New.
2024         * infrun.c (handle_inferior_event): Do not pass zero to
2025         in_solib_dynsym_resolve_code.
2026
2027 2008-10-02  Pierre Muller  <muller@ics.u-strasbg.fr>
2028             Pedro Alves  <pedro@codesourcery.com>
2029
2030         * win32-nat.c (do_initial_win32_stuff): Set inferior_ptid.
2031
2032
2033 2008-10-01  Tom Tromey  <tromey@redhat.com>
2034
2035         * symtab.c (search_symbols): Update.
2036         * symtab.h (domain_enum_tag) <METHODS_DOMAIN>: Remove.
2037
2038 2008-10-01  Tom Tromey  <tromey@redhat.com>
2039
2040         * symfile.c (syms_from_objfile): Update.
2041         (reread_symbols): Update.
2042         * objfiles.h (OBJF_SYMS): Remove.
2043         (OBJF_REORDERED): Renumber.
2044         (OBJF_SHARED): Likewise.
2045         (OBJF_READNOW): Likewise.
2046         (OBJF_USERLOADED): Likewise.
2047
2048 2008-10-01  Tom Tromey  <tromey@redhat.com>
2049
2050         * symtab.c (find_pc_sect_psymtab): Use MSYMBOL_TYPE.
2051         (find_pc_sect_symtab): Likewise.
2052         * symmisc.c (dump_msymbols): Use MSYMBOL_TYPE.
2053         * solib-som.c (som_solib_desire_dynamic_linker_symbols): Use
2054         MSYMBOL_TYPE, not SYMBOL_TYPE.
2055         * parse.c (write_exp_msymbol): Use MSYMBOL_TYPE.
2056         * objc-lang.c (find_methods): Use MSYMBOL_TYPE.
2057         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Use
2058         MSYMBOL_TYPE.
2059         * m2-exp.y (yylex): Use SYMBOL_CLASS.
2060
2061 2008-10-01  Tom Tromey  <tromey@redhat.com>
2062
2063         * xcoffread.c (RECORD_MINIMAL_SYMBOL): Update.
2064         (scan_xcoff_symtab): Update.
2065         * mdebugread.c (record_minimal_symbol): Update.
2066         (parse_partial_symbols): Update.
2067         * elfread.c (record_minimal_symbol): Update.
2068         * dbxread.c (record_minimal_symbol): Update.
2069         * coffread.c (record_minimal_symbol): Update.
2070         * sh64-tdep.c (MSYMBOL_IS_SPECIAL): Redefine.
2071         (sh64_elf_make_msymbol_special): Update.
2072         * mips-tdep.c (mips_elf_make_msymbol_special): Use
2073         MSYMBOL_TARGET_FLAG_1.
2074         (mips_elf_make_msymbol_special): Likewise.
2075         (msymbol_is_special): Likewise.
2076         * minsyms.c (prim_record_minimal_symbol_and_info): Update.
2077         (install_minimal_symbols): Likewise.
2078         (prim_record_minimal_symbol): Update.
2079         (prim_record_minimal_symbol_and_info): Remove 'info' argument.
2080         * m68hc11-tdep.c (MSYMBOL_SET_RTC): Redefine.
2081         (MSYMBOL_SET_RTI): Redefine.
2082         (MSYMBOL_IS_RTC): Redefine.
2083         (MSYMBOL_IS_RTI): Redefine.
2084         * arm-tdep.c (MSYMBOL_SET_SPECIAL): Redefine.
2085         (MSYMBOL_IS_SPECIAL): Redefine.
2086         * symtab.h (struct minimal_symbol) <info>: Remove.
2087         <target_flag_1, target_flag_2>: New fields.
2088         (MSYMBOL_INFO): Remove.
2089         (MSYMBOL_TARGET_FLAG_1): New macro.
2090         (MSYMBOL_TARGET_FLAG_2): Likewise.
2091         (prim_record_minimal_symbol_and_info): Update.
2092
2093 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2094
2095         * ada-lang.c (is_digits_suffix): Delete unused function.
2096
2097 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
2098
2099         * ada-lang.c (ada_modulus): Correct to avoid sign problem with
2100         moduli >= 2**31.
2101
2102 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
2103
2104         * ada-lang.c (ada_lookup_struct_elt_type): Handle case of a "naked"
2105         variant branch.
2106         (empty_record): Use INIT_CPLUS_SPECIFIC, since this field is not
2107         supposed to be null.  Fixes debugger segfaults.
2108         (is_unchecked_variant): New function.
2109         (to_fixed_variant_branch_type): Modify to leave unchecked unions
2110         untouched.
2111         (ada_template_to_fixed_record_type_1): Fix comment.
2112
2113 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2114
2115         * ada-lang.c (standard_exc): New static constant.
2116         (ada_exception_catchpoint_cond_string): Add special handling
2117         for the predefined exceptions.
2118
2119 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2120
2121         * ada-lang.c (ADA_RETAIN_DOTS): Delete this dead macro.  Update
2122         the code accordingly.
2123
2124 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2125
2126         * ada-lang.c (ada_evaluate_subexp) [UNOP_IND]: Remove strange
2127         treatment of expect_type. Return the correct type when dereferencing
2128         an integer.
2129
2130 2008-09-30  Tom Tromey  <tromey@redhat.com>
2131
2132         PR gdb/2484:
2133         * symtab.c (struct add_macro_name_data): New struct.
2134         (add_macro_name): New function.
2135         (default_make_symbol_completion_list): Complete macro names.
2136         * scm-lang.c (scm_language_defn): Update.
2137         * p-lang.c (pascal_language_defn): Update.
2138         * objc-lang.c (objc_language_defn): Update.
2139         * macrotab.h (macro_callback_fn): Add user_data argument.
2140         (macro_for_each): Likewise.
2141         (macro_for_each_in_scope): Declare.
2142         * macrotab.c: (struct macro_for_each_data): New struct.
2143         (foreach_macro): Use it.
2144         (macro_for_each): Likewise.
2145         (foreach_macro_in_scope): New function.
2146         (macro_for_each_in_scope): Likewise.
2147         * macrocmd.c (print_one_macro): Add argument.
2148         (macro_list_command): Pass NULL to macro_for_each.
2149         * m2-lang.c (m2_language_defn): Update.
2150         * language.h (struct language_defn) <la_macro_expansion>: New
2151         field.
2152         (macro_expansion): New enum.
2153         * language.c (unknown_language_defn): Update.  Fix order of
2154         initializers.
2155         (auto_language_defn): Likewise.
2156         (local_language_defn): Update.
2157         * jv-lang.c (java_language_defn): Update.
2158         * f-lang.c (f_language_defn): Update.
2159         * c-lang.c (c_language_defn): Update.
2160         (cplus_language_defn): Likewise.
2161         (asm_language_defn): Likewise.
2162         (minimal_language_defn): Likewise.
2163         * ada-lang.c (ada_language_defn): Update.
2164
2165 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2166
2167         * dwarf2read.c (dwarf2_get_subprogram_pc_bounds): New function.
2168         (get_scope_pc_bounds): Use it.
2169
2170 2008-09-27  Tom Tromey  <tromey@redhat.com>
2171
2172         * NEWS: Update.
2173         * macrocmd.c (extract_identifier): Add is_parameter argument.
2174         (macro_define_command): Update.
2175         (macro_undef_command): Likewise.
2176         * macroexp.c (stringify): New function.
2177         (find_parameter): Likewise.
2178         (gather_arguments): Add nargs argument.  Handle varargs.
2179         (substitute_args): Add is_varargs and va_arg_name arguments.
2180         Handle varargs, splicing, stringification.  Use find_parameter.
2181         (expand): Handle varargs.
2182
2183 2008-09-27  Tom Tromey  <tromey@redhat.com>
2184
2185         * scm-lang.c (scm_language_defn): Update.
2186         * p-typeprint.c (pascal_print_typedef): New function.
2187         * p-lang.h: (pascal_print_typedef): Declare.
2188         * p-lang.c (pascal_language_defn): Update.
2189         * objc-lang.c (objc_language_defn): Update.
2190         * m2-typeprint.c (m2_print_typedef): New function.
2191         * m2-lang.h (m2_print_typedef): Declare.
2192         * m2-lang.c (m2_language_defn): Update.
2193         * language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal):
2194         Remove.
2195         (struct language_defn) <la_print_typedef>: New field.
2196         (default_print_typedef): Declare.
2197         (LA_PRINT_TYPEDEF): New define.
2198         * language.c (unknown_language_defn): Update.
2199         (auto_language_defn): Update.
2200         (local_language_defn): Update.
2201         * jv-lang.c (java_language_defn): Update.
2202         * f-lang.c (f_language_defn): Update.
2203         * c-typeprint.c (c_print_typedef): New function.
2204         * c-lang.h (c_print_typedef): Declare.
2205         * c-lang.c (c_language_defn): Update.
2206         (cplus_language_defn): Update.
2207         (asm_language_defn): Update.
2208         (minimal_language_defn): Update.
2209         * ada-lang.c (ada_language_defn): Update.
2210         * typeprint.c (default_print_typedef): New function.
2211
2212 2008-09-27  Tom Tromey  <tromey@redhat.com>
2213
2214         * jv-exp.y (insert_exp): Define using ISO syntax.
2215         (copy_exp): Likewise.
2216         (push_expression_name): Likewise.
2217         (push_fieldnames): Likewise.
2218         (java_type_from_name): Likewise.
2219         (yyerror): Likewise.
2220         (yylex): Likewise.
2221         (parse_number): Likewise.
2222
2223 2008-09-26  Joel Brobecker  <brobecker@adacore.com>
2224
2225         * MAINTAINERS (GLOBAL MAINTAINERS): Add Pedro Alves.
2226
2227 2008-09-25  Stephan Springl  <springl-gdb@bfw-online.de> (tiny change)
2228
2229         * stack.c (print_frame_args): Fix typos in comments.
2230
2231 2008-09-25  Sérgio Durigan Júnior  <sergiodj@linux.vnet.ibm.com>
2232
2233         * linux-nat.c (get_pending_status): Fix argument to WIFSTOPPED.
2234
2235 2008-09-24  Vladimir Prus  <vladimir@codesourcery.com>
2236
2237         * remote-sim.c (gdbsim_create_inferior): Fix missing parenthesis.
2238         
2239 2008-09-24  Andreas Schwab  <schwab@suse.de>
2240
2241         * frame.c (get_frame_register_bytes): Take pseudo registers into
2242         account.  Avoid excessive function calls.
2243
2244 2008-09-23  Doug Evans  <dje@google.com>
2245
2246         * dcache.c (state_chars): New static global.
2247         (ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
2248         All uses updated.
2249         (dcache_info): Print cache state as mnemonically useful letters instead
2250         of magic numbers.
2251
2252         * dwarf2read.c (comp_unit_head): Reorganize for better packing.
2253
2254 2008-09-22  Tom Tromey  <tromey@redhat.com>
2255
2256         * symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
2257         printf_filtered.
2258
2259 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2260
2261         * infrun.c (follow_exec): Don't do a generic mourn.  Instead
2262         inline the required bits.
2263         * breakpoint.h (enum inf_context): Add inf_execd.
2264
2265 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2266
2267         * infrun.c (handle_inferior_event): In the follow exec case,
2268         context-switch before doing anything else.
2269
2270 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2271
2272         * top.c (any_thread_of, kill_or_detach): New functions.
2273         (quit_target): Iterate over all inferiors, killing or detaching
2274         accordingly.
2275
2276 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2277
2278         Remove the attach_flag global, and make it per-inferior.
2279
2280         * inferior.h (attach_flag): Delete.
2281         (inferior_process): Declare.
2282         * solib.c (update_solib_list): Adjust.
2283         * gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
2284         * inf-ptrace.c (inf_ptrace_detach): Adjust.
2285         (inf_ptrace_files_info): Get it from the current inferior.
2286         * inf-ttrace.c (inf_ttrace_attach): Adjust.
2287         (inf_ttrace_files_info): Get it from the current
2288         inferior.
2289         * inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
2290         (clear_sigint_trap): Get it from the current process.
2291         * remote.c (extended_remote_attach_1)
2292         (extended_remote_create_inferior_1): Adjust.
2293         * top.c (quit_confirm, quit_target): Get it from the current inferior.
2294         * procfs.c (do_detach): Adjust.
2295         (procfs_wait): Get it from the event inferior.
2296         (procfs_files_info): Get it from the current inferior.
2297         * nto-procfs.c (procfs_files_info): Likewise.
2298         (procfs_attach): Adjust.  Set the attach_flag here.
2299         (do_attach): Don't set it here.
2300         (procfs_detach): Don't clear it.
2301         (procfs_mourn_inferior): Don't clear it.
2302         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2303         * target.c (attach_flag): Delete.
2304         (generic_mourn_inferior): Don't clear it.
2305         * win32-nat.c (get_win32_debug_event): Get it from the event
2306         process.
2307         (do_initial_win32_stuff): Add attaching argument.  Set attach_flag
2308         in the inferior accordingly.
2309         (win32_attach): Don't set the attach_flag here.  Pass 1 to
2310         do_intial_win32_stuff.
2311         (win32_files_info): Get it from the current inferior.
2312         (win32_create_inferior): Dont clear attach_flag here.  Pass 0 to
2313         do_intial_win32_stuff.
2314
2315 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2316
2317         Make the stop_soon global be per-inferior instead.
2318
2319         * infcmd.c (attach_command_post_wait): Adjust.
2320         (attach_command): Likewise.
2321
2322         * inferior.h (stop_soon): Delete.
2323         (struct inferior): Add stop_soon member.
2324
2325         * infrun.c (stop_soon): Delete.
2326         (clear_proceed_status, start_remote)
2327         (fetch_inferior_event, handle_inferior_event): Adjust.
2328         (signal_stop_state): Don't check stop_soon here.  Check in callers
2329         instead.
2330         (save_inferior_status, restore_inferior_status): Adjust.
2331
2332         * linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
2333         signals to common code if starting up the inferior.
2334         
2335         * inferior.h (struct inferior_info): Added stop_soon member.
2336         * inferior.c (add_inferior) Clear stop_soon.
2337
2338         * mips-tdep.c (heuristic_proc_start): Adjust.
2339         * nto-procfs.c (procfs_create_inferior): Adjust.
2340         * solib-irix.c (irix_solib_create_inferior_hook): Adjust.
2341         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2342         * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
2343         * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
2344
2345         * win32-nat.c (do_initial_win32_stuff): Adjust.
2346
2347         * alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
2348
2349 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2350
2351         Implement remote multi-process extensions.
2352
2353         * remote.c (struct remote_state): Add extended and
2354         multi_process_aware fields.
2355         (remote_multi_process_p): New.
2356         (PACKET_vKill): New.
2357         (record_currthread): Use thread_change_ptid.  Notice new
2358         inferiors.
2359         (set_thread, remote_thread_alive): Use write_ptid.
2360         (write_ptid, read_ptid): New.
2361         (remote_current_thread, remote_threads_extra_info): Use them.
2362         (remote_threads_info): Likewise.  Detect new inferiors.
2363         (remote_start_remote): Add inferior to inferior list.
2364         (remote_multi_process_feature): New.
2365         (remote_protocol_features): Add "multiprocess" feature.
2366         (remote_query_supported): Pass "multiprocess+" as supported
2367         features.
2368         (remote_open_1): Clear multi_process_aware.  Set extended
2369         accordingly.
2370         (remote_detach_1): Detach current process.  Use extended packet
2371         format for extended-remote multi-process.  Detach process from the
2372         inferior list.  Only mourn after printing output.
2373         (extended_remote_attach_1): Add process to the inferior list.
2374         (remote_vcont_resume): Use write_ptid to pass the thread ids.
2375         (remote_wait): Use read_ptid.  Implement the extended
2376         multi-process extension format of the 'W' and 'X' reply packets.
2377         Remove exited inferiors from inferior list.
2378         (remote_xfer_memory): Set general thread.
2379         (remote_vkill): New.
2380         (extended_remote_kill): New.
2381         (remote_mourn_1): Discard all inferiors.
2382         (select_new_thread_callback): New.
2383         (extended_remote_mourn_1): If there are more processes to debug,
2384         switch to a thread in another process, and don't pop the target.
2385         (extended_remote_create_inferior_1): Add the new process to the
2386         inferior list.
2387         (remote_stopped_by_watchpoint): Indenting.
2388         (remote_xfer_partial): Set the general thread.
2389         (remote_pid_to_str): If the remote is multi-process aware, print
2390         the process id as well as the thread id.
2391         (remote_get_thread_local_address): Use write_ptid.
2392         (init_extended_remote_ops): Register extended_remote_kill.
2393         (_initialize_remote): Register new packets.  Change
2394         magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
2395         member to 42000.
2396
2397         * thread.c (thread_change_ptid): Also account for the inferior pid
2398         changing.
2399
2400         * inferior.h (discard_all_inferiors): Declare.
2401         * inferior.c (discard_all_inferiors): New.
2402
2403 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2404
2405         * gnu-nat.c (gnu_attach): Add process to inferiors table.
2406         (gnu_detach): Remove it.
2407         * go32-nat.c (go32_create_inferior): Add process to gdb's inferior
2408         table.
2409         * inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
2410         to inferior table accordingly.
2411         (inf_ptrace_attach): Add new process to inferior table.
2412         (inf_ptrace_detach): Remove it.
2413         * inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
2414         to inferior table accordingly.
2415         (inf_ttrace_attach): Add process to inferior table.
2416         (inf_ttrace_detach): Remove it.
2417         * linux-fork.c (init_fork_list): Delete any left over inferior.
2418         (linux_fork_mourn_inferior, detach_fork_command): Also delete
2419         processes from inferior list.
2420         * monitor.c (monitor_open): Add process to inferior list.
2421         (monitor_close): Remove it.
2422         * nto-procfs.c (procfs_attach): Add process to inferior list.
2423         Find threads after pushing the target.
2424         (procfs_detach): Remove process from inferior list.
2425         (procfs_create_inferior): Add process to inferior list.
2426         * procfs.c (procfs_detach): Remove process from inferior list.
2427         (do_attach): Add process to inferior list.
2428         * remote-sim.c (sim_create_inferior): Add process to inferior list.
2429         (gdbsim_close): Remove it.
2430         * target.c (generic_mourn_inferior): If inferior_ptid is not
2431         null_ptid, remove the corresponding inferior from inferior list.
2432         * win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
2433         (win32_detach): Remove it.
2434         * linux-nat.c (linux_child_follow_fork): Delete and add inferiors
2435         to inferior list accordingly.
2436         * fork-child.c (fork_inferior): Add process to inferior list.
2437         * corelow.c (CORELOW_PID): Define.
2438         (core_close): Remove core from inferior list.
2439         (core_open): Add it.
2440
2441 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2442
2443         * inferior.h: Forward declare struct ui_out.
2444         Forward declare struct private_inferior.
2445         (struct inferior): New.
2446         (init_inferior_list, add_inferior, add_inferior_silent)
2447         (delete_inferior, delete_inferior_silent, detach_inferior)
2448         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
2449         (valid_inferior_id, find_inferior_pid): New functions.
2450         (inferior_callback_func): New typedef.
2451         (iterate_over_inferiors, print_inferior, have_inferiors)
2452         (current_inferior): New functions.
2453         * inferior.c: New file.
2454
2455         * Makefile.in (SFILES): Add inferior.c.
2456         (COMMON_OBS): Add inferior.o.
2457
2458 2008-09-22  Jonathan Larmour  <jifl@eCosCentric.com>
2459
2460         * arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
2461         instead of determining symbol and line info directly.
2462         * MAINTAINERS: Update my email address.
2463
2464 2008-09-22  Daniel Jacobowitz  <dan@codesourcery.com>
2465
2466         * symtab.c (skip_prologue_using_sal): Treat two consecutive lines
2467         at the same address as a prologue marker.  Do not skip an entire
2468         function.
2469
2470 2008-09-22  Andrew Stubbs  <ams@codesourcery.com>
2471
2472         * frame.c (get_frame_register_bytes): Comment improvments.
2473
2474 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2475
2476         * linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
2477         all-stop mode.
2478
2479 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2480
2481         * MAINTAINERS: Update my email address.
2482
2483 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2484
2485         * frame.c (get_frame_register_bytes): Detect bad debug info.
2486
2487 2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
2488
2489         Fix a crash on uninitialized ECS->EVENT_THREAD for a newly found thread.
2490         * infrun.c (wait_for_inferior): Move this ECS->EVENT_THREAD
2491         initialization ...
2492         (fetch_inferior_event): ... and this ECS->EVENT_THREAD initialization
2493         ...
2494         (handle_inferior_event): ... here after the add_thread call together
2495         with the local adjust_pc_after_break and reinit_frame_cache calls.
2496
2497 2008-09-16  David Daney  <ddaney@avtrex.com>
2498
2499         * breakpoint.c (bpstat_stop_status): Clear breakpoint_at for
2500         all hardware bpstats.
2501
2502 2008-09-16  Joel Brobecker  <brobecker@adacore.com>
2503
2504         * gstdint.h: Delete.
2505
2506 2008-09-15  Mark Kettenis  <kettenis@gnu.org>
2507
2508         * infcall.c (generic_push_dummy_code): Remove.
2509         (push_dummy_code): Unconditionally call gdbarch_push_dummy_code.
2510
2511 2008-09-15  Doug Evans  <dje@google.com>
2512
2513         * dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
2514         (struct attribute): Ditto.
2515
2516 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2517
2518         * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind_cache): Record
2519         HPPA_IPSW_REGNUM and HPPA_SAR_REGNUM values.
2520
2521         * hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
2522         "#if 0" "#endif".  Fix mapping of DWARF DBX registers to GDB registers.
2523         Correct arguments and improve comments.
2524         (hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum.  Delete
2525         disabled code.
2526         * hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating
2527         point DBX register, change error to warning, and improve comments.
2528
2529 2008-09-14  Doug Evans  <dje@google.com>
2530
2531         * dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.
2532
2533 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2534
2535         * hppa-linux-tdep.c (hppa_linux_supply_fpregset): Correct iteration.
2536
2537 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2538
2539         * defs.h (GCC_GENERATED_STDINT_H): Define.
2540
2541 2008-09-13  Tom Tromey  <tromey@redhat.com>
2542
2543         * varobj.c (varobj_set_display_format): Use xfree.
2544         * tracepoint.c (stringify_collection_list): Use xfree.
2545         * remote-fileio.c (remote_fileio_reset): Use xfree.
2546         * mipsread.c (read_alphacoff_dynamic_symtab): Use xfree.
2547         * dfp.c (decimal_from_floating): Use xfree, xstrprintf.  Don't use
2548         asprintf.
2549         * cp-support.c (mangled_name_to_comp): Use xfree.
2550
2551 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2552
2553         * ada-lang.c (remove_extra_symbols): Remove stub symbols if
2554         the associated complete symbol is also in the list.
2555         (ada_add_local_symbols, ada_add_non_local_symbols): New functions,
2556         extracted out from ada_lookup_symbol_list.
2557         (ada_lookup_symbol_list): Use them.  Remove the search through
2558         the minimal symbols.
2559
2560 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2561
2562         * dwarf2read.c (add_partial_subprogram): New procedure.
2563         (scan_partial_symbols): Use it.
2564         (load_partial_dies): Read in children of subprogram and lexical
2565         blocks for Ada compilation units.
2566
2567 2008-09-13  Tom Tromey  <tromey@redhat.com>
2568
2569         * symfile.c (build_id_verify): Free 'found'.
2570         (find_separate_debug_file): Use xfree, not free.
2571
2572 2008-09-12  Doug Evans  <dje@google.com>
2573
2574         * corefile.c (write_memory): Remove unnecessary copying.
2575
2576         * sol-thread.c (_initialize_sol_thread): Add FIXME regarding
2577         order of _initialize_* fns.
2578
2579         * dwarf2read.c (comp_unit_head): Rename first_die_ptr to
2580         first_die_offset.  All uses updated.
2581         Delete unused members cu_head_ptr, next.
2582         Move members base_known, base_address to ...
2583         (dwarf2_cu) ... here.  All uses updated.
2584
2585 2008-09-12  Pedro Alves  <pedro@codesourcery.com>
2586
2587         * Makefile.in (generated_files): Add $(NAT_GENERATED_FILES).
2588         * config/i386/i386gnu.mh (NAT_GENERATED_FILES): New.
2589
2590 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2591
2592         * fork-child.c (startup_inferior): Use target_wait and target_resume
2593         directly instead of calling wait_for_inferior / resume.
2594
2595         * infcmd.c (kill_if_already_running): Do not call no_shared_libraries
2596         or init_wait_for_inferior.
2597         (run_command_1): Call init_wait_for_inferior.
2598
2599 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2600
2601         * gdbtypes.h (builtin_type_void_data_ptr, builtin_type_void_func_ptr,
2602         builtin_type_CORE_ADDR, builtin_type_char, builtin_type_short,
2603         builtin_type_int, builtin_type_long, builtin_type_signed_char,
2604         builtin_type_unsigned_char, builtin_type_unsigned_short,
2605         builtin_type_unsigned_int, builtin_type_unsigned_long,
2606         builtin_type_float, builtin_type_double, builtin_type_long_double,
2607         builtin_type_complex, builtin_type_double_complex, builtin_type_string,
2608         builtin_type_bool, builtin_type_long_long,
2609         builtin_type_unsigned_long_long): Remove macros.
2610
2611         (builtin_type_f_character, builtin_type_f_integer,
2612         builtin_type_f_integer_s2, builtin_type_f_logical,
2613         builtin_type_f_logical_s1, builtin_type_f_logical_s2,
2614         builtin_type_f_real, builtin_type_f_real_s8, builtin_type_f_real_s16,
2615         builtin_type_f_complex_s8, builtin_type_f_complex_s16,
2616         builtin_type_f_complex_s32): Likewise.
2617
2618         (builtin_type_m2_char, builtin_type_m2_int, builtin_type_m2_card,
2619         builtin_type_m2_real, builtin_type_m2_bool): Likewise.
2620
2621         (struct builtin_f_type, builtin_f_type): Move to f-lang.h.
2622         (struct builtin_m2_type, builtin_m2_type): Move to m2-lang.h.
2623
2624         * f-lang.h (struct builtin_f_type, builtin_f_type): Move here.
2625         * m2-lang.h (struct builtin_m2_type, builtin_m2_type): Move here.
2626
2627 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2628
2629         * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Use builtin types of
2630         target_gdbarch instead of builtin_type_void_data_ptr.
2631         (LM_DYNAMIC_FROM_LINK_MAP, LM_NEXT, LM_NAME,
2632         IGNORE_FIRST_LINK_MAP_ENTRY, scan_dyntag, elf_locate_base,
2633         solib_svr4_r_map, solib_svr4_r_brk, solib_svr4_r_ldsomap,
2634         open_symbol_file_object): Likewise.
2635         * nto-tdep.c (LM_ADDR): Likewise.
2636
2637 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2638
2639         * bsd-uthread.c (bsd_uthread_read_memory_address): New function.
2640         (bsd_uthread_fetch_registers, bsd_uthread_store_registers,
2641         bsd_uthread_wait, bsd_uthread_find_new_threads): Use it.
2642
2643 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2644
2645         * procfs.c (procfs_address_to_host_pointer): Use target_gdbarch
2646         and its associated types to perform pointer conversion.
2647         (procfs_can_use_hw_breakpoint): Likewise.
2648         (procfs_auxv_parse): Remove unused variable.
2649
2650 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2651
2652         * auxv.c (default_auxv_parse): Use gdbarch_ptr_bit (target_gdbarch)
2653         instead of builtin_type_void_data_ptr.
2654         * target.c (default_region_ok_for_hw_watchpoint): Likewise.
2655
2656 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2657
2658         * expprint.c (print_subexp_standard): Compare against builtin type
2659         associated with exp->gdbarch instead of builtin_type_char.
2660
2661         * f-valprint.c (f_val_print): Use extract_unsigned_integer to
2662         extract values of arbitrary logical type.  Handle arbitrary
2663         complex types.
2664
2665         * printcmd.c (float_type_from_length): New function.
2666         (print_scalar_formatted, printf_command): Use it.
2667
2668 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2669
2670         * valops.c: Include "objfiles.h" and "symtab.h".
2671         (find_function_in_inferior): New argument OBJF_P.  Use it to return
2672         objfile where function is defined.  Use per-objfile arch types
2673         instead of builtin_type_ to define default return type.
2674
2675         * linux-fork.c (checkpoint_command): Update calls.  Use per-objfile
2676         architecture to define inferior call argument types.
2677         * gcore.c (derive_heap_segment): Likewise.
2678         * objc-lang.c (value_nsstring): Likewise.
2679         * scm-lang.c (scm_lookup_name): Likewise.
2680         * scm-valprint.c (scm_inferior_print): Likewise.
2681         * valops.c (value_allocate_space_in_inferior): Likewise.
2682
2683         * eval.c (evaluate_subexp_standard): Update calls.
2684         * objc-lang.c (lookup_objc_class, print_object_command): Likewise.
2685
2686         * linux-fork.c: Include "objfiles.h".
2687         * scm-lang.c: Include "objfiles.h".
2688         * scm-valprint.c: Include "objfiles.h".
2689
2690 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2691
2692         * gdbarch.sh (name_of_malloc): Remove.
2693         * gdbarch.c, gdbarch.h: Re-generate.
2694         * valops.c (value_allocate_space_in_inferior): Do not call
2695         gdbarch_name_of_malloc.
2696
2697 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2698
2699         * valarith.c (value_x_unop): Use builtin_type_int8 as type for
2700         UNOP_POSTINCREMENT/UNOP_POSTDECREMENT constant 0 argument.
2701         (value_bit_index): Use extract_unsigned_integer
2702         instead of unpack_long to read single byte.
2703
2704 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2705
2706         * infcall.c (value_arg_coerce): Add GDBARCH parameter.  Use its
2707         associates types instead of builtin_type_ macros.
2708         (find_function_addr): Leave output VALUE_TYPE NULL if unknown.
2709         (call_function_by_hand): Use per-architecture "int" type as
2710         fall-back if find_function_addr returns NULL VALUE_TYPE.
2711         Update call to value_arg_coerce.
2712
2713 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2714
2715         * cp-abi.h (cplus_method_ptr_size): Add TO_TYPE parameter.
2716         (cplus_make_method_ptr): Add TYPE parameter.
2717         * cp-abi.c (cplus_method_ptr_size): Add TO_TYPE parameter.  Pass it
2718         on to current_cp_abi.method_ptr_size callback.
2719         (cplus_make_method_ptr): Add TYPE parameter.  Pass it on to
2720         current_cp_abi.make_method_ptr callback.
2721
2722         * gdbtypes.c (lookup_methodptr_type): Pass target type
2723         argument to cplus_method_ptr_size.
2724         * valops.c (value_cast): Pass type argument to cplus_make_method_ptr.
2725         (value_struct_elt_for_reference): Likewise.
2726
2727         * gnu-v3-abi.c (get_class_arch): New function.
2728         (vtable_address_point_offset): Add GDBARCH parameter.  Use it
2729         instead of current_gdbarch.  Update all callers.
2730         (gnuv3_get_vtable): Likewise.
2731         (gnuv3_get_virtual_fn): Likewise.
2732         (gnuv3_decode_method_ptr): Likewise.
2733         (gnuv3_rtti_type): Call get_class_arch to determine architecture.
2734         Use it instead of current_gdbarch.
2735         (gnuv3_virtual_fn_field): Likewise.
2736         (gnuv3_baseclass_offset): Likewise.
2737         (gnuv3_print_method_ptr): Likewise.
2738         (gnuv3_method_ptr_to_value): Likewise.
2739         (gnuv3_method_ptr_size): Add TYPE parameter.  Use it to determine
2740         class architecture.  Use architecture types instead of builtin types.
2741         (gnuv3_make_method_ptr): Likewise.
2742
2743         * cp-valprint.c (cp_print_class_member): Expect pointer type
2744         instead of class type.  Use its length when extracting value.
2745         * c-valprint.c (c_val_print): Update call to cp_print_class_member.
2746
2747 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2748
2749         * stack.c (return_command): Use frame architecture to determine
2750         default integer return type.
2751
2752         * f-valprint.c (f77_get_dynamic_lowerbound): Use frame architecture
2753         to determine pointer types.
2754         (f77_get_dynamic_upperbound): Likewise.
2755
2756         * objc-lang.c (OBJC_FETCH_POINTER_ARGUMENT): Remove.
2757         (resolve_msgsend): Use architecture of current frame to determine
2758         pointer types.  Inline OBJC_FETCH_POINTER_ARGUMENT.
2759         (resolve_msgsend_stret, resolve_msgsend_super,
2760         resolve_msgsend_super_stret): Likewise.
2761
2762 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2763
2764         * alpha-tdep.c (alpha_register_type): Use builtin_type (gdbarch)
2765         instead of builtin_type_ macros.
2766         * amd64-tdep.c (amd64_register_type): Likewise.
2767         (amd64_get_longjmp_target): Likewise.
2768         * arm-tdep.c (arm_register_type): Likewise.
2769         * avr-tdep.c (avr_register_type): Likewise.
2770         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
2771         * frv-tdep.c (frv_register_type): Likewise.
2772         * h8300-tdep.c (h8300_register_type): Likewise.
2773         * hppa-tdep.c (hppa32_convert_from_func_ptr_addr, 
2774         hppa_skip_trampoline_code): Likewise.
2775         * i386-tdep.c (i386_register_type): Likewise.
2776         (i386_unwind_pc, i386_sse_type): Likewise.
2777         * ia64-tdep.c (ia64_register_type): Likewise.
2778         * m32r-tdep.c (m32r_register_type): Likewise.
2779         * m68k-tdep.c (m68k_register_type, m68k_unwind_pc): Likewise.
2780         * m88k-tdep.c (m88k_register_type): Likewise.
2781         * mep-tdep.c (mep_register_type): Likewise.
2782         * mips-tdep.c (mips_pseudo_register_type): Likewise.
2783         * mn10300-tdep.c (mn10300_register_type): Likewise.
2784         * mt-tdep.c (mt_copro_register_type): Likewise.
2785         * rs6000-tdep.c (rs6000_builtin_type_vec64): Likewise.
2786         (rs6000_convert_register_p, rs6000_register_to_value,
2787         rs6000_value_to_register): Likewise.
2788         * s390-tdep.c (s390_register_type): Likewise.
2789         * sh64-tdep.c (sh64_register_type): Likewise.
2790         (sh64_build_float_register_type, sh64_do_fp_register): Likewise.
2791         * sh-tdep.c (sh_sh2a_register_type, sh_sh3e_register_type,
2792         sh_sh4_build_float_register_type, sh_sh4_register_type,
2793         sh_default_register_type): Likewise.
2794         * sparc64-tdep.c (sparc64_register_type): Likewise.
2795         * sparc-tdep.c (sparc32_register_type): Likewise.
2796         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
2797         * v850-tdep.c (v850_register_type): Likewise.
2798         * vax-tdep.c (vax_register_type): Likewise.
2799         * xtensa-tdep.c (xtensa_register_type, xtensa_unwind_pc,
2800         xtensa_push_dummy_call): Likewise.
2801
2802         * std-regs.c (value_of_builtin_frame_fp_reg,
2803         value_of_builtin_frame_pc_reg): Likewise.
2804         * target-descriptions.c (tdesc_register_type): Likewise.
2805
2806 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2807
2808         * ada-lang.c (ada_coerce_to_simple_array_type): Use builtin_type_int32
2809         instead of builtin_type_int as default unspecified integral type.
2810         (ada_index_type, ada_array_bound_from_type, ada_variant_discrim_type,
2811         assign_component, to_fixed_range_type): Likewise.
2812         * ada-typeprint.c (print_range, print_range_bound,
2813         print_range_type_named): Likewise.
2814         * ada-valprint.c (print_optional_low_bound, ada_val_print_1): Likewise.
2815         * eval.c (evaluate_subexp_standard): Likewise.
2816         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2817         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
2818         build_gdb_vtable_type): Likewise.
2819         * jv-lang.c (java_array_type): Likewise.
2820         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Likewise.
2821         * m2-valprint.c (m2_print_long_set): Likewise.
2822         * parse.c (follow_types): Likewise.
2823         * p-typeprint.c (pascal_type_print_base): Likewise.
2824         * valops.c (value_one, value_array, value_string,
2825         value_bitstring): Likewise.
2826         * value.c (allocate_repeat_value, value_from_string): Likewise.
2827         * varobj.c (c_describe_child): Likewise.
2828         * mt-tdep.c (mt_register_type): Likewise.
2829         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
2830         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
2831
2832 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2833
2834         * defs.h (struct gdbarch): Add forward declaration.
2835         (set_next_address): Add GDBARCH argument.
2836         * printcmd.c (set_next_address): Use it to find pointer type.
2837         * breakpoint.c (breakpoint_1): Update call.
2838         * source.c (line_info): Likewise.
2839         * findcmd.c (find_command): Use current_gdbarch to find pointer type.
2840
2841         * breakpoint.c (set_breakpoint_count): Use platform-neutral
2842         types for internal variable values.
2843         * infrun.c (handle_inferior_event): Likewise.
2844         * source.c (forward_search_command, reverse_search_command): Likewise.
2845         * tracepoint.c (set_tracepoint_count, set_traceframe_num,
2846         set_tracepoint_num, set_traceframe_context): Likewise.
2847
2848 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2849
2850         * gdbtypes.h (struct builtin_type): Remove builtin_true_char
2851         and builtin_true_unsigned_char.
2852         (builtin_type_true_char): Remove macro, add extern declaration.
2853         (builtin_type_true_unsigned_char): Add extern declaration.
2854         * gdbtypes.c (builtin_type_true_char): New global variable.
2855         (builtin_type_true_unsigned_char): Likewise.
2856         (_initialize_gdbtypes): Initialize them.
2857         (gdbtypes_post_init): Do not initialize builtin_true_char
2858         and builtin_true_unsigned_char members of struct builtin_type.
2859
2860         * printcmd.c (print_scalar_formatted): Do not use builtin_type;
2861         use builtin_type_true_unsigned_char instead.
2862
2863         * ada-valprint.c (ada_val_print_1): Use builtin_type_true_char
2864         instead of builtin_type_char for internal string.
2865
2866 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2867
2868         * gdbtypes.h (builtin_type_void): Remove macro, add declaration.
2869         (builtin_type_f_void): Remove macro.
2870         * gdbtypes.c (builtin_type_void): New global variable.
2871         (_initialize_gdbtypes): Initialize it.
2872
2873         * gnu-v3-abi.c (build_gdb_vtable_type): Do not call
2874         lookup_pointer_type or lookup_function_type on builtin_type_void.
2875         * printcmd.c (set_next_address): Likewise.
2876         * objc-lang.c (value_nsstring): Likewise.
2877         * mt-tdep.c (mt_copro_register_type): Likewise.
2878         * xtensa-tdep.c (xtensa_register_type): Likewise.
2879
2880         * symfile.c (syms_from_objfile): Remove special handling
2881         of builtin_type_void and builtin_type_char.
2882
2883 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2884
2885         * eval.c (evaluate_subexp_standard): Use exp->gdbarch types instead
2886         of builtin_type_ macros when handling OP_OBJC_ operations.
2887         * objc-lang.c (print_object_command): Likewise.
2888
2889 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2890
2891         * ada-valprint.c: Include "objfiles.h".
2892         (ada_val_print_1): Use the gdbarch associated with the objfile whether
2893         a System.Address type is defined to retrieve the proper pointer type
2894         to use to print it.
2895
2896 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2897
2898         * ada-lang.c (value_pos_atr): Add TYPE argument.  Use it as
2899         result type instead of builtin_type_int.
2900         (value_subscript_packed): Use pos_atr instead of value_pos_atr.
2901         (ada_value_subscript): Update call to value_pos_atr.
2902         (ada_value_ptr_subscript): Likewise.
2903         (ada_evaluate_subexp): Likewise.
2904
2905 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2906
2907         * ada-lang.c (cast_to_fixed): Do not cast to builtin_type_double.
2908         (cast_from_fixed_to_double): Rename to ...
2909         (cast_from_fixed): ... this.  Add TYPE parameter.  Use it instead
2910         of builtin_type_double.
2911         (ada_value_cast): Use cast_from_fixed instead of casting result
2912         of cast_from_fixed_to_double.
2913         (ada_evaluate_subexp): Update calls to cast_from_fixed_to_double. 
2914
2915 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2916
2917         * valops.c (value_ind): No longer allow dereferencing an
2918         integer type.
2919         * eval.c (evaluate_subexp_standard): Handle deferencing an
2920         integer type here.
2921         * ada-lang.c (ada_evaluate_subexp): Likewise.
2922
2923 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2924
2925         * ada-valprint.c (ada_val_print_1): When implicitly dereferencing
2926         a reference type, pass the reference type directly to unpack_pointer.
2927         * c-valprint.c (c_val_print): Likewise.
2928         * f-valprint.c (f_val_print): Likewise.
2929         * m2-valprint.c (print_variable_at_address, m2_val_print): Likewise.
2930         * p-valprint.c (pascal_val_print): Likewise.
2931
2932 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2933
2934         * eval.c (evaluate_subexp_standard): Use builtin_type_int8
2935         to construct the EVAL_SKIP dummy return value.
2936         * ada-lang.c (ada_evaluate_subexp): Likewise.
2937         * jv-lang.c (evaluate_subexp_java): Likewise.
2938         * m2-lang.c (evaluate_subexp_modula2): Likewise.
2939         * scm-lang.c (evaluate_exp): Likewise.
2940
2941 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2942
2943         * value.h (coerce_enum, coerce_number): Remove prototypes.
2944         * value.c (coerce_enum, coerce_number): Remove.
2945         * valarith.c (value_x_binop): Do not call coerce_enum.
2946         (value_x_unop): Likewise.
2947         (value_logical_not): Call coerce_array instead of coerce_number.
2948
2949 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2950
2951         * ax-gdb.c: Include "language.h".
2952         (gen_frame_args_address): Add GDBARCH parameter; use it
2953         instead of current_gdbarch.
2954         (gen_frame_locals_address): Likewise.
2955         (gen_var_ref): Add GDBARCH parameter.  Update calls to
2956         gen_frame_args_address and gen_frame_locals_address.  Use
2957         pointer type from gdbarch.
2958         (gen_usual_unary): Add EXP parameter.  Use integer type
2959         from exp->gdbarch.
2960         (gen_usual_arithmetic): Likewise.
2961         (gen_integral_promotions): Likewise.
2962         (gen_add, gen_sub): Remove.
2963         (gen_ptradd, gen_ptrsub, gen_ptrdiff): New functions.
2964         (gen_logical_not): Use passed-in boolean result type
2965         instead of builtin_type_int.
2966         (gen_complement): Do not call gen_usual_unary or
2967         gen_integral_promotions.
2968         (gen_struct_ref): Call require_rvalue instead of gen_usual_unary.
2969         (gen_repeat): Add EXP parameter.  Update call to gen_expr.
2970         Use builtin_type_int32 as internal range type.
2971         (gen_sizeof): Add EXP and SIZE_TYPE parameters.  Use SIZE_TYPE
2972         as result type.  Update call to gen_expr.
2973         (gen_expr): Add EXP parameter.  Update calls to gen_expr,
2974         gen_repeat, gen_var_ref, gen_usual_unary, gen_usual_arithmetic,
2975         and gen_integral_promotions.  Call gen_ptradd, gen_ptrsub,
2976         gen_ptrdiff, or gen_binop instead of gen_add or gen_sub.
2977         Use exp->gdbarch instead of current_gdbarch.
2978         Call language_bool_type to determine result type of UNOP_LOGICAL_NOT.
2979
2980 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2981
2982         * eval.c (evaluate_subexp_standard): Add calls to binop_promote
2983         and unop_promote before calling value_binop et. al.
2984         * ada-lang.c (ada_evaluate_subexp): Add calls to binop_promote
2985         and unop_promote before calling value_binop et. al.
2986
2987         * valarith.c (value_binop): Do not call binop_promote or unop_promote.
2988         (value_pos): Do not call unop_promote.
2989         (value_neg, value_complement): Likewise.
2990
2991 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2992
2993         * value.h (unop_promote, binop_promote): Add prototypes.
2994         * eval.c (unop_promote, binop_promote): New functions.
2995         * valarith.c (unop_result_type, binop_result_type): Remove.
2996         (value_binop): Call binop_promote or unop_promote.
2997         Inline remaining parts of binop_result_type.  Remove special
2998         code to truncate integer values for unsigned operations.
2999         (value_pos): Call unop_promote.  Inline remaining parts of
3000         unop_result_type.
3001         (value_neg, value_complement): Likewise.
3002
3003 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3004
3005         * value.h (value_add, value_sub): Remove.
3006         (value_ptradd, value_ptrsub, value_ptrdiff): Add prototypes.
3007         * valarith.c (value_add, value_sub): Remove.
3008         (value_ptradd, value_ptrsub, value_ptrdiff): New functions.
3009         (find_size_for_pointer_math): Add assertion.  Update comment.
3010         (value_binop): Update comment.
3011
3012         * eval.c (ptrmath_type_p): New function.
3013         (evaluate_subexp_standard): Replace value_add and value_sub
3014         by value_ptradd, value_ptrsub, value_ptrdiff or value_binop.
3015         Use builtin_type_uint8 instead of builtin_type_char to hold
3016         the increment for BINOP_{PRE,POST}{IN,DE}CREMENT operations.
3017         * valarith.c (value_subscript): Replace value_add by
3018         value_ptradd.  Replace value_sub by value_binop.
3019         * ada-lang.c (ada_value_ptr_subscript): Likewise.
3020         (ada_tag_name_2): Replace value_add by value_ptradd.
3021         (ada_evaluate_subexp): Replace value_add and value_sub by
3022         value_binop.
3023         * m2-lang.c (evaluate_subexp_modula2): Replace value_add
3024         by value_ptradd.
3025         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
3026         * gnu-v3-abi.c (gnuv3_method_ptr_to_value): Likewise.
3027
3028 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3029
3030         * eval.c (evaluate_subexp_for_sizeof): Use builtin_int type of
3031         the expression architecture instead of builtin_type_int as the
3032         sizeof return type.
3033
3034 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3035
3036         * expression.h (enum exp_opcode): Document OP_COMPLEX to take
3037         a type parameter as expression element.
3038         * eval.c (evaluate_subexp_standard) [OP_COMPLEX]: Retrieve result
3039         type as expression element.
3040         * f-exp.y: Pass in type when buildin OP_COMPLEX expression.
3041         * parse.c (operator_length_standard): Update length of OP_COMPLEX.
3042
3043 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3044
3045         * language.h (struct language_arch_info): New members
3046         bool_type_default and bool_type_symbol.
3047         (lang_bool_type): Remove prototype.
3048         (LA_BOOL_TYPE): Remove macro.
3049         (language_bool_type): Add prototype.
3050         * language.c (lang_bool_type): Remove.
3051         (language_bool_type): New function.
3052
3053         * value.h (value_in): Change return value to int.
3054         * value.c (value_in): Return int instead of struct value *.
3055
3056         * eval.c (evaluate_subexp_standard): Call language_bool_type instead
3057         of using LA_BOOL_TYPE.  Update call to value_in.
3058         * ada-lang.c (ada_evaluate_subexp): Call language_bool_type instead
3059         of using LA_BOOL_TYPE or builtin_type_int for boolean values.
3060
3061         * language.c (unknown_language_arch_info): Set bool_type_default member
3062         of struct language_arch_info.
3063         * ada-lang.c (ada_language_arch_info): Set bool_type_symbol and
3064         bool_type_default members of struct language_arch_info.
3065         * c-lang.c (c_language_arch_info): Set bool_type_default member
3066         of struct language_arch_info.
3067         (cplus_language_arch_info): Set bool_type_symbol and bool_type_default
3068         members of struct language_arch_info.
3069         * f-lang.c (f_language_arch_info): Set bool_type_symbol and
3070         bool_type_default members of struct language_arch_info.
3071         * jv-lang.c (java_language_arch_info): Set bool_type_symbol and
3072         bool_type_default members of struct language_arch_info.
3073         * m2-lang.c (m2_language_arch_info): Set bool_type_symbol and
3074         bool_type_default members of struct language_arch_info.
3075         * p-lang.c (p_language_arch_info): Set bool_type_symbol and
3076         bool_type_default members of struct language_arch_info.
3077
3078 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3079
3080         * jv-lang.c (enum java_primitive_types): New type.
3081         (java_language_arch_info): New function.
3082         (java_language): Use it instead of c_language_arch_info.
3083
3084 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3085
3086         * value.h (value_bitstring_subscript): New prototype.
3087         * valarith.h (value_bitstring_subscript): New function.
3088         (value_subscript): No longer handle TYPE_CODE_BITSTRING.
3089         * eval.c (evaluate_subexp_standard): Call value_bitstring_subscript
3090         instead of value_subscript to handle TYPE_CODE_BITSTRING.
3091
3092 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3093
3094         * expression.h (struct expression): New member GDBARCH.
3095         * parse.c (parse_exp_in_context): Initialize it.
3096         * parser-def.h (parse_gdbarch, parse_language): New macros.
3097
3098         * ada-exp.y (parse_type): New macro.
3099         Replace builtin_type_ macros by using parse_type.
3100         Replace current_language by parse_language.
3101         * ada-lex.l (processInt): Replace current_gdbarch by parse_gdbarch.
3102         Replace builtin_type_ macros.
3103
3104         * c-exp.y (parse_type): New macro.
3105         Replace builtin_type_ macros by using parse_type.
3106         (parse_number): Replace current_gdbarch by parse_gdbarch.
3107         (yylex): Replace current_language by parse_language.
3108
3109         * f-exp.y (parse_type, parse_f_type): New macros.
3110         Replace builtin_type_ macros by using parse_{f_,}type.
3111         (parse_number): Replace current_gdbarch by parse_gdbarch.
3112         (yylex): Replace current_language by parse_language.
3113
3114         * jv-exp.y (parse_type): New macro.
3115         (parse_number): Replace builtin_type_ macros by using parse_type.
3116
3117         * m2-exp.y (parse_type, parse_m2_type): New macros.
3118         Replace builtin_type_ macros by using parse_{m2_,}type.
3119
3120         * objc-exp.y (parse_type): New macro.
3121         Replace builtin_type_ macros by using parse_type.
3122         (parse_number): Replace current_gdbarch by parse_gdbarch.
3123         (yylex): Replace current_language by parse_language.
3124
3125         * p-exp.y (parse_type): New macro.
3126         Replace builtin_type_ macros by using parse_type.
3127         (parse_number): Replace current_gdbarch by parse_gdbarch.
3128         (yylex): Replace current_language by parse_language.
3129
3130 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3131
3132         * parser-defs.h (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE
3133         and DATA_SYMBOL_TYPE arguments.
3134         * parse.c (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE and
3135         DATA_SYMBOL_TYPE arguments.  Replace use of builtin_type_CORE_ADDR.
3136         (write_dollar_variable): Update call.
3137
3138         * ada-exp.y (write_var_or_type): Update call.
3139         * c-exp.y: Likewise.
3140         * f-exp.y: Likewise.
3141         * jv-exp.y: Likewise.
3142         * m2-exp.y: Likewise.
3143         * objc-exp.y: Likewise.
3144         * p-exp.y: Likewise.
3145
3146 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
3147
3148         * ada-lang.c (ada_parent_type): Add handling of the case where
3149         the _parent field is a pointer and/or has a parallel XVS type.
3150         (ada_evaluate_subexp) [OP_VAR_VALUE]: When doing an
3151         EVAL_AVOID_SIDE_EFFECTS evaluation of a tagged type, return
3152         the type of the tag instead of doing forcing an EVAL_NORMAL
3153         expression evaluation.
3154
3155 2008-09-10  Paul N. Hilfinger  <hilfinger@adacore.com> 
3156             Joel Brobecker  <brobecker@adacore.com>
3157
3158         * ada-lang.c (is_digits_suffix): New function.
3159         (is_dot_digits_suffix): Remove.
3160         (ada_lookup_symbol_list): Remove digits suffix from minimal symbols
3161         before looking up in symbol table, and do not use wild matches on them.
3162         (wild_match): Reimplement for speed and to allow matching of operator
3163         symbols.
3164         (is_valid_name_for_wild_match): Return zero for names that do not
3165         follow the GNAT encoding.
3166
3167         (is_name_suffix): Fix typo in comment.
3168         (to_record_with_fixed_variant_part): Ditto.
3169
3170 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
3171
3172         * Makefile.in (gnu-nat.o): New rule.
3173
3174 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
3175
3176         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Use
3177         archecture-neutral builtin_type_int32 instead of builtin_type_int.
3178
3179 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
3180
3181         * ada-lang.c (ada_evaluate_subexp) [BINOP_ADD, BINOP_SUB]:
3182         Add special handling for pointer types.
3183
3184 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
3185
3186         * inf-ttrace.c (inf_ttrace_follow_fork): Declare locals at the
3187         right scope level.
3188         (inf_ttrace_resume, inf_ttrace_wait): Typos.
3189
3190 2008-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
3191
3192         * ada-lang.c (ada_array_length): Use builtin_type_int32 instead
3193         of builtin_type_int.
3194         (ada_evaluate_subexp) [UNOP_IN_RANGE]: Use operand range type
3195         instead of builtin_type_int.
3196
3197 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3198
3199         * infrun.c (normal_stop): Run hook-stop last.
3200
3201 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3202
3203         * gnu-nat.c (gnu_pid_to_exec_file): Delete.
3204         (init_gnu_ops): Don't register it.
3205
3206 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3207
3208         * gnu-nat.c (gnu_attach): Push target before fetching the list of
3209         threads.
3210
3211 2008-09-08  Daniel Jacobowitz  <dan@codesourcery.com>
3212
3213         * valops.c (value_cast_structs): Return NULL for failure.
3214         (value_cast): Handle NULL from value_cast_structs.
3215         (value_fetch_lazy): Call check_typedef.  Remove unused variable.
3216
3217 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3218
3219         * inferior.h (context_switch_to): Delete.
3220         * infrun.c (context_switch): Don't save and load infrun state.
3221         (context_switch_to): Delete.
3222
3223         * infcmd.c (proceed_thread_callback): Replace context_switch_to
3224         calls by switch_to_thread calls.
3225
3226         * gdbthread.h (save_infrun_state, load_infrun_state): Delete.
3227         * thread.c (main_thread_state, main_thread_executing): Delete.
3228         (inferior_thread): Delete references to them.
3229         (add_thread_silent): Fix case where we're adding a thread with the
3230         same ptid as an exited thread.  Remove references to
3231         context-switching.
3232         (load_infrun_state, save_infrun_state): Delete.
3233         (thread_alive, is_thread_state, any_running, is_executing)
3234         (set_executing): Remove the special handling for targets that
3235         don't register any thread.
3236         (restore_current_thread, thread_apply_all_command)
3237         (do_captured_thread_select): Unconditionally call
3238         switch_to_thread.
3239
3240         * mi/mi-main.c (mi_cmd_execute): Check for exited threads.
3241         Call switch_to_thread instead of context_switch_to.
3242
3243 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3244
3245         Remove global continuations in favour of a per-thread
3246         continuations.
3247
3248         * gdbthread.h (struct thread_info): Add comments around
3249         continuations and intermediate_continuations.
3250         (save_infrun_state, load_infrun_state): Delete continuations and
3251         intermediate_continuations arguments.
3252         * infrun.c (context_switch): Don't context-switch the continuations.
3253         * thread.c (clear_thread_inferior_resources): Discard all
3254         continuations of the thread we're clearing.
3255         (save_infrun_state, load_infrun_state): Delete continuations and
3256         intermediate_continuations arguments, and the code referencing
3257         them.
3258         * utils.c: Include "gdbthread.h".
3259         (cmd_continuation, intermediate_continuation): Delete.
3260         (add_continuation): Add thread_info* argument.  Install the
3261         continuation on it.
3262         (restore_thread_cleanup): New.
3263         (do_all_continuations_ptid, do_all_continuations_thread_callback):
3264         New.
3265         (do_all_continuations): Reimplement.
3266         (discard_all_continuations_thread_callback,
3267         discard_all_continuations_thread): New.
3268         (discard_all_continuations): Reimplement.
3269         (add_intermediate_continuation): Add thread_info* argument.
3270         Install the continuation on it.
3271         (do_all_intermediate_continuations_thread_callback)
3272         (do_all_intermediate_continuations_thread): New.
3273         (do_all_intermediate_continuations): Reimplement.
3274         (discard_all_intermediate_continuations_thread_callback): New.
3275         (discard_all_intermediate_continuations_thread): New.
3276         (discard_all_intermediate_continuations): Reimplement.
3277
3278         * breakpoint.c (until_break_command): Install the continuation on
3279         the current thread.
3280
3281         * defs.h (cmd_continuation, intermediate_continuation): Delete.
3282         (struct thread_info): Forward declare.
3283         (add_continuation, add_intermediate_continuation): Add
3284         thread_info* argument.
3285         (do_all_continuations_thread, discard_all_continuations_thread)
3286         (do_all_intermediate_continuations_thread)
3287         (discard_all_intermediate_continuations_thread): Declare.
3288         * inf-loop.c (inferior_event_handler): In non-stop only run
3289         continuations on the thread that stopped.  In all-stop, run
3290         continuations on all threads.
3291         * infcmd.c (step_once, finish_command): Adjust.
3292
3293 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3294
3295         Remove the global stop_step in favour of a per-thread
3296         stop_step.
3297
3298         * inferior.h (stop_step): Delete.
3299
3300         * gdbthread.h (struct thread_info): Add comments to stop_step.
3301         (save_infrun_state, load_infrun_state): Remove stop_step argument.
3302         * thread.c (load_infrun_state, save_infrun_state): Remove
3303         stop_step argument, and references to it.
3304
3305         * infrun.c (clear_proceed_status): Clear stop_step.
3306         (fetch_inferior_event): Adjust.
3307         (context_switch): Don't context-switch stop_step.
3308         (handle_inferior_event): Adjust.
3309         (normal_stop): Adjust.
3310         (save_inferior_status, restore_inferior_status): Adjust.
3311
3312         * infcmd.c (stop_step): Delete.
3313         (step_1, step_1_continuation, step_once, until_next_command):
3314         Adjust.
3315
3316 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3317
3318         Remove the global step_multi in favour of a per-thread
3319         step_multi.
3320
3321         * inferior.h (step_multi): Delete.
3322         * gdbthread.h (struct thread_info): Add comments around
3323         step_multi.
3324         (save_infrun_state, load_infrun_state): Remove step_multi
3325         parameter.
3326         * thread.c (load_infrun_state, save_infrun_state): Remove
3327         step_multi argument, and references to it.
3328         * infcmd.c (step_multi): Delete.
3329         (step_1): Adjust.
3330         (step_1_continuation, until_next_command): Adjust.
3331         * infrun.c (fetch_inferior_event): Adjust.
3332         (context_switch): Don't context-switch step_multi.
3333         (print_stop_reason, normal_stop): Adjust.
3334
3335 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3336
3337         Remove the global stop_signal in favour of a per-thread
3338         stop_signal.
3339
3340         * inferior.h (stop_signal): Delete.
3341         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3342         stop_signal argument.
3343         * thread.c (load_infrun_state, save_infrun_state): Remove
3344         stop_signal argument.  Don't reference it.
3345
3346         * infcmd.c (stop_signal): Delete.
3347         (program_info): Adjust.
3348         * infrun.c (resume): Clear stop_signal.
3349         (proceed): Adjust.  Pass the last stop_signal to the thread we're
3350         resuming.
3351         (context_switch): Don't context-switch stop_signal.
3352         (handle_inferior_event, keep_going): Adjust.
3353         (save_inferior_status, restore_inferior_status): Adjust.
3354
3355         * fbsd-nat.c: Include "gdbthread.h".
3356         (find_signalled_thread, find_stop_signal): New.
3357         (fbsd_make_corefile_notes): Use it.
3358         * fork-child.c (startup_inferior): Adjust.
3359
3360         * linux-nat.c (get_pending_status): Adjust.
3361         (linux_nat_do_thread_registers): Adjust.
3362         (find_signalled_thread, find_stop_signal): New.
3363         (linux_nat_do_thread_registers): Add stop_signal parameter.
3364         (struct linux_nat_corefile_thread_data): Add stop_signal member.
3365         (linux_nat_corefile_thread_callback): Pass stop_signal.
3366         (linux_nat_do_registers): Delete.
3367         (linux_nat_make_corefile_notes): Use find_stop_signal.  Assume
3368         there's always a thread.
3369
3370         * procfs.c (find_signalled_thread, find_stop_signal): New.
3371         (find_stop_signal): New.
3372         (procfs_do_thread_registers): Add stop_signal parameter.
3373         (struct procfs_corefile_thread_data): Add stop_signal member.
3374         (procfs_corefile_thread_callback): Pass args->stop_signal.
3375         (procfs_make_note_section): Find the last stop_signal.
3376
3377         * solib-irix.c: Include gdbthread.h.
3378         (irix_solib_create_inferior_hook): Adjust.
3379         * solib-osf.c: Include gdbthread.h.
3380         (osf_solib_create_inferior_hook): Adjust.
3381         * solib-sunos.c: Include gdbthread.h.
3382         (sunos_solib_create_inferior_hook): Adjust.
3383         * solib-svr4.c: Include gdbthread.h.
3384         (svr4_solib_create_inferior_hook): Adjust.
3385
3386         * win32-nat.c (do_initial_win32_stuff): Adjust.
3387
3388 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3389
3390         * gdbthread.h (struct thread_info): Add comments around
3391         proceed_to_finish.
3392         (save_infrun_state, load_infrun_state): Remove proceed_to_finish
3393         argument.
3394         * thread.c (load_infrun_state, save_infrun_state): Delete
3395         proceed_to_finish argument and references to it.
3396
3397         * infcall.c (call_function_by_hand): Adjust.
3398         * infcmd.c (finish_command): Adjust.
3399         * infrun.c (proceed_to_finish): Delete.
3400         (clear_proceed_status): Adjust.
3401         (context_switch): Don't context-switch proceed_to_finish.
3402         (normal_stop, save_inferior_status, restore_inferior_status):
3403         Adjust.
3404
3405 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3406
3407         * inferior.h (stop_bpstat): Delete.
3408
3409         * breakpoint.h (bpstat_do_actions): Remove bpstat* argument.
3410         
3411         * breakpoint.c (bpstat_do_actions): Rename to ...
3412         (bpstat_do_actions_1): ... this.  Make static.  Change return type
3413         to int.  Return true if a breakpoint proceeded.
3414         (bpstat_do_actions): New, as wrapper around bpstat_do_actions_1.
3415         (delete_breakpoint): Don't reference the global stop_bpstat; it's
3416         gone.
3417
3418         * gdbthread.h (struct thread_info): Add stop_bpstat.
3419         (save_infrun_state, load_infrun_state): Remove stop_bpstat
3420         argument.
3421         * thread.c (load_infrun_state, save_infrun_state): Remove
3422         stop_bpstat argument, and the code referencing it.
3423
3424         * infcall.c: Include "gdbthread.h".
3425         (call_function_by_hand): Adjust.
3426         * exceptions.c: Include "gdbthread.h".
3427         (throw_exception): Adjust.
3428         * infcmd.c (stop_bpstat): Delete.
3429         (continue_command): In all-stop, set the ignore count on the
3430         thread that reported the stop.  In non-stop, set it on the current
3431         thread.
3432         (finish_command_continuation): Adjust.
3433         (program_info): Adjust.
3434         * infrun.c (clear_proceed_status): Adjust.
3435         (context_switch): Don't context-switch stop_bpstat.
3436         (handle_inferior_event): Adjust.
3437         (normal_stop): Adjust.
3438         (save_inferior_status, restore_inferior_status): Adjust.
3439
3440         * inf-loop.c (inferior_event_handler): Remove parameter to
3441         bpstat_do_actions call.
3442         * top.c (command_loop): Remove parameter to bpstat_do_actions
3443         call.  Call it unconditionally.
3444         * event-top.c (command_handler): Ditto.
3445         * python/python.c (execute_gdb_command): Ditto.
3446
3447 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3448
3449         * inferior.h (step_over_calls): Delete.
3450
3451         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3452         step_over_calls argument.
3453         * thread.c (save_infrun_state, load_infrun_state): Remove
3454         step_over_calls argument.  Adjust.
3455
3456         * infcmd.c (step_over_calls): Delete.
3457         (step_1): Adjust.
3458         * infrun.c (clear_proceed_status): Adjust.
3459         (context_switch): Don't context-switch step_over_calls.
3460         (handle_inferior_event, save_inferior_status)
3461         (restore_inferior_status): Adjust.
3462
3463 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3464
3465         Remove context switching in favour of accessing thread_info fields
3466         directly.
3467
3468         * infrun.c (stepping_over_breakpoint, step_resume_breakpoint):
3469         Delete.
3470         (struct thread_stepping_state): Delete.
3471         (gtss, tss): Delete.
3472         (follow_inferior_reset_breakpoints, follow_exec)
3473         (resume, clear_proceed_status): Adjust.
3474         (prev_pc): Delete.
3475         (proceed, start_remote, init_wait_for_inferior): Adjust.
3476         (struct execution_control_state): Add event_thread member.
3477         (delete_step_resume_breakpoint_callback)
3478         (delete_step_thread_step_resume_breakpoint)
3479         (delete_step_thread_step_resume_breakpoint_cleanup)
3480         (delete_step_thread_step_resume_breakpoint): New.
3481         (wait_for_inferior, init_execution_control_state): Use
3482         delete_step_thread_step_resume_breakpoint_cleanup.
3483         (wait_for_inferior): Set the event_thread.
3484         (fetch_inferior_event): Ditto.  Delete the step-resume breakpoint
3485         with delete_step_thread_step_resume_breakpoint.
3486         (init_thread_stepping_state): Change parameter type to
3487         thread_info.  Adjust.
3488         (context_switch): Don't context switch prev_pc,
3489         stepping_over_breakpoint, step_resume_breakpoint,
3490         step_range_start, step_range_end, step_frame_id,
3491         tss->stepping_over_breakpoint,
3492         tss->stepping_through_solib_after_catch,
3493         tss->stepping_through_solib_catchpoints, tss->current_line, or
3494         tss->current_symtab.
3495         (adjust_pc_after_break, handle_inferior_event)
3496         (currently_stepping, step_into_function)
3497         (insert_step_resume_breakpoint_at_sal)
3498         (insert_longjmp_resume_breakpoint, keep_going): Adjust.
3499         (clear_stepping_state): New.
3500         (normal_stop): Adjust.
3501         (save_inferior_status, restore_inferior_status): Adjust.
3502
3503         * gdbthread.h (struct thread_info): Comments describing the
3504         members moved here.  Add step_after_step_resume_breakpoint.
3505         (delete_step_resume_breakpoint): Add thread_info argument.
3506         (save_infrun_state, load_infrun_state): Remove prev_pc,
3507         trap_expected, step_resume_breakpoint, step_range_start,
3508         step_range_end, step_frame_id, another_trap,
3509         stepping_through_solib_after_catch,
3510         stepping_through_solib_catchpoints, current_line and
3511         current_symtab function arguments.
3512         (inferior_thread): Declare.
3513
3514         * thread.c (inferior_thread): New.
3515         (delete_step_resume_breakpoint): Add a thread_info parameter and
3516         rewrite.
3517         (load_infrun_state, save_infrun_state): Remove prev_pc,
3518         trap_expected, step_resume_breakpoint, step_range_start,
3519         step_range_end, step_frame_id, stepping_over_breakpoint,
3520         stepping_through_solib_after_catch,
3521         stepping_through_solib_catchpoints, current_line and
3522         current_symtab args.  Remove code referencing them.
3523
3524         * infcmd.c (step_range_start, step_range_end, step_frame_id):
3525         Delete.
3526         (step_1, step_once, until_next_command): Adjust.
3527
3528         * inferior.h (step_range_start, step_range_end, step_frame_id):
3529         Delete.
3530
3531         * linux-nat.c (linux_child_follow_fork): If following the child,
3532         move the step state to it.  Adjust.
3533         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
3534         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
3535
3536 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3537
3538         * bsd-uthread.c (bsd_uthread_find_new_threads): Claim the main
3539         thread.
3540
3541 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3542
3543         * corelow.c (add_to_thread_list): If this is the first time we
3544         hear about thread info, update inferior_ptid.
3545         (core_open): Clear the thread list and set inferior_ptid before
3546         acknowledging a new inferior.  Find threads before fetching
3547         register info.  Give an upper target layer a chance to find and
3548         claim new threads.  Print core generation and stop signal info
3549         after finding new threads.
3550         (get_core_register_section): Look at the lwp member of
3551         inferior_ptid for detecting if we have threads info, instead of
3552         the pid member.
3553         (core_pid_to_str): New.
3554         (init_core_ops): Register core_pid_to_str.
3555
3556 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3557
3558         * spu-linux-nat.c (spu_child_post_startup_inferior)
3559         (spu_child_post_attach): Don't add the main thread here.
3560
3561 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3562
3563         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
3564
3565         * gnu-nat.c (inf_validate_procs): If this is the first time we're
3566         seeing a thread id, extend the main thread's ptid.  If we still
3567         have pending execs, don't be verbose about new threads.
3568         (gnu_wait, gnu_resume, gnu_attach, gnu_thread_alive)
3569         (gnu_pid_to_str, cur_thread, sig_thread_cmd): Adjust.
3570         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers):
3571         Adjust.
3572
3573 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3574
3575         * procfs.c (to_attach): Create a procinfo for the current lwp.
3576         Add it to gdb's thread list.
3577         (procfs_fetch_registers, procfs_store_registers): Assume there's
3578         always an lwp.
3579         (procfs_wait): Don't add the main thread here.
3580         (procfs_init_inferior): Create a procinfo for the main lwp here.
3581         Change main thread's ptid with thread_change_ptid.
3582         (procfs_notice_thread): Check for exited threads.
3583         (procfs_corefile_thread_callback): Remove check for the main
3584         process.
3585         (procfs_make_note_section): Assume there is always a thread.
3586
3587         * sol-thread.c (sol_thread_attach): Clear sol_thread_active before
3588         attaching.  Change the main thread ptid with thread_change_ptid.
3589         (sol_thread_detach): Clear sol_thread_active.
3590         (sol_thread_wait): Check for exited threads.
3591         (sol_thread_create_inferior): Clear sol_thread_active before
3592         creating a new inferior.  Change the main thread ptid with
3593         thread_change_ptid.
3594         (sol_thread_mourn_inferior): Clear sol_thread_active.
3595         (sol_find_new_threads_callback): Check for exited threads.
3596
3597 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3598
3599         * inf-ttrace.c (inf_ttrace_wait): On TTEVT_LWP_CREATE and
3600         LWP_TERMINATE, resume the caller thread.  On TTEVT_LWP_CREATE,
3601         TTEVT_LWP_EXIT and TTEVT_LWP_TERMINATE, don't stop the whole
3602         process, and return TARGET_WAITKIND_IGNORE.
3603
3604 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3605
3606         * inf-ttrace.c: Include <signal.h>
3607         (inf_ttrace_delete_dead_threads_callback): New.
3608         (inf_ttrace_resume_lwp): New.
3609         (inf_ttrace_resume_callback, inf_ttrace_resume): Rewrite.  Don't
3610         delete dying threads until they are really dead.
3611         (inf_ttrace_wait): After stopping the whole process, delete any
3612         dying thread that is really dead by now.
3613         (inf_ttrace_thread_alive): Return 1.
3614         (inf_ttrace_extra_thread_info): New.
3615         (inf_ttrace_target): Register inf_ttrace_extra_thread_info.
3616
3617 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3618
3619         * inf-ttrace.c (inf_ttrace_follow_fork): Register the main thread
3620         of the child fork.
3621         (inf_ttrace_attach): Add the main thread.
3622         (inf_ttrace_resume_callback): Check for exited threads.  Adjust
3623         for always a thread.
3624         (inf_ttrace_wait): Decorate the main thread's ptid with lwp info
3625         using thread_change_ptid, and set its private data.  Don't add the
3626         main thread here.
3627         (inf_ttrace_pid_to_str): Adjust.
3628
3629 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3630
3631         * bsd-uthread.c (bsd_uthread_wait): Decorate the main thread with
3632         thread_change_ptid.  Check for exited threads.
3633         (bsd_uthread_find_new_threads): Check for exited threads.
3634
3635 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3636
3637         * inf-ptrace.c: Include "gdbthread.h".
3638         (inf_ptrace_attach): Add the main thread here.
3639         * linux-nat.c (linux_nat_attach): Don't add the main thread here.
3640         Decorate the main thread id with the lwp id.
3641
3642 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3643
3644         * linux-nat.c (linux_nat_wait): Update inferior_ptid's ptid with
3645         thread_change_ptid.  Don't add or mark the main thread as running
3646         and executing here.
3647         * fork-child.c (fork_inferior): Add the main thread here.
3648
3649 2008-09-08  Jerome Guitton  <guitton@adacore.com>
3650
3651         * rs6000-tdep.c (rs6000_fetch_instruction)
3652         (rs6000_skip_stack_check): New functions.
3653         (skip_prologue): Skip stack check sequence.
3654         
3655 2008-09-08  David Daney  <ddaney@avtrex.com>
3656
3657         * dummy-frame.h (frame.h): Include it.
3658         (struct frame_id): Remove declaration.
3659
3660 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3661
3662         * spu-tdep.c (spu_push_dummy_code): New function.
3663         (spu_gdbarch_init): Install it.
3664
3665 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3666
3667         * gdbarch.sh (gdbarch_dump): Use core_addr_to_string_nz
3668         instead of paddr_nz.
3669         * gdbarch.c: Regenerate.
3670
3671         * target.c (target_xfer_partial, debug_print_register): Use
3672         core_addr_to_string_nz instead of paddr_nz.
3673
3674 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3675
3676         * rs6000-tdep.c (rs6000_gdbarch_init): Setup displaced stepping
3677         *before* calling gdbarch_init_osabi.
3678         (rs6000_aix_init_osabi): Disable displaced stepping.
3679
3680 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3681
3682         * target.c (update_current_target): Do not inherit to_open
3683         or to_close.
3684         (pop_target): Call target_close on target_stack instead
3685         of current_target.
3686         (pop_all_targets_above): Likewise.
3687
3688 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3689
3690         * gnu-v3-abi.c (gnuv3_decode_method_ptr): New function.
3691         (gnuv3_print_method_ptr): Use it.
3692         (gnuv3_method_ptr_to_value): Likewise.
3693
3694 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3695
3696         * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to
3697         register_area callback function.
3698         * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
3699         Use it instead of current_gdbarch.
3700         * nto-procfs.c (procfs_store_registers): Update call.
3701
3702 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3703
3704         * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
3705         regcache architecture instead of current_gdbarch.
3706
3707 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3708
3709         * mep-tdep.c (struct mep_prologue): Add gdbarch member.
3710         (check_for_saved): Use it instead of current_gdbarch.
3711         (is_arg_spill): Add gdbarch paramter.  Use it instead
3712         of current_gdbarch.
3713         (mep_analyze_prologue): Add gdbarch parameter.  Pass it
3714         to is_arg_spill and check_for_saved.
3715         (mep_skip_prologue, mep_analyze_frame_prologue): Update calls.
3716
3717 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3718
3719         * hppa-tdep.c (internalize_unwinds): Use objfile architecture
3720         instead of current_gdbarch.
3721
3722 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3723
3724         * m68k-tdep.h (m68kbsd_fpreg_offset): Add gdbarch parameter.
3725         * m68kbsd-tdep.c (m68kbsd_fpreg_offset): Add gdbarch paramter.
3726         Use it instead of current_gdbarch.
3727         (m68kbsd_supply_fpregset): Update call.
3728         * m68kbsd-nat.c (m68kbsd_supply_fpregset): Likewise.
3729         (m68kbsd_collect_fpregset): Likewise.
3730
3731 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3732
3733         * cris-tdep.c (cris_version, cris_mode): Remove.
3734         (crisv32_single_step_through_delay): Use tdep->cris_mode.
3735         (cris_breakpoint_from_pc): Likewise.
3736         (cris_frame_unwind_cache): Use tdep->cris_version.
3737         (crisv32_scan_prologue): Likewise.
3738         (cris_spec_reg_applicable): Add gdbarch argument.
3739         Use tdep->cris_version.
3740         (cris_register_size, cris_special_register_name): Update calls.
3741         (cris_special_register_name): Add gdbarch argument.
3742         (cris_register_name, crisv32_register_name): Update calls.
3743
3744 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3745
3746         * m68hc11-tdep.c (gdb_print_insn_m68hc11): Use info->arch
3747         instead of current_gdbarch.
3748
3749         * sh64-tdep.c (gdb_print_insn_sh64): Remove.
3750         (sh64_gdbarch_init): Install print_insn_sh64 directly.
3751         * sh-tdep.c (gdb_print_insn_sh): Remove.
3752         (sh_gdbarch_init): Install print_insn_sh directly.
3753
3754         * mips-tdep.c (gdb_print_insn_mips): Do not check mips_abi
3755         from current_gdbarch.
3756         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): New functions.
3757         (mips_gdbarch_init): Install them instead of gdb_print_insn_mips
3758         depending on mips_abi.
3759
3760 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3761
3762         * gdbarch.sh (addr_bits_remove): Change type to 'm'.
3763         (smash_text_address): Likewise.
3764         * gdbarch.c, gdbarch.h: Regenerate.
3765
3766         * arch-utils.c (core_addr_identity): Add gdbarch parameter.
3767         * arch-utils.h (core_addr_identity): Likewise.
3768         * arm-tdep.c (arm_addr_bits_remove): Likewise.
3769         (arm_smash_text_address): Likewise.
3770         * hppa-tdep.c (hppa_smash_text_address): Likewise.
3771         * m88k-tdep.c (m88k_addr_bits_remove): Likewise.
3772         * s390-tdep.c (s390_addr_bits_remove): Likewise.
3773
3774         * mips-tdep.c (mips_addr_bits_remove): Add gdbarch parameter.
3775         Use it instead of current_gdbarch.
3776
3777         * arm-tdep.c (arm_prologue_prev_register, arm_unwind_pc,
3778         arm_dwarf2_prev_register): Update calls.
3779         * m88k-tdep.c (m88k_unwind_pc): Update call.
3780
3781 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3782
3783         * dwarf2expr.h (dwarf2_read_address): Add gdbarch argument.
3784         * dwarf2expr.c (dwarf2_read_address): Add gdbarch argument.
3785         Call gdbarch_integer_to_address directly instead of converting
3786         to value and back.  Update comment.
3787         (execute_stack_op): Update call site.
3788         * dwarf2loc.c (find_location_expression): Likewise.
3789         (locexpr_describe_location): Update
3790
3791         * dwarf2expr.h (struct dwarf_expr_context): Add gdbarch member.
3792         * dwarf2-frame.c (execute_stack_op): Initialize ctx->gdbarch.
3793         * dwarf2loc. (dwarf2_evaluate_loc_desc): Likewise.
3794         (dwarf2_loc_desc_needs_frame): Likewise.
3795
3796 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3797
3798         * breakpoint.h (struct bp_location): Change type of section
3799         member to "struct obj_section *".
3800         * tracepoint.h (struct tracepoint): Likewise.
3801         * symtab.h (struct general_symbol_info): Replace bfd_section
3802         member with obj_section.
3803         (struct symtab_and_line): Change type of section member to
3804         "struct obj_section *".
3805         (SYMBOL_BFD_SECTION): Remove macro, replace by ...
3806         (SYMBOL_OBJ_SECTION): ... this.
3807
3808         * minsym.c (prim_record_minimal_symbol_and_info): Record symbol
3809         section as obj_section instead of bfd_section.
3810
3811         * ada-lang.c (ada_decode_symbol): Use gsymbol->obj_section
3812         directly instead of looking of obj_section from bfd_section.
3813
3814         * objfiles.h (find_pc_sect_section): Remove.
3815         * objfiles.c (find_pc_sect_section): Remove.
3816         (find_pc_section): Inline find_pc_sect_section code.
3817
3818         * symfile.h (find_pc_overlay): Return struct obj_section *.
3819         (find_pc_mapped_section): Likewise.
3820         (section_is_overlay, section_is_mapped): Change type of section
3821         argument to struct obj_section *.
3822         (pc_in_mapped_range, pc_in_unmapped_range): Likewise.
3823         (overlay_mapped_address, overlay_unmapped_address): Likewise.
3824         (symbol_overlayed_address): Likewise.
3825         * symtab.h (symbol_overlayed_address): Likewise.
3826         * symfile.c (overlay_is_mapped): Remove.
3827         (section_is_mapped): Inline overlay_is_mapped code.  Update.
3828         (overlay_invalidate_all): Update.
3829         (section_is_overlay): Change section argument to type
3830         "struct obj_section *".  Use bfd_ methods.
3831         (pc_in_unmapped_range): Likewise.  Handle relocated sections.
3832         (pc_in_mapped_range): Likewise.  Handle relocated sections.
3833         (sections_overlap): Likewise.
3834         (overlay_unmapped_address): Likewise.
3835         (overlay_mapped_address): Likewise.
3836         (symbol_overlayed_address): Likewise.
3837         (find_pc_overlay): Return struct obj_section *.
3838         (find_pc_mapped_section): Likewise.
3839         (list_overlays_command): Update.
3840         (map_overlay_command, unmap_overlay_command): Update.
3841         (simple_overlay_update): Update.
3842
3843         * block.h (blockvector_for_pc_sect): Change section argument
3844         to type "struct obj_section *".
3845         (block_for_pc_sect): Likewise.
3846         * block.c (blockvector_for_pc_sect): Change section argument
3847         to type "struct obj_section *".
3848         (block_for_pc_sect): Likewise.
3849         * symtab.h (find_pc_sect_function, find_pc_sect_psymtab,
3850         find_pc_sect_symtab, find_pc_sect_psymbol, find_pc_sect_line,
3851         lookup_minimal_symbol_by_pc_section, find_function_start_pc): Likewise.
3852         (matching_bfd_sections): Rename to ...
3853         (matching_obj_sections): ... this.  Update argument types.
3854         * blockframe.c (find_pc_sect_function): Likewise.
3855         * breakpoint.c (describe_other_breakpoints): Likewise.
3856         (breakpoint_has_pc, check_duplicates_for): Likewise.
3857         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3858         (lookup_minimal_symbol_by_pc_section): Likewise.
3859         * symtab.c (find_pc_sect_psymtab_closer): Likewise.
3860         (find_pc_sect_psymtab, find_pc_sect_psymbol, find_pc_sect_symtab,
3861         find_pc_sect_line, find_function_start_pc): Likewise.
3862         (matching_bfd_sections): Rename to ...
3863         (matching_obj_sections): ... this.  Update argument types.
3864
3865         * blockframe.c (find_pc_partial_function): Update to section
3866         type changes.  No longer call find_pc_sect_section.
3867         (cache_pc_function_section): Change to type "struct obj_section *".
3868         * breakpoint.c (resolve_sal_pc): Update to section type changes.
3869         * exec.c (xfer_memory): Likewise.
3870         * findvar.c (read_var_value): Likewise.
3871         * infcmd.c (jump_command): Likewise.
3872         * linespec.c (minsym_found): Likewise.
3873         * maint.c (maintenance_translate_address): Likewise.
3874         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3875         (lookup_solib_trampoline_symbol_by_pc): Likewise.
3876         * parse.c (write_exp_msymbol): Likewise.
3877         * printcmd.c (build_address_symbolic): Likewise.
3878         (address_info, sym_info): Likewise.
3879         * symmisc.c (dump_msymbols, print_symbol): Likewise.
3880         * symtab.c (fixup_section): Likewise.
3881         (fixup_symbol_section, fixup_psymbol_section): Likewise.
3882         (find_pc_line, find_function_start_sal): Likewise.
3883         * target.c (memory_xfer_partial): Likewise.
3884         * hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline): Likewise.
3885         * spu-tdep.c (spu_overlay_update): Likewise.
3886
3887 2008-09-04  Doug Evans  <dje@google.com>
3888
3889         * defs.h (plongest,pulongest): Renamed from paddr_u,paddr_d.
3890         Change argument of pulongest from CORE_ADDR to ULONGEST.
3891         All callers updated.
3892         * utils.c (plongest): Renamed from paddr_d.
3893         (pulongest): Renamed from paddr_u, change arg type to ULONGEST.
3894         * remote-mips.c (send_srec): Use paddr_nz instead of paddr_u in
3895         `CORE_ADDR addr' arg of error message.
3896
3897 2008-09-03  Angela Marie Thomas <angela@releasedominatrix.com>
3898
3899         * ser-tcp.c (ser_tcp_send_break): New function.
3900         (_initialize_ser_tcp): Use ser_tcp_send_break.
3901         * ser-tcp.h (ser_tcp_send_break): New prototype.
3902
3903 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3904
3905         * spu-tdep.c (spu_push_dummy_call): Update all stack pointer slots
3906         when allocating stack frame for inferior call.
3907
3908 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3909
3910         * spu-tdep.c (spu_frame_unwind_cache): Do not attempt to unwind
3911         SP or return address if we failed to find a valid frame.
3912
3913 2008-09-03  Aleksandar Ristovski  <aristovski@qnx.com>
3914
3915         * breakpoint.c (breakpoint_init_inferior): Mark as not inserted only
3916         non-permanent breakpoints.
3917         (bpstat_stop_status): Change enable_state to bp_disabled only for
3918         non-permanent breakpoints.
3919         (bp_loc_is_permanent): New function.
3920         (create_breakpoint): Check if the location points to a permanent
3921         breakpoint and if it does, make breakpoint permanent.
3922         (update_breakpoint_locations): Make sure new locations of permanent
3923         breakpoints are properly initialized.
3924         * i386-tdep.c (i386_skip_permanent_breakpoint): New function.
3925         (i386_gdbarch_init): Set gdbarch_skip_permanent_breakpoint.
3926
3927 2008-09-02  Pedro Alves  <pedro@codesourcery.com>
3928
3929         * breakpoint.c (insert_breakpoints, update_global_location_list):
3930         Check breakpoints_always_inserted_mode instead of
3931         always_inserted_mode directly.
3932
3933 2008-09-02  Andreas Schwab  <schwab@suse.de>
3934
3935         * ia64-tdep.c (ia64_get_dyn_info_list): Use obj_section_addr.
3936
3937 2008-09-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
3938
3939         Stay compatible after the GCC PR fortran/29635 fix.
3940         * dwarf2read.c (process_die <DW_TAG_imported_module>)
3941         (process_die <DW_TAG_imported_module>): Do not assert anything about
3942         these unsupported tags.
3943
3944 2008-08-29  Tom Tromey  <tromey@redhat.com>
3945
3946         * maint.c (_initialize_maint_cmds): Fix typo.
3947
3948 2008-08-29  Tom Tromey  <tromey@redhat.com>
3949
3950         * dwarf2read.c (dwarf2_build_psymtabs_hard): Copy dirname on
3951         obstack.
3952
3953 2008-08-27  Ulrich Weigand  <uweigand@de.ibm.com>
3954
3955         * remote.c: Include "gdb_stat.h".
3956
3957 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3958
3959         * dummy-frame.h (dummy_frame_pop): Add prototype.
3960         * dummy-frame.c: Include "observer.h".
3961         (dummy_frame_push): Do not check for stale frames.
3962         (dummy_frame_pop): New function.
3963         (cleanup_dummy_frames): New function.
3964         (_initialize_dummy_frame): Install it as inferior_created observer.
3965
3966         * frame.h (struct frame_id): Update comments.
3967         (frame_id_inner): Remove prototype.
3968         * frame.c (frame_id_inner): Make static.  Add comments.
3969         (frame_find_by_id): Update frame_id_inner safety net check to avoid
3970         false positives for targets using non-contiguous stack ranges.
3971         (get_prev_frame_1): Update frame_id_inner safety net check.
3972         (frame_pop): Call dummy_frame_pop when popping a dummy frame.
3973
3974         * stack.c (return_command): Directly pop the selected frame.
3975         * infrun.c (handle_inferior_event): Remove dead code.
3976         * i386-tdep.c (i386_push_dummy_call): Update comment.
3977
3978 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3979
3980         * breakpoint.c (remove_breakpoint): Do not fail if unable to remove
3981         breakpoint from shared library.
3982
3983 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3984
3985         * solib-svr4.c (read_program_header): New function.
3986         (scan_dyntag_auxv): New function.
3987         (elf_locate_base): Use it if scan_dyntag fails.
3988         (find_program_interpreter): New function.
3989         (enable_break): Use it instead of .interp section.
3990
3991 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3992
3993         * remote.h (remote_filename_p, remote_bfd_open): Add prototypes.
3994         * remote.c (remote_bfd_iovec_open, remote_bfd_iovec_close,
3995         remote_bfd_iovec_pread, remote_bfd_iovec_stat, remote_filename_p,
3996         remote_bfd_open): New functions.
3997         (remote_hostio_send_command): Fail safely if remote connection
3998         is not set up.
3999
4000         * solist.h (solib_open): Remove prototype.
4001         (solib_bfd_open): Add prototype.
4002         * solib.c: Include "remote.h".
4003         (solib_open): Remove, replace by ...
4004         (solib_bfd_open): ... this new function.  Handle remote BFDs.
4005         (solib_map_sections): Replace solib_open by solib_bfd_open.
4006         * solib-frv.c: Include "exceptions.h".
4007         (enable_break2): Replace solib_open by solib_bfd_open.
4008         * solib-svr4.c: Include "exceptions.h".
4009         (enable_break): Replace solib_open by solib_bfd_open.
4010
4011         * symfile.c: Include "remote.h".
4012         (build_id_verify): Handle remote BFDs.
4013         (separate_debug_file_exists): Use BFD to access file.  Handle
4014         remote BFDs.
4015         (symfile_bfd_open): Handle remote BFDs.
4016         (reread_symbols): Handle remote BFDs.
4017
4018         * NEWS: Mention "remote:" argument prefix to "set sysroot".
4019
4020 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
4021
4022         * gdbarch.sh (target_gdbarch): New global variable.
4023         (deprecated_current_gdbarch_select_hack): Set it.
4024         * gdbarch.c, gdbarch.h: Regenerate.
4025
4026         * arch-utils.c (gdbarch_update_p): Use target_gdbarch instead
4027         of current_gdbarch.
4028         * target-descriptions.c (target_find_description): Likewise.
4029         * arm-tdep.c (arm_update_current_architecture): Likewise.
4030         (show_fp_model, arm_show_abi, arm_show_fallback_mode, 
4031         arm_show_force_mode): Likewise.
4032         * mips-tdep.c (show_mask_address, show_mipsfpu_command,
4033         show_mips_abi): Likewise.
4034         * mep-tdep.c (me_module_register_set, current_me_module): Likewise.
4035
4036         * target.c (target_translate_tls_address): Use target_gdbarch
4037         instead of current_gdbarch.
4038         * remote.c (struct packet_reg): Likewise.
4039         (get_remote_arch_state, packet_reg_from_regnum,
4040         packet_reg_from_pnum, remote_check_symbols, remote_wait,
4041         remote_address_masked, remote_insert_breakpoint,
4042         remote_insert_hw_breakpoint, remote_read_description): Likewise.
4043         * remote-m32r-sdi.c (m32r_resume, m32r_wait): Likewise.
4044         * remote-mips.c (mips_open, mips_common_breakpoint): Likewise.
4045         * cris-tdep.c (cris_can_use_hardware_watchpoint): Likewise.
4046
4047         * solib.c (solib_open, solib_map_sections, solib_read_symbols,
4048         solib_add, info_sharedlibrary_command, solib_address, 
4049         solib_create_inferior_hook, in_solib_dynsym_resolve_code,
4050         solib_global_lookup): Likewise.
4051         * solib-frv.c (enable_break2, frv_relocate_main_executable): Likewise.
4052         * solib-irix.c (irix_current_sos, irix_open_symbol_file_object):
4053         Likewise.
4054         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
4055         * solib-svr4.c (exec_entry_point, enable_break, svr4_free_so,
4056         set_solib_svr4_fetch_link_map_offsets, svr4_fetch_link_map_offsets):
4057         Likewise.
4058         * nto-tdep.c (nto_find_and_open_solib, nto_init_solib_absolute_prefix,
4059         nto_truncate_ptr): Likewise.
4060         * mips-linux-tdep.c (mips_linux_in_dynsym_stub): Likewise.
4061
4062 2008-08-26  Luis Machado  <luisgpm@br.ibm.com>
4063
4064         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections) New structure.
4065         (ppc_linux_vmx_regset_sections): New structure.
4066         (ppc_linux_fp_regset_sections): New structure.
4067         (ppc_linux_init_abi): Select core-file regset  based on target
4068         features.
4069
4070 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
4071
4072         * target.c (debug_print_register): Use regcache_raw_collect
4073         instead of regcache_cooked_read.  Only handle raw registers.
4074
4075 2008-08-25  Pedro Alves  <pedro@codesourcery.com>
4076
4077         * cp-name-parser.y: Include config.h before system headers.
4078
4079 2008-08-25  Ulrich Weigand  <uweigand@de.ibm.com>
4080
4081         * m88k-tdep.c: Update for unwinder changes.
4082
4083 2008-08-24  Tom Tromey  <tromey@redhat.com>
4084
4085         * s390-tdep.c (s390_address_class_type_flags): Use
4086         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1.
4087         (s390_address_class_type_flags_to_name): Likewise.
4088         (s390_address_class_name_to_type_flags): Likewise.
4089
4090 2008-08-24  Tom Tromey  <tromey@redhat.com>
4091
4092         * rs6000-tdep.c (rs6000_builtin_type_vec128): Don't use
4093         TYPE_FLAGS.
4094         * features/rs6000/powerpc-vsx32l.c
4095         (initialize_tdesc_powerpc_vsx32l): Update.
4096         * features/rs6000/powerpc-vsx32.c
4097         (initialize_tdesc_powerpc_vsx32): Update.
4098         * features/rs6000/powerpc-vsx64.c
4099         (initialize_tdesc_powerpc_vsx64): Update.
4100         * features/rs6000/powerpc-vsx64l.c
4101         (initialize_tdesc_powerpc_vsx64l): Update.
4102         * target-descriptions.c (maint_print_c_tdesc_cmd): Emit
4103         TYPE_VECTOR, not TYPE_FLAGS.
4104
4105 2008-08-24  Tom Tromey  <tromey@redhat.com>
4106
4107         * xml-tdesc.c (tdesc_end_union): Update.
4108         * stabsread.c (define_symbol): Update.
4109         (read_type): Update.
4110         (read_struct_type): Update.
4111         (read_enum_type): Update.
4112         * spu-tdep.c (spu_builtin_type_vec128): Update.
4113         * sh-tdep.c (sh_push_dummy_call_fpu): Update.
4114         (sh_push_dummy_call_nofpu): Update.
4115         * mdebugread.c (parse_symbol): Update.
4116         (parse_symbol): Update.
4117         (parse_symbol): Update.
4118         (upgrade_type): Update.
4119         * jv-lang.c (java_lookup_class): Update.
4120         * iq2000-tdep.c (iq2000_pointer_to_address): Update.
4121         * i386-tdep.c (i386_mmx_type): Update.
4122         (i386_sse_type): Update.
4123         * gdbtypes.h (enum type_flag_value): New enum.
4124         (enum type_instance_flag_value): New enum.
4125         (TYPE_FLAG_UNSIGNED, TYPE_FLAG_NOSIGN, TYPE_FLAG_STUB,
4126         TYPE_FLAG_TARGET_STUB, TYPE_FLAG_STATIC, TYPE_FLAG_PROTOTYPED,
4127         TYPE_FLAG_INCOMPLETE, TYPE_FLAG_VARARGS, TYPE_FLAG_VECTOR,
4128         TYPE_FLAG_FIXED_INSTANCE, TYPE_FLAG_STUB_SUPPORTED,
4129         TYPE_FLAG_NOTTEXT): Now enum constants.
4130         (TYPE_FLAG_CONST, TYPE_FLAG_VOLATILE, TYPE_FLAG_CODE_SPACE,
4131         TYPE_FLAG_DATA_SPACE, TYPE_FLAG_ADDRESS_CLASS_1,
4132         TYPE_FLAG_ADDRESS_CLASS_2): Remove.
4133         (TYPE_INSTANCE_FLAG_CONST, TYPE_INSTANCE_FLAG_VOLATILE,
4134         TYPE_INSTANCE_FLAG_CODE_SPACE, TYPE_INSTANCE_FLAG_DATA_SPACE,
4135         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1,
4136         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2): New constants.
4137         (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB, TYPE_TARGET_STUB,
4138         TYPE_STATIC, TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_VARARGS,
4139         TYPE_VECTOR, TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED,
4140         TYPE_NOTTEXT): Update.
4141         (TYPE_FLAG_ADDRESS_CLASS_ALL): Remove.
4142         (TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL): New define.
4143         (TYPE_VOLATILE, TYPE_CODE_SPACE, TYPE_DATA_SPACE,
4144         TYPE_ADDRESS_CLASS_1, TYPE_ADDRESS_CLASS_2,
4145         TYPE_ADDRESS_CLASS_ALL): Update.
4146         (struct main_type) <flags>: Remove.
4147         <flag_unsigned, flag_nosign, flag_stub, flag_target_stub,
4148         flag_static, flag_prototyped, flag_incomplete, flag_varargs,
4149         flag_vector, flag_stub_supported, flag_nottext,
4150         flag_fixed_instance>: New fields.
4151         <nfields, vptr_fieldno>: Move earlier.
4152         (TYPE_FLAGS): Remove.
4153         * gdbtypes.c (make_pointer_type): Update.
4154         (address_space_name_to_int): Update.
4155         (address_space_int_to_name): Update.
4156         (make_type_with_address_space): Update.
4157         (make_cv_type): Update.
4158         (create_range_type): Update.
4159         (get_discrete_bounds): Update.
4160         (create_set_type): Update.
4161         (make_vector_type): Update.
4162         (smash_to_method_type): Update.
4163         (check_typedef): Update.
4164         (check_stub_method): Update.
4165         (init_type): Individually assign flag fields.
4166         (recursive_dump_type): Don't print entire TYPE_FLAGS field.  Do
4167         print TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED, and TYPE_NOTTEXT.
4168         (copy_type_recursive): Copy the entire main type.  Don't use
4169         TYPE_FLAGS.
4170         * features/rs6000/powerpc-altivec64l.c
4171         (initialize_tdesc_powerpc_altivec64l): Update.
4172         * features/rs6000/powerpc-altivec64.c
4173         (initialize_tdesc_powerpc_altivec64): Update.
4174         * features/rs6000/powerpc-altivec32l.c
4175         (initialize_tdesc_powerpc_altivec32l): Update.
4176         * features/rs6000/powerpc-altivec32.c
4177         (initialize_tdesc_powerpc_altivec32): Update.
4178         * features/rs6000/powerpc-7400.c (initialize_tdesc_powerpc_7400):
4179         Update.
4180         * features/arm-with-iwmmxt.c (initialize_tdesc_arm_with_iwmmxt):
4181         Update.
4182         * dwarf2read.c (read_structure_type): Update.
4183         (read_enumeration_type): Likewise.
4184         (process_enumeration_scope): Likewise.
4185         (read_tag_pointer_type): Likewise.
4186         (read_subroutine_type): Likewise.
4187         (read_subroutine_type): Likewise.
4188         (read_base_type): Likewise.
4189         * coffread.c (coff_read_enum_type): Update.
4190         * ada-valprint.c (adjust_type_signedness): Update.
4191         * ada-typeprint.c (print_record_field_types): Update.
4192         * ada-lang.c (packed_array_type): Update.
4193         (empty_record): Don't reset TYPE_FLAGS.
4194         (ada_template_to_fixed_record_type_1): Update.
4195         (ada_template_to_fixed_record_type_1): Likewise.
4196         (template_to_static_fixed_type): Likewise.
4197         (to_record_with_fixed_variant_part): Likewise.
4198         (to_fixed_record_type): Likewise.
4199         (to_fixed_array_type): Likewise.
4200         (to_static_fixed_type): Likewise.
4201
4202 2008-08-23  Jim Blandy  <jimb@redhat.com>
4203
4204         PR macros/607:
4205         * symmisc.c (print_symbol_bcache_statistics): Include statistics
4206         for the macro bcache.
4207
4208 2008-08-23  Tom Tromey  <tromey@redhat.com>
4209
4210         * macrotab.h (struct macro_definition) <kind>: Shrink to one bit.
4211         (argc): Now 31 bits.
4212
4213 2008-08-22  Tom Tromey  <tromey@redhat.com>
4214
4215         * NEWS: Move macro entries back under "New commands".
4216
4217 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4218
4219         * breakpoint.c (create_overlay_event_breakpoint): Rename to ...
4220         (create_overlay_event_breakpoint_1): ... this.  Add OBJFILE parameter.
4221         (create_overlay_event_breakpoint): Loop over all objfiles to install
4222         multiple instances of the overlay event breakpoint if present.
4223
4224 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4225
4226         * spu-tdep.c (spu_overlay_new_objfile): Only consider SPU objfiles.
4227         (info_spu_event_command): Command only supported on SPU architecture.
4228         (info_spu_signal_command): Likewise.
4229         (info_spu_mailbox_command): Likewise.
4230         (info_spu_dma_command): Likewise.
4231         (info_spu_proxydma_command): Likewise.
4232
4233 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4234
4235         * infrun.c (adjust_pc_after_break): Do not call get_thread_regcache
4236         if the thread has already exited.
4237
4238 2008-08-22  Pedro Alves  <pedro@codesourcery.com>
4239
4240         * infrun.c (proceed): Move back setting previous_inferior_ptid
4241         from here ...
4242         (wait_for_inferior): ... to here.
4243         (fetch_inferior_event): ... and here.
4244
4245 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4246
4247         * gdbarch.sh: Include "regcache.h" into gdbarch.c.
4248         (deprecated_current_gdbarch_select_hack): Call registers_changed
4249         instead of reinit_frame_cache.
4250         * gdbarch.c: Regenerate.
4251
4252 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4253
4254         * elfread.c (elf_symtab_read): Do not relocate thread-local symbols.
4255
4256 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4257
4258         * xcoffread.c (SYMNAME_ALLOC): Correct syntax.
4259
4260 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4261
4262         * findvar.c (locate_var_value): Do not call get_frame_arch
4263         with a NULL frame argument.
4264
4265 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4266
4267         * frame.h (frame_map_regnum_to_name): Remove prototype.
4268         (frame_map_name_to_regnum): Remove prototype.
4269         * frame.c (frame_map_regnum_to_name): Remove.
4270         (frame_map_name_to_regnum): Remove.
4271         (frame_unwind_register_value): Use user_reg_map_regnum_to_name
4272         instead of frame_map_regnum_to_name.
4273         * ax-gdb.c: Include "user-regs.h".
4274         (gen_expr): Use user_reg_map_name_to_regnum instead of
4275         frame_map_name_to_regnum.
4276         * eval.c:  Include "user-regs.h".
4277         (evaluate_subexp_standard): Use user_reg_map_name_to_regnum
4278         instead of frame_map_name_to_regnum.
4279         * infcmd.c (registers_info): Likewise.
4280         * parse.c: Include "user-regs.h".
4281         (write_dollar_variable): Use user_reg_map_name_to_regnum
4282         instead of frame_map_name_to_regnum.
4283         * tracepoint.c: Include "user-regs.h".
4284         (encode_actions): Use user_reg_map_name_to_regnum
4285         instead of frame_map_name_to_regnum.
4286         * valops.c: Include "user-regs.h".
4287         (value_fetch_lazy): Use user_reg_map_regnum_to_name instead
4288         of frame_map_regnum_to_name.
4289
4290 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4291
4292         * ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read
4293         and manually relocate .opd contents from BFD instead of reading
4294         them from target memory.
4295
4296 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4297
4298         * dwarf2read.c (processing_current_prefix): Delete static
4299         variable.
4300         (process_full_comp_unit): Do not set processing_current_prefix.
4301         (dwarf2_full_name): New function.
4302         (read_func_scope): Do not set processing_current_prefix.  Use
4303         determine_prefix.
4304         (read_structure_type): Do not set processing_current_prefix.  Remove
4305         unused inner cleanup.
4306         (process_structure_scope): Do not set processing_current_prefix.
4307         (read_enumeration_type): Use dwarf2_full_name.
4308         (determine_class_name): Return a const char *.  Put the result
4309         on the objfile obstack.  Use dwarf2_full_name.
4310         (read_namespace_type): New function.
4311         (read_namespace): Do not create the type here.  Use
4312         determine_prefix.
4313         (read_typedef): Use dwarf2_full_name.  Do not pass the name
4314         to init_type.
4315         (read_base_type): Do not pass the name to init_type.  Handle
4316         TYPE_FLAG_NOSIGN.
4317         (read_unspecified_type): Do not pass the name to init_type.
4318         (new_symbol): Use dwarf2_full_name instead of
4319         processing_current_prefix.
4320         (read_type_die): Do not set processing_current_prefix.  Handle
4321         DW_TAG_namespace.
4322         (determine_prefix): Handle specifications.  Return the result
4323         on the objfile obstack.  Handle unions correctly.
4324
4325 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4326
4327         * buildsym.c (add_symbol_to_list): Do not call
4328         cp_scan_for_anonymous_namespaces here.
4329         (finish_block): Do not call cp_set_block_scope here.
4330         * cp-namespace.c (processing_has_namespace_info)
4331         (processing_current_prefix): Delete.
4332         (cp_initialize_namespace): Do not initialize
4333         processing_has_namespace_info.
4334         (cp_scan_for_anonymous_namespaces): Use SYMBOL_DEMANGLED_NAME.  Do
4335         not check processing_has_namespace_info.
4336         (cp_set_block_scope): Take prefix and namespace info flag as
4337         arguments.  Honor namespaces regardless of a demangled name.
4338         * cp-support.h (processing_has_namespace_info)
4339         (processing_current_prefix): Delete declarations.
4340         (cp_set_block_scope): Update prototype.
4341         * dwarf2read.c (processing_has_namespace_info)
4342         (processing_current_prefix): New static variables.
4343         (read_file_scope): Initialize processing_has_namespace_info.
4344         (read_func_scope): Call cp_set_block_scope for C++.
4345         (new_symbol): Call cp_scan_for_anonymous_namespaces for C++.
4346         * symtab.c (symbol_demangled_name): Accept a const argument.
4347         * symtab.h (symbol_demangled_name): Update prototype.
4348
4349 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4350
4351         * ax-gdb.c (gen_var_ref): Use SYMBOL_LINKAGE_NAME.
4352         * blockframe.c (find_pc_partial_function): Likewise.
4353         * buildsym.c (find_symbol_in_list): Likewise.
4354         * c-valprint.c (c_val_print): Likewise.
4355         * coffread.c (patch_opaque_types, process_coff_symbol): Likewise.
4356         (coff_read_enum_type): Likewise.  Use SYMBOL_SET_LINKAGE_NAME.
4357         * cp-support.c (cp_remove_params): Renamed from remove_params and
4358         made global.
4359         (overload_list_add_symbol): Update call to remove_params.
4360         * cp-support.h (cp_remove_params): Declare.
4361         * dwarf2read.c (process_enumeration_scope): Use SYMBOL_LINKAGE_NAME.
4362         (dwarf2_const_value): Use SYMBOL_PRINT_NAME.
4363         * expprint.c (dump_subexp_body_standard): Likewise.
4364         * f-valprint.c (info_common_command, there_is_a_visible_common_named):
4365         Use SYMBOL_LINKAGE_NAME to find symbols and SYMBOL_PRINT_NAME
4366         for messages.
4367         * findvar.c (read_var_value): Use SYMBOL_LINKAGE_NAME.
4368         * gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise.
4369         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
4370         (hppa_hpux_skip_trampoline_code): Use SYMBOL_LINKAGE_NAME to find
4371         symbols and SYMBOL_PRINT_NAME for messages.
4372         * jv-lang.c (add_class_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4373         * linespec.c (decode_line_2): Use SYMBOL_LINKAGE_NAME.
4374         * mdebugread.c (parse_symbol): Use SYMBOL_LINKAGE_NAME and
4375         SYMBOL_SET_LINKAGE_NAME.
4376         (mylookup_symbol): Use SYMBOL_LINKAGE_NAME.
4377         * minsyms.c (add_minsym_to_demangled_hash_table): Use
4378         SYMBOL_SEARCH_NAME.
4379         (lookup_minimal_symbol): Use SYMBOL_LINKAGE_NAME or
4380         SYMBOL_MATCHES_SEARCH_NAME, depending on the pass.
4381         * objfiles.h (ALL_OBJFILE_MSYMBOLS): Use SYMBOL_LINKAGE_NAME.
4382         * printcmd.c (build_address_symbolic): Use SYMBOL_LINKAGE_NAME.
4383         (address_info): Use SYMBOL_PRINT_NAME for messages and
4384         SYMBOL_LINKAGE_NAME for lookups.
4385         * sol-thread.c (info_cb): Use SYMBOL_PRINT_NAME for messages.
4386         * stabsread.c (patch_block_stabs, define_symbol)
4387         (read_type, read_enum_type, common_block_end)
4388         (cleanup_undefined_types_1, scan_file_globals): Use
4389         SYMBOL_LINKAGE_NAME, SYMBOL_SET_LINKAGE_NAME, ALL_OBJFILE_MSYMBOLS,
4390         and SYMBOL_PRINT_NAME.
4391         * stack.c (print_frame_args): Use SYMBOL_LINKAGE_NAME.
4392         (print_frame, frame_info): Use SYMBOL_PRINT_NAME for output.  Use
4393         cp_remove_params instead of cplus_demangle.
4394         (print_block_frame_labels, print_frame_arg_vars): Use
4395         SYMBOL_LINKAGE_NAME.
4396         * symmisc.c (dump_msymbols): Use ALL_OBJFILE_MSYMBOLS and
4397         SYMBOL_LINKAGE_NAME.
4398         (dump_symtab_1, print_symbol, print_partial_symbols)
4399         (maintenance_check_symtabs): Use SYMBOL_LINKAGE_NAME.
4400         * symtab.h (DEPRECATED_SYMBOL_NAME): Delete.
4401         (SYMBOL_SET_LINKAGE_NAME): New.
4402         (SYMBOL_SET_NAMES): Add a comment.
4403         * tracepoint.c (set_traceframe_context, validate_actionline)
4404         (collect_symbol, scope_info): Use SYMBOL_LINKAGE_NAME for
4405         lookups and SYMBOL_PRINT_NAME for output.
4406         * typeprint.c (typedef_print): Use SYMBOL_LINKAGE_NAME.
4407         * xcoffread.c (process_xcoff_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4408
4409 2008-08-21  Pedro Alves  <pedro@codesourcery.com>
4410
4411         * arm-tdep.c (arm_pc_is_thumb): Use obj_section_addr.
4412         * hppa-hpux-tdep.c (hppa_hpux_find_dummy_bpaddr): Likewise.
4413         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Use
4414         obj_section_addr and obj_section_endaddr.
4415         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Likewise.
4416         * hppabsd-tdep.c (hppabsd_find_global_pointer): Likewise.
4417         * ia64-tdep.c (ia64_find_global_pointer): Likewise.
4418         (find_extant_func_descr): Likewise.
4419         * solib-frv.c (frv_relocate_main_executable): Use
4420         obj_section_addr.
4421         * xstormy16-tdep.c (xstormy16_find_jmp_table_entry): Use
4422         obj_section_addr and obj_section_endaddr.
4423
4424 2008-08-21  Paul N. Hilfinger  <hilfinger@adacore.com>
4425
4426         * NEWS: Amplify last entry on boolean types in Ada.
4427
4428 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4429
4430         * dwarf2read.c (die_specification, dwarf2_extension, follow_die_ref):
4431         Make the dwarf2_cu * parameter output as well as input.  Update it if
4432         we follow a reference to another CU.
4433         (read_func_scope, determine_class_name, namespace_name, dwarf2_attr)
4434         (die_type, die_containing_type): Update calls to changed functions.
4435         Use the returned CU along with the returned DIE.
4436         (read_namespace): Use dwarf2_attr instead of dwarf2_extension.
4437
4438 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4439
4440         * dwarf2read.c (queue_comp_unit): Take an objfile argument.  Read
4441         in the DIEs here.
4442         (process_queue): Do not read in the DIEs here.
4443         (psymtab_to_symtab_1): Update call to queue_comp_unit.
4444         (read_full_die): Do not call queue_comp_unit from here.
4445         (maybe_queue_comp_unit): New function.
4446         (follow_die_ref): Use it.
4447
4448 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4449
4450         * dwarf2read.c (struct attribute): Move earlier.
4451         (struct die_info): Change attrs to a trailing array.
4452         (dwarf_alloc_die): Take the number of attributes.  Allocate space
4453         for them.
4454         (read_full_die): Update call to dwarf_alloc_die.  Do not manually
4455         allocate attributes.
4456
4457 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4458
4459         * dwarf2read.c (REF_HASH_SIZE): Delete.
4460         (struct dwarf2_cu): Replace die_ref_table with die_hash.
4461         (struct die_info): Remove next_ref.
4462         (store_in_ref_table): Remove offset argument.  Rewrite to use
4463         htab_find_slot_with_hash.
4464         (die_hash, die_eq): New.
4465         (read_comp_unit): Allocate the die_hash.
4466         (read_die_and_children): Update call to store_die_ref.
4467         (follow_die_ref): Rewrite to use htab_find_with_hash.
4468
4469 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4470
4471         * dwarf2read.c (free_die_list, copy_die): Delete.
4472         (dwarf_alloc_die): Take a CU argument.  Allocate the new DIE
4473         on the obstack.
4474         (read_full_die): Update call to dwarf_alloc_die.  Allocate
4475         attributes on the CU obstack.
4476         (free_one_comp_unit): Do not call free_die_list.
4477
4478 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4479
4480         * dwarf2read.c (read_die_and_children): Ignore NULL DIEs.
4481         (read_die_and_siblings): Likewise.  Do not add padding DIEs to the
4482         sibling list.
4483         (read_full_die): Do not allocate DIEs for abbrev 0.
4484         (follow_die_ref): Correct error message.
4485
4486 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4487
4488         * linespec.c (symtab_from_filename): Also throw NOT_FOUND_ERROR if
4489         there are no symbols loaded, instead of throwing a generic error.
4490         (decode_variable): Likewise.
4491
4492 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4493
4494         * objfiles.h (struct obj_section): Remove addr and endaddr fields.
4495         (obj_section_offset, obj_section_addr, obj_section_endaddr): New
4496         macros.
4497         * objfiles.c (add_to_objfile_sections): Don't set addr, endaddr
4498         and offset.  Use size_t instead of unsigned long.
4499         (build_objfile_section_table): Use size_t instead of unsigned
4500         long.
4501         (objfile_relocate): Don't relocate s->addr and s->endaddr, they're
4502         gone.
4503         (find_pc_sect_section): Use obj_section_addr and
4504         obj_section_endaddr.
4505         * symfile.c (symfile.c): Remove code that maps sections
4506         offsets in "addr" to the object's sections.
4507         * blockframe.c (find_pc_partial_function): Use obj_section_endaddr.
4508         * gcore.c (gcore_create_callback): Use obj_section_addr and
4509         obj_section_endaddr.
4510         * maint.c (print_objfile_section_info): Likewise.
4511         * printcmd.c (sym_info): Use obj_section_addr and
4512         obj_section_endaddr.
4513         * symtab.c (fixup_section): Likewise.
4514
4515 2008-08-20  Mark Kettenis  <kettenis@gnu.org>
4516
4517         * sparc-tdep.c: Make some comments catch up with reality.
4518
4519 2008-08-20  Vladimir Prus  <vladimir@codesourcery.com>
4520
4521         * NEWS: Mention 'set target-async'
4522
4523 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4524
4525         * infrun.c (resume): If the thread is placed to the deferred step
4526         queue, mark it as running.
4527
4528 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4529
4530         Make sure target supports non-stop.
4531         * infcmd.c (run_command_1, attach_command): If non-stop mode
4532         is requested, verify the target supports it.
4533         * linux-nat.c (linux_nat_supports_non_stop): New.
4534         (linux_nat_add_target): Register the above.
4535         * target.c (find_default_supports_non_stop)
4536         (target_supports_non_stop): New.
4537         (init_dummy_target): Register find_default_supports_non_stop.
4538         * target.h (struct target_ops): New field to_supports_non_stop.
4539         (target_supports_non_stop): New.
4540
4541 2008-08-19  Pedro Alves  <pedro@codesourcery.com>
4542             Vladimir Prus  <vladimir@codesourcery.com>
4543
4544         * target.c (target_async_permitted, target_async_permitted_1)
4545         (set_maintenance_target_async_permitted)
4546         (show_maintenance_target_async_permitted): New.
4547         (initialize_targets): Register 'set target-async'.
4548         * target.h (target_async_permitted): Declare.
4549         * linux-nat.c (linux_nat_async_enabled)
4550         (linux_nat_async_permitted, set_maintenance_linux_async_permitted)
4551         (show_maintenance_linux_async_permitted): Remove.
4552         (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p)
4553         (get_pending_events, linux_nat_async): Use target_async_permitted.
4554         (linux_nat_set_async_mode): Remove, moving the only used bits
4555         into...
4556         (linux_nat_setup_async): This.
4557         (_initialize_linux_nat): Do not register 'maint set linux-async'.
4558         Use linux_nat_setup_async.
4559         * remote.c (remote_async_permitted, remote_async_permitted_set)
4560         (set_maintenance_remote_async_permitted)
4561         (show_maintenance_remote_async_permitted): Remove.
4562         (remote_open_1, remote_terminal_inferior, remote_can_async_p)
4563         (remote_is_async_p): Use target_async_permitted.
4564         (_initialize_remote): Don't register 'main set remote-async'.
4565         * mi/mi-cmds.c (mi_cmds): Register -list-target-features.
4566         * mi/mi-cmds.h (mi_cmd_list_target_features): New.
4567         * mi/mi-main.c (mi_cmd_list_target_features): New.
4568
4569 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4570
4571         * target.c (maybe_kill_then_attach)
4572         (maybe_kill_then_create_inferior): Remove.
4573         (update_current_target): Do not default to_attach,
4574         to_create_inferiour, to_is_async_p.
4575
4576 2008-08-19  Paul N. Hilfinger  <hilfinger@adacore.com>
4577         
4578         Changes for supporting boolean types in debugging data.
4579         * ada-lang.c (discrete_type_high_bound,discrete_type_low_bound): Change 
4580         API to return LONGEST values rather than struct values.
4581         (ada_evaluate_subexp): Change to use new API of discrete_type_low_bound
4582         and discrete_type_high_bound.
4583         (to_fixed_range_type): Create a range type in cases where 
4584         argument is base type and its limits are representable as ints.
4585         (ada_is_modular_type): Correct so that base type must be integral.
4586         * ada-lex.l (TRUEKEYWORD,FALSEKEYWORD): Make 'true' and 'false' 
4587         keywords when they appear alone, since we are phasing out 
4588         direct representation of these identifiers in debugging data.
4589         * ada-exp.y: Define 'true' and 'false' as primaries.
4590         (type_boolean): New function.
4591         (type_int,type_long,type_long_long,type_floattype_double)
4592         (type_long_double): Remove uses of current_gdbarch for consistency
4593         with type_boolean.
4594         (write_int): Change comment to indicate that it might write boolean 
4595         constant as well.
4596         * ada-typeprint.c (ada_print_type): Print '(false, true)' for boolean
4597         type, since will no longer be represented as enumerated type in 
4598         debugging data.
4599         * ada-valprint.c (print_optional_low_bound): Handle boolean case
4600         as well.
4601         * NEWS: Note support boolean types.
4602         
4603 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4604
4605         * bsd-uthread.c (bsd_uthread_close): New.
4606         (bsd_uthread_deactivate): Don't cleanup here, just unpush the
4607         target.
4608         (bsd_uthread_solib_loaded): Fix typo.
4609         (bsd_uthread_target): Register bsd_uthread_close.
4610
4611 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4612
4613         * corelow.c (core_open): Assume there was no upper layer left
4614         behind from a previous inferior.
4615         * target.c (pop_all_targets): Rename to ...
4616         (pop_all_targets_above): ... this.  Add a target stratum
4617         parameter.  Use it instead of hardcoding the dummy_stratum.
4618         (pop_all_targets): New, defer to pop_all_targets_above.
4619         (target_preopen): Use pop_all_targets_above.
4620         * target.h (pop_all_targets_above): Declare.
4621
4622 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4623
4624         * gdbthread.h (thread_change_ptid): Declare.
4625         * infrun.c (infrun_thread_ptid_changed): New.
4626         (_initialize_infrun): Attach infrun_thread_ptid_changed to the
4627         thread_ptid_changed observer.
4628         * regcache.c (regcache_thread_ptid_changed): New.
4629         (_initialize_regcache): Attach regcache_thread_ptid_changed to the
4630         thread_ptid_changed observer.
4631         * thread.c (thread_change_ptid): New.
4632
4633 2008-08-18  Tom Tromey  <tromey@redhat.com>
4634
4635         * symfile.c (reread_symbols): Update.
4636         * solib-sunos.c (allocate_rt_common_objfile): Update.
4637         * objfiles.c (allocate_objfile): Update.
4638         * objfiles.h (struct objfile) <md, mmfd, deprecated_obj_private>:
4639         Remove.
4640
4641 2008-08-18  Tom Tromey  <tromey@redhat.com>
4642
4643         * gdbtypes.c (copy_type_recursive): Allocate 'stored' on objfile's
4644         obstack.
4645
4646 2008-08-18  Daniel Jacobowitz  <dan@codesourcery.com>
4647
4648         * rs6000-tdep.c (struct rs6000_framedata): Add gpr_mask, used_bl,
4649         lr_register.
4650         (rs6000_in_function_epilogue_p): Check for bctr.
4651         (skip_prologue): Initialize lr_register.  Set lr_reg to a register
4652         number.  Set gpr_mask and used_bl.  Continue scanning while some
4653         expected registers are not saved.  Set lr_register if LR is not
4654         stored.
4655         (rs6000_frame_cache): Handle gpr_mask and lr_register.
4656
4657 2008-08-17  Tom Tromey  <tromey@redhat.com>
4658
4659         PR gdb/1535:
4660         * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): New macros.
4661         (ep_find_event_name_end): Remove.
4662         (catch_fork_temporary, catch_vfork_temporary,
4663         catch_fork_permanent, catch_vfork_permanent): New constants.
4664         (catch_vfork, catch_fork): Remove.
4665         (catch_fork_command_1): Add 'command' argument.  Remove
4666         'fork_kind' and 'tempflag'.  Handle NULL 'arg'.  Update switch for
4667         all cases.
4668         (catch_exec_command_1): Add 'command' argument; remove
4669         'tempflag'.  Handle NULL 'arg'.
4670         (catch_load_command_1): Likewise.
4671         (catch_unload_command_1): Likewise.
4672         (catch_ada_exception_command): Likewise.
4673         (catch_assert_command): Likewise.
4674         (catch_catch_command): New function.
4675         (catch_throw_command): Likewise.
4676         (catch_command_1): Remove.
4677         (catch_command): Just call error.
4678         (tcatch_command): Likewise.
4679         (catch_cmdlist): New global.
4680         (tcatch_cmdlist): Likewise.
4681         (add_catch_command): New function.
4682         (_initialize_breakpoint): Create "catch" and "tcatch" as prefix
4683         commands.  Create all catch sub-commands.
4684
4685 2008-08-17  Pedro Alves  <pedro@codesourcery.com>
4686
4687         * gdbthread.h: Add comments.
4688         * stack.c (get_selected_block): Return 0 on an exited thread.
4689         * top.c (execute_command): Check for is_stopped, not !is_running.
4690         * event-top.c (command_handler): Likewise.
4691
4692 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4693
4694         * mi/mi-main.c (mi_cmd_exec_next, mi_cmd_exec_next_instruction)
4695         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
4696         (mi_cmd_exec_finish): Remove "return".
4697
4698 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4699
4700         * target.h (pop_all_targets): Declare.
4701         * target.c (pop_all_targets): New.
4702         * top.c (quit_target): Pop all targets instead of just closing the
4703         current.
4704
4705 2008-08-16  Vladimir Prus  <vladimir@codesourcery.com>
4706             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4707
4708         * cli-script.c (read_next_line): Add parse_commands argument.
4709         (recurse_read_control_structure): Adapt to new read_next_line
4710         signature.
4711         (read_command_lines): Add parse_commands argument.
4712         (define_command): Adapt to new read_command_lines signature.
4713         (document_command): Likewise.
4714         * breakpoint.c (commands_command): Likewise.
4715         * defs.h (read_command_lines): Adjust function prototype.
4716
4717 2008-08-16  Paul N. Hilfinger  <hilfinger@adacore.com>
4718
4719         * ada-lang.c (pos_atr): Account for the possibility that the 
4720         argument may be a reference.
4721
4722 2008-08-16  Paul N. Hilfinger  <hilfingr@adacore.com>
4723
4724         * xcoffread.c (scan_xcoff_symtab): Do not include global symbols
4725         ('F' format) for @FIX names generated by the loader, retaining only
4726         the minimal symbols (and no partial symbol tables) for these names.
4727         Fixes warning messages about symbols that are found in partial 
4728         symbol tables, but not full symbol tables.
4729
4730 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4731
4732         * infrun.c (fetch_inferior_event): Only call normal_stop if not
4733         stopping quietly.
4734
4735 2008-08-15  Luis Machado  <luisgpm@br.ibm.com>
4736
4737         * rs6000-tdep: Include "features/rs6000/powerpc-vsx32.c".
4738         Include "features/rs6000/powerpc-vsx64.c".
4739         (ppc_supply_vsxregset): New function.
4740         (ppc_collect_vsxregset): New function.
4741         (IS_VSX_PSEUDOREG): New macro.
4742         (IS_EFP_PSEUDOREG): New macro.
4743         (vsx_register_p): New function.
4744         (ppc_vsx_support_p): New function.
4745         (rs6000_builtin_type_vec128): New function.
4746         (rs6000_register_name): Hide upper halves of vs0~vs31.  Return
4747         correct names for VSX registers and EFPR registers.
4748         (rs6000_pseudo_register_type): Return correct types for VSX
4749         and EFPR registers.
4750         (rs6000_pseudo_register_reggroup_p): Return correct group for
4751         VSX and EFPR registers.
4752         (ppc_pseudo_register_read): Rename to dfp_pseudo_register_read.
4753         (ppc_pseudo_register_write): Rename to dfp_pseudo_register_write.
4754         (vsx_pseudo_register_read): New function.
4755         (vsx_pseudo_register_write): New function.
4756         (efpr_pseudo_register_read): New function.
4757         (efpr_pseudo_register_write): New function.
4758         (rs6000_pseudo_register_read): Call new VSX and EFPR read functions.
4759         (rs6000_pseudo_register_write): Call new VSX and EFPR write functions.
4760         (rs6000_gdbarch_init): Declare have_vsx.
4761         Initialize new upper half VSX registers.
4762         Initialize VSX-related and EFPR-related pseudo-registers variables.
4763         Adjust the number of pseudo registers accordingly.
4764
4765         * ppc-linux-nat.c: Define PTRACE_GETVSXREGS, PTRACE_SETVSXREGS
4766         and SIZEOF_VSRREGS.
4767         (gdb_vsxregset_t): New type.
4768         (have_ptrace_getsetvsxregs): New variable.
4769         (fetch_vsx_register): New function.
4770         (fetch_register): Handle VSX registers.
4771         (fetch_vsx_registers): New function.
4772         (fetch_ppc_registers): Handle VSX registers.
4773         (store_ppc_registers): Handle VSX registers.
4774         (store_vsx_register): New function.
4775         (store_register): Handle VSX registers.
4776         (store_vsx_registers): New function.
4777         (ppc_linux_read_description): Handle VSX-enabled inferiors.
4778         (gdb_vsxregset_t): New type.
4779         (supply_vsxregset): New function.
4780         (fill_vsxregset): New function.
4781
4782         * ppc-tdep.h (vsx_register_p): New prototype.
4783         (vsx_support_p): New prototype.
4784         (ppc_vsr0_regnum): New variable.
4785         (ppc_vsr0_upper_regnum): Likewise.
4786         (ppc_efpr0_regnum): Likewise.
4787         (ppc_builtin_type_vec128): New type.
4788         (ppc_num_vsrs): New constant.
4789         (ppc_num_vshrs): New constant.
4790         (ppc_num_efprs): Likewise.
4791         Define POWERPC_VEC_VSX PPC_VSR0_UPPER_REGNUM and PPC_VSR31_UPPER_REGNUM.
4792         (ppc_supply_vsxregset): New prototype.
4793         (ppc_collect_vsxregset): New prototype.
4794
4795         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-vsx32l.c"
4796         Include "features/rs6000/powerpc-vsx64l.c".
4797         (_initialize_ppc_linux_tdep): Initialize VSX-enabled targets.
4798         (ppc_linux_regset_sections): Add new ".reg-ppc-vsx" field.
4799         (ppc32_linux_vsxregset): New 32-bit VSX-enabled regset.
4800         (ppc_linux_regset_from_core_section): Handle VSX core section.
4801         (ppc_linux_core_read_description): Support VSX-enabled core files.
4802
4803         * ppc-linux-tdep.h: Declare *tdesc_powerpc_vsx32l
4804         Declare tdesc_powerpc_vsx64l
4805
4806         * corelow.c (get_core_register_section): Support VSX-enabled
4807         core files.
4808
4809         * features/rs6000/power-vsx.xml: New VSX descriptions.
4810         * features/rs6000/powerpc-vsx32.xml: New file.
4811         * features/rs6000/powerpc-vsx32l.xml: New file.
4812         * features/rs6000/powerpc-vsx64.xml: New file.
4813         * features/rs6000/powerpc-vsx64l.xml: New file.
4814         * features/rs6000/powerpc-vsx32.c: New file (generated).
4815         * features/rs6000/powerpc-vsx32l.c: New file (generated).
4816         * features/rs6000/powerpc-vsx64.c: New file (generated).
4817         * features/rs6000/powerpc-vsx64l.c: New file (generated).
4818         * features/Makefile: Updated with new descriptions.
4819         * regformats/rs6000/powerpc-vsx32l.dat: New file (generated).
4820         * regformats/rs6000/powerpc-vsx64l.dat: New file (generated).
4821
4822 2008-08-15  Vladimir Prus  <vladimir@codesourcery.com>
4823
4824         * ia64-linux.nat (_initialize_ia64_linux_nat): Don't
4825         call linux_target twice.
4826
4827 2008-08-14  Aleksandar Ristovski  <aristovski@qnx.com>
4828
4829         * nto-tdep.c (lm_info): Updated struct lm_info definition from
4830         solib-svr4.c
4831         (LM_ADDR): Use l_addr if available; if not, use link map and set 
4832         l_addr.
4833
4834 2008-08-14  Tom Tromey  <tromey@redhat.com>
4835
4836         * macrocmd.c (macro_define_command): Check for NULL argument.
4837         (macro_undef_command): Likewise.
4838
4839 2008-08-14  Pedro Alves  <pedro@codesourcery.com>
4840
4841         * infcmd.c (continue_1): Add an ERROR_NO_INFERIOR call.
4842
4843 2008-08-13  Pedro Alves  <pedro@codesourcery.com>
4844
4845         * breakpoint.c (always_inserted_auto, always_inserted_on)
4846         (always_inserted_off, always_inserted_enums): New.
4847         (always_inserted_mode): Change type to char* and point to
4848         always_inserted_auto.
4849         (show_always_inserted_mode): In auto mode, also show the current
4850         effect of the option.
4851         (breakpoints_always_inserted_mode): Adjust for the new auto mode.
4852         (_initialize_breakpoint): Make the "set breakpoints
4853         always-inserted" command an enum command.  Extend help to describe
4854         the auto mode.
4855
4856 2008-08-13  Ulrich Weigand  <uweigand@de.ibm.com>
4857
4858         * spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status
4859         query valid) bit.  Ignore bits outside the condition field.
4860         (info_spu_proxydma_command): Ignore bits outside the field.
4861
4862 2008-08-12  Michael Snyder  <msnyder@vmware.com>
4863
4864         * MAINTAINERS: Update my email address.
4865
4866 2008-08-12  Ulrich Weigand  <uweigand@de.ibm.com>
4867
4868         * ppc-linux-nat.c (ppc_linux_get_hwcap): Really get AT_HWCAP.
4869
4870 2008-08-12  Pedro Alves  <pedro@codesourcery.com>
4871
4872         Add no-ack mode to the remote protocol --- optionally stop ACKing
4873         packets and responses when we have a reliable communication
4874         medium.
4875
4876         Based on Apple's GDB, by Jason Molenda <jmolenda@apple.com>
4877
4878         * remote.c (struct remote_state): Add noack_mode field.
4879         (PACKET_QStartNoAckMode): New.
4880         (remote_start_remote): Don't any outstanding packet here.
4881         (remote_open_1): Clear noack_mode.  Ack any outstanding packet
4882         here.  Activate noack mode if requested.
4883         (remote_protocol_features): Add QStartNoAckMode.
4884         (remote_open_1):
4885         (putpkt_binary): Don't send ack in noack mode.
4886         (read_frame): Don't recompute the checksum in noack mode.
4887         (getpkt_sane): Skip sending ack if in noack mode.
4888         (_initialize_remote): Add set/show remote noack mode.
4889         * NEWS:  Note the new features.
4890
4891 2008-08-11  Kevin Buettner  <kevinb@redhat.com>
4892
4893         * rs6000-tdep.c (BL_MASK, BL_INSTRUCTION, BL_DISPLACEMENT_MASK):
4894         New macros.
4895         (rs6000_skip_main_prologue): New function.
4896         (rs6000_gdb_arch_init): Register rs6000_skip_main_prologue.
4897
4898 2008-08-11  Sandra Loosemore  <sandra@codesourcery.com>
4899
4900         * MAINTAINERS (Write After Approval):  Add self.
4901
4902 2008-08-11  Stan Shebs  <stan@codesourcery.com>
4903
4904         ARM BE8 support.
4905         * disasm.c (gdb_disassemble_info): Set endian_code.
4906         * gdbarch.sh (gdbarch_info): New field byte_order_for_code.
4907         * gdbarch.h, gdbarch.c: Regenerate.
4908         * arch-utils.c (initialize_current_architecture): Set the
4909         default byte_order_for_code.
4910         (gdbarch_info_init): Ditto.
4911         (gdbarch_info_fill): Ditto.
4912         * arm-tdep.c (SWAP_INT, SWAP_SHORT): New macros.
4913         (thumb_analyze_prologue): Swap halfword if code endianness is
4914         different from general endianness.
4915         (arm_skip_prologue): Similarly.
4916         (arm_scan_prologue): Ditto.
4917         (thumb_get_next_pc): Ditto.
4918         (arm_get_next_pc): Ditto.
4919         (arm_gdbarch_init): Set byte_order_for_code from BE8 flag,
4920         choose correct endianness for breakpoints.
4921
4922 2008-08-10  Pedro Alves  <pedro@codesourcery.com>
4923
4924         * bsd-kvm.c: Include "gdbthread.h".
4925         (bsd_kvm_ptid): New.
4926         (bsd_kvm_open): Add a main thread.
4927         (bsd_kvm_close): Delete it.
4928         (bsd_kvm_thread_alive): New.
4929         (bsd_kvm_pid_to_str): New.
4930         (bsd_kvm_add_target): Register bsd_kvm_thread_alive and
4931         bsd_kvm_pid_to_str.
4932         (bsd_kvm_add_target): Initialize bsd_kvm_ptid.
4933
4934 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4935
4936         * buildsym.c (start_subfile): Properly cast sentinel in concat
4937         call.
4938         * cp-name-parser.y: Include "config.h".
4939         * xml-tdesc.c (fetch_xml_from_file): Properly cast sentinel in
4940         concat call.
4941         * gdb_select.h: Include sys/time.h if sys/select.h is not
4942         available.
4943
4944 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4945
4946         * go32-nat.c: Include "gdbthread.h".
4947         (go32_stop, go32_kill_inferior): Delete the main thread.
4948         (go32_create_inferior): Add it.
4949         (go32_thread_alive, go32_pid_to_str): New.
4950         (init_go32_ops): Register go32_thread_alive and go32_pid_to_str.
4951
4952 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4953
4954         * go32-nat.c (fetch_register, store_register): Pass the regcache
4955         gdbarch to i386_fp_regnum_p and i386_fpc_regnum_p.
4956         (go32_xfer_memory): Change type of myaddr parameter to gdb_byte.
4957         (struct seg_descr, struct seg_descr): pack the whole struct
4958         instead of each member individually.
4959
4960 2008-08-09  Andreas Schwab  <schwab@suse.de>
4961
4962         * python/python.c (_initialize_python): Use unabbreviated commands
4963         in prefix name.
4964
4965 2008-08-09  Daniel Jacobowitz  <dan@codesourcery.com>
4966
4967         * Makefile.in (stamp-h): Also create .deps.
4968
4969 2008-08-09  Tom Tromey  <tromey@redhat.com>
4970
4971         * Makefile.in (generated_files): Add GNULIB_H.
4972
4973 2008-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4974
4975         * solib-pa64.c (pa64_solib_create_inferior_hook): Don't set
4976         DT_HP_DEBUG_PRIVATE.  Add warning if DT_HP_DEBUG_PRIVATE is not set.
4977         Revise comment.
4978         (pa64_current_sos): Remove map private warning warning.
4979         * solib-som.c: Include string.h and sys/utsname.h.
4980         (get_hpux_major_release): New function.
4981         (som_solib_create_inferior_hook): Read dynamic linker header.  Warn
4982         about shared library private mapping on HP-UX 11 and later.  Only force
4983         private mapping of shared libraries on HP-UX 10 and earlier.
4984         (link_map_start): Delete warning.
4985
4986 2008-08-09  Xuepeng Guo  <xuepeng.guo@intel.com>
4987             H.J. Lu  <hongjiu.lu@intel.com>
4988             Mark Kettenis <kettenis@gnu.org>
4989
4990         * amd64-tdep.c (amd64_frame_cache): Add saved_sp_reg.
4991         (amd64_init_frame_cache): Initialize saved_sp_reg.
4992         (amd64_analyze_stack_align): New.
4993         (amd64_analyze_prologue): Call it.
4994         (amd64_frame_cache): Use saved_sp_reg if it is invalid.  Don't set
4995         %rip to 8 when halfway aligning the stack.
4996
4997         * amd64-tdep.h (amd64_regnum): Add AMD64_R9_REGNUM to
4998         AMD64_R14_REGNUM.
4999
5000         * i386-tdep.c (i386_frame_cache): Remove stack_align.  Add
5001         saved_sp_reg.
5002         (i386_alloc_frame_cache): Remove stack_align.  Initialize
5003         saved_sp_reg to -1.
5004         (i386_analyze_stack_align): Rewrite.
5005         (i386_frame_cache): Use saved_sp_reg if it is valid.
5006
5007 2008-08-09  Ulrich Weigand  <uweigand@de.ibm.com>
5008
5009         * target.c: Include "solib.h".
5010         (target_pre_inferior): Call no_shared_libraries.
5011         * infcmd.c (run_command_1): Do not call objfile_purge_solibs
5012         or clear_solib.
5013         (attach_command): Do not call clear_solib.
5014
5015 2008-08-09  Mark Kettenis  <kettenis@gnu.org>
5016
5017         * i386obsd-nat.c (i386obsd_supply_pcb): Supply the right bytes for
5018         the %eip register.
5019
5020 2008-08-08  Tom Tromey  <tromey@redhat.com>
5021
5022         * Makefile.in (python.o): Remove dependencies.  Use COMPILE and
5023         POSTCOMPILE.
5024         (python-utils.o): Likewise.
5025
5026 2008-08-08  Andreas Schwab  <schwab@suse.de>
5027
5028         * corefile.c (_initialize_core): Remove spurious paren from set
5029         gnutarget doc string.
5030
5031 2008-08-08  Luis Machado  <luisgpm@br.ibm.com>
5032
5033         * ppc-linux-nat.c: Include "auxv.h" and "elf/common.h".
5034         Define PPC_FEATURE_BOOKE.
5035         (ppc_linux_get_hwcap): New function.
5036         (ppc_linux_region_ok_for_hw_watchpoint): Handle PowerPC 440
5037         4-bytes alignment restrictions.
5038         (ppc_linux_insert_watchpoint): Handle PowerPC 440-specific
5039         positioning of the read/write flags.
5040         (ppc_linux_watchpoint_addr_within_range): Handle PowerPC 440
5041         4-bytes alignment.
5042
5043 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
5044
5045         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
5046
5047         * win32-nat.c (win32_add_thread): Change thread argument type to
5048         ptid_t.  Adjust.
5049         (win32_add_thread): Adjust.
5050         (win32_delete_thread): Change thread argument type to ptid_t.
5051         Adjust.
5052         (win32_fetch_inferior_registers, win32_store_inferior_registers)
5053         (win32_resume, get_win32_debug_event, get_win32_debug_event)
5054         (win32_wait, win32_pid_to_exec_file, win32_pid_to_str): Adjust.
5055         (init_win32_ops): Put to_magic last.
5056         (win32_win32_thread_alive): Adjust.
5057
5058 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
5059
5060         * remote-m32r-sdi.c (m32r_thread_alive, m32r_pid_to_str): New.
5061         (init_m32r_ops): Register m32r_thread_alive and m32r_pid_to_str.
5062
5063 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
5064
5065         * remote-m32r-sdi.c: Include "gdbthread.h".
5066         (remote_m32r_ptid): New.
5067         (m32r_close): Delete the main thread.
5068         (m32r_resume): Set inferior_ptid toA remote_m32r_ptid. Add the
5069         main thread.
5070         (m32r_kill, m32r_load, sdireset_command): Delete the main thread.
5071         (_initialize_remote_m32r): Initialize remote_m32r_ptid.
5072
5073 2008-08-07  Tom Tromey  <tromey@redhat.com>
5074             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5075
5076         * aclocal.m4, configure: Rebuild.
5077         * configure.in: Call ZW_CREATE_DEPDIR,
5078         ZW_PROG_COMPILER_DEPENDENCIES, AC_PROG_MAKE_SET.
5079         (MAKE, GMAKE): New substs.
5080         * acinclude.m4: Include depstand.m4.
5081         * Makefile.in (DEPMODE, DEPDIR, COMPILE.post, COMPILE.pre,
5082         COMPILE, POSTCOMPILE, depcomp): New variables.
5083         Remove all _h variables.
5084         Remove many .o targets.
5085         ($(srcdir)/copying.c): avoid backslash-newline after comment
5086         sign (@maintainer_mode_true@).
5087         (HFILES_NO_SRCDIR): Regenerate.
5088         (generated_files): New variable.
5089         (all_gdbtk_cflags): Likewise.
5090         (.c.o): Rewrote.
5091         (init.o, version.o, copying.o): Remove.
5092         (distclean): Remove DEPDIR.
5093         (test-cp-name-parser.o, hpux-thread.o, main.o, monitor.o,
5094         printcmd.o, procfs.o, v850ice.o): Rewrite.
5095         (cli-cmds.o, cli-decode.o, cli-dump.o, cli-interp.o, cli-logging.o,
5096         cli-script.o, cli-setshow.o, cli-utils.o): Likewise.
5097         (gdbtk.o, gdbtk-bp.o, gdbtk-cmds.o, gdbtk-hooks.o, gdbtk-interp.o,
5098         gdbtk-main.o, gdbtk-register.o, gdbtk-stack.o, gdbtk-varobj.o,
5099         gdbtk-wrapper.o): Likewise.
5100         (mi-cmd-break.o, mi-cmd-disas.o, mi-cmd-env.o, mi-cmd-file.o,
5101         mi-cmds.o, mi-cmd-stack.o, mi-cmd-target.o, mi-cmd-var.o,
5102         mi-console.o, mi-getopt.o, mi-interp.o, mi-main.o, mi-out.o,
5103         mi-parse.o, mi-symbol-cmds.o, mi-common.o, signals.o, tui.o,
5104         tui-command.o, tui-data.o, tui-disasm.o, tui-file.o, tui-hooks.o,
5105         tui-interp.o, tui-io.o, tui-layout.o, tui-main.o, tui-out.o,
5106         tui-regs.o, tui-source.o, tui-stack.o, tui-win.o, tui-windata.o,
5107         tui-wingeneral.o, tui-winsource.o): Likewise.
5108         (all_object_files): New variable.
5109         ($(all_object_files)): New target.
5110         Include dependency files, when using GNU Make.
5111
5112 2008-08-07  Ulrich Weigand  <uweigand@de.ibm.com>
5113
5114         * spu-tdep.c (info_spu_dma_cmdlist): Only show entries with
5115         the valid bit set.  Ensure display order respects partial
5116         order defined by dependency bits.
5117
5118 2008-08-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5119
5120         * solib-pa64.c (read_dld_descriptor): Return zero if load map is not
5121         setup.
5122
5123 2008-08-06  Mark Kettenis  <kettenis@gnu.org>
5124
5125         * i386obsd-nat.c (i386obsd_supply_pcb): Adjust for changes in
5126         OpenBSD 4.3.
5127
5128 2008-08-06  Vladimir Prus  <vladimir@codesourcery.com>
5129             Tom Tromey  <tromey@redhat.com>
5130             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5131             Doug Evans  <dje@google.com>
5132
5133         * Makefile.in (SUBDIR_PYTHON_OBS, SUBDIR_PYTHON_SRCS,
5134         SUBDIR_PYTHON_DEPS, SUBDIR_PYTHON_LDFLAGS, SUBDIR_PYTHON_CFLAGS,
5135         PYTHON_CFLAGS): New.
5136         (python_h, python_internal_h): New.
5137         (cli-script.o): Depend on python.h
5138         (python.o, python-utils.o): New.
5139         * cli/cli-script.c (print_command_lines): Handle python_control.
5140         (execute_control_command): Handle python_control.
5141         (execute_control_command_untraced): New function.
5142         (while_command): Call execute_control_command_untraced.
5143         (if_command): Likewise.
5144         (get_command_line): Remove static attribute.
5145         (read_next_line): Handle "python".
5146         (recurse_read_control_structure): Handle python_control.
5147         (read_command_lines): Handle python_control.
5148         Include python.h.
5149         * cli/cli-script.h (get_command_line): Add prototype.
5150         (execute_control_command_untraced): Likewise.
5151         * configure.ac: Add --with-python.
5152         * defs.h (enum command_control_type) <python_control>: New
5153         constant.
5154         * python/python-internal.h: New file.
5155         * python/python.c: New file.
5156         * python/python.h: New file.
5157         * python/python-utils.c: New file.
5158         * NEWS: Mention Python scripting support and its new commands.
5159
5160 2008-08-06  Ulrich Weigand  <uweigand@de.ibm.com>
5161
5162         * spu-tdep.c (spu_gdbarch_init): Call set_gdbarch_frame_red_zone_size.
5163
5164 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
5165
5166         * MAINTAINERS (Write After Approval): Add self.
5167
5168 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
5169
5170         * breakpoint.c (hw_breakpoint_used_count): Use breakpoint_enabled.
5171         (insert_breakpoint_locations): Likewise.
5172
5173 2008-08-05  Phil Muldoon  <pmuldoon@redhat.com>
5174
5175         * breakpoint.c (create_longjmp_breakpoint): Remove unused struct
5176         breakpoint.
5177         (set_longjmp_breakpoint): Likewise.
5178
5179 2008-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5180
5181         PR build/2490
5182         * solib-pa64.c: Only compile if both HAVE_ELF_HP_H and __LP64__ are
5183         defined.
5184
5185 2008-08-05  Tom Tromey  <tromey@redhat.com>
5186
5187         * bcache.c (deprecated_bcache_added): Initialize obstack.
5188         (bcache_xmalloc): Don't initialize obstack.
5189         (bcache_xfree): Conditionally free obstack.
5190         (bcache_memory_used): Update.
5191
5192 2008-08-05  Tom Tromey  <tromey@redhat.com>
5193
5194         * symfile.c (add_psymbol_to_bcache): Return a const pointer.  Use
5195         bcache_full.
5196         (append_psymbol_to_list): Accept a const pointer.
5197         (add_psymbol_to_list): Fix const correctness.
5198         * bcache.h: (deprecated_bcache_added, deprecated_bcache): Remove.
5199         (bcache_full): Declare.
5200         * bcache.c (bcache_data, deprecated_bcache): Remove.
5201         (bcache): Use bcache_full.
5202         (bcache_full): Rename from deprecated_bcache_added.  Change return
5203         type.
5204
5205 2008-08-04  Stan Shebs  <stan@codesourcery.com>
5206
5207         * solib-svr4.c (BKPT_AT_SYMBOL): Remove, always defined.
5208         (bkpt_names): Remove SOLIB_BKPT_NAME, never defined.
5209         (enable_break): Remove test of BKPT_AT_SYMBOL.
5210
5211 2008-08-02  Keith Seitz  <keiths@redhat.com>
5212
5213         * acinclude.m4: Include ../config/tcl.m4 to pick up
5214         standard Tcl configury bits.
5215         Remove all Tcl, Tk, Itcl, Itk, etc definitions.
5216         * configure.ac: Don't check if ../itcl exists when building
5217         gdbtk. It could be installed.
5218         Rewrite gdbtk configury to allow for using system-supplied
5219         Tcl and Tk. Gdbtk no longer requires build-time access to
5220         itcl and itk.
5221         * Makefile.in: Remove everything related to itcl and itk.
5222         Rewrite the Tcl bits for gdbtk to correspond to rewrite of
5223         configure.ac.
5224         Remove v850ice.o build rule.
5225         (ALL_TCL_CFLAGS): New convenience defintion. Change all
5226         gdbtk sources to use it.
5227         * configure: Regenerate.
5228
5229 2008-07-31  Stan Shebs  <stan@codesourcery.com>
5230
5231         * coffread.c (coff_symtab_read): Remove FUNCTION_EPILOGUE_SIZE.
5232
5233 2008-07-30  Stan Shebs  <stan@codesourcery.com>
5234
5235         * objfiles.c (TARGET_KEEP_SECTION): Remove.
5236         (add_to_objfile_sections): Remove use.
5237
5238 2008-07-29  Tom Tromey  <tromey@redhat.com>
5239
5240         * cli/cli-decode.c (lookup_cmd_1): Use memcpy.
5241         (lookup_cmd_composition): Likewise.
5242
5243 2008-07-29  Tom Tromey  <tromey@redhat.com>
5244
5245         * cli/cli-cmds.c (edit_command): Remove unused variables.  Delete
5246         dead code.  Fix indentation.
5247
5248 2008-07-29  Stan Shebs  <stan@codesourcery.com>
5249
5250         * main.c (captured_main): Remove long-unused #if 0 blocks.
5251
5252 2008-07-28  Tom Tromey  <tromey@redhat.com>
5253
5254         * annotate.h (deprecated_annotate_starting_hook): Remove.
5255         (deprecated_annotate_stopped_hook): Remove.
5256         (deprecated_annotate_exited_hook): Remove.
5257         * Makefile.in (annotate.o): Depend on observer_h.
5258         * top.c (deprecated_delete_breakpoint_hook): Remove.
5259         (deprecated_create_breakpoint_hook): Likewise.
5260         (deprecated_modify_breakpoint_hook): Likewise.
5261         * interps.c (clear_interpreter_hooks): Update for removed hooks.
5262         * breakpoint.c (mention): Don't call removed hook.
5263         (delete_breakpoint): Likewise.
5264         (disable_breakpoint): Likewise.
5265         (do_enable_breakpoint): Likewise.
5266         * annotate.c: Include observer.h.
5267         (breakpoint_changed): Change type of argument.
5268         (_initialize_annotate): Register observers.
5269         (deprecated_annotate_starting_hook): Remove.
5270         (deprecated_annotate_stopped_hook): Remove.
5271         (deprecated_annotate_exited_hook): Remove.
5272         (annotate_starting): Update for hook removal.
5273         (annotate_stopped): Likewise.
5274         (annotate_exited): Likewise.
5275         * defs.h (deprecated_delete_breakpoint_hook): Remove.
5276         (deprecated_create_breakpoint_hook): Likewise.
5277         (deprecated_modify_breakpoint_hook): Likewise.
5278
5279 2008-07-28  Tom Tromey  <tromey@redhat.com>
5280
5281         * main.c (captured_main): Don't use BEFORE_MAIN_LOOP_HOOK.
5282
5283 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5284
5285         * configure.ac: Check for the GNU/Linux ptrace signature.
5286         * configure: Regenerated.
5287
5288 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5289
5290         * linux-nat.c (resume_callback): Add more debugging output.
5291         (linux_nat_has_pending_sigint): New function, based on
5292         linux_nat_has_pending.
5293         (set_ignore_sigint, maybe_clear_ignore_sigint): New functions.
5294         (stop_wait_callback): Remove flush_mask handling.  Honor
5295         ignore_sigint.  Call maybe_clear_ignore_sigint.  Pass NULL
5296         to recursive calls.
5297         (linux_nat_has_pending, flush_callback): Remove.
5298         (linux_nat_filter_event): Check for ignore_sigint.
5299         (linux_nat_wait): Remove flush_mask support and call to
5300         flush_callback.  Use set_ignore_sigint and maybe_clear_ignore_sigint.
5301         * linux-nat.h (struct lwp_info): Add ignore_sigint field.
5302
5303 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5304
5305         * linux-nat.c (count_events_callback, select_event_lwp_callback): Only
5306         report events from resumed threads.
5307
5308 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5309
5310         * mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
5311         (mips_linux_init_abi): Set tdep->syscall_next_pc.
5312         * mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
5313         mips-tdep.h.
5314         (mips32_next_pc): Handle the syscall instruction.
5315         * mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
5316         from mips-tdep.c.  Add syscall_next_pc to gdbarch_tdep.
5317
5318 2008-07-26  Tom Tromey  <tromey@redhat.com>
5319
5320         PR gdb/1158:
5321         * valops.c (value_struct_elt): Treat function-valued field as a
5322         static method.
5323
5324 2008-07-26  Tom Tromey  <tromey@redhat.com>
5325
5326         PR gdb/1136:
5327         * macroexp.c (get_punctuator) <punctuators>: Rearrange to put
5328         longer tokens first.
5329
5330 2008-07-26  Vladimir Prus  <vladimir@codesourcery.com>
5331
5332         Kill cmd_async_ok.
5333         * cli/cli-decode.h (CMD_ASYNC_OK, set_cmd_async_ok)
5334         (get_cmd_async_ok): Remove.
5335         * cli/cli-decode.c (set_cmd_async_ok, get_cmd_async_ok): Remove.
5336         * cli/cli-cmds.c (init_cli_cmds): Don't use set_cmd_async_ok.
5337         * infcmd.c (_initialize_infcmd): Likewise.
5338         * thread.c (_initialize_thread): Likewise.
5339
5340 2008-07-25  Joseph Myers  <joseph@codesourcery.com>
5341
5342         * mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
5343         128-bit long doubles in even-odd pairs of FPRs.  Do not
5344         right-align float arguments for big-endian.
5345         (mips_n32n64_return_value): Apply return value convention for
5346         structs containing one or two floating-point values to soft-float
5347         as well as hard-float.  Handle 128-bit long doubles in such
5348         structs.
5349         (mips_o32_push_dummy_call): Only skip one integer register for a
5350         float argument passed in an FPR.
5351
5352 2008-07-25  Tom Tromey  <tromey@redhat.com>
5353
5354         * tui/tui-hooks.c: Include observer.h.
5355         (tui_event_default, tui_old_event_hooks, tui_event_hooks):
5356         Remove.
5357         (tui_bp_created_observer, tui_bp_deleted_observer,
5358         tui_bp_modified_observer): New globals.
5359         (tui_install_hooks): Use observers, not events.
5360         (tui_remove_hooks): Likewise.
5361         * mi/mi-cmd-break.c: Include observer.h, not gdb-events.h.
5362         (mi_breakpoint_observers_installed, mi_can_breakpoint_notify): New
5363         globals.
5364         (breakpoint_notify): Check mi_can_breakpoint_notify.
5365         (breakpoint_hooks): Remove.
5366         (mi_cmd_break_insert): Attach observers.  Don't use events.
5367         * tracepoint.c: Include observer.h, not gdb-events.h.
5368         (tracepoint_operation, trace_pass_command): Notify observer.
5369         * interps.c: Don't include gdb-events.h.
5370         (clear_interpreter_hooks): Don't call clear_gdb_event_hooks.
5371         * gdbarch.c: Rebuild.
5372         * gdbarch.sh: Emit include for observer.h, not gdb-events.h.
5373         (deprecated_current_gdbarch_select_hack): Notify observer.
5374         * breakpoint.h: Don't include gdb-events.h.
5375         * breakpoint.c: Don't include gdb-events.h.
5376         (condition_command): Notify observer.
5377         (commands_command): Likewise.
5378         (commands_from_control_command): Likewise.
5379         (mention, delete_breakpoint, set_ignore_count): Likewise.
5380         (disable_breakpoint, do_enable_breakpoint): Likewise.
5381         * Makefile.in (gdb_events_h): Remove.
5382         (breakpoint_h): Update.
5383         (COMMON_OBS): Remove gdb-events.o.
5384         (gdb-events.o): Remove.
5385         (breakpoint.o, gdbarch.o, interps.o, tracepoint.o, gdbtk-bp.o,
5386         gdbtk-hooks.o, mi-cmd-break.o, tui-hooks.o): Update.
5387         * gdb-events.c: Remove.
5388         * gdb-events.h: Remove.
5389         * gdb-events.sh: Remove.
5390
5391 2008-07-24  Pedro Alves  <pedro@codesourcery.com>
5392
5393         * remote.c (remote_threads_extra_info): Don't query the remote
5394         server about info on the internally added main thread.
5395
5396 2008-07-24  Aleksandar Ristovski  <aristovski@qnx.com>
5397
5398         * nto-procfs.c (procfs_attach): Populate initial thread list.
5399         (procfs_wait): Return new pid, built from the inferior status.
5400
5401 2008-07-23  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5402
5403         * configure.ac (CONFIG_INITS): Delete long obsoleted variable.
5404         * configure: Regenerate.
5405
5406 2008-07-23  Aleksandar Ristovski  <aristovski@qnx.com>
5407
5408         * nto-procfs.c (procfs_xfer_memory): Changed signature.
5409         (procfs_resume): Workaround for dereferencing type-punned pointer
5410         warning.
5411         * nto-tdep.c (nto_parse_redirection): Change signature to be const
5412         correct.
5413         * nto-tdep.h (nto_parse_redirection): Likewise.
5414
5415 2008-07-21  Stan Shebs  <stan@codesourcery.com>
5416
5417         Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
5418         * gdbarch.sh: Adjust comment to refer to
5419         in_solib_dynsym_resolve_code().
5420         * gdbarch.h, gdbarch.c: Update.
5421         * solib-osf.c: Ditto.
5422         * infrun.c: Ditto.
5423         (handle_inferior_event): Use in_solib_dynsym_resolve_code
5424         unconditionally.
5425         * config/mips/nm-irix5.h: Remove undef of
5426         IN_SOLIB_DYNSYM_RESOLVE_CODE.
5427
5428 2008-07-21  Tom Tromey  <tromey@redhat.com>
5429
5430         * symfile.c (reread_symbols): Don't pass argument to observer.
5431         * exec.c (exec_file_attach): Don't pass argument to observer.
5432         * ada-lang.c (ada_executable_changed_observer): Remove argument.
5433         * symtab.c (symtab_observer_executable_changed): Remove argument.
5434         * observer.sh: Handle functions with no arguments.
5435
5436 2008-07-20  Sergei Poselenov  <sposelenov@emcraft.com>
5437             Chris Demetriou  <cgd@google.com>
5438
5439         * elfread.c (elf_symfile_segments): Fix the check that each loadable
5440         section fits within an ELF segment to handle ELF segments that hit
5441         the end of the address space.
5442
5443 2008-07-20  Chris Demetriou  <cgd@google.com>
5444
5445         * MAINTAINERS (Write After Approval): Add self.
5446
5447 2008-07-18  Tom Tromey  <tromey@redhat.com>
5448
5449         PR gdb/855:
5450         * NEWS: Add entry for macro commands.
5451         * Makefile.in (macrocmd.o): Add gdb_string.h.
5452         * macroscope.h (user_macro_scope): Declare.
5453         (default_macro_scope): Update documentation.
5454         (macro_user_macros): Declare.
5455         * c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
5456         Use user_macro_scope.
5457         (null_macro_lookup): Remove.
5458         * macrotab.h (macro_callback_fn): Declare.
5459         (macro_for_each): Likewise.
5460         (macro_allow_redefinitions): Likewise.
5461         * macrotab.c (foreach_macro): New function
5462         (macro_for_each): Likewise.
5463         (struct macro_table) <redef_ok>: New field.
5464         (macro_allow_redefinitions): New function.
5465         (new_macro_table): Update.
5466         (macro_define_function): Likewise.
5467         (macro_define_object): Likewise.
5468         * macroscope.c (user_macro_scope): New function.
5469         (default_macro_scope): Use it.
5470         (macro_user_macros): New global.
5471         (standard_macro_lookup): Look in macro_user_macros.
5472         (_initialize_macroscope): New function.
5473         * macroexp.h (macro_is_whitespace, macro_is_digit,
5474         macro_is_identifier_nondigit): Declare.
5475         * macroexp.c (macro_is_whitespace): Rename.  No longer static.
5476         (macro_is_digit): Likewise.
5477         (macro_is_identifier_nondigit): Likewise.
5478         (get_identifier): Update.
5479         (get_pp_number): Likewise.
5480         (get_token): Likewise.
5481         * macrocmd.c (skip_ws): New function.
5482         (extract_identifier): Likewise.
5483         (free_macro_definition_ptr): Likewise.
5484         (user_macros): Remove.
5485         (macro_define_command): Implement.
5486         (_initialize_macrocmd): Update.
5487         (macro_undef_command): Implement.
5488         (print_one_macro): New function.
5489         (macro_list_command): Implement.
5490
5491 2008-07-18  Joseph Myers  <joseph@codesourcery.com>
5492
5493         * configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
5494         in BFD ELF check.
5495         * configure: Regenerate.
5496
5497 2008-07-17  Paul Pluzhnikov  <ppluzhnikov@google.com>
5498
5499         * auxv.c (fprint_target_auxv): Stop at AT_NULL.
5500
5501 2008-07-15  Andreas Schwab  <schwab@suse.de>
5502
5503         * valops.c (value_cast_pointers): Follow typedefs when checking
5504         result of coercion.
5505
5506 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5507
5508         * block.c (block_function): Renamed to ...
5509         (block_linkage_function): ... this.  All callers changed.
5510         * block.h (block_function): Renamed to ...
5511         (block_linkage_function): ... this.
5512
5513 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5514
5515         * mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.
5516
5517 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5518
5519         * frame.c (frame_sp_unwind): Delete.
5520         (get_frame_sp): Do not use it.
5521         * frame.h (frame_sp_unwind): Delete prototype.
5522
5523 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5524
5525         * ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.
5526
5527 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5528
5529         * dwarf2-frame.c (dwarf2_frame_cache): Update comment.
5530         * frame.c (frame_unwind_address_in_block): Delete.
5531         (get_frame_address_in_block): Do not use it.  Check the type
5532         of the next frame first.
5533         (frame_cleanup_after_sniffer): Update comment.
5534         * frame.h (frame_unwind_address_in_block): Delete prototype.
5535         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
5536
5537 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5538
5539         * frame.c (frame_func_unwind): Delete.
5540         (get_frame_func): Do not use it.
5541         * frame.h (frame_func_unwind): Delete prototype.
5542         * hppa-tdep.c (hppa_frame_cache): Update comment.
5543         * rs6000-tdep.c (rs6000_frame_cache): Update comment.
5544
5545 2008-07-14  Stan Shebs  <stan@codesourcery.com>
5546
5547         * remote-sim.c (init_gdbsim_ops): Remove
5548         TARGET_REDEFINE_DEFAULT_OPS.
5549
5550 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5551
5552         * findvar.c (read_var_value): Remove unused variable.
5553
5554 2008-07-15  Luis Machado  <luisgpm@br.ibm.com>
5555
5556         * infrun.c (handle_inferior_event): Tag threads as stopped
5557         before inserting breakpoints.
5558
5559 2008-07-15  Hui Zhu  <teawater@gmail.com>
5560
5561         * MAINTAINERS: Added myself to section Write After Approval.
5562
5563 2008-07-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
5564
5565         PR gdb/2477
5566         * cp-abi.c (value_virtual_fn_field): Handle invalid pointers.
5567
5568 2008-07-14  Pedro Alves  <pedro@codesourcery.com>
5569
5570         * i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
5571         (i386_dicos_push_dummy_code): New.
5572         (i386_dicos_init_abi): Don't register i386_dicos_frame_align.
5573         Register i386_dicos_push_dummy_code.
5574
5575 2008-07-14  Markus Deuling  <deuling@de.ibm.com>
5576
5577         * mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
5578         (mips_n32n64_push_dummy_call, mips_o64_return_value)
5579         (mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
5580
5581         (MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
5582         (fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
5583         (mips_n32n64_fp_arg_chunk_p): Update caller.
5584
5585         (mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
5586         (mips_n32n64_push_dummy_call): Update caller.
5587
5588         (MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
5589         current_gdbarch.
5590         (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
5591         (mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
5592
5593
5594         (MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
5595         current_gdbarch.
5596         (mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
5597         (mips_o64_push_dummy_call): Update caller.
5598
5599         (MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
5600         (fp_register_arg_p, mips_dump_tdep): Update caller.
5601
5602         (set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
5603         (mips16_scan_prologue, mips32_scan_prologue): Update caller.
5604
5605         (reset_saved_regs): Make static.  Add gdbarch as parameter.  Replace
5606         current_gdbarch.
5607         (mips32_scan_prologue): Update caller.
5608
5609         (heuristic_proc_start): Add gdbarch as parameter. Replace
5610         current_gdbarch.
5611         (mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
5612
5613         * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
5614         (mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
5615         the current architecture. Update call to getregs_supplies.
5616         (getregs_supplies): Add gdbarch as parameter and replace
5617         current_gdbarch.
5618
5619         * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
5620         get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
5621         NBSD_MIPS_JB_ELEMENT_SIZE.
5622         (NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
5623         replace current_gdbarch.
5624
5625         * remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
5626         current_gdbarch.
5627         (mips_fetch_registers, mips_store_registers): Update call
5628         to mips_map_regno.
5629         (mips_load): Use get_regcache_arch to get at the current_architecture
5630         and replace current_gdbarch.
5631
5632 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5633
5634         * thread.c (restore_selected_frame): On fail to restore, select
5635         the innermost frame, and don't crash when warning the user.
5636
5637 2008-07-13  Hui Zhu  <teawater@gmail.com>
5638
5639         * symtab.c (expand_line_sal): Fix a memory leak.
5640
5641 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5642
5643         * utils.c (struct continuation): Define as inheriting struct
5644         cleanup.
5645         (add_continuation, do_all_continuations)
5646         (discard_all_continuations, add_intermediate_continuation)
5647         (do_all_intermediate_continuations)
5648         (discard_all_intermediate_continuations): Adjust.
5649
5650 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5651
5652         Skip varobj in running threads.
5653         * mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
5654         thread is not stopped, skip the varobj.
5655         * Makefile.in: Update dependencies.
5656
5657 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5658
5659         Enable all commands while inferiour is running
5660         * mi/mi-main.c (mi_cmd_execute): Don't check if
5661         inferiour is executing.
5662
5663 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5664
5665         Allow all CLI command even if target is executing.
5666         * gdb/top.c (execute_command_1): Don't check if the inferiour
5667         is running.
5668
5669 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5670
5671         * mi/mi-main.c (mi_cmd_execute): Remove unused variable.
5672         Fix printing of frame, when frame is wrong.
5673
5674 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5675
5676         * spu-tdep.c (spu_frame_unwind_cache): Do not error if
5677         backchain is unreadable.
5678
5679 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5680
5681         * spu-linux-nat.c: Include "gdbthread.h".
5682         (spu_child_post_startup_inferior): Register main thread.
5683         (spu_child_post_attach): Likewise.
5684         * Makefile.in (spu-linux-nat.o): Update dependencies.
5685
5686 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5687
5688         Rewrite continuations internals on top of cleanups and plug
5689         continuation arguments leaks.
5690
5691         * defs.h (struct continuation): Make it opaque.
5692         (add_continuation, add_intermediate_continuation): Drop the int
5693         argument of the continuation hook argument.  Add
5694         continuation_free_args argument.
5695         (do_all_continuations, do_all_intermediate_continuations): Drop
5696         the error_p argument.
5697
5698         * utils.c (add_continuation): Drop the int argument of the
5699         continuation hook argument.  Add continuation_free_args argument.
5700         Reimplement on top of cleanups.
5701         (do_all_continuations): Drop error argument.  Reimplement on top
5702         of cleanups.
5703         (discard_all_continuations): Reimplement on top of cleanups.
5704         (add_intermediate_continuation): Drop the int argument of the
5705         continuation hook argument.  Add continuation_free_args argument.
5706         Reimplement on top of cleanups.
5707         (do_all_intermediate_continuations): Drop error argument.
5708         Reimplement on top of cleanups.
5709         (discard_all_intermediate_continuations): Reimplement on top of
5710         cleanups.
5711
5712         * breakpoint.c (until_break_command_continuation): Drop error
5713         argument.  Add xfree as continuation argument deleter.
5714
5715         * inf-loop.c (inferior_event_handler): On error, discard all
5716         continuations.  Adjust to new do_all_intermediate_continuations
5717         and do_all_continuations interfaces.
5718
5719         * infcmd.c (step_1_continuation): Drop error_p argument.  Adjust.
5720         Pass xfree as continuation argument deleter.
5721         (finish_command_continuation): Drop error_p argument.  Adjust.
5722         (finish_command_continuation_free_arg): New.
5723         (finish_command): Pass finish_command_continuation_free_arg as
5724         continuation argument deleter.  Adjust to new do_all_continuations
5725         interfaces.
5726         (attach_command_continuation): Drop error_p argument.
5727         (attach_command_continuation_free_args): New.
5728         (attach_command): Pass attach_command_continuation_free_args as
5729         continuation argument deleter.
5730
5731         * interps.c (interp_set): Adjust to new do_all_continuations
5732         interfaces.
5733
5734         * event-top.c (stdin_event_handler): In error, also discard the
5735         intermediate continuations.
5736
5737 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5738
5739         Replace struct continuation_args by void* and per command structs.
5740
5741         * top.c (execute_command): Remove unused arg1 and arg2 locals.
5742
5743         * breakpoint.c (struct until_break_command_continuation_args):
5744         New.
5745         (until_break_command_continuation): Take a void* instead of a
5746         continuations_arg.  Adjust.
5747         (until_break_command): Adjust to use struct
5748         until_break_command_continuation_args instead of struct
5749         continuation_arg.
5750
5751         * infcmd.c (struct step_1_continuation_args): New.
5752         (step_1_continuation): Take a void* instead of a
5753         continuations_arg.  Adjust to use struct step_1_continuation_args.
5754         (step_once): Adjust to use struct step_1_continuation_args.
5755
5756         (struct finish_command_continuation_args): New.
5757         (finish_command_continuation): Take a void* instead of a
5758         continuations_arg.  Adjust to use struct
5759         finish_command_continuation_args.
5760         (finish_command): Adjust to use struct
5761         finish_command_continuation_args.
5762         (struct attach_command_continuation_args): New.
5763         (attach_command_continuation): Take a void* instead of a
5764         continuations_arg.  Adjust to use struct
5765         attach_command_continuation_args.
5766         (attach_command): Adjust to use struct
5767         attach_command_continuation_args.
5768
5769         * defs.h (struct continuation_arg): Delete.
5770         (struct continuation): Replace the struct continuation_arg*
5771         parameter of continuation_hook by a void*.  Replace "arg_list"
5772         member by a new "args" member with void* type.
5773         (add_continuation, add_intermediate_continuation): Replace struct
5774         continuation_arg type usages by void* usages.
5775
5776         * utils.c (add_continuation, do_all_continuations)
5777         (add_intermediate_continuation)
5778         (do_all_intermediate_continuations): Replace struct
5779         continuation_arg type usages by void* usages.  Pass "args" instead
5780         of "arg_list".
5781
5782 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5783
5784         * infrun.c (struct thread_stepping_state): Delete sal member.
5785         (init_thread_stepping_state): Add local sal.  Use it instead of
5786         tss->sal.
5787         (handle_inferior_event): New local stop_pc_sal.  Use it instead of
5788         tss->sal.
5789         (step_into_function): Add local stop_func_sal.  Use it instead of
5790         tss->sal.
5791
5792 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5793
5794         Implement -exec-continue/-exec-interrupt --all.
5795         * infcmd.c (continue_1): New, extracted from
5796         (continue_command): ...here.
5797         (interrupt_target_1): New, extracted from
5798         (interrupt_target_command): ...here.
5799         * inferior.h (continue_1, interrupt_target_1): New.
5800         * mi/mi-main.c (mi_cmd_exec_continue)
5801         (mi_cmd_exec_interrupt): Handle --all.
5802
5803 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5804
5805         Implement --thread and --frame.
5806         * gdbthread.h (find_thread_id): Declare.
5807         * thread.c (find_thread_id): Make non-static.
5808         * mi/mi-main.c (mi_cmd_execute): Switch to the right
5809         thread and frame, if necessary.
5810         * mi/mi-parse.c (mi_parse): Handle --thread and --frame.
5811         * mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
5812
5813 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5814
5815         * infrun.c (resume): Discard cleanups on early exit path.
5816
5817 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5818
5819         * infrun.c (normal_stop): For MI, report which threads
5820         were stopped.
5821
5822 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5823
5824         Report thread state in -thread-info output.
5825         * thread.c (print_thread_info): Add new field "state".
5826
5827 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5828
5829         * infrun.c (handle_inferior_event): Also ignore a
5830         TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
5831
5832 2008-07-11  Tom Tromey  <tromey@redhat.com>
5833
5834         * completer.c (complete_line_internal): New function, from
5835         complete_line.  Add 'for_help' parameter.
5836         (complete_line): Use it.
5837         (command_completer): Move later.  Rewrite.
5838
5839 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5840
5841         * thread.c (thread_apply_command): Move making the cleanup out of
5842         the loop.
5843
5844 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5845
5846         Exited threads.
5847
5848         * thread.c (enum thread_state): New.
5849         (thread_state main_thread_running): Delete, in favor of...
5850         (thread_state main_thread_state): ... this.  Update throughout.
5851         (clear_thread_inferior_resources): New, split from free_thread.
5852         (free_thread): Call clear_thread_inferior_resources.
5853         (init_thread_list): Set main thread to stopped state.
5854         (add_thread_silent): Take care of PTID reuses.
5855         (delete_thread): If deleting inferior_ptid or a thread with
5856         refcount > 0, mark it as exited, but still keep it in the list.
5857         Only notify of thread exits, if we haven't done so yet.
5858         (iterate_over_threads): Make it safe to delete threads while
5859         iterating over them.
5860         (do_captured_list_thread_ids): Don't account for exited threads.
5861         (thread_alive): Check for the THREAD_EXITED state, and don't set
5862         ptid to -1 on exited threads.
5863         (set_running): Update to account for extra possible states.
5864         (is_thread_state): New.
5865         (is_stopped, is_exited): New.
5866         (is_running): Implement in terms of is_thread_state.
5867         (any_running): Update.
5868         (print_thread_info): Update.  Account for exited threads.  Don't
5869         warn about missed frame restoring here, its done in the cleanup.
5870         (switch_to_thread): Don't read from a thread that has gone.
5871         (restore_current_thread): In non-stop mode, do a full context
5872         switch.
5873         (restore_selected_frame): Add a frame_level argument.  Rewrite.
5874         (struct current_thread_cleanup): Add selected_frame_level and
5875         was_stopped members.
5876         (do_restore_current_thread_cleanup): Check if thread was stopped
5877         and still is, and if the target has registers, stack and memory
5878         before restoring the selected frame.  Don't delete the cleanup
5879         argument here.
5880         (restore_current_thread_cleanup_dtor): New.
5881         (make_cleanup_restore_current_thread): Remove all arguments.
5882         Rewrite.
5883         (thread_apply_all_command): Update.  Prune threads.
5884         (thread_apply_command): Update.
5885         (thread_command): Account for currently selected exited thread.
5886         (do_captured_thread_select): Check for a running thread.  Prune
5887         threads.
5888         (_initialize_thread): Make "info threads", "thread", "thread
5889         apply", and "thread apply all" appliable without a selected thread.
5890         * gdbthread.h (struct thread_info): Replace running_ by state_.
5891         Add refcount.
5892         (is_exited, is_stopped): Declare.
5893         (make_cleanup_restore_current_thread): Remove all arguments.
5894         * infrun.c: Include "event-top.h".
5895         (fetch_inferior_event): In non-stop mode, restore selected thread
5896         and frame after handling the event and running breakpoint
5897         commands.  Display GDB prompt if needed.
5898         (normal_stop): In non-stop mode, don't print thread switching
5899         notice.
5900         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
5901         (get_cmd_no_selected_thread_ok): New.
5902         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
5903         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
5904         Declare.
5905         * cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
5906         no-selected-thread ok.
5907         * top.c (execute_command): Check for non no-selected-thread-ok
5908         commands.
5909         * linux-nat.c (struct saved_ptids, threads_to_delete)
5910         (record_dead_thread, prune_lwps): Delete.
5911         (exit_lwp): Unconditionally delete thread.
5912         (linux_nat_resume): Remove prune_lwps call.
5913         * infcmd.c (proceed_thread_callback): Check if !is_stopped instead
5914         of is_running.  Adjust to make_cleanup_restore_current_thread
5915         interface change.
5916         * mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
5917         selected thread has exited.
5918         * inf-loop.c (inferior_event_handler): Don't display the prompt
5919         here.
5920         * varobj.c (c_value_of_root): Update.
5921         * defs.h (make_cleanup_dtor): Declare.
5922         * utils.c (make_cleanup_dtor): New.
5923
5924         * Makefile.in (infrun.o): Depend on $(event_top_h).
5925
5926 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5927
5928         Add "continue -a" and "interrupt -a" options for non-stop mode.
5929
5930         * infcmd.c (proceed_thread_callback, do_context_switch_to): New.
5931         (continue_command): Add "-a" option.
5932         (interrupt_target_command): Add "-a" option.
5933         (_initialize_infcmd): Add extend help of continue and interrupt
5934         command to mention the new "-a" option.  Mark "continue" async ok.
5935
5936 2008-07-10  Doug Evans  <dje@google.com>
5937
5938         Add "set print symbol-loading on|off".
5939         * NEWS: Document new option.
5940         * symfile.h (print_symbol_loading): Declare.
5941         * symfile.c (print_symbol_loading): New global.
5942         (symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
5943         from ..." if print_symbol_loading.
5944         (_initialize_symfile): Add set/show print symbol-loading.
5945         * solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
5946         if print_symbol_loading.
5947
5948 2008-07-10  Pedro Alves  <pedro@codesourcery.com>
5949
5950         Non-stop linux native.
5951
5952         * linux-nat.c (linux_test_for_tracefork): Block events while we're
5953         here.
5954         (get_pending_status): Implement non-stop mode.
5955         (linux_nat_detach): Stop threads before detaching.
5956         (linux_nat_resume): In non-stop mode, always resume only a single
5957         PTID.
5958         (linux_handle_extended_wait): On a clone event, in non-stop mode,
5959         add new lwp to GDB's thread table, and mark as running, executing
5960         and stopped appropriately.
5961         (linux_nat_filter_event): Don't assume there are other running
5962         threads when a thread exits.
5963         (linux_nat_wait): Mark the main thread as running and executing.
5964         In non-stop mode, don't stop all lwps.
5965         (linux_nat_kill): Stop lwps before killing them.
5966         (linux_nat_thread_alive): Use signal 0 to detect if a thread is
5967         alive.
5968         (send_sigint_callback): New.
5969         (linux_nat_stop): New.
5970         (linux_nat_add_target): Set to_stop to linux_nat_stop.
5971
5972         * linux-nat.h (thread_db_attach_lwp): Declare.
5973
5974         * linux-thread-db.c (thread_get_info_callback): Check for new
5975         threads if we have none.
5976         (thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
5977         stopped lwp.  Check for new threads if we have none.
5978         (thread_db_attach_lwp): New.
5979         (thread_db_init): Set proc_handle.pid to inferior_ptid.
5980         (check_event): Set proc_handle.pid to the stopped lwp.
5981         (thread_db_find_new_threads): Set proc_handle.pid to any stopped
5982         lwp available, bail out if there is none.
5983
5984         * linux-fork.c (linux_fork_killall): Use SIGKILL instead of
5985         PTRACE_KILL.
5986
5987 2008-07-10  Kevin Buettner  <kevinb@redhat.com>
5988
5989         * rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
5990         `current_pc' from CORE_ADDR to ULONGEST.
5991
5992         * remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
5993         gdbsim_stop().
5994
5995 2008-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
5996
5997         * NEWS (New commands): Mention "set disable-randomization".
5998         * configure.ac: Add check for HAVE_PERSONALITY and
5999         HAVE_DECL_ADDR_NO_RANDOMIZE.
6000         * configure, config.in: Regenerate.
6001         * linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>.
6002         [HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set
6003         ADDR_NO_RANDOMIZE.
6004         (disable_randomization, show_disable_randomization)
6005         (set_disable_randomization): New.
6006         (linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables
6007         PERSONALITY_ORIG and PERSONALITY_SET.  Disable randomization upon the
6008         variable DISABLE_RANDOMIZATION.
6009         (_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable
6010         DISABLE_RANDOMIZATION.
6011
6012 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6013
6014         Adjust all targets to new target_stop interface.
6015
6016         * gnu-nat.c (gnu_stop): Add ptid argument.
6017         * go32-nat.c (go32_stop): Add ptid argument.
6018         (go32_create_inferior): Pass inferior_ptid to go32_stop.
6019         * hpux-thread.c (hpux_thread_stop): Add ptid argument.
6020         * monitor.c (monitor_stop): Add ptid argument.
6021         (monitor_open): Pass inferior_ptid to monitor_stop.
6022         (monitor_interrupt): Pass inferior_ptid to target_stop.
6023         (monitor_stop): Add ptid argument.
6024         * nto-procfs.c (nto_interrupt): Pass inferior_ptid to target_stop.
6025         (procfs_create_inferior): Add ptid argument.
6026         * procfs.c (procfs_stop): Add ptid argument.
6027         * remote-m32r-sdi.c (m32r_stop): Add ptid argument.
6028         * remote-sim.c (gdbsim_stop): Add ptid argument.
6029         * sol-thread.c (sol_thread_stop): Add ptid argument.
6030         * win32-nat.c (win32_stop): Add ptid argument.
6031
6032 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6033
6034         Non-stop inferior control.
6035
6036         * infrun.c (resume): In non-stop mode, always resume just one
6037         thread.
6038         (proceed): Don't call prepare_to_proceed in non-stop mode.
6039         (fetch_inferior_event): In non-stop mode, switch context before
6040         handling the event.
6041         (error_is_running, ensure_not_running): New.
6042         (handle_inferior_event): In non-stop mode: Mark only the event
6043         thread as stopped.  Require that the target module manages adding
6044         threads to the thread list.  Assert that there isn't a
6045         deferred_step_ptid set.  Don't switch to infwait_thread_hop_state.
6046         (normal_stop): Only mark not-running if inferior hasn't exited.
6047         In non-stop mode, only mark the event thread.
6048
6049         * thread.c:Include "cli/cli-decode.h".
6050         (print_thread_info): Don't read from a running thread.
6051         Output "(running)" if thread is running.
6052         (switch_to_thread): Don't read stop_pc if thread is executing.
6053         (do_restore_current_thread_cleanup): Don't write to a running
6054         thread.
6055         (thread_apply_all_command): Don't read from a running thread.  In
6056         non-stop mode, do a full context-switch instead of just switching
6057         threads.
6058         (thread_apply_command): In non-stop mode, do a full context-switch
6059         instead of just switching threads.
6060         (do_captured_thread_select): Likewise.  Inform user if selected
6061         thread is running.
6062         (_initialize_thread): Mark "info threads" and "thread" and
6063         async_ok.
6064
6065         * inf-loop.c (inferior_event_handler): In non-stop mode, don't
6066         unregister the target from the event loop.
6067
6068         * infcmd.c (continue_command, step_1, jump_command)
6069         (signal_command): Ensure the selected thread isn't running.
6070         (interrupt_target_command): In non-stop mode, interrupt only the
6071         selected thread.
6072
6073         * inferior.h (error_is_running, ensure_not_running): Declare.
6074
6075         * target.h (struct target_ops): Add ptid argument to the to_stop
6076         member.
6077         (target_stop): Add ptid_t argument.
6078
6079         * target.c (update_current_target): Add ptid argument to to_stop's
6080         type.
6081         (debug_to_stop): Add ptid_t argument.
6082         (debug_to_rcmd): Set to_stop_ptid.
6083
6084         * remote.c (remote_stop): Add ptid_t argument.
6085         (async_remote_interrupt): Add inferior_ptid to target_stop.
6086         * inf-ptrace.c (inf_ptrace_stop): Add ptid argument.
6087
6088         * Makefile.in (thread.o): Depend on $(cli_decode_h).
6089
6090 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6091
6092         Don't rely on ecs->wait_for_more.
6093
6094         * infrun.c (proceed): Clear the stepping state, set
6095         previous_inferior_ptid and clear infwait state.
6096         (wait_for_inferior): Don't clear the stepping state, set
6097         previous_inferior_ptid, or clear the infwait state here.
6098         (fetch_inferior_event): Don't clear the stepping state, set
6099         previous_inferior_ptid, or clear the infwait state here.  Don't
6100         condition on wait_for_more.
6101
6102 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6103
6104         Refactor infrun a bit.
6105
6106         * infrun.c (currently_stepping): Take a struct
6107         thread_stepping_state instead of an execution_control_state.
6108         (struct thread_stepping_state): New, split from
6109         execution_control_state.
6110         (gtss, tss): New globals.
6111         (proceed): Clear the stepping state, set previous_inferior_ptid
6112         and clear infwait state.
6113         (init_wait_for_inferior): Clear the stepping state,
6114         previous_inferior_ptid and infwait state.
6115         (waiton_ptid, infwait_state): New, split from
6116         execution_control_state.
6117         (struct execution_control_state): Members that persist through
6118         events moved out to either struct thred_stepping_state or made
6119         global.  Deleted unneeded wp, saved_inferior_ptid, tmpstatus.
6120         (wait_for_inferior, fetch_inferior_event): Use local
6121         execution_control_state.  Update to execution_control_state split.
6122         (init_execution_control_state): Adjust.
6123         (init_thread_stepping_state): New, extracted from
6124         init_execution_control_state.
6125         (context_switch): Take a ptid instead of an
6126         execution_control_state.
6127         (context_switch_to): Adjust.
6128         (adjust_pc_after_break): Adjust.
6129         (init_infwait_state): New.
6130         (handle_inferior_event): Adjust.
6131
6132 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6133             Vladimir Prus  <vladimir@codesourcery.com>
6134
6135         Per-thread commands.
6136
6137         * gdbthread.h: Remove unneeded forward declarations.
6138         Include "inferior.h".
6139         (struct thread_info): Add continuations,
6140         intermediate_continuations, proceed_to_finish, step_over_calls,
6141         stop_step, step_multi and stop_signal members.
6142         (save_infrun_state): Add continuations,
6143         intermediate_continuations, proceed_to_finish, step_over_calls,
6144         stop_step, step_multi, stop_signal and stop_bpstat parameters.
6145         (load_infrun_state): Add continuations,
6146         intermediate_continuations, proceed_to_finish, step_over_calls,
6147         stop_step, step_multi, stop_signal and stop_bpstat parameters.
6148
6149         * thread.c (load_infrun_state): In non-stop mode, load
6150         continuations, intermediate_continuations, proceed_to_finish,
6151         step_over_calls, stop_step, step_multi and stop_signal.
6152         (save_infrun_state): Store continuations,
6153         intermediate_continuations, proceed_to_finish, step_over_calls,
6154         stop_step, step_multi, stop_signal and stop_bpstat.
6155         (save_infrun_state): Store continuations,
6156         intermediate_continuations, proceed_to_finish, step_over_calls,
6157         stop_step, step_multi, stop_signal and stop_bpstat.
6158         (free_thread): Clear The thread's stop_bpstat.
6159
6160         * inferior.h (context_switch_to): Declare.
6161
6162         * infrun.c (ecss): New global.
6163         (context_switch): Context switch continuations,
6164         intermediate_continuations, proceed_to_finish, step_over_calls,
6165         stop_step, step_multi, stop_signal and stop_bpstat.
6166         (wait_for_inferior): Use global ecss.
6167         (async_ecss, async_ecs): Delete.
6168         (fetch_inferior_event): Use global ecss.
6169         (context_switch_to): New.
6170
6171         * top.c (execute_command): In non-stop, only check if the current
6172         thread is running, in all-stop, check if there's any thread
6173         running.
6174
6175         * breakpoint.c (bpstat_remove_breakpoint): New.
6176         (bpstat_remove_breakpoint_callback): New.
6177         (delete_breakpoint): Clear the stop_bpstats of all threads.
6178
6179         * mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
6180         current thread is running, in all-stop, check if there's any
6181         thread running.
6182
6183         * Makefile.in (gdbthread_h): Depend on $(inferior_h).
6184
6185 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6186
6187         Add non_stop global.
6188
6189         * inferior.h (non_stop): Declare.
6190         * infrun.c (non_stop, non_stop_1): New.
6191         (set_non_stop, show_non_stop): New.
6192         (_initialize_infrun): Add "set/show non-stop" command.
6193
6194 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6195
6196         Adjust fork/vfork/exec to pass ptids around.
6197
6198         * target.h (struct target_waitstatus): Store related_pid as a ptid.
6199         (inferior_has_forked, inferior_has_vforked, inferior_has_execd):
6200         Take a ptid_t.
6201         * breakpoint.h (struct breakpoint): Change forked_inferior_pid
6202         type to ptid.
6203         * breakpoint.c (print_it_typical, bpstat_check_location)
6204         (print_one_breakpoint_location, set_raw_breakpoint_without_location)
6205         (create_fork_vfork_event_catchpoint): Adjust.
6206         * infrun.c (fork_event): Change parent_pid and child_pid types to
6207         ptid.
6208         (follow_exec, inferior_has_forked, inferior_has_vforked)
6209         (inferior_has_execd): Take a ptid_t and don't trim it.
6210         * linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
6211         * linux-nat.c (linux_child_follow_fork): Adjust.
6212         * inf-ptrace.c (inf_ptrace_wait): Adjust.
6213         * inf-ttrace.c (inf_ttrace_wait): Adjust.
6214         * win32-nat.c (get_win32_debug_event): Don't set related_pid.
6215
6216 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6217
6218         Add "executing" property to threads.
6219
6220         * inferior.h (target_executing): Delete.
6221         * gdbthread.h (struct thread_info): Add executing_ field.
6222         (set_executing, is_executing): New.
6223         * thread.c (main_thread_executing): New.
6224         (init_thread_list): Clear it and also main_thread_running.
6225         (is_running): Return false if target has no execution.
6226         (any_running, is_executing, set_executing): New.
6227
6228         * top.c: Include "gdbthread.h".
6229         (target_executing): Delete.
6230         (execute_command): Replace target_executing check by any_running.
6231         * event-top.c: Include "gdbthread.h".
6232         (display_gdb_prompt, command_handler): Replace target_executing by
6233         is_running.
6234         * inf-loop.c: Include "gdbthread.h".  Don't mark as not executing
6235         here.  Replace target_executing by is_running.
6236         * infrun.c (handle_inferior_event): Mark all threads as
6237         not-executing.
6238         * linux-nat.c (linux_nat_resume): Don't mark thread as executing
6239         here.
6240         * stack.c (get_selected_block): Return null if inferior is
6241         executing.
6242         * target.c (target_resume): Mark resumed ptid as executing.
6243         * breakpoint.c (until_break_command): Replace target_executing
6244         check by is_executing.
6245         * remote.c (remote_async_resume): Don't mark inferior as executing
6246         here.
6247         * mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
6248         by any_running.
6249
6250         * mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
6251         (mi_execute_async_cli_command): Replace target_executing by
6252         is_running.
6253
6254         * frame.c (get_current_frame): Error out if the current thread is
6255         executing.
6256         (has_stack_frames): New.
6257         (get_selected_frame, deprecated_safe_get_selected_frame): Check
6258         has_stack_frames.
6259
6260         * Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
6261         $(gdbthread_h).
6262
6263 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6264
6265         * symfile.c (load_command): Reopen the exec file and reread
6266         symbols before anything else.
6267
6268 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6269
6270         * remote-sim.c: Include gdbthread.h.
6271         (remote_sim_ptid): New global.
6272         (gdbsim_create_inferior): Silently add the main task to GDB's
6273         thread list.
6274         (gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
6275         task from GDB's thread list.
6276         (gdbsim_resume): Adjust to use remote_sim_ptid.
6277         (gdbsim_thread_alive, gdbsim_pid_to_str): New.
6278         (init_gdbsim_ops): Register gdbsim_thread_alive and
6279         gdbsim_pid_to_str.
6280         (_initialize_remote_sim): Initialize remote_sim_ptid.
6281         * Makefile.in (remote-sim.o): Depend on $(gdbthread_h).
6282
6283 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6284
6285         * monitor (monitor_ptid): New global.
6286         (monitor_open): Silently add the main task to GDB's thread list.
6287         (monitor_close, monitor_mourn_inferior): Silently delete the main
6288         task from GDB's thread list.
6289         (monitor_thread_alive, monitor_pid_to_str): New.
6290         (init_base_monitor_ops): Register monitor_thread_alive and
6291         monitor_pid_to_str.
6292         (_initialize_remote_monitors): Initialize monitor_ptid.
6293
6294         * gdbthread.h (delete_thread_silent): Declare.
6295         * thread.c (delete_thread): Rename to ...
6296         (delete_thread_1): ... this.  Add "silent" parameter.  If silent,
6297         don't do exit notifications.
6298         (delete_thread, delete_thread_silent): New, as wrappers to
6299         delete_thread_1.
6300
6301 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6302
6303         * breakpoint.c (update_global_location_list): Add boolean
6304         "should_insert" argument.  Only insert locations if caller told it
6305         too.
6306         (update_global_location_list_nothrow): Add boolean "should_insert"
6307         argument.  Pass it to update_global_location_list.
6308         (insert_breakpoints, create_longjmp_breakpoint)
6309         (create_overlay_event_breakpoint, enable_overlay_breakpoints)
6310         (create_thread_event_breakpoint, create_solib_event_breakpoint)
6311         (create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
6312         (enable_watchpoints_after_interactive_call_stop)
6313         (set_momentary_breakpoint, create_breakpoints)
6314         (break_command_really, watch_command_1)
6315         (create_ada_exception_breakpoint, update_breakpoint_locations)
6316         (do_enable_breakpoint, enable_command): Pass true to
6317         update_global_location_list.
6318         (bpstat_stop_status, disable_overlay_breakpoints)
6319         (disable_watchpoints_before_interactive_call_start)
6320         (delete_breakpoint, disable_breakpoint, disable_command): Pass
6321         false to update_global_location_list.
6322         (update_breakpoints_after_exec): Don't temporarily disable
6323         always-inserted mode.
6324
6325 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6326
6327         * breakpoint.c (mark_breakpoints_out): Make public.
6328         (update_breakpoints_after_exec): Don't call mark_breakpoints_out
6329         here.  Update comment.
6330         * breakpoint.h (mark_breakpoints_out): Declare.
6331
6332         * linux-nat.c (linux_handle_extended_wait): On
6333         TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
6334         * inf-ttrace.c (inf_ttrace_wait): Likewise.
6335
6336 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6337
6338         * infrun.c (follow_exec): Reset shared libraries before adding the
6339         main exec file.
6340
6341 2008-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6342
6343         * breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.
6344
6345 2008-07-07  Pedro Alves  <pedro@codesourcery.com>
6346
6347         * i386-dicos-tdep.c: Include "inferior.h".
6348         (i386_dicos_frame_align): New.
6349         (i386_dicos_init_abi): Register i386_dicos_frame_align.  Set call
6350         dummy location ON_STACK.
6351         * Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).
6352
6353 2008-07-07  Joel Brobecker  <brobecker@adacore.com>
6354
6355         * gstdint.h: New file.
6356
6357 2008-07-05  Vladimir Prus  <vladimir@codesourcery.com>
6358
6359         * mi/mi-interp.c (mi_on_resume): Don't try to report
6360         resumed thread it the thread list is empty.
6361
6362 2008-07-05  Pierre Muller  <muller@ics.u-strasbg.fr>
6363
6364         * cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
6365         completer for set to filename_completer.
6366
6367         NEWS: Mention it.
6368
6369 2008-07-04  Vladimir Prus  <vladimir@codesourcery.com>
6370
6371         Implement -target-attach.
6372         * mi/mi-cmds.c (mi_cmds): Forward -target-attach to CLI attach.
6373
6374 2008-06-21  Hui Zhu  <teawater@gmail.com>
6375
6376         * target-descriptions.c (maint_print_c_tdesc_cmd): Fix a memory leak.
6377
6378 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6379
6380         * config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.
6381         * config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete.
6382
6383         * target.h (struct target_ops): Add to_attach_no_wait member.
6384         (target_attach_no_wait): New.
6385         * target.c (update_current_target): Inherit to_attach_no_wait.
6386
6387         * infcmd.c: Replace ATTACH_NO_WAIT compile time check by
6388         target_attach_no_wait runtime check.
6389
6390         * gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops.
6391         * win32-nat.c (init_win32_ops): Set to_attach_no_wait in
6392         win32_ops.
6393
6394 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6395
6396         * i386-tdep.c (i386_displaced_step_fixup): Condition log printing
6397         on debug_displaced being set.
6398
6399 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6400
6401         * frame.c (get_prev_frame_1): Call frame_unwind_find_by_frame
6402         directly instead of get_frame_id.
6403
6404 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6405
6406         * rs6000-tdep.c (ppc_displaced_step_fixup): New function.
6407         (deal_with_atomic_sequence): Update BC masks.
6408         (rs6000_gdbarch_init): Init displaced stepping infra-structure.
6409         Define BRANCH_MASK, B_INSN, BC_INSN, BXL_INSN, BP_MASK and BP_INSN.
6410
6411 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6412
6413         * cris-tdep.c (crisv32_single_step_through_delay): Get this frame's
6414         register, not the previous frame's.
6415
6416 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6417
6418         * source.c (select_source_symtab): Make sure we skip namespace
6419         symtabs when showing cpp source code.
6420
6421 2008-06-30  Hans-Peter Nilsson  <hp@axis.com>
6422
6423         * MAINTAINERS (Authorized committers): Fix my email address.
6424
6425 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6426
6427         * mi/mi-cmds.c (mi_cmds): Route -exec-run, -exec-until,
6428         -target-download and -target-select via CLI, so that
6429         the quoting rules are the same as they were (unfortunately)
6430         in all prior gdb releases.
6431         * mi/mi-cmds.h (mi_cmd_exec_run, mi_cmd_exec_until)
6432         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6433         * mi/mi-main.c (mi_cmd_exec_run, mi_cmd_exec_until)
6434         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6435         (mi_cmd_execute): Set current_token even for commands
6436         routed via CLI.
6437
6438 2008-06-28  Ulrich Weigand  <uweigand@de.ibm.com>
6439
6440         * alphafbsd-tdep.c: Update for unwinder changes.
6441         * alpha-linux-tdep.c: Likewise.
6442         * alphanbsd-tdep.c: Likewise.
6443         * alphaobsd-tdep.c: Likewise.
6444         * avr-tdep.c: Likewise.
6445         * cris-tdep.c: Likewise.
6446         * frv-linux-tdep.c: Likewise.
6447         * frv-tdep.c: Likewise.
6448         * h8300-tdep.c: Likewise.
6449         * hppa-linux-tdep.c: Likewise.
6450         * iq2000-tdep.c: Likewise.
6451         * m32c-tdep.c: Likewise.
6452         * m32r-linux-tdep.c: Likewise.
6453         * m32r-tdep.c: Likewise.
6454         * m68hc11-tdep.c: Likewise.
6455         * mep-tdep.c: Likewise.
6456         * mn10300-tdep.c: Likewise.
6457         * mt-tdep.c: Likewise.
6458         * score-tdep.c: Likewise.
6459         * sh64-tdep.c: Likewise.
6460         * sh-tdep.c: Likewise.
6461         * sparc64fbsd-tdep.c: Likewise.
6462         * sparc64nbsd-tdep.c: Likewise.
6463         * sparc64obsd-tdep.c: Likewise.
6464         * v850-tdep.c: Likewise.
6465         * vaxobsd-tdep.c: Likewise.
6466         * vax-tdep.c: Likewise.
6467         * xstormy16-tdep.c: Likewise.
6468
6469 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6470
6471         * mi/mi-main.c (enum captured_mi_execute_command_actions)
6472         (captured_mi_execute_command_args): Remove.
6473         (captured_mi_execute_command): Cast the closure to mi_parse
6474         pointer, not to captured_mi_execute_command_args, and don't
6475         set the action field thereof.
6476         (mi_execute_command): Pass struct mi_parse, not
6477         captured_mi_execute_command_args to captured_mi_execute_command.
6478         (mi_execute_command): Remove (dead) code for suppressing
6479         printing prompt.
6480
6481 2008-06-28  Pedro Alves  <pedro@codesourcery.com>
6482
6483         * linux-nat.c (enum sigchld_state): New.
6484         (linux_nat_async_events_state): Renamed from
6485         linux_nat_async_events_enabled.
6486         (linux_nat_event_pipe_push, my_waitpid): Adjust.
6487         (sigchld_default_action): New.
6488         (lin_lwp_attach_lwp): Adjust.  Call linux_nat_async_events
6489         unconditionally.
6490         (linux_nat_create_inferior): Set events state to sigchld_default
6491         state.
6492         (linux_nat_resume): Adjust.
6493         (linux_nat_wait): Call linux_nat_async_events unconditionally.
6494         (sigchld_handler): Adjust.
6495         (linux_nat_async_mask): Don't set SIGCHLD actions here.
6496         (get_pending_events): Adjust.
6497         (linux_nat_async_events): Rewrite to handle enum sigchld_state
6498         instead of a boolean.
6499         (linux_nat_async): Adjust.
6500         (_initialize_linux_nat): Capture default SIGCHLD action into
6501         sigchld_default_action.
6502
6503 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6504
6505         * breakpoint.c (moribund_locations): New.
6506         (bpstat_stop_status): Process moribund locations.
6507         (update_global_location_list): Add removed
6508         locations to moribund_locations.
6509         (breakpoint_retire_moribund): New.
6510         * breakpoint.h (struct bp_location): New field
6511         events_till_retirement.
6512         (breakpoint_retire_moribund): Declare.
6513         * thread.c (thread_count): New.
6514         * infrun.c (handle_inferior_event): Call
6515         breakpoint_retire_moribund.
6516         * gdbthread.h (thread_count): Declare.
6517
6518 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6519
6520         * dfp.c (decimal_convert): Call match_endianness before and after
6521         conversion.
6522
6523 2008-06-27  Jonathan Larmour  <jifl@eCosCentric.com>
6524
6525         * remote.c (remote_insert_breakpoint): Ensure that if Z0
6526         unsupported and we fall back to memory_insert_breakpoint, we
6527         use the unmodified requested address.
6528
6529 2008-06-27  Joel Brobecker  <brobecker@adacore.com>
6530
6531         * dwarf2read.c (read_attribute_value): Issue a complaint when
6532         adjusting size attribute values of 0xffffffff as zero.
6533
6534 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6535
6536         * i386-tdep.c (i386_16_byte_align_p): New.
6537         (i386_push_dummy_call): Determine stack space required for
6538         arguments going forwards allowing for 16-byte alignment, then push
6539         arguments going forwards.
6540
6541 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6542
6543         * infrun.c (start_remote): Don't clear thread list here.
6544         * monitor.c (monitor_open): Include "gdbthread.h".  Clear thread
6545         list here.
6546         * remote.c (record_currthread): Upgrade the main thread and its
6547         entry in the thread list if this is the first time we hear about
6548         threads.
6549         (remote_thread_alive): Consider magic_null_ptid or a ptid without
6550         a tid member always alive.
6551         (remote_find_new_threads): Don't update the main thread here.
6552         (remote_start_remote): Clear thread list here.  Always add the
6553         main thread.
6554         (extended_remote_attach_1): Add the main thread here.
6555         (extended_remote_mourn_1): Re-add the main thread here.
6556         (extended_remote_create_inferior_1): Add a main thread.
6557
6558         * Makefile.in (monitor.o): Depend on $(gdbthread_h).
6559
6560 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6561
6562         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
6563
6564         * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
6565         globals.
6566         (general_thread, continue_thread): Change type to ptid_t.
6567         (record_currthread): Take a ptid_t parameter instead of an
6568         integer.
6569         (MAGIC_NULL_PID): Delete.
6570         (set_thread): Take a ptid_t parameter and adjust.
6571         (set_general_thread, set_continue_thread): New.
6572         (remote_thread_alive, remote_newthread_step)
6573         (remote_current_thread, remote_find_new_threads)
6574         (remote_threads_info, remote_start_remote, remote_vcont_resume)
6575         (remote_resume_1, remote_wait, extended_remote_create_inferior_1)
6576         (threadalive_test, remote_pid_to_str)
6577         (remote_get_thread_local_address): Adjust.
6578         (_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
6579         and any_thread_ptid.
6580
6581 2008-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
6582
6583         * configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
6584         * configure: Regenerated.
6585
6586 2008-06-26  Joel Brobecker  <brobecker@adacore.com>
6587
6588         * dwarf2read.c (read_attribute_value): Treat size attribute
6589         values of 0xffffffff as if the attribute value was zero.
6590
6591 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6592
6593         * linux-nat.c: Add description of overall logic.
6594
6595 2008-06-26  Daniel Jacobowitz  <dan@codesourcery.com>
6596
6597         * Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
6598         (gdb_stdint_h, gdb_stdint.h, stamp-int): Delete.  Remove
6599         all dependencies on $(gdb_stdint_h).
6600         (distclean): Do not delete gdb_stdint.h.
6601         * acinclude.m4: Do not use stdint.m4.
6602         * configure.ac: Set GNULIB_STDINT_H.  Remove tests for stdint.h,
6603         uintptr_t, and gdb_stdint.h.
6604         * defs.h: Include <stdint.h>.
6605         * gdb_thread_db.h: Assume stdint.h is already included.
6606         * breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
6607         rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
6608         include gdb_stdint.h.
6609         * configure, config.in: Regenerate.
6610
6611 2008-06-26  Joseph Myers  <joseph@codesourcery.com>
6612
6613         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
6614         decimal floating-point values in GPRs for soft-float.
6615         (do_ppc_sysv_return_value): Handle returning decimal
6616         floating-point values in GPRs for soft-float.
6617
6618 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6619
6620         * target.c (target_read_until_error): New.
6621         * target.h (target_read_until_error): Declare.
6622         * mi/mi-main.c (mi_cmd_data_read_memory): Use
6623         target_read_until_error.
6624
6625 2008-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
6626
6627         Fix a memory leak found by Hui Zhu <teawater@gmail.com>.
6628         * c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
6629         after the DECFLOAT detection to fix a memory leak.  Remove the
6630         redundant NUM initialization.  Protect the DECFLOAT detection memory
6631         access before the P block.  Restore the P memory content for the
6632         DECFLOAT detection.
6633
6634 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6635
6636         Kill the return value for all MI command functions.
6637         * mi/mi-cmds.h (enum mi_cmd_result): Remove.
6638         (mi_cmd_argv_ftype): Change return type to void.
6639
6640         * mi/mi-main.c: Adjust all function that implement
6641         MI commands to return nothing.
6642         (struct captured_mi_execute_command_actions):
6643         Remove the rc field.
6644         (mi_cmd_execute): Return nothing.
6645         (mi_execute_async_cli_command): Return nothing.
6646         (mi_cmd_exec_interrupt): Don't print ^done here.
6647         (mi_cmd_target_select): Don't print ^connected here.
6648         (captured_mi_execute_command): Don't check for MI_CMD_DONE.
6649         Special-case -target-select and output ^connected, not ^done.
6650
6651         * mi/mi-cmd-break.c: Adjust.
6652         * mi/mi-cmd-disas.c: Adjust.
6653         * mi/mi-cmd-env.c: Adjust.
6654         * mi/mi-cmd-file.c: Adjust.
6655         * mi/mi-cmd-stack.c: Adjust.
6656         * mi/mi-cmd-target.c: Adjust.
6657         * mi/mi-cmd-var.c: Adjust.
6658         * mi/mi-interp.c: Adjust.
6659         * mi/mi-symbol-cmds.c: Adjust.
6660
6661 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6662
6663         Emit ^running via observer.
6664         * mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
6665         ^running here.
6666         (mi_on_resume): Print ^running if not previously output.
6667         * mi/mi-main.c (running_result_record_printed): New.
6668         (captured_mi_execute_command): Reset
6669         running_result_record_printed.  Use running_result_record_printed
6670         to decide if we should skip ^done.
6671         (mi_execute_async_cli_command): Don't print ^running here.
6672         * mi/mi-main.h (current_token, running_result_record_printed):
6673         Declare.
6674
6675 2008-06-24  Michael Snyder  <msnyder@specifix.com>
6676
6677         * infrun.c (_initialize_infrun): White space and typo fix.
6678
6679 2008-06-23  Christopher Faylor  <me.gdb.changelog@cgf.cx>
6680
6681         * win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
6682         (do_initial_win32_stuff): Fix problem with inability to set breakpoints
6683         when first loading DLL with "dll" command.
6684
6685 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6686
6687         * gnu-nat.c (proc_string): Use capital T for "Thread".
6688
6689 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6690
6691         * win32-nat.c (win32_pid_to_str): Use capital T for "Thread".
6692
6693 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6694
6695         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6696         the target cannot run.
6697
6698 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6699
6700         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6701         we're attaching to a running process.
6702
6703 2008-06-18  Pierre Muller  <muller@ics.u-strasbg.fr>
6704
6705         * win32-nat.c (handle_load_dll): Give dll name and load address
6706         if debug_events is on.
6707         (handle_unload_dll): Likewise.
6708
6709 2008-06-14  Vladimir Prus  <vladimir@codesourcery.com>
6710
6711         Don't suppress *running when doing finish.
6712         * infcall.c (call_function_by_hand): Set both
6713         suppress_resume_observer and suppress_stop_observer.
6714         * infcmd.c (suppress_run_stop_observers): Split into...
6715         (suppress_resume_observer, suppress_stop_observer): ...those.
6716         (finish_command_continuation): Clear suppress_stop_observer.
6717         (finish_command): Set suppress_stop_observer.
6718         * inferior.h (suppress_run_stop_observers): Split into...
6719         (suppress_resume_observer, suppress_stop_observer): ...those.
6720         * infrun.c (normal_stop): Check for suppress_stop_observer.
6721         * thread.c (set_running): Check for suppress_resume_observer.
6722
6723 2008-06-12  Pedro Alves  <pedro_alves@portugalmail.pt>
6724             Pierre Muller  <muller@ics.u-strasbg.fr>
6725
6726         * gdbarch.sh (gdbarch_skip_main_prologue): New.
6727         * gdbarch.h, gdbarch.c: Regenerate.
6728         * i386-tdep.h (i386_skip_main_prologue): Declare.
6729         * i386-tdep.c (i386_skip_main_prologue): New.
6730         * i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
6731         i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
6732         * symtab.c (find_function_start_sal): When pc points at the "main"
6733         function, call gdbarch_skip_main_prologue.
6734
6735 2008-06-11  Daniel Jacobowitz  <dan@codesourcery.com>
6736
6737         * value.c (value_primitive_field): Fetch lazy register values.
6738
6739 2008-06-11  Pedro Alves  <pedro@codesourcery.com>
6740
6741         * NEWS: Mention support removal of undocumented S AA p PID stop
6742         reply packet.
6743
6744         * remote.c (remote_wait): Remove undocumented S AA p PID support.
6745
6746 2008-06-10  Stan Shebs  <stan@codesourcery.com>
6747
6748         * MAINTAINERS: Update my affiliation and address.
6749
6750 2008-06-10  Andreas Schwab  <schwab@suse.de>
6751
6752         * top.c (print_gdb_version): Don't print final newline.
6753
6754 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6755
6756         Implement *running.
6757         * Makefile.in: Update dependencies.
6758         * gdbthread.h (struct thread_info): New field
6759         running_.
6760         (set_running, is_running): New.
6761         * thread.c (set_running, is_running): New.
6762         * inferior.h (suppress_normal_stop_observer): Rename to...
6763         (suppress_run_stop_observers): ..this.
6764         * infcmd.c (suppress_normal_stop_observer): Rename to...
6765         (suppress_run_stop_observers): ..this.
6766         (finish_command_continuation, finish_command): Adjust.
6767         * infcall.c (call_function_by_hand): Adjust.
6768         * infrun.c (normal_stop): Call set_running.
6769         * target.c (target_resume): New.  Call set_running.
6770         * target.h (target_resume): Convert from macro to
6771         a function.
6772
6773         * mi/mi-interp.c (mi_on_resume): New.
6774         (mi_interpreter_init): Register mi_on_resume.
6775
6776 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6777
6778         Use observers to report stop events in MI.
6779         * mi/mi-interp.c (mi_on_normal_stop): New.
6780         (mi_interpreter_init): Register mi_on_normal_stop.
6781         (mi_interpreter_exec_continuation): Remove.
6782         (mi_cmd_interpreter_exec): Don't register the above.
6783         * mi/mi-main.c (captured_mi_execute_command): Don't care
6784         about sync_execution.
6785         (mi_execute_async_cli_command): Don't install continuation.  Don't
6786         print *stopped.
6787         (mi_exec_async_cli_cmd_continuation): Remove.
6788
6789 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6790
6791         Suppress normal stop observer when it's problematic.
6792         * inferior.h (suppress_normal_stop_observer): New.
6793         * infcall.c (call_function_by_hand): Disable stop events when
6794         doing function calls.
6795         * infmcd.c (suppress_normal_stop_observer): New.
6796         (finish_command_continuation): Call normal_stop observer
6797         explicitly.
6798         (finish_command): Disable stop events inside proceed.
6799         * infrun.c (normal_stop): Don't call normal stop observer if
6800         suppressed of if multi-step is in progress.
6801
6802 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6803
6804         Remove stale code.
6805         * infrun.c (finish_command): Don't pass cleanup
6806         to continuation.
6807         (finish_command_continuation): Don't grab cleanup from
6808         the passed data, as we don't use, and cannot, use it anyway.
6809
6810 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6811
6812         Introduce common cleanup for restoring integers.
6813         * defs.h (make_cleanup_restore_integer): New declaration.
6814         (struct cleanup): New field free_arg.
6815         (make_my_cleanup_2): New.
6816         * utils.c (restore_integer_closure, restore_integer)
6817         (make_cleanup_restore_integer): New.
6818         (make_my_cleanup): Initialize the free_arg field and
6819         renamed to make_my_cleanup_2.
6820         (do_my_cleanups): Call free_arg.
6821         (discard_cleanups): Call free_arg.
6822         * breakpoint.c (restore_always_inserted_mode): Remove.
6823         (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
6824
6825 2008-06-09  Doug Evans  <dje@google.com>
6826
6827         * remote.c (remote_wait): Include beginning of malformed packet
6828         in error output.
6829
6830 2008-06-09  Tom Tromey  <tromey@redhat.com>
6831
6832         * completer.c (complete_line): Don't special-case
6833         expression_completer.
6834         (expression_completer): Only pass last word to
6835         location_completer.
6836         * c-exp.y (yylex): Check 'token', not 'operator'.
6837
6838 2008-06-09  Daniel Jacobowitz  <dan@codesourcery.com>
6839
6840         * configure.ac (build_warnings): Add -Wno-format for mingw.
6841         * configure: Regenerated.
6842
6843 2008-06-07  Daniel Jacobowitz  <dan@codesourcery.com>
6844
6845         * NEWS: Make indentation consistent.  Move exec tracing entry out
6846         of remote packet list.
6847
6848 2008-06-06  Tom Tromey  <tromey@redhat.com>
6849
6850         * value.h (evaluate_subexpression_type, extract_field_op):
6851         Declare.
6852         * printcmd.c (_initialize_printcmd): Use expression_completer for
6853         'p', 'inspect', 'call'.
6854         * parser-defs.h (parse_field_expression): Declare.
6855         * parse.c: Include exceptions.h.
6856         (in_parse_field, expout_last_struct): New globals.
6857         (mark_struct_expression): New function.
6858         (prefixify_expression): Return int.
6859         (prefixify_subexp): Return int.  Use expout_last_struct.
6860         (parse_exp_1): Update.
6861         (parse_exp_in_context): Add 'out_subexp' argument.  Handle
6862         in_parse_field.
6863         (parse_field_expression): New function.
6864         * expression.h (parse_field_expression): Declare.
6865         (in_parse_field): Likewise.
6866         * eval.c (evaluate_subexpression_type): New function.
6867         (extract_field_op): Likewise.
6868         * completer.h (expression_completer): Declare.
6869         * completer.c (expression_completer): New function.
6870         (count_struct_fields, add_struct_fields): New functions.
6871         * c-exp.y (yyparse): Redefine.
6872         (COMPLETE): New token.
6873         (exp): New productions.
6874         (saw_name_at_eof, last_was_structop): New globals.
6875         (yylex): Return COMPLETE when needed.  Recognize in_parse_field.
6876         (c_parse): New function.
6877         * breakpoint.c (_initialize_breakpoint): Use expression_completer
6878         for watch, awatch, and rwatch.
6879         * Makefile.in (parse.o): Depend on exceptions_h.
6880
6881 2008-06-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
6882
6883         PR gdb/1147
6884         * gdb/valopts.c (find_overload_match): Handle references
6885         to pointers.
6886
6887 2008-06-06  Paul N. Hilfinger  <hilfinger@adacore.com>
6888
6889         * ada-lang.c (ada_value_assign): Correct big-endian case to take into
6890         account the bitsize of the 'from' operand.
6891
6892 2008-06-06  Pedro Alves  <pedro@codesourcery.com>
6893
6894         * annotate.h (annotate_thread_changed): Declare.
6895
6896 2008-06-06  Nick Roberts  <nickrob@snap.net.nz>
6897
6898         * annotate.c (annotate_thread_changed): New function.
6899         * thread.c (thread_command) : Use it.
6900         * infrun.c (normal_stop): Use it.
6901
6902 2008-06-05  Vladimir Prus  <vladimir@codesourcery.com>
6903             Nathan Sidwell  <nathan@codesourcery.com>
6904             Joseph Myers  <joseph@codesourcery.com>
6905
6906         * acinclude.m4: Include ../config/acx.m4.
6907         * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
6908         * configure, config.in: Regenerate.
6909         * main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
6910         address.
6911         * top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.
6912
6913 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6914
6915         Replace 'target async' by 'maintenance set remote-async' and
6916         'target remote' combination.
6917
6918         * remote.c (remote_async_wait): Merge into remote_wait, and
6919         remove.
6920         (remote_async_permitted, remote_async_permitted_set): New
6921         variables.
6922         (set_maintenance_remote_async_permitted)
6923         (show_maintenance_remote_async_permitted): New functions.
6924         (remote_async_ops, extended_async_remote_ops): Delete.
6925         (remote_async_open, extended_remote_async_open): Delete.
6926         (remote_open_1): Drop async_p parameter.  Update callers.  Replace
6927         async_p with remote_async_permitted checks.
6928         (extended_async_remote_attach): Delete.
6929         (remote_resume, remote_async_resume): Merge and leave remote_resume.
6930         (remote_async_terminal_inferior): Rename to...
6931         (remote_terminal_inferior): ... this, and add
6932         remote_async_termitted check.
6933         (remote_async_terminal_ours): Rename to...
6934         (remote_terminal_ours): ... this, and add remote_async_termitted
6935         check.
6936         (remote_wait, remote_async_wait): Merge and leave remote_wait
6937         only.
6938         (remote_kill, remote_async_kill): Merge and leave remote_kill
6939         only.
6940         (remote_async_mourn, extended_async_remote_mourn): Delete.
6941         (extended_remote_create_inferior_1): Drop async_p parameter.
6942         Update callers.  Always use extended_remote_ops.
6943         (extended_remote_async_create_inferior): Delete.
6944         (remote_return_zero): Delete.
6945         (init_remote_ops): Register remote_can_async_p, remote_async,
6946         remote_async_mask, remote_terminal_inferior and
6947         remote_terminal_ours.
6948         (remote_can_async_p, remote_is_async_p): Check for
6949         remote_async_permitted.
6950         (init_remote_async_ops, init_extended_async_remote_ops): Remove.
6951         (set_remote_cmd): Don't add async and extended-async targets.
6952         (_initialize_remote): Add set/show remote-async maintenance
6953         commands.
6954
6955 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6956
6957         * remote.c (kill_kludge): Delete.
6958         (remote_wait, remote_async_wait): Don't set it.
6959         (remote_kill, remote_async_kill): Don't do anything with it.
6960
6961 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6962
6963         * linux-thread-db.c (thread_db_wait): Don't trim event ptid.
6964
6965 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6966
6967         * bcache.c (bcache_data): Call deprecated_bcache_added function.
6968         (deprecated_bcache_added): New function name. Body of function
6969         bcache_data is used here with the addition of 'added' argument.
6970         * bcache.h (deprecated_bcache_added): New function.
6971         * symfile.c (add_psymbol_to_bcache): New helper function, takes part of
6972         work from add_psymbol_to_list - initialises partial symbol and stashes
6973         it in objfile's cache.
6974         (append_psymbol_to_list): New helper function, takes other part of
6975         work from add_psymbol_to_list - adds partial symbol to the given list.
6976         (add_psymbol_to_list): Call helper functions instead of doing work
6977         here. If adding to global list, do not duplicate partial symbols in the
6978         partial symtab.
6979
6980 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6981
6982         * breakpoint.c (print_exception_catchpoint): Put 'exception' back to
6983         'exception caught|thrown' message.
6984
6985 2008-06-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
6986
6987         * Makefile.in: Update dependencies.
6988         * dwarf2expr.c: New include "gdb_assert.h".
6989         (new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
6990         (dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
6991         (execute_stack_op): Error out on too large RECURSION_DEPTH.
6992         Increase/decrease RECURSION_DEPTH around the function.
6993
6994 2008-06-05  Daniel Jacobowitz  <dan@codesourcery.com>
6995
6996         * remote.c (get_offsets): Handle a single segment.
6997         * symfile.c (symfile_map_offsets_to_segments): Allow more bases
6998         than segments.
6999
7000 2008-06-03  Daniel Jacobowitz  <dan@codesourcery.com>
7001
7002         * solib-svr4.c (struct lm_info): Add lm_addr.
7003         (main_lm_addr): New.
7004         (svr4_default_sos): Set lm_addr.
7005         (svr4_current_sos): Set lm_addr and main_lm_addr.
7006         (svr4_fetch_objfile_link_map): Rewrite.
7007         (svr4_clear_solib): Clear main_lm_addr.
7008
7009 2008-06-03  Michael Snyder  <msnyder@redhat.com>
7010             Joseph Myers  <joseph@codesourcery.com>
7011
7012         * mips-tdep.c (mips_eabi_return_value): Replace stub that always
7013         returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
7014
7015 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
7016
7017         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.
7018
7019 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
7020
7021         * m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.
7022
7023 2008-06-01  Joel Brobecker  <brobecker@adacore.com>
7024
7025         * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
7026         treat pointers in data space as function descriptors if the
7027         target address is also in the data space.
7028
7029 2008-05-30  Joel Brobecker  <brobecker@adacore.com>
7030
7031         * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
7032         the trad-frame register value for the SP register.
7033
7034 2008-05-29  Mark Kettenis  <kettenis@gnu.org>
7035
7036         * sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.
7037
7038 2008-05-28  Joel Brobecker  <brobecker@adacore.com>
7039
7040         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
7041         that identifies function descriptors outside of the .opd section.
7042
7043 2008-05-28  Aleksandar Ristovski  <aristovski@qnx.com>
7044
7045         * breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
7046         temporary catchpoints.  In MI add missing fields 'reason', 'disp',
7047         'bkptno'.
7048         (print_mention_exception_catchpoint): Add 'Temporary' for temporary
7049         catchpoints.
7050         (handle_gnu_v3_exceptions): Use tempflag.
7051
7052 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
7053
7054         Refactor varobj_update interface.
7055         * varobj.c (varobj_update): Report changes as vector.  Also
7056         return not just a list of varobj, but a list of special structures
7057         that tell what exactly has changed.
7058         * varobj.h (enum varobj_update_error): Rename to
7059         varobj_scope_status.
7060         (struct varobj_update_result_t): New.
7061         (varobj_update): Adjust prototype.
7062         * mi/mi-cmd-var.c: Adjust for changes.
7063
7064 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
7065
7066         * varobj.c (varobj_update): Fix comment typo.
7067         Fix indentation.
7068
7069 2008-05-26  Joel Brobecker  <brobecker@adacore.com>
7070
7071         Set the symtab field of symbols read from ECOFF debugging entries.
7072         * mdebugread.c (add_symbol): Add new parameter symtab.
7073         (parse_symbol): Update calls to add_symbol throughout.
7074
7075 2008-05-27  Andreas Schwab  <schwab@suse.de>
7076
7077         * symtab.h (enum address_class): Remove LOC_REGPARM and
7078         LOC_COMPUTED_ARG.
7079         (struct symbol): Add is_argument.
7080         (SYMBOL_IS_ARGUMENT): Define.
7081
7082         * ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
7083         * buildsym.c (finish_block): Likewise.
7084         * stack.c (print_frame_args, print_block_frame_locals)
7085         (print_frame_arg_vars): Likewise.
7086         * symtab.c (lookup_block_symbol): Likewise.
7087         * tracepoint.c (add_local_symbols): Likewise.
7088         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7089
7090         * coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
7091         * dwarf2read.c (new_symbol): Likewise.
7092         * mdebugread.c (parse_symbol): Likewise.
7093         * stabsread.c (define_symbol): Likewise.
7094
7095         * ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
7096         and LOC_COMPUTED_ARG.
7097         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7098         * ax-gdb.c (gen_var_ref): Likewise.
7099         * eval.c (evaluate_subexp_for_address): Likewise.
7100         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7101         * m2-exp.y (yylex): Likewise.
7102         * printcmd.c (address_info): Likewise.
7103         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7104         * tracepoint.c (collect_symbol, scope_info): Likewise.
7105
7106 2008-05-24  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
7107
7108         * gdbarch.sh: Added new gdbarch struct
7109         core_regset_sections.
7110         * gdbarch.c: Refreshed.
7111         * gdbarch.h: Refreshed.
7112         * regset.h (core_regset_section): Declared.
7113         * linux-nat.c (linux_nat_do_thread_registers): Added
7114         support for the new gdbarch struct core_regset_sections.
7115         * utils.c (host_address_to_string): New function.
7116         * defs.h (host_address_to_string): New prototype.
7117         * i386-linux-tdep.c (i386_regset_rections): New register
7118         sections list for i386.
7119           (i386_linux_init_abi): Initialized new gdbarch struct
7120           core_regset_sections.
7121         * Makefile.in: Updated to reflect dependency changes.
7122         * ppc-linux-tdep.c (ppc_regset_sections): Register
7123         sections list for ppc.
7124           (ppc_linux_init_abi): Initialized new gdbarch struct
7125           core_regset_sections
7126
7127 2008-05-24  Andreas Schwab  <schwab@suse.de>
7128
7129         * linespec.c (decode_objc): Save current language around call to
7130         get_selected_block.
7131
7132 2008-05-23  Joel Brobecker  <brobecker@adacore.com>
7133
7134         * valprint.h (get_array_bounds): Renames get_array_low_bound.
7135         * valprint.c (get_array_bounds): Renames get_array_low_bound.
7136         Return the proper bound value if the array index type is an
7137         enumerated type. Compute the high bound if requested.
7138         (val_print_array_elements): Handle the case when the array
7139         element has a null size.
7140         * ada-valprint.c (print_optional_low_bound): Add handling
7141         for empty arrays or arrays of zero-size elements.
7142         (ada_val_print_array): New function, extracted out from
7143         ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
7144         handle empty arrays and arrays of zero-size elements.
7145         (ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
7146         code by call to ada_val_print_array.
7147         (ada_value_print): Remove handling of null array.  The handling
7148         was incomplete and is now better handled by ada_val_print_array.
7149
7150 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
7151
7152         * annotate.c (annotate_source, annotate_frame_begin): Replace
7153         deprecated_print_address_numeric with paddress.
7154         * cli/cli-cmds.c (list_command, edit_command): Likewise.
7155         * tui/tui-stack.c (tui_make_status_line): Likewise.
7156
7157         * defs.h (deprecated_print_address_numeric): Remove.
7158         * printcmd.c (deprecated_print_address_numeric): Remove.
7159         * maint.c (maint_print_section_info): Fix comment.
7160
7161 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
7162
7163         * valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
7164         print_binary_chars, print_char_chars): Add byte_order parameter and
7165         replace gdbarch_byte_order.
7166         (print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
7167         expressions and remove them.  Remove unused TWO_TO_FOURTH.
7168         (val_print_type_code_int): Introduce gdbarch_byte_order to get at the
7169         endianness.  Update call to print_hex_chars.
7170         * valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
7171         print_binary_chars, print_char_chars): Add byte_order parameter.
7172         * printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
7173         get at the endianness.  Update print_*_char calls to use byte_order.
7174
7175 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7176
7177         * symtab.h (struct symbol): Make "aux_value" member a void pointer
7178         instead of a union.
7179         (SYMBOL_LOCATION_BATON): Update.
7180
7181 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7182
7183         * symtab.h (enum address_class): Remove LOC_BASEREG and
7184         LOC_BASEREG_ARG.
7185         (struct symbol): Remove "basereg" member of "aux_value" union.
7186         (SYMBOL_BASEREG): Remove.
7187
7188         * ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
7189         or LOC_BASEREG_ARG.
7190         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7191         (ada_add_block_symbols): Likewise.
7192         * ax-gdb.c (gen_var_ref): Likewise.
7193         * buildsym.c (finish_block): Likewise.
7194         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7195         * m2-exp.y (yylex): Likewise.
7196         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7197         * printcmd.c (address_info): Likewise.
7198         * stack.c (print_frame_args, print_block_frame_locals): Likewise.
7199         (print_frame_arg_vars): Likewise.
7200         * symmisc.c (print_symbol): Likewise.
7201         * symtab.c (lookup_block_symbol): Likewise.
7202         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
7203         (scope_info): Likewise.
7204
7205 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7206
7207         * symtab.h (enum address_class): Remove LOC_LOCAL_ARG.
7208
7209         * ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
7210         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7211         (ada_add_block_symbols): Likewise.
7212         * ax-gdb.c (gen_var_ref): Likewise.
7213         * buildsyms.c (finish_block): Likewise.
7214         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7215         * m2-exp.y (yylex): Likewise.
7216         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7217         * printcmd.c (address_info): Likewise.
7218         * stack.c (print_frame_args, print_frame_arg_vars): Likewise.
7219         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7220         * symtab.c (lookup_block_symbol): Likewise.
7221         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
7222         (scope_info): Likewise.
7223
7224 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7225
7226         * symtab.h (enum address_class): Remove LOC_INDIRECT and
7227         LOC_HP_THREAD_LOCAL_STATIC.
7228
7229         * findvar.c (symbol_read_needs_frame, read_var_value): Do not
7230         handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
7231         (read_var_value): Likewise.
7232         * buildsym.c (finish_block): Likewise.
7233         * objfiles.c (objfile_relocate): Likewise.
7234         * printcmd.c (address_info): Likewise.
7235         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7236         * tracepoint.c (scope_info): Likewise.
7237
7238 2008-05-21 Markus Deuling  <deuling@de.ibm.com>
7239            Maxim Grigoriev  <maxim2405@gmail.com>
7240
7241         * xtensa-tdep.c (xtensa_read_register): Remove.
7242         (xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
7243         argument litbase to call0_frame_cache().
7244         (call0_track_op, call0_analyze_prologue)
7245         (call0_frame_cache): Use extra argument litbase.
7246
7247 2008-05-21  Joel Brobecker  <brobecker@adacore.com>
7248
7249         * infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
7250
7251 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
7252
7253         * frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
7254
7255 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
7256
7257         * alpha-mdebug-tdep.c: Include "trad-frame.h".
7258         (struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
7259         struct trad_frame_saved_reg *.
7260         (alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
7261         trad_frame_alloc_saved_regs.  Update accesses.  Record previous
7262         value of SP as being vfp.
7263         (alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
7264         * Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
7265
7266 2008-05-21  Markus Deuling  <deuling@de.ibm.com>
7267
7268         * score-tdep.c (score_print_insn): Get the current endianess from
7269         disassemble_info instead of gdbarch_byte_order.
7270
7271 2008-05-21  Pedro Alves  <pedro@codesourcery.com>
7272
7273         * frame.c (get_prev_frame_1): Build frame id before setting
7274         this_frame->prev_p, not after.
7275
7276 2008-05-21  Nick Roberts  <nickrob@snap.net.nz>
7277
7278         * annotate.c (annotate_new_thread): New function for new-thread
7279         annotation.
7280         * annotate.h: (annotate_new_thread): New extern.
7281         * thread.c (add_thread_with_info): Use it.
7282         * Makefile.in (thread.o): Add dependency on annotate.h.
7283
7284 2008-05-20  Joel Brobecker  <brobecker@adacore.com>
7285
7286         * win32-nat.c (win32_wait): Block the control-c event while
7287         waiting for a debug event.
7288
7289 2008-05-19  Pedro Alves  <pedro@codesourcery.com>
7290
7291         * symtab.h (lookup_symbol_in_language): Update comment.
7292         * symtab.c (lookup_symbol_aux_block): Update comment.
7293         * ada-lang.c (ada_lookup_symbol_list): Update comment.
7294
7295 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7296
7297         * symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
7298         (lookup_symbol): Likewise.
7299         * symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
7300         (lookup_symbol): Likewise.
7301         (search_symbols): Update.
7302
7303         * linespec.c (find_methods, collect_methods): Update.
7304         (add_matching_methods, add_constructors): Update.
7305         (decode_compound, decode_dollar, decode_variable): Update.
7306         (lookup_prefix_sym): Update.
7307
7308         (symbol_found): Remove SYM_SYMTAB parameter.
7309         Use SYMBOL_SYMTAB (sym) instead.
7310
7311         * gdbtypes.c (lookup_typename): Update.
7312         (lookup_struct, lookup_union, lookup_enum): Update.
7313         (lookup_template_type): Update.
7314         (check_typedef): Update.
7315         * language.c (lang_bool_type): Update.
7316         * mdebugread.c (parse_procedure): Update.
7317         * mi/mi-cmd-stack.c (list_args_or_locals): Update.
7318         * parse.c (write_dollar_variable): Update.
7319         * printcmd.c (address_info): Update.
7320         * source.c (select_source_symtab): Update.
7321         * stack.c (print_frame_args, print_frame_arg_vars): Update.
7322         * valops.c (find_function_in_inferior): Update.
7323         (value_struct_elt_for_reference): Update.
7324         * value.c (value_static_field, value_fn_field): Update.
7325
7326         * alpha-mdebug-tdep.c (find_proc_desc): Update.
7327         * arm-tdep.c (arm_skip_prologue): Update.
7328         * mt-tdep.c (mt_skip_prologue): Update.
7329         * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
7330
7331         * ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
7332         * ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
7333         (add_defn_to_vec): Likewise.
7334         (ada_add_block_symbols): Likewise.
7335         (lookup_cached_symbol, cache_symbol): Likewise.
7336         (standard_lookup): Update.
7337         (ada_lookup_symbol_list): Update.
7338
7339         * c-valprint.c (c_val_print): Update.
7340         * cp-support.c (cp_lookup_rtti_type): Update.
7341         * jv-lang.c (java_lookup_class, get_java_object_type): Update.
7342         * objc-lang.c (lookup_struct_typedef, find_imps): Update.
7343         * p-valprint.c (pascal_val_print): Update.
7344         * scm-lang.c (scm_lookup_name): Update.
7345
7346         * c-exp.y: Update.
7347         * f-exp.y: Update.
7348         * jv-exp.y: Update.
7349         * m2-exp.y: Update.
7350         * objc-exp.y: Update.
7351         * p-exp.y: Update.
7352
7353 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7354
7355         * language.h (struct language_defn): Remove SYMTAB parameter from
7356         la_lookup_symbol_nonlocal callback function pointer.
7357
7358         * ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7359         (ada_lookup_encoded_symbol): Likewise.
7360         * ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7361         Always call fixup_symbol_section.
7362         (ada_lookup_symbol): Remove SYMTAB parameter.
7363         (ada_lookup_symbol_nonlocal): Likewise.
7364         * ada-exp.y (write_object_renaming): Update.
7365         (find_primitive_type): Likewise.
7366
7367         * cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7368         (cp_lookup_symbol_namespace): Likewise.
7369         * cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
7370         (lookup_symbol_file): Likewise.
7371         (lookup_possible_namespace_symbol): Likewise.
7372         (cp_lookup_symbol_nonlocal): Likewise.
7373         (cp_lookup_symbol_namespace): Likewise.
7374         (cp_lookup_nested_type): Update.
7375
7376         * scm-valprint.c (scm_inferior_print): Update.
7377         * valops.c (value_maybe_namespace_elt): Update.
7378
7379         * solist.h (struct target_so_ops): Remove SYMTAB parameter from
7380         lookup_lib_global_symbol callback function pointer.
7381         (solib_global_lookup): Remove SYMTAB parameter.
7382         * solib.c (solib_global_lookup): Remove SYMTAB parameter.
7383         * solib-svr4.c (elf_lookup_lib_symbol): Likewise.
7384
7385         * symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7386         (lookup_symbol_static): Likewise.
7387         (lookup_symbol_global): Likewise.
7388         (lookup_symbol_aux_block): Likewise.
7389         (lookup_global_symbol_from_objfile): Likewise.
7390         * symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
7391         (lookup_symbol_aux_local): Likewise.
7392         (lookup_symbol_aux_block): Likewise.
7393         (lookup_symbol_aux_symtabs): Likewise.
7394         (lookup_symbol_aux_psymtabs): Likewise.
7395         (lookup_global_symbol_from_objfile): Likewise.
7396         (basic_lookup_symbol_nonlocal): Likewise.
7397         (lookup_symbol_static): Likewise.
7398         (lookup_symbol_global): Likewise.
7399
7400         (lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
7401
7402 2008-05-17  Pedro Alves  <pedro@codesourcery.com>
7403
7404         * remote.c (init_extended_remote_ops): Fix typo.
7405
7406 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7407
7408         * NEWS: Mention new DICOS x86 target configuration.
7409
7410 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7411             Ulrich Weigand  <uweigand@de.ibm.com>
7412
7413         * minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
7414         * symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
7415
7416         * symtab.c (fixup_section): Remove prototype.  Add ADDR parameter;
7417         use it instead of ginfo->value.address.  Look up minimal symbol by
7418         address and name.  Assume OBJFILE is non-NULL.
7419         (fixup_symbol_section): Ensure we always have an objfile to look
7420         into.  Extract and pass to fixup_section the symbol's address that
7421         will match the minimal symbol's address.
7422         (fixup_psymbol_section): Likewise.
7423
7424         (find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
7425         overlays and the addrmap returned the wrong section.
7426
7427         * dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
7428         calling fixup_symbol_section.
7429
7430 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7431
7432         * minsyms.c: Include "target.h".
7433         (find_solib_trampoline_target): Handle minimal symbols pointing
7434         to function descriptors as well.
7435         * Makefile.in (minsyms.o): Update dependencies.
7436
7437         * ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
7438         (ppc64_standard_linkage1): ... this.  Fix optional instructions.
7439         (PPC64_STANDARD_LINKAGE_LEN): Rename to ...
7440         (PPC64_STANDARD_LINKAGE1_LEN): ... this.
7441         (ppc64_standard_linkage2, ppc64_standard_linkage3): New.
7442         (PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
7443         (ppc64_standard_linkage_target): Rename to ...
7444         (ppc64_standard_linkage1_target): ... this.
7445         (ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
7446         (ppc64_skip_trampoline_code): Support three variants of standard
7447         linkage stubs.  Call find_solib_trampoline_target to handle
7448         glink stubs.
7449
7450 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7451
7452         * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
7453         ppc64_sysv_abi_adjust_breakpoint_address.
7454         * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7455         * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7456
7457 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7458
7459         * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
7460         (ppc_linux_init_abi): Install find_solib_trampoline_target instead
7461         of ppc_linux_skip_trampoline_code.
7462
7463 2008-05-15  Daniel Jacobowitz  <dan@codesourcery.com>
7464
7465         * gdbarch.sh: Delete dwarf_reg_to_regnum.
7466         * gdbarch.c, gdbarch.h: Regenerated.
7467         * amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
7468         hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
7469         s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
7470
7471 2008-05-15  Pedro Alves  <pedro@codesourcery.com>
7472
7473         * linux-nat.c (trap_ptid): Delete.
7474         (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
7475         Adjust.
7476         * linux-thread-db.c (thread_db_wait): Adjust.
7477
7478 2008-05-15  Joel Brobecker  <brobecker@adacore.com>
7479
7480         * linespec.c (decode_line_1): Fix a couple of comments.
7481
7482 2008-05-15  Alan Modra  <amodra@bigpond.net.au>
7483
7484         * dbxread.c: Formatting.
7485         (INTERNALIZE_SYMBOL): Init n_other.
7486         (set_namestring): Take pointer to nlist arg rather than struct
7487         copy.  Update all callers.
7488
7489 2008-05-15  Andreas Schwab  <schwab@suse.de>
7490
7491         * Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
7492         (dwarf2read.o): Add $(addrmap_h).
7493
7494 2008-05-14  Ulrich Weigand  <uweigand@de.ibm.com>
7495
7496         * ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
7497         (ppc64_linux_convert_from_func_ptr_addr): ... to this.  No longer try
7498         to handle ppc32 PLT entries.
7499         (ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
7500         only on ppc64.
7501
7502 2008-05-14  Daniel Jacobowitz  <dan@codesourcery.com>
7503
7504         * elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
7505         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
7506         lookup_minimal_symbol_by_pc_section.  Prefer trampolines if requested.
7507         (lookup_minimal_symbol_by_pc_section): Use
7508         lookup_minimal_symbol_by_pc_section_1.
7509         (lookup_solib_trampoline_symbol_by_pc): Likewise.
7510
7511 2008-05-13  Joel Brobecker  <brobecker@adacore.com>
7512
7513         * findcmd.c: Add #include "gdb_stdint.h".
7514         * Makefile.in (findcmd.o): Update dependencies.
7515
7516 2008-05-11  David S. Miller  <davem@davemloft.net>
7517
7518         * sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
7519         long double size override, Linux does use 128-bit now.
7520
7521         * sparc-linux-tdep.c (PSR_SYSCALL): Define.
7522         (sparc_linux_write_pc): New function.
7523         (sparc32_linux_init_abi): Register it.
7524         * sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
7525         (sparc64_linux_write_pc): New function.
7526         (sparc64_linux_init_abi): Register it.
7527
7528         * sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
7529         dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
7530
7531 2008-05-11  Ulrich Weigand  <uweigand@de.ibm.com>
7532
7533         * rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
7534         and info.tdep_info before calling gdbarch_init_osabi.
7535
7536 2008-05-09  Joel Brobecker  <brobecker@adacore.com>
7537
7538         * ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
7539         the type of the right hand side of the assignment to the type
7540         of the left hand side if the left hand side is a convenience
7541         variable.
7542
7543 2008-05-09  Ulrich Weigand  <uweigand@de.ibm.com>
7544
7545         * NEWS: Mention gdbserver bi-arch capability.
7546
7547 2008-05-09  Doug Evans  <dje@google.com>
7548
7549         New "find" command.
7550         * NEWS: Document find command and qSearch:memory packet.
7551         * Makefile.in (SFILES): Add findcmd.c.
7552         (COMMON_OBJS): Add findcmd.o.
7553         (findcmd.o): New rule.
7554         * findcmd.c: New file.
7555         * target.h (target_ops): New member to_search_memory.
7556         (simple_search_memory): Declare.
7557         (target_search_memory): Declare.
7558         * target.c (simple_search_memory): New fn.
7559         (target_search_memory): New fn.
7560         * remote.c (PACKET_qSearch_memory): New packet kind.
7561         (remote_search_memory): New fn.
7562         (init_remote_ops): Init to_search_memory.
7563         (init_extended_remote_ops): Ditto.
7564         (_initialize_remote): Add qSearch:memory packet config command.
7565
7566 2008-05-09  Eli Zaretskii  <eliz@gnu.org>
7567
7568         * thread.c (_initialize_thread): Don't use commas and periods in
7569         first line of doc string of "set/show print thread-events".
7570
7571 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7572
7573         * alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
7574         Update for unwinder changes.
7575
7576 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7577
7578         * frame.c (get_frame_base_address, get_frame_locals_address)
7579         (get_frame_args_address): Pass the correct frame when calling
7580         frame_base_find_by_frame.
7581
7582 2008-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7583
7584         * remote.c (extended_remote_attach_1): Call target_find_description.
7585
7586 2008-05-08  Daniel Jacobowitz  <dan@codesourcery.com>
7587
7588         * remote.c (extended_remote_create_inferior_1): Clean up
7589         before marking the target running.
7590
7591 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7592
7593         * hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
7594         changes.
7595
7596 2008-05-07  Joel Brobecker  <brobecker@adacore.com>
7597
7598         * sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
7599         sparc64-sol2-tdep.c: Update for unwinder changes.
7600
7601 2008-05-07  Daniel Jacobowitz  <dan@codesourcery.com>
7602
7603         * cp-support.c (mangled_name_to_comp): Initialize storage.
7604         (unqualified_name_from_comp): Likewise.
7605
7606 2008-05-07  Jie Zhang  <jie.zhang@analog.com>
7607
7608         * remote.c (remote_insert_breakpoint): Call get_remote_state
7609         after gdbarch_breakpoint_from_pc is called.
7610         (remote_insert_hw_breakpoint): Likewise.
7611
7612 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7613
7614         * valprint.c (val_print): Add new language parameter and use it
7615         instead of using the current_language. Update calls to val_print
7616         throughout.
7617         (common_val_print): Add new langauge parameter and pass it to
7618         val_print.
7619         * value.h (struct language_defn): Add opaque declaration.
7620         (val_print, common_val_print): Update declarations.
7621         * stack.c (print_frame_args): Update call to common_val_print
7622         using the appropriate language.
7623         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7624         * c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
7625         mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
7626         scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
7627         #include "language.h" if necessary.
7628         Update calls to val_print and common_val_print.
7629         * Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
7630         Update dependencies.
7631
7632 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7633
7634         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
7635         pointing inside a non-executable section as function descriptors.
7636
7637 2008-05-06  Pedro Alves  <pedro@codesourcery.com>
7638
7639         * inf-loop.c (inferior_event_handler): Run all continuations and
7640         print any language change before running the breakpoint commands.
7641
7642 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7643
7644         * frame-unwind.c (frame_unwind_got_bytes): New function.
7645         * frame-unwind.h (frame_unwind_got_bytes): Add declaration.
7646         * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
7647         for unwinder changes.
7648
7649 2008-05-05  Doug Evans  <dje@google.com>
7650
7651         * NEWS: Mention new /m modifier for disassemble command.
7652         * cli/cli-cmds.c (print_disassembly): New function.
7653         (disassemble_current_function): New function
7654         (disassemble_command): Recognize /m modifier, print mixed
7655         source+assembly.
7656         (init_cli_cmds): Update disassemble help text.
7657
7658 2008-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
7659
7660         * xtensa-tdep.c: Update for unwinder changes.
7661
7662 2008-05-05  Andreas Schwab  <schwab@suse.de>
7663
7664         Update m68k port for unwinder changes.
7665         * m68k-tdep.c (m68k_frame_cache): Expect this_frame.
7666         (m68k_frame_this_id, m68k_frame_prev_register): Update signature.
7667         (m68k_frame_unwind): Use default_frame_sniffer.
7668         (m68k_frame_sniffer): Remove.
7669         (m68k_frame_base_address): Expect this_frame.
7670         (m68k_dummy_id): Renamed from m68k_unwind_dummy_id.  Expect
7671         this_frame.
7672         (m68k_gdbarch_init): Use set_gdbarch_dummy_id,
7673         dwarf2_append_unwinders, and frame_unwind_append_unwinder.
7674         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
7675         parameter instead of pc value.
7676         (m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
7677         Expect this_frame.
7678         (m68k_linux_sigtramp_frame_this_id)
7679         (m68k_linux_sigtramp_frame_prev_register)
7680         (m68k_linux_sigtramp_frame_sniffer): Update signature.
7681         (m68k_linux_sigtramp_frame_unwind): Use
7682         m68k_linux_sigtramp_frame_sniffer.
7683         (m68k_linux_init_abi): Use frame_unwind_append_unwinder.
7684
7685         * m68klinux-nat.c (store_register): Fix typo.
7686
7687 2008-05-05  Pedro Alves  <pedro@codesourcery.com>
7688
7689         * infcmd.c (step_1): Put thread id on the stack to avoid possible
7690         NULL dereferencing.
7691
7692 2008-05-05  Luis Machado  <luisgpm@br.ibm.com>
7693
7694         * symfile.c (reread_symbols): Update objfile's entry point.
7695
7696 2008-05-05  Aleksandar Ristovski  <aristovski@qnx.com>
7697             Joel Brobecker  <brobecker@adacore.com>
7698
7699         * ada-lang.c: Update throughout to use symbol_matches_domain
7700         instead of matching the symbol domain explictly.
7701         * dwarf2read.c (add_partial_symbol): Do not add new psym for
7702         STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
7703         class as typedefs. See lookup_partial_symbol function.
7704         (new_symbol): Similar to add_partial_symbol, do not create
7705         symbol for the typedef. See lookup_block_symbol.
7706         * symtab.c (symbol_matches_domain): New function, takes care
7707         of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
7708         (lookup_partial_symbol): Use symbol_matches_domain to see if the
7709         found psym domain matches the given domain.
7710         (lookup_block_symbol): Likewise.
7711
7712 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7713
7714         * top.c (command_line_handler_continuation): Remove.
7715         (execute_command): Do not install the above.
7716
7717 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7718
7719         * inf-loop.c (inferior_event_handler): Call bpstat_do_action,
7720         and catch all exceptions from it.
7721         * top.c (command_line_handler_continuation): Don't
7722         call bpstat_do_action here.
7723
7724 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7725
7726         * dwarf2read.c (struct dwarf2_cu): Add type_hash.
7727         (struct die_info): Remove type.
7728         (read_type_die, read_typedef, read_base_type, read_subrange_type)
7729         (read_structure_type, read_enumeration_type, read_array_type)
7730         (read_tag_pointer_type, read_tag_ptr_to_member_type)
7731         (read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
7732         (read_tag_string_type, read_subroutine_type, read_set_type)
7733         (read_unspecified_type): Delete prototypes.  Remove check for
7734         already-loaded type.  Return the new type.
7735         (set_die_type): Return the new type.
7736         (reset_die_and_siblings_types): Delete.
7737         (load_comp_unit, load_full_comp_unit): Set type_hash.
7738         (process_queue): Remove call to reset_die_and_siblings_types.
7739         (process_die): Do not read most types here.  Use read_type_die
7740         for others.
7741         (read_func_scope, dwarf2_add_member_fn): Use read_type_die.
7742         (quirk_gcc_member_function_pointer): Return the new type.
7743         (process_structure_scope, process_enumeration_scope): Use
7744         get_die_type and read the DIE's type.
7745         (read_full_die): Do not initialize die->type.
7746         (tag_type_to_type): Use read_type_die.
7747         (read_type_die): Check for already defined types.  Return the
7748         type.
7749         (determine_prefix): Use get_die_type.
7750         (set_die_type): Return the type.
7751         (get_die_type): Take a CU argument.  Check for no type_hash.
7752
7753 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7754
7755         * dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
7756         locals.
7757
7758 2008-05-04  Pedro Alves  <pedro@codesourcery.com>
7759
7760         * breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
7761         and bp_longjmp_resume breakpoints.
7762         (breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
7763         meaningful.
7764         (create_longjmp_breakpoint): Don't create bp_longjmp_resume
7765         breakpoints.  Create bp_longjmp breakpoints as momentary
7766         breakpoints.
7767         (enable_longjmp_breakpoint): Delete.
7768         (set_longjmp_breakpoint): New.
7769         (disable_longjmp_breakpoint): Delete.
7770         (delete_longjmp_breakpoint): New.
7771         (set_longjmp_resume_breakpoint): Delete.
7772         (set_momentary_breakpoint_at_pc): New.
7773         (breakpoint_re_set_one): Don't delete bp_longjmp and
7774         bp_longjmp_resume breakpoints.
7775         (breakpoint_re_set): Don't create longjmp and longjmp-resume
7776         breakpoints.
7777
7778         * infrun.c (step_resume_breakpoint): Add comment.
7779         (struct execution_control_state): Delete handling_longjmp member.
7780         (init_execution_control_state). Don't clear handling_longjmp.
7781         (context_switch): Don't context switch handling_longjmp.
7782         (handle_inferior_event): If handling a bp_longjmp breakpoint,
7783         create a bp_longjmp_resume breakpoint, and set it as current
7784         step_resume_breakpoint, then step over the longjmp breakpoint.  If
7785         handling a bp_longjmp_resume breakpoint, don't delete the longjmp
7786         breakpoint, delete the longjmp-resume breakpoint, and stop
7787         stepping.
7788         (currently_stepping): Remove handling_longjmp from expression.
7789         (insert_step_resume_breakpoint_at_sal): Update comment.
7790         (insert_longjmp_resume_breakpoint): New.
7791
7792         * breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
7793         (enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
7794         declarations.
7795         (set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
7796         (set_longjmp_resume_breakpoint): Delete declaration.
7797
7798         * gdbthread.h (save_infrun_state): Remove handling_longjmp
7799         parameter.
7800         (load_infrun_state): Delete *handling_longjmp parameter.
7801         * thread.c (save_infrun_state): Remove handling_longjmp parameter.
7802         Update body.
7803         (load_infrun_state): Delete *handling_longjmp parameter.  Update
7804         body.
7805
7806         * infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
7807         (delete_longjmp_breakpoint_cleanup): New.
7808         (step_1): Call set_longjmp_breakpoint instead of
7809         enable_longjmp_breakpoint.  Use delete_longjmp_breakpoint_cleanup
7810         instead of disable_longjmp_breakpoint_cleanup when making cleanup.
7811         (step_1_continuation): Pass thread id in the continuation args to
7812         step_once.
7813         (step_once): Add thread parameter.  Pass thread id the the
7814         continuation.
7815
7816 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7817
7818         Set CU BASE_ADDRESS already from partial DIEs.
7819         * dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
7820         BASE_ADDRESS_TYPE.  Set these variables from DW_AT_LOW_PC and
7821         DW_AT_ENTRY_PC.  Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
7822         from these variables if it was still unset.
7823
7824         * Makefile.in: Update dependencies.
7825         * dwarf2read.c: Include "addrmap.h"
7826         (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
7827         (dwarf2_ranges_read): New prototype.
7828         (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
7829         Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
7830         HAS_RANGES_OFFSET, otherwise add there the contiguous range.
7831         (dwarf2_ranges_read): New parameter RANGES_PST, update the function
7832         comment for it.  Add the found ranges to RANGES_PST.  New variable
7833         BASEADDR, initialize it the common way.
7834         (dwarf2_get_pc_bounds): Update the caller for the new parameter.
7835         (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
7836         HAS_RANGES_OFFSET for the later processing.
7837         * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
7838         * symtab.c: Include "addrmap.h"
7839         (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
7840         Move the psymtab locator into ...
7841         (find_pc_sect_psymtab_closer): ... a new function.
7842
7843 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7844
7845         * arch-utils.c (gdbarch_update_p): Use default values for
7846         info.abfd and info.target_desc if they are NULL.
7847         (gdbarch_from_bfd): Remove assertion.
7848         (set_gdbarch_from_file): Call gdbarch_find_by_info directly,
7849         using the current target description.
7850         (gdbarch_info_fill): Do not use default values for info->abfd
7851         and info->target_desc.
7852
7853 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7854
7855         * symfile.c (reread_symbols): Reload EXEC_BFD on its change.
7856
7857 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7858
7859         * inferior.h (read_pc_pid, write_pc_pid): Remove.
7860         * regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.
7861
7862         * regcache.c (read_pc_pid): Remove, replace by ...
7863         (regcache_read_pc): ... this function.
7864         (write_pc_pid): Remove, replace by ...
7865         (regcache_write_pc): ... this function.
7866         (read_pc, write_pc): Update.
7867
7868         * infrun.c (displaced_step_prepare): Replace read_pc_pid and
7869         write_pc_pid by regcache_read_pc and regcache_write_pc.
7870         (displaced_step_fixup): Likewise.
7871         (resume): Likewise.  Use regcache arch instead of current_gdbarch.
7872         (prepare_to_proceed): Likewise.
7873         (proceed): Likewise.
7874         (adjust_pc_after_break): Likewise.
7875         (handle_inferior_event): Likewise.
7876
7877         * linux-nat.c (cancel_breakpoint): Likewise.
7878         * linux-thread-db.c (check_event): Likewise.
7879         * aix-thread.c (aix_thread_wait): Likewise.
7880         * tracepoint.c (trace_dump_command): Likewise.
7881
7882 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7883
7884         * dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
7885         SYMBOL_LOCATION_BATON.
7886
7887 2008-05-04  Vladimir Prus  <vladimir@codesourcery.com>
7888
7889         * target.h (struct target_ops): New field to_auxv_parse.
7890         * auxv.c (default_auxv_parse): New, renamed from previous
7891         target_auxv_parse.
7892         (target_auxv_parse): Try to call target method.  Fallback to
7893         default_auxv_parse if not found.
7894         * procfs.c (procfs_auxv_parse): New.
7895         (init_procfs_ops): On Solaris, in 64-bit mode, install
7896         procfs_auxv_parse.
7897
7898 2008-05-03  Adam Nemet  <anemet@caviumnetworks.com>
7899
7900         * symfile.c (add_symbol_file_command):  Use paddress rather than
7901         hex_string to print the address.
7902
7903 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7904
7905         * rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
7906         return the null frame ID to terminate the backtrace.
7907
7908 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7909
7910         * rs6000-tdep.c: Do not include "rs6000-tdep.h".
7911         (rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
7912         (SIG_FRAME_PC_OFFSET): Likewise.
7913         (SIG_FRAME_LR_OFFSET): Likewise.
7914         (SIG_FRAME_FP_OFFSET): Likewise.
7915         (rs6000_push_dummy_call): Likewise.
7916         (rs6000_return_value): Likewise.
7917         (rs6000_convert_from_func_ptr_addr): Likewise.
7918         (branch_dest, rs6000_software_single_step): Likewise.
7919         (deal_with_atomic_sequence): Rename to ...
7920         (ppc_deal_with_atomic_sequence): ... this.  Adapt all callers.
7921         Do not call branch_dest; inline required parts of that function.
7922         (rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
7923         with SYMBOL_LINKAGE_NAME.
7924         (struct reg, regsize): Delete.
7925         (read_memory_addr): Delete; inline into callers.
7926         (rs6000_skip_prologue): Move after skip_prologue.
7927         (skip_prologue): Remove prototype.
7928         (rs6000_gdbarch_init): Remove sysv_abi variable; perform all
7929         initialization as if this variable were true.  Do not install
7930         ppc64_sysv_abi_adjust_breakpoint_address.
7931
7932         * rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
7933         "gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
7934         and "breakpoint.h".
7935         (rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
7936         (SIG_FRAME_PC_OFFSET): Likewise.
7937         (SIG_FRAME_LR_OFFSET): Likewise.
7938         (SIG_FRAME_FP_OFFSET): Likewise.
7939         (rs6000_push_dummy_call): Likewise.
7940         (rs6000_return_value): Likewise.
7941         (rs6000_convert_from_func_ptr_addr): Likewise.
7942         (branch_dest, rs6000_software_single_step): Likewise.  Replace
7943         tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
7944         (rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
7945         rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
7946         Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
7947         Set tdep->lr_frame_offset.  Do not set tdep->text_segment_base.
7948
7949         * rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
7950         (AIX_TEXT_SEGMENT_BASE): New macro.
7951         * rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
7952         by AIX_TEXT_SEGMENT_BASE.
7953
7954         * ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
7955         (struct gdbarch_tdep): Remove text_segment_base member.
7956         * ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
7957         ppc64_sysv_abi_adjust_breakpoint_address.
7958
7959         * Makefile.in (rs6000-tdep.o): Update dependencies.
7960         (rs6000-aix-tdep.o): Likewise.
7961
7962 2008-05-03  Luis Machado  <luisgpm@br.ibm.com>
7963             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7964
7965         * cli/cli-decode.c (lookup_cmd_1): Fix indentation.
7966         * doublest.c (convert_typed_floating): Fix typo in comment.
7967         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
7968         * frame-unwind.h (frame_sniffer_ftype): Likewise.
7969         * frame.c (frame_unwind_address_in_block): Likewise.
7970         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
7971         * symtab.h (struct symbol): Likewise.
7972         * tramp-frame.h (struct trad_frame_cache): Likewise.
7973         * value.c (allocate_repeat_value): Likewise.
7974
7975 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7976
7977         * infrun.c (handle_inferior_event): Do not insert breakpoints at
7978         TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).
7979
7980 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
7981
7982         * parse.c (parse_exp_in_context): Don't override
7983         expression_context_pc if get_selected_block returned a valid
7984         block.
7985
7986 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
7987
7988         * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
7989         * arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
7990         * breakpoint.c (args_for_catchpoint_enable, current_exception_event):
7991         Delete.
7992         * c-typeprint.c (c_type_print_base): Delete handling of template
7993         instantiations.
7994         * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
7995         (METHOD_PTR_TO_VOFFSET): Delete.
7996         * defs.h (QUIT_FIXME): Delete.
7997         * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
7998         (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
7999         * gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
8000         ninstantiations, and instantiations.
8001         (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
8002         (TYPE_FN_FIELD_INLINED): Delete.
8003         * srec.h (SREC_BINARY): Delete.
8004         * symtab.c (symbol_init_demangled_name): Delete.
8005         * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
8006         (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
8007         (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
8008         (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
8009         (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
8010         (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
8011         * target.h (enum thread_control_capabilities): Delete tc_switch.
8012         (target_can_switch_threads): Delete.
8013
8014 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
8015
8016         * Makefile.in (objfiles.o): Update.
8017         * exec.c (exec_set_section_address): Support p->addr != 0.
8018         * objfiles.c (objfile_relocate): Update exec_ops section
8019         addresses.
8020         * symfile.c (place_section): Move exec_set_section_address call...
8021         (default_symfile_offsets): ...to here.
8022
8023 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
8024
8025         * Makefile.in (ppc_linux_tdep_h): New macro.
8026         (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
8027         (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
8028         (powerpc_e500l_c): Likewise.
8029         (ppc-linux-nat.o): Update dependencies.
8030         (ppc-linux-tdep.o): Update dependencies.
8031         (rs6000-tdep.o): Update dependencies.
8032
8033         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
8034         (ppc_linux_svr4_fetch_link_map_offsets): Remove.
8035         (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
8036         (ppc_supply_reg, ppc_collect_reg): Add prototypes.
8037         (tdesc_powerpc_e500): Remove.
8038
8039         * rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
8040         and "features/rs6000/powerpc-altivec64.c".
8041         (ppc_supply_reg, ppc_collect_reg): Make global.
8042         (variants): Use tdesc_powerpc_32 for "powerpc" and
8043         tdesc_powerpc_altivec64 for "powerpc64".
8044         (_initialize_rs6000_tdep): Initialize AltiVec descriptions.
8045
8046         * ppc-linux-tdep.h: New file.
8047
8048         * ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
8049         Include "features/rs6000/powerpc-32l.c".
8050         Include "features/rs6000/powerpc-altivec32l.c".
8051         Include "features/rs6000/powerpc-64l.c".
8052         Include "features/rs6000/powerpc-altivec64l.c".
8053         Include "features/rs6000/powerpc-e500l.c".
8054         (ppc_linux_supply_gregset): New function.
8055         (ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
8056         (ppc32_linux_gregset): Use ppc_linux_supply_gregset.
8057         (ppc64_linux_gregset): Likewise.
8058         (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
8059         (ppc_linux_trap_reg_p): New function.
8060         (ppc_linux_write_pc): New function.
8061         (ppc_linux_core_read_description): New function.
8062         (ppc_linux_init_abi): Install ppc_linux_write_pc and
8063         ppc_linux_core_read_description.  Install orig_r3 and trap
8064         registers if present in the target description.
8065         (_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
8066
8067         * ppc-linux-nat.c: Include "ppc-linux-tdep.h".
8068         (PT_ORIG_R3, PT_TRAP): Define if necessary.
8069         (ppc_register_u_addr): Handle orig_r3 and trap registers.
8070         (fetch_ppc_registers): Likewise.
8071         (store_ppc_registers): Likewise.
8072         (store_register): Likewise.
8073         (ppc_linux_read_description): Check whether AltiVec is supported.
8074         Check whether inferior is 32-bit or 64-bit.  Return the appropriate
8075         Linux target description.
8076
8077         * features/Makefile (WHICH): Use rs6000/powerpc-32l and
8078         rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
8079         Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
8080         of rs6000/powerpc-64.  Use rs6000/powerpc-e500l instead of
8081         rs6000/powerpc-e500.  Update -expedite variables accordingly.
8082
8083         * features/rs6000/power-spe.xml: Use regnum 73 for "acc".
8084         * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
8085         * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
8086         * features/rs6000/powerpc-e500.c: Regenerate.
8087         * features/rs6000/powerpc-32.c: Regenerate.
8088         * features/rs6000/powerpc-64.c: Regenerate.
8089
8090         * features/rs6000/power-linux.xml: New file.
8091         * features/rs6000/power64-linux.xml: New file.
8092         * features/rs6000/powerpc-32l.xml: New file.
8093         * features/rs6000/powerpc-altivec32l.xml: New file.
8094         * features/rs6000/powerpc-64l.xml: New file.
8095         * features/rs6000/powerpc-altivec64l.xml: New file.
8096         * features/rs6000/powerpc-e500l.xml: New file.
8097         * features/rs6000/powerpc-32l.c: New (generated) file.
8098         * features/rs6000/powerpc-altivec32l.c: New (generated) file.
8099         * features/rs6000/powerpc-64l.c: New (generated) file.
8100         * features/rs6000/powerpc-altivec64l.c: New (generated) file.
8101         * features/rs6000/powerpc-e500l.xml: New (generated) file.
8102
8103         * regformats/reg-ppc.dat: Remove.
8104         * regformats/reg-ppc64.dat: Remove.
8105         * regformats/rs6000/powerpc-32.dat: Remove.
8106         * regformats/rs6000/powerpc-64.dat: Remove.
8107         * regformats/rs6000/powerpc-e500.dat: Remove.
8108         * regformats/rs6000/powerpc-32l.dat: New (generated) file.
8109         * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
8110         * regformats/rs6000/powerpc-64l.dat: New (generated) file.
8111         * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
8112         * regformats/rs6000/powerpc-e500l.dat: New (generated) file.
8113
8114 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
8115
8116         * thread.c (delete_thread): Call observer_notify_thread_exit.
8117         * mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
8118         thread_exit observer.
8119         (mi_thread_exit): New.
8120
8121 2008-05-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8122
8123         * breakpoint.c (create_exception_catchpoint): Remove prototype
8124         for already deleted function.
8125         * breakpoint.h (ep_is_exception_catchpoint): Likewise.
8126         * frame.h (show_stack_frame): Remove prototype.
8127         * stack.c (show_stack_frame): Remove empty, unused function.
8128         * source.c (symtab_to_fullname, print_source_lines): Small fix
8129         in comment.
8130         * value.c (show_values): Update comments to mention "show values"
8131         command instead of "info history".
8132
8133 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
8134
8135         * linespec.c: Include "target.h".
8136         (minsym_found): Handle minimal symbols pointing to function
8137         descriptors.  Use find_function_start_pc.
8138         * minsyms.c (msymbol_objfile): New function.
8139         * parse.c (write_exp_msymbol): Handle minimal symbols pointing
8140         to function descriptors.
8141         * symtab.c (fixup_section): Only use minimal symbol at the same
8142         address to determine section of a symbol.
8143         (find_function_start_pc): New function.
8144         (find_function_start_sal): Use it.
8145         * symtab.h (msymbol_objfile): Add prototype.
8146         (find_function_start_pc): Likewise.
8147         * value.c: Include "objfiles.h".
8148         (value_fn_field): Handle minimal symbols pointing to function
8149         descriptors.
8150         * Makefile.in (linespec.o): Update dependencies.
8151         (value.o): Likewise.
8152
8153 2008-05-02  Joel Brobecker  <brobecker@adacore.com>
8154
8155         * ada-lang.c (unwrap_value): Handle the case where the "F" field
8156         inside a PAD type is a bitfield.
8157
8158 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
8159
8160         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
8161         TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
8162         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
8163         Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
8164         Allow typedefs when checking for function pointer arguments.
8165         Right-align small structs passed on the stack.
8166         (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
8167         TYPE_CODE_CHAR the same as TYPE_CODE_INT.
8168         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
8169
8170 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8171
8172         * Makefile.in (arm-tdep.o): Update.
8173         * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
8174         (struct arm_per_objfile, arm_compare_mapping_symbols): New.
8175         (arm_pc_is_thumb): Use mapping symbols.
8176         (arm_objfile_data_cleanup, arm_record_special_symbol): New.
8177         (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
8178         (_initialize_arm_tdep): Initialize arm_objfile_data_key.
8179         * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
8180         * gdbarch.sh: Add record_special_symbol.
8181         * gdbarch.c, gdbarch.h: Regenerated.
8182         * objfiles.c (struct objfile_data): Add cleanup member.
8183         (register_objfile_data_with_cleanup): New function, from
8184         register_objfile_data.
8185         (register_objfile_data): Use it.
8186         (objfile_free_data): Call clear_objfile_data.
8187         (clear_objfile_data): Call cleanup functions.
8188         * objfiles.h (register_objfile_data_with_cleanup): Declare.
8189
8190 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8191
8192         * objfiles.c (init_entry_point_info): Handle shared libraries.
8193
8194 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8195
8196         * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
8197         lowest_pc.
8198
8199 2008-05-02  Jim Blandy  <jimb@codesourcery.com>
8200             Pedro Alves  <pedro@codesourcery.com>
8201
8202         Implement displaced stepping.
8203
8204         * gdbarch.sh (max_insn_length): New 'variable'.
8205         (displaced_step_copy, displaced_step_fixup)
8206         (displaced_step_free_closure, displaced_step_location): New
8207         functions.
8208         (struct displaced_step_closure): Add forward declaration.
8209         * gdbarch.c, gdbarch.h: Regenerated.
8210
8211         * arch-utils.c: #include "objfiles.h".
8212         (simple_displaced_step_copy_insn)
8213         (simple_displaced_step_free_closure)
8214         (displaced_step_at_entry_point): New functions.
8215         * arch-utils.h (simple_displaced_step_copy_insn)
8216         (simple_displaced_step_free_closure)
8217         (displaced_step_at_entry_point): New prototypes.
8218
8219         * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
8220         (I386_MAX_MATCHED_INSN_LEN): ... this.
8221         (i386_absolute_jmp_p, i386_absolute_call_p)
8222         (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
8223         (i386_displaced_step_fixup): New functions.
8224         (struct i386_insn, i386_match_insn): Update.
8225         (i386_gdbarch_init): Set gdbarch_max_insn_length.
8226         * i386-tdep.h (I386_MAX_INSN_LEN): New.
8227         (i386_displaced_step_fixup): New prototype.
8228         * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
8229         Register gdbarch_displaced_step_copy,
8230         gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
8231         and gdbarch_displaced_step_location functions.
8232
8233         * infrun.c (debug_displaced): New variable.
8234         (show_debug_displaced): New function.
8235         (struct displaced_step_request): New struct.
8236         (displaced_step_request_queue, displaced_step_ptid)
8237         (displaced_step_gdbarch, displaced_step_closure)
8238         (displaced_step_original, displaced_step_copy)
8239         (displaced_step_saved_copy, can_use_displaced_stepping): New
8240         variables.
8241         (show_can_use_displaced_stepping, use_displaced_stepping)
8242         (displaced_step_clear, cleanup_displaced_step_closure)
8243         (displaced_step_dump_bytes, displaced_step_prepare)
8244         (displaced_step_clear_cleanup, write_memory_ptid)
8245         (displaced_step_fixup): New functions.
8246         (resume): Call displaced_step_prepare.
8247         (proceed): Call read_pc once, and remember the value.  If using
8248         displaced stepping, don't remove breakpoints.
8249         (handle_inferior_event): Call displaced_step_fixup.  Add some
8250         debugging output.  When we try to step over a breakpoint, but get
8251         a signal to deliver to the thread instead, ensure the step-resume
8252         breakpoint is actually inserted.  If a thread hop is needed, and
8253         displaced stepping is enabled, don't remove breakpoints.
8254         (init_wait_for_inferior): Call displaced_step_clear.
8255         (_initialize_infrun): Add "set debug displaced" command.  Add
8256         "maint set can-use-displaced-stepping" command.  Clear
8257         displaced_step_ptid.
8258         * inferior.h (debug_displaced): Declare variable.
8259         (displaced_step_dump_bytes): Declare function.
8260
8261         * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
8262         dependencies.
8263
8264 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8265
8266         * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
8267         (arm_force_mode_string, arm_show_fallback_mode)
8268         (arm_show_force_mode): New.
8269         (arm_pc_is_thumb): Honor fallback-mode and force-mode.  Use
8270         arm_frame_is_thumb.
8271         (_initialize_arm_tdep): Add "set arm fallback-mode"
8272         and "set arm force-mode".
8273         * NEWS: Document new commands.
8274
8275 2008-05-02  Andrew Stubbs  <andrew.stubbs@st.com>
8276
8277         * main.h (batch_silent): Declare.
8278         * event-top.c: Include main.h.
8279         (gdb_setup_readline): Remove extern batch_silent declaration.
8280         * infrun.c (normal_stop): Don't print source location when running in
8281         --batch-silent mode.
8282         * Makefile.in (event-top.o): Add main.h dependency.
8283
8284 2008-05-02  Andreas Schwab  <schwab@suse.de>
8285
8286         * target.h (struct target_ops): Add
8287         to_watchpoint_addr_within_range.
8288         (target_watchpoint_addr_within_range): New function.
8289         * target.c (update_current_target): Inherit
8290         to_watchpoint_addr_within_range, defaulting to
8291         default_watchpoint_addr_within_range.
8292         (default_watchpoint_addr_within_range): New function.
8293         (debug_to_watchpoint_addr_within_range): New function.
8294         (setup_target_debug): Set to_watchpoint_addr_within_range.
8295         * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
8296         New function.
8297         (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
8298         * breakpoint.c (watchpoints_triggered): Use
8299         target_watchpoint_addr_within_range.
8300
8301 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8302
8303         * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
8304         (i[34567]86-*-dicos*, x86_64-*-dicos*):
8305         Set gdb_osabi to GDB_OSABI_DICOS.
8306
8307         * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
8308         * osabi.c (gdb_osabi_name): Add "DICOS".
8309
8310         * i386-dicos-tdep.c: New file.
8311
8312         * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
8313         (ALLDEPFILES): Add i386-dicos-tdep.c.
8314         (i386-dicos-tdep.o): New rule.
8315
8316 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8317
8318         * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
8319         and register the fork's PTID as a thread.
8320
8321 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8322
8323         PR gdb/1665
8324         * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
8325         assign its value to the breakpoint created.
8326         (create_breakpoints): Add breakpoint_ops argument and pass it
8327         to create_breakpoint call.
8328         (break_command_really): Add breakpoint_ops argument and pass/assign
8329         appropriately.
8330         (break_command_1): Pass NULL as ops argument.
8331         (set_breakpoint): Pass NULL as ops argument.
8332         (print_one_exception_catchpoint): Print <PENDING> if no loc available.
8333         (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
8334         catch and throw catchpoints.
8335
8336 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8337
8338         PR gdb/2343
8339         * corelow.c (core_open): Use gdbarch_target_signal_from_host to
8340         translate signal numeric value from the target to GDB's enum
8341         target_signal.
8342         * gdbarch.c, gdbarch.h: Regenerated.
8343         * gdbarch.sh: Added two new functions target_signal_from_host and
8344         target_signal_to_host.
8345         * target.h (default_target_signal_from_host,
8346         default_target_signal_to_host): New functions - declarations.
8347         * signals/signals.c (struct gdbarch): New declaration.
8348         (default_target_signal_to_host, default_target_signal_from_host): New
8349         functions.
8350
8351 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8352             Pedro Alves  <pedro@codesourcery.com>
8353
8354         Based on work by Jan Kratochvil <jan.kratochvil@redhat.com> and Jeff
8355         Johnston <jjohnstn@redhat.com>.
8356
8357         * NEWS: Mention attach to stopped process fix.
8358         * infcmd.c (detach_command, disconnect_command): Discard the thread
8359         list.
8360         * infrun.c (handle_inferior_event): Do not ignore non-SIGSTOP while
8361         attaching.  Use signal_stop_state.
8362         (signal_stop_state): Check stop_soon.
8363         * linux-nat.c (kill_lwp): Declare earlier.
8364         (pid_is_stopped, linux_nat_post_attach_wait): New.
8365         (lin_lwp_attach_lwp): Use linux_nat_post_attach_wait.  Update
8366         comments.
8367         (linux_nat_attach): Use linux_nat_post_attach_wait.
8368         (detach_callback, linux_nat_detach): Improve handling for signalled
8369         processes.
8370         (linux_nat_pid_to_str): Always print out the LWP ID if it differs
8371         from the process ID.
8372         * Makefile.in (infcmd.o): Update.
8373
8374 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8375
8376         * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
8377         * arm-tdep.c (arm_frame_is_thumb): New.
8378         (arm_pc_is_thumb): Clarify comment.
8379         (thumb_analyze_prologue): Remove PC special case.
8380         (thumb_scan_prologue): Take a block_addr argument.  Use it for
8381         find_pc_partial_function.  Remove unused variables.
8382         (arm_scan_prologue): Use arm_frame_is_thumb.  Use the block address
8383         for find_pc_partial_function.  Remove PC special case.
8384         (arm_prologue_prev_register): Add special handling for PC and CPSR.
8385         (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
8386         (arm_get_next_pc): Use arm_frame_is_thumb.
8387         (arm_write_pc): Use CPSR_T instead of 0x20.
8388         (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
8389         * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
8390         (CPSR_T): Define.
8391         * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
8392         DWARF2_FRAME_REG_FN.
8393         * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
8394         DWARF2_FRAME_REG_FN.
8395         (struct dwarf2_frame_state_reg): Add FN to loc union.
8396
8397 2008-05-01  Nick Roberts  <nickrob@snap.net.nz>
8398
8399         * exec.c (print_section_info): Add missing '\n'.
8400
8401 2008-05-01  Vladimir Prus  <vladimir@codesourcery.com>
8402
8403         * thread.c (add_thread): Move observer call to ...
8404         (add_thread_silent): ... here.
8405
8406 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8407
8408         * rs6000-tdep.c: Update for unwinder changes.
8409         * ppcobsd-tdep.c: Likewise.
8410
8411 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8412
8413         * s390-tdep.c: Update for unwinder changes.
8414
8415 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8416
8417         * spu-tdep.c: Update for unwinder changes.
8418
8419 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8420
8421         * hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
8422         ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
8423         sparc64-linux-tdep.c: Update for unwinder changes.
8424
8425 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8426
8427         * mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
8428         for unwinder changes.
8429         * mips-tdep.c: Likewise.
8430         (mips_stub_frame_cache): Unwind the ABI stack pointer, not the
8431         raw one.
8432
8433 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8434
8435         * arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
8436         unwinder changes.
8437
8438 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8439
8440         Update i386 and amd64 ports for unwinder changes.
8441
8442         * amd64-tdep.c (amd64_frame_cache): Expect this_frame.
8443         (amd64_frame_this_id, amd64_frame_prev_register): Update signature.
8444         (amd64_frame_unwind): Use default_frame_sniffer.
8445         (amd64_frame_sniffer): Delete.
8446         (amd64_sigtramp_frame_cache): Expect this_frame.
8447         (amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
8448         (amd64_sigtramp_frame_sniffer): Update signature.
8449         (amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
8450         (amd64_frame_base_address): Expect this_frame.
8451         (amd64_dummy_id): Renamed from amd64_unwind_dummy_id.  Expect
8452         this_frame.
8453         (amd64_init_abi): Use set_gdbarch_dummy_id and
8454         frame_unwind_append_unwinder.
8455         * i386-tdep.c (i386_frame_cache): Expect this_frame.
8456         (i386_frame_this_id, i386_frame_prev_register): Update signature.
8457         (i386_frame_unwind): Use default_frame_sniffer.
8458         (i386_frame_sniffer): Delete.
8459         (i386_sigtramp_frame_cache): Expect this_frame.
8460         (i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
8461         (i386_sigtramp_frame_sniffer): Update signature.
8462         (i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
8463         (i386_frame_base_address): Update signature.
8464         (i386_dummy_id): Rename from i386_unwind_dummy_id.  Expect this_frame.
8465         (i386_push_dummy_call): Update comment.
8466         (i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
8467         Expect this_frame.
8468         (i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
8469         and frame_unwind_append_unwinder.
8470         * amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
8471         amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
8472         i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
8473         i386nbsd-tdep.c: Update for unwinder changes.
8474
8475 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8476
8477         * trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
8478         (trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
8479         this_frame.
8480         (trad_frame_get_prev_register, trad_frame_get_register): Update signature.
8481         * trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
8482         (trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
8483         signature.
8484         * tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
8485         this_frame.
8486         (tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
8487         Update signature.
8488         * tramp-frame.h (struct tramp_frame): Update signature of init.
8489         * Makefile.in (trad-frame.o): Update.
8490
8491 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8492
8493         * dwarf2-frame.c (read_reg): Expect this_frame in the baton.
8494         (execute_stack_op): Put this_frame in the baton.
8495         (execute_cfa_program): Take this_frame.
8496         (struct dwarf2_frame_ops): Update comment for signal_frame_p.
8497         (dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
8498         (dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
8499         (dwarf2_frame_this_id): Adjust to work on this_frame.
8500         (dwarf2_signal_frame_this_id): Delete.
8501         (dwarf2_frame_prev_register): Update signature.  Use new frame
8502         unwind methods.
8503         (dwarf2_frame_sniffer): Update signature.  Expect this_frame.
8504         (dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
8505         dwarf2_frame_sniffer.
8506         (dwarf2_append_unwinders): New.
8507         (dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
8508         this_frame.
8509         * sparc-tdep.c (sparc32_dwarf2_struct_return_p)
8510         (sparc32_dwarf2_frame_init_reg): Expect this_frame.
8511         * cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
8512         * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
8513         * s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
8514         * sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
8515         * sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
8516         * dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
8517         (dwarf2_append_unwinders): Declare.
8518         (dwarf2_frame_base_sniffer): Update declaration.
8519         * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
8520         this_frame.
8521
8522 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8523
8524         Convert frame unwinders to use the current frame and
8525         "struct value".
8526
8527         * frame.c (frame_debug): Make global.
8528         (get_frame_id): Pass this frame to unwinder routines.
8529         (frame_pc_unwind): Remove unused unwind->prev_pc support.
8530         (do_frame_register_read): Do not discard the return value of
8531         frame_register_read.
8532         (frame_register_unwind): Remove debug messages.  Use
8533         frame_unwind_register_value.
8534         (frame_unwind_register_value, get_frame_register_value): New
8535         functions.
8536         (create_new_frame, get_frame_base_address, get_frame_locals_address)
8537         (get_frame_args_address, get_frame_type): Pass this frame to
8538         unwinder routines.
8539         (frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
8540         functions.
8541         * frame.h: Update comments.
8542         (frame_debug, frame_unwind_register_value, get_frame_register_value)
8543         (frame_prepare_for_sniffer): Declare.
8544         * frame-unwind.h: Update comments and parameter names.
8545         (default_frame_sniffer): Declare.
8546         (frame_prev_register_ftype): Return a struct value *.
8547         (struct frame_unwind): Remove prev_pc member.
8548         (frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
8549         (frame_unwind_append_unwinder, frame_unwind_got_optimized)
8550         (frame_unwind_got_register, frame_unwind_got_memory)
8551         (frame_unwind_got_constant, frame_unwind_got_address): Declare.
8552         * frame-base.h: Update comments and parameter names.
8553         * valops.c (value_fetch_lazy): Use get_frame_register_value.  Iterate
8554         if necessary.  Add debugging output.
8555         * sentinel-frame.c (sentinel_frame_prev_register)
8556         (sentinel_frame_this_id): Update for new signature.
8557         (sentinel_frame_prev_pc): Delete.
8558         (sentinel_frame_unwinder): Remove prev_pc.
8559         * ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
8560         prev_pc.
8561         * libunwind-frame.c (libunwind_frame_unwind): Likewise.
8562         * frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
8563         (frame_unwind_append_sniffer): Delete.
8564         (frame_unwind_append_unwinder): New function.
8565         (frame_unwind_find_by_frame): Take this frame.  Only use sniffers
8566         from unwinders.  Use frame_prepare_for_sniffer.
8567         (default_frame_sniffer, frame_unwind_got_optimized)
8568         (frame_unwind_got_register, frame_unwind_got_memory)
8569         (frame_unwind_got_constant, frame_unwind_got_address): New functions.
8570         * dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
8571         (dummy_frame_prev_register, dummy_frame_this_id): Update for new
8572         signature.
8573         * gdbarch.sh: Replace unwind_dummy_id with dummy_id.
8574         * gdbarch.c, gdbarch.c: Regenerated.
8575         * frame-base.c (default_frame_base_address)
8576         (default_frame_locals_address, default_frame_args_address): Update
8577         for new signature.
8578         (frame_base_find_by_frame): Pass this frame to unwinder routines.
8579         * infcall.c (call_function_by_hand): Update comments.
8580         * Makefile.in (frame-unwind.o): Update dependencies.
8581
8582 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8583
8584         * ada-lang.c (ada_value_primitive_packed_val): Only check
8585         value_lazy for memory lvals.
8586         * findvar.c (value_of_register_lazy): New function.
8587         (locate_var_value): Only check value_lazy for memory lvals.
8588         * valarith.c (value_subscripted_rvalue): Likewise.
8589         * valops.c (value_fetch_lazy): Handle both memory and register
8590         lvals.
8591         (search_struct_field, value_slice): Only check value_lazy for memory
8592         lvals.
8593         * value.c (struct value): Update comment for lazy.
8594         (value_primitive_field): Only check value_lazy for memory lvals.
8595         * value.h (value_lazy): Update comment.
8596         (value_of_register_lazy): Declare.
8597
8598 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8599
8600         * corefile.c (reopen_exec_file): Close any open files.
8601
8602 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8603
8604         * ia64-tdep.c (ia64_memory_remove_breakpoint): Set
8605         show_memory_breakpoints to 1 while reading the instruction bundle.
8606
8607 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8608
8609         * gdbarch.sh: Document the return_value method. Explain that
8610         the FUNCTYPE parameter might be NULL.
8611         * gdbarch.h: Regenerated.
8612         * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
8613         type when calling using_struct_return, as this is unnecessary
8614         on this target.
8615
8616 2008-04-28  Joel Brobecker  <brobecker@adacore.com>
8617
8618         * terminal.h (create_tty_session): Fix return type.
8619
8620 2008-04-26  Vladimir Prus  <vladimir@codesourcery.com>
8621
8622         * mi/mi-interp.c (mi_new_thread): Quote the thread id.
8623
8624 2008-04-26  Joel Brobecker  <brobecker@adacore.com>
8625
8626         * breakpoint.c (condition_command, commands_from_control_command)
8627         (break_command_really): Minor reformatting.
8628
8629 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8630
8631         * dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.
8632
8633 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8634
8635         * amd64-tdep.c (amd64_get_longjmp_target): New.
8636         (amd64_init_abi): Register amd64_get_longjmp_target as
8637         gdbarch_get_longjmp_target callback.
8638         * i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
8639
8640 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8641
8642         * breakpoint.h (enum bpstat_what_main_action): Delete
8643         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
8644
8645         * breakpoint.c (clrs): Delete.
8646         (bpstat_what): Update table.
8647
8648         * infrun.c (handle_inferior_event): Remove
8649         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
8650
8651 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8652
8653         * mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
8654         Adjust all prototypes using mi_cmd_args_ftype to use
8655         mi_cmd_argv_ftype.
8656         (struct mi_cmd): Remove the args_func field.
8657         * mi/mi-cmds.c: Don't provide value for the args_func field.
8658         * mi/mi-main.c (mi_execute_async_cli_command)
8659         (mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
8660         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
8661         (mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
8662         (mi_cmd_exec_continue, mi_cmd_exec_interrupt)
8663         (mi_cmd_target_download): Adjust.
8664         (mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
8665         (mi_cmd_execute): Do not check for args_func.
8666         (mi_execute_async_cli_command): Adjust.
8667         * mi/mi-parse.c: Don't check for args_func.
8668
8669 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8670
8671         * breakpoint.c (bpstat_check_location)
8672         (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
8673         New, extracted from bpstat_stop_status.
8674         (bpstat_stop_status): Use the above.
8675
8676 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8677
8678         * mi/mi-main.c (last_async_command): Rename to current_token.
8679         (previous_async_command): Remove.
8680         (mi_cmd_gdb_exit): Adjust.
8681         (mi_cmd_exec_interrupt): Don't dance with previous_async_command.
8682         (mi_cmd_target_select): Adjust.
8683         (mi_cmd_execute): Don't set previous_async_command.  Free token
8684         here even in async mode.
8685         (mi_execute_async_cli_command): Adjust.
8686         (mi_exec_async_cli_cmd_continuation): Adjust.  Do not free the
8687         token.
8688         (mi_load_progress): Adjust.
8689
8690 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8691
8692         * infcmd.c (step_1_continuation): Always disable longjmp
8693         breakpoint if we're not going to do another step.
8694
8695 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8696
8697         exec_cleanup murder.
8698         * breakpoint.c (until_break_command_continuation): Add
8699         the 'error' parameter.  Directly delete the breakoint as
8700         opposed to running cleanups.
8701         (until_break_command): Install continuation only
8702         after starting the target.  Don't use exec cleanups,
8703         use ordinary cleanups.  Discard cleanups is successfully
8704         started the target in async mode.
8705         (make_cleanup_delete_breakpoint): Remove.
8706         * breakpoint.h (make_cleanup_delete_breakpoint): Remove
8707         declaration.
8708         * defs.h (do_exec_cleanups, make_exec_cleanup): Remove
8709         declarations.
8710         (struct continations): Add the 'error' parameter to the
8711         continuation_hook field.
8712         (add_continuation, do_all_continuations)
8713         (add_intermediate_continuation)
8714         (do_all_intermediate_continuations): Add the 'error' parameter.
8715         * exceptions.c (throw_exception): Don't call do_exec_cleanups.
8716         * inf-loop.c (inferior_event_handler): Instead of calling
8717         discard_all_continuations, use do_all_continuations with 1 as
8718         'error' parameter.  Pass 0 as 'error' parameter in existing uses
8719         of discard_all_continuations.
8720         * infcmd.c (step_1): Do not use exec cleanup.  For async case, discard
8721         cleanups.
8722         (step_once): Install continuation only after resuming the target.
8723         (step_1_continuation): Disable longjmp breakpoint on error.
8724         (finish_command_continuation): Add the error parameter.  Delete
8725         the finish breakpoint directly, do not use cleanups.
8726         (finish_command): Do not use exec_cleanups. Always setup
8727         continuation.  For sync case, immediately run them.
8728         (attach_command_continuation): Add the error parameter.
8729         * infrun.c (fetch_inferior_event): Do not use exec cleanups to
8730         remove step_resume_breakpoint -- adjust delete it directly.
8731         * interps.c (interp_set): Adjust call to do_all_continations.
8732         * mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
8733         do exec cleanups.
8734         * mi/mi-main.c (mi_cmd_target_select): Do not do exec
8735         cleanups.
8736         (mi_cmd_execute): Do not use exec_cleanup.
8737         (mi_execute_async_cli_command): Simplify the string concatenation
8738         logic.  Do no use exec cleanup.
8739         (mi_exec_async_cli_cmd_continuation): New parameter error.
8740         Free last_async_command.
8741         * top.c (command_line_handler_continuation): New parameter error.
8742         * utils.c (exec_cleanup_chain, make_exec_cleanup)
8743         (do_exec_cleanups): Remove.
8744         (add_continuation, do_all_continations)
8745         (add_intermediate_continuation)
8746         (do_all_intermediate_continuations): New parameter error.
8747
8748 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8749
8750         * breakpoint.h (bp_location_p): New typedef.
8751         Register a vector of bp_location_p.
8752         * breakpoint.c (always_inserted_mode)
8753         (show_always_inserted_mode): New.
8754         (unlink_locations_from_global_list): Remove.
8755         (update_global_location_list)
8756         (update_global_location_list_nothrow): New.
8757         (update_watchpoint): Don't free locations.
8758         (should_insert_location): New.
8759         (insert_bp_location): Use should_insert_location.
8760         (insert_breakpoint_locations): Copied from
8761         insert_breakpoints.
8762         (insert_breakpoint): Use insert_breakpoint_locations.
8763         (bpstat_stop_status): Call update_global_location_list
8764         when disabling breakpoint.
8765         (allocate_bp_location): Don't add to bp_location_chain.
8766         (set_raw_breakpoint)
8767         (create_longjmp_breakpoint, enable_longjmp_breakpoint)
8768         (disable_longjmp_breakpoint, create_overlay_event_breakpoint)
8769         (enable_overlay_breakpoints, disable_overlay_breakpoints)
8770         (set_longjmp_resume_breakpoint)
8771         (enable_watchpoints_after_interactive_call_stop)
8772         (disable_watchpoints_before_interactive_call_start)
8773         (create_internal_breakpoint)
8774         (create_fork_vfork_event_catchpoint)
8775         (create_exec_event_catchpoint, set_momentary_breakpoint)
8776         (create_breakpoints, break_command_1, watch_command_1)
8777         (create_exception_catchpoint)
8778         (handle_gnu_v3_exceptions)
8779         (disable_breakpoint, breakpoint_re_set_one)
8780         (create_thread_event_breakpoint, create_solib_event_breakpoint)
8781         (create_ada_exception_breakpoint): : Don't call check_duplicates.
8782         Call update_global_location_list.
8783         (delete_breakpoint): Don't remove locations and don't
8784         try to reinsert them. Call update_global_location_list.
8785         (update_breakpoint_locations): Likewise.
8786         (restore_always_inserted_mode): New.
8787         (update_breakpoints_after_exec): Temporary disable
8788         always inserted mode.
8789         * Makefile.in: Update dependencies.
8790
8791         * infrun.c (proceed): Remove breakpoints while stepping
8792         over breakpoint.
8793         (handle_inferior_event): Don't remove or insert
8794         breakpoints.
8795         * linux-fork.c (checkpoint_command): Remove breakpoints
8796         before fork and insert after.
8797         (linux_fork_context): Remove breakpoints before switch
8798         and insert after.
8799         * target.c (target_disconnect, target_detach): Remove
8800         breakpoints from target.
8801
8802
8803 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8804
8805         * breakpoint.c (print_one_breakpoint_location): In MI
8806         mode, report the location string the breakpoint was
8807         originally created with.
8808
8809 2008-04-23  Maxim Grigoriev  <maxim2405@gmail.com>
8810
8811         * Makefile.in (xtensa-tdep.o): Update dependencies.
8812         * configure.tgt (xtensa*): Update dependencies.
8813         * xtensa-tdep.c (arreg_number): Renamed from areg_number.
8814         Local variable areg renamed to arreg.
8815         (areg_number): New function.
8816         (xtensa_pseudo_register_read, xtensa_pseudo_register_write)
8817         (xtensa_extract_return_value, xtensa_store_return_value): areg_number
8818         replaced by arreg_number.
8819         (xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
8820         (xtensa_alloc_frame_cache): Initialize cache->wd.ws.
8821         (xtensa_scan_prologue): New function.
8822         (xtensa_frame_cache): New local fp_regnum. Handle separately the case,
8823         when ENTRY instraction hasn't been executed yet. Get the frame pointer
8824         value based on prologue analysis. Fix the bugs preventing WS and
8825         AR4-AR7/A11 registers from getting right values for intermediate frames,
8826         whose registers have been already spilled.
8827         (xtensa_frame_prev_register): Fix WS register value. Use are_number
8828         and arreg_number appropriately.
8829         (xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
8830         svr4_ilp32_fetch_link_map_offsets.
8831
8832 2008-04-23  Andrew Stubbs  <andrew.stubbs@st.com>
8833
8834         * printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
8835         (printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
8836
8837 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
8838
8839         * acinclude.m4: Add override.m4.
8840         * configure: Regenerate.
8841
8842 2008-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
8843
8844         * ada-lang.c (get_selections): Variable PROMPT made non-const and
8845         initialized with a trailing space now.  Use PROMPT_ARG of
8846         COMMAND_LINE_INPUT instead of printing it ourselves.
8847
8848 2008-04-22  Joel Brobecker  <brobecker@adacore.com>
8849
8850         * NEWS: Document support for 64-bit core file.
8851
8852 2008-04-22  Corinna Vinschen  <vinschen@redhat.com>
8853
8854         * NEWS: Add information on calling convention and new SH CLI options.
8855
8856         * sh-tdep.c (sh_cc_gcc): New static string.
8857         (sh_cc_renesas): Ditto.
8858         (sh_cc_enum): New static string array.
8859         (sh_active_calling_convention): New static string pointer denoting
8860         active user chosen ABI.
8861         (sh_is_renesas_calling_convention): New function to return function
8862         specific ABI, or user choice if necessary.
8863         (sh_use_struct_convention): Rename first argument and turn around its
8864         meaning.  Check for renesas ABI and return accordingly.
8865         (sh_use_struct_convention_nofpu): New function.
8866         (sh_next_flt_argreg): Get function type as third parameter.  Check
8867         for renesas ABI and choose floating registers accordingly.
8868         (sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
8869         struct return slot accordingly.
8870         (sh_push_dummy_call_nofpu): Ditto.
8871         (sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
8872         Evaluate ABI and give to sh_use_struct_convention_nofpu.
8873         (sh_return_value_fpu):  Evaluate ABI and give to
8874         sh_use_struct_convention.
8875         (show_sh_command): New function.
8876         (set_sh_command): Ditto.
8877         (_initialize_sh_tdep): Initialize `set/show sh calling-convention
8878         CLI command.
8879
8880         * gdbarch.sh (return_value): Add func_type argument.
8881         * gdbarch.c: Regenerate.
8882         * gdbarch.h: Ditto.
8883         * eval.c (evaluate_subexp_standard): Rename local variable value_type to
8884         val_type so as not to collide with value_type function.  Call
8885         using_struct_return with additional function type argument.
8886         * infcall.c (call_function_by_hand): Call using_struct_return and
8887         gdbarch_return_value with additional function type argument.
8888         * infcmd.c (print_return_value): Take addition func_type argument.
8889         Call gdbarch_return_value with additional function type argument.
8890         (finish_command_continuation): Call print_return_value with additional
8891         function type argument.
8892         (finish_command): Ditto.
8893         * sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
8894         additional function type argument.
8895         * stack.c (return_command): Call using_struct_return and
8896         gdbarch_return_value with additional function type argument.
8897         * value.c (using_struct_return): Take additional function type argument.
8898         * value.h (using_struct_return): Accommodate declaration.
8899         * alpha-tdep.c (alpha_return_value): Add func_type argument.
8900         * amd64-tdep.c (amd64_return_value): Ditto.
8901         * arm-tdep.c (arm_return_value): Ditto.
8902         * avr-tdep.c (avr_return_value): Ditto.
8903         * cris-tdep.c (cris_return_value): Ditto.
8904         * frv-tdep.c (frv_return_value): Ditto.
8905         * h8300-tdep.c (h8300_return_value): Ditto.
8906         (h8300h_return_value): Ditto.
8907         * hppa-tdep.c (hppa32_return_value): Ditto.
8908         (hppa64_return_value): Ditto.
8909         * i386-tdep.c (i386_return_value): Ditto.
8910         * ia64-tdep.c (ia64_return_value): Ditto.
8911         * iq2000-tdep.c (iq2000_return_value): Ditto.
8912         * m32c-tdep.c (m32c_return_value): Ditto.
8913         * m32r-tdep.c (m32r_return_value): Ditto.
8914         * m68hc11-tdep.c (m68hc11_return_value): Ditto.
8915         * m68k-tdep.c (m68k_return_value): Ditto.
8916         (m68k_svr4_return_value): Ditto.
8917         * m88k-tdep.c  (m88k_return_value): Ditto.
8918         * mep-tdep.c (mep_return_value): Ditto.
8919         * mips-tdep.c (mips_eabi_return_value): Ditto.
8920         (mips_n32n64_return_value): Ditto.
8921         (mips_o32_return_value): Ditto.
8922         (mips_o64_return_value): Ditto.
8923         * mn10300-tdep.c (mn10300_return_value): Ditto.
8924         * mt-tdep.c (mt_return_value): Ditto.
8925         * ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
8926         * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
8927         (ppc_sysv_abi_broken_return_value): Ditto.
8928         (ppc64_sysv_abi_return_value): Ditto.
8929         * ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
8930         (ppc_sysv_abi_broken_return_value): Ditto.
8931         (ppc64_sysv_abi_return_value): Ditto.
8932         * ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
8933         * rs6000-tdep.c (rs6000_return_value): Ditto.
8934         * s390-tdep.c (s390_return_value): Ditto.
8935         * score-tdep.c (score_return_value): Ditto.
8936         * sh-tdep.c (sh_return_value_nofpu): Ditto.
8937         (sh_return_value_fpu): Ditto.
8938         * sh64-tdep.c (sh64_return_value): Ditto.
8939         * sparc-tdep.c (sparc32_return_value): Ditto.
8940         * sparc64-tdep.c (sparc64_return_value): Ditto.
8941         * spu-tdep.c (spu_return_value): Ditto.
8942         * v850-tdep.c (v850_return_value): Ditto.
8943         * vax-tdep.c (vax_return_value): Ditto.
8944         * xstormy16-tdep.c (xstormy16_return_value): Ditto.
8945         * xtensa-tdep.c (xtensa_return_value): Ditto.
8946
8947         * gdbtypes.h (struct type): Add calling_convention member.
8948         * dwarf2read.c (read_subroutine_type): Add calling convention read
8949         from DW_AT_calling_convention attribute to function type.
8950
8951 2008-04-22  Markus Deuling  <deuling@de.ibm.com>
8952
8953         * eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
8954         multi_f77_subscript to support values from registers.
8955         * valarith.c (value_subscripted_rvalue): Remove prototype and static.
8956         * value.h (value_subscripted_rvalue): Add prototype.
8957
8958         * f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
8959         Fix output.
8960         * f-valprint.c (f_val_print): Likewise.
8961
8962 2008-04-21  Craig Silverstein  <csilvers@google.com>
8963
8964         * dwarf2read.c (zlib_decompress_section): Define abfd in the
8965         !HAVE_ZLIB_H case.
8966
8967 2008-04-21  Pedro Alves  <pedro@codesourcery.com>
8968
8969         * symfile.c (syms_from_objfile): Don't warn if lowest loadable
8970         section is not a code section.
8971
8972 2008-04-19  Craig Silverstein  <csilvers@google.com>
8973
8974         * NEWS: Add information on compressed debug sections.
8975
8976 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8977
8978         * mi/mi-cmd-var.c (varobj_update_one): Print new
8979         value for variable objects that changed type.
8980
8981 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8982
8983         * varobj.c (varobj_invalidate): Don't touch floating
8984         varobjs.
8985
8986 2008-04-19  Mark Kettenis  <kettenis@gnu.org>
8987
8988         * symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
8989         (multiple_symbols_cancel): Remove extra const.
8990         * symtab.h: Likewise.
8991
8992 2008-04-19  Nick Roberts  <nickrob@snap.net.nz>
8993
8994         * interps.c (top_level_interpreter): Rename static variable...
8995         (top_level_interpreter_ptr): ...to this.
8996         (top_level_interpreter): New function.
8997
8998         * interps.h: New extern for top_level_interpreter.
8999
9000         * linespec.c: Include interps.h and mi/mi-cmds.h.
9001         (decode_line_2): When using MI, always set all breakpoints in menu.
9002
9003         * Makefile.in (linespec.o, mi-interp.o): Add dependencies.
9004
9005 2008-04-18  Craig Silverstein  <csilvers@google.com>
9006
9007         * configure.ac (AC_SEARCH_LIBS): Add check for zlib.
9008         * config.in, configure: Regenerate.
9009         * dwarf2read.c: Include zlib.h if present.
9010         Modified *_SECTION macros.
9011         (section_is_p): New.
9012         (dwarf2_locate_sections): Use section_is_p instead of strcmp
9013         (dwarf2_resize_section): New.
9014         to determine whether a given section has a given name.
9015         (zlib_decompress_section): New.
9016         (dwarf2_read_section): Read the compressed section if present
9017         in the binary.
9018         * MAINTAINERS: Added myself to section Write After Approval.
9019
9020 2008-04-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9021
9022         * defs.h (exec_set_section_offsets): Remove prototype.
9023         * exec.c (exec_set_section_offsets): Remove function.
9024
9025 2008-04-18  Joel Brobecker  <brobecker@adacore.com>
9026
9027         * stabsread.c (cleanup_undefined_types_1): Add instance flags check
9028         in the search for the matching symbol.
9029
9030 2008-04-17  Marc Khouzam  <marc.khouzam@ericsson.com>
9031
9032         * breakpoint.c (update_watchpoint): Always reparse
9033         condition.
9034
9035 2008-04-17  Joel Brobecker  <brobecker@adacore.com>
9036
9037         * breakpoint.c (print_one_breakpoint_location): Make sure to print
9038         the breakpoint address only once.
9039
9040 2008-04-17  Dennis Roberts  <dennis.roberts@sunquestinfo.com>
9041
9042         * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
9043         rather than a hard-coded architecture, for xcoff executables.
9044
9045 2008-04-17  Doug Evans  <dje@google.com>
9046
9047         * buildsym.c (watch_main_source_file_lossage): New fn.
9048         (end_symtab): Call it.
9049
9050         * source.c (find_and_open_source): Add some comments clarifying
9051         handling of FULLNAME argument.  Make static.  Remove pointless
9052         xstrdup/xfree.
9053
9054 2008-04-17  Pedro Alves  <pedro@codesourcery.com>
9055
9056         * inf-loop.c (inferior_event_handler): Also run the intermediate
9057         continuations in the INF_EXEC_COMPLETE case.
9058
9059 2008-04-16  Tom Tromey  <tromey@redhat.com>
9060
9061         * cli/cli-decode.h (CMD_ASYNC_OK): New define.
9062         (set_cmd_async_ok, get_cmd_async_ok): Declare.
9063         * cli/cli-decode.c (set_cmd_async_ok): New function.
9064         (get_cmd_async_ok): New function.
9065         * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
9066         "show" as async-ok.
9067         * top.c (execute_command): Use get_cmd_async_ok.
9068         * infcmd.c: Include cli/cli-decode.h.
9069         (_initialize_infcmd): Mark "interrupt" as async-ok.
9070         * Makefile.in (infcmd.o): Depend on cli_decode_h.
9071
9072 2008-04-16  Daniel Jacobowitz  <dan@codesourcery.com>
9073
9074         PR gdb/2445
9075         * exec.c: Correct "arch-utils.h" include.
9076
9077 2008-04-15  Aleksandar Ristovski  <aristovski@qnx.com>
9078
9079         PR gdb/2424
9080         * infrun.c (normal_stop) Move breakpoint_auto_delete further down
9081         to allow printing to 'see' real reason of stop. This fixes PR 2424.
9082         * breakpoint.c (bpdisp_texst): New function. The function takes over
9083         the role of bpstats static array in print_one_breakpoint_location.
9084         (print_it_typical): Print "Temporary breakpoint" instead
9085         of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
9086         protocols, print disp field.
9087         (print_one_breakpoint_location): Removed bpdisps static definition.
9088         Call new bpstat_text function to get value for 'disp' field.
9089         (mention): Print "Temporary breakpoint" instead of just "Breakpoint".
9090
9091 2008-04-15  Daniel Jacobowitz  <dan@codesourcery.com>
9092
9093         * gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
9094         gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
9095         by rerunning gnulib-tool with --aux-dir=gnulib/extra.
9096         * gnulib/Makefile.in: Regenerate.
9097
9098 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
9099
9100         * Makefile.in (GNULIB_H): New.  Trigger all-lib.
9101         (defs_h): Use $(GNULIB_H).
9102         (all-lib): Depend on gnulib/Makefile.
9103         (gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
9104         * config.in, gnulib/Makefile.in: Regenerated.
9105
9106 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
9107
9108         * Makefile.in (LIBGNU, INCGNU): Define.
9109         (INTERNAL_CFLAGS_BASE): Add INCGNU.
9110         (INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
9111         (CLEANDIRS): New.
9112         ($(LIBGNU), all-lib): New rules.
9113         (clean, distclean, do-maintainer-clean): Use CLEANDIRS.
9114         * configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
9115         Simplify AC_CONFIG_AUX_DIR.  Generate gnulib/Makefile.
9116         * gnulib: New directory, from gnulib-tool.
9117         * configure, aclocal.m4: Regenerated.
9118
9119 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
9120
9121         * linux-thread-db.c (have_threads_callback): Check thread->private.
9122
9123 2008-04-13  Nick Roberts  <nickrob@snap.net.nz>
9124             Vladimir Prus  <vladimir@codesourcery.com>
9125
9126         Fix @-varobjs.
9127         * varobj.c (value_of_root): Update the expression for
9128         floating varobjs.
9129         * mi/mi-cmd-var.c (varobj_update_one): If type has changed,
9130         report that.
9131
9132 2008-04-09  Marc Khouzam  <marc.khouzam@ericsson.com>
9133
9134         * mi/mi-cmd-var.c: Include "mi-getopt.h".
9135         (mi_parse_format): New.  Factored out from mi_cmd_var_set_format.
9136         (mi_cmd_var_set_format): Use new mi_parse_format.
9137         (mi_cmd_var_evaluate_expression): Support for -f option to specify
9138         format.
9139         * Makefile.in (mi-cmd-var.o): Update dependencies.
9140
9141         * varobj.h (varobj_get_formatted_value): Declare.
9142         * varobj.c (my_value_of_variable): Added format parameter.
9143         (cplus_value_of_variable): Likewise.
9144         (java_value_of_variable): Likewise.
9145         (c_value_of_variable): Likewise.  Evaluate expression based
9146         on format parameter.
9147         (struct language_specific): Add format parameter to function member
9148         *value_of_variable.
9149         (varobj_get_formatted_value): New.
9150         (varobj_get_value): Added format parameter to method call.
9151
9152 2008-04-08  Joel Brobecker  <brobecker@adacore.com>
9153
9154         * stabsread.c (cleanup_undefined_types_noname): Manually set the
9155         instance flags of the undefined type before calling replace_type.
9156
9157 2008-04-08  Vladimir Prus  <vladimir@codesourcery.com>
9158
9159         * target.h (enum strata): Remove the download_stratum.
9160
9161 2008-04-07  Doug Evans  <dje@google.com>
9162
9163         * buildsym.h (last_source_file): Add dwarf info to comment.
9164         (last_source_start_addr): Ditto.
9165
9166 2008-04-07  Pedro Alves  <pedro@codesourcery.com>
9167
9168         * alphanbsd-tdep.c: Include "target.h".
9169         * mn10300-tdep.c: Include "target.h".
9170         * Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.
9171
9172 2008-04-06  Vladimir Prus  <vladimir@codesourcery.com>
9173
9174         Fix breakpoint condition that use member variables.
9175         * valops.c (check_field): Remove.
9176         (check_field_in): Rename to check_field.
9177         (value_of_this): Use la_name_of_this.
9178         * value.h (check_field): Adjust prototype.
9179
9180         * language.h (la_value_of_this): Rename to la_name_of_this.
9181         * language.c (unknown_language_defn): Specify "this" for
9182         name_of_this.
9183         (auto_language_defn): Likewise.
9184         (local_language_defn): Likewise.
9185         * ada-lang.c (ada_language_defn): Adjust comment.
9186         * c-lang.c (c_language_defn): Adjust comment.
9187         (cplus_language_defn): Specify "this" for name_of_this.
9188         (asm_language_defn): Adjust comment.
9189         (minimal_language_defn): Adjust comment.
9190         * f-lang.c (f_language_defn): Specify NULL for name_of_this.
9191         * jv-lang.c (java_language_defn): Specify "this" for name_of_this.
9192         * m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
9193         * objc-lang.c (objc_language_defn): Specify "self" for
9194         name_of_this.
9195         * p-lang.c (pascal_language_defn): Specify "this" for
9196         name_of_this.
9197         * scm-lang.c (scm_language_defn): Specify NULL for name_of_this.
9198
9199         * symtab.c (lookup_symbol_aux): Lookup "this" in the
9200         proper scope, and check for field in type of "this", without
9201         trying to create a value.
9202
9203 2008-04-04  Pedro Alves  <pedro@codesourcery.com>
9204
9205         * mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
9206         (mi_error_message): Delete declaration.
9207         * mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
9208         returning MI_CMD_ERROR.
9209         * mi/mi-main.c (mi_error_message): Delete.
9210         (mi_cmd_exec_interrupt):
9211         (mi_cmd_thread_select, mi_cmd_thread_list_ids)
9212         (mi_cmd_thread_info): Call error instead of returning
9213         MI_CMD_ERROR.
9214         (mi_cmd_data_list_register_values): Call error instead of
9215         returning MI_CMD_ERROR.  Adapt to new get_register interface.
9216         (get_register): Change return typo to void.  Call error instead of
9217         returning MI_CMD_ERROR.
9218         (mi_cmd_data_write_register_values): Call error instead of
9219         returning MI_CMD_ERROR.
9220         (mi_cmd_list_features): Return MI_CMD_DONE.
9221         (captured_mi_execute_command): Remove MI_CMD_ERROR handling.
9222         (mi_execute_command): Always print exceptions with -error.
9223
9224 2008-04-04  Joel Brobecker  <brobecker@adacore.com>
9225
9226         * NEWS: Mention new commands set/show multiple-symbols.
9227
9228 2008-04-03  Joel Brobecker  <brobecker@adacore.com>
9229
9230         * symtab.c (multiple_symbols_ask, multiple_symbols_all)
9231         (multiple_symbols_cancel): New constants.
9232         (multiple_symbols_modes, multiple_symbols_mode): New static globals.
9233         (multiple_symbols_select_mode): New function.
9234         (_initialize_symtab): Add new set/show multiple-symbols commands.
9235         * symtab.h (multiple_symbols_ask, multiple_symbols_all)
9236         (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
9237         * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
9238         setting.
9239         * linespec.c (decode_line_2): Likewise.
9240
9241 2008-04-03  Doug Evans  <dje@sebabeach.org>
9242
9243         * symtab.h (enum free_code): Delete free_contents, unused.
9244         * symmisc.c (free_symtab_block): Delete.
9245         (free_symtab, case free_code): Delete.
9246
9247 2008-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
9248
9249         * valops.c (value_cast_structs): New function. Cast related
9250         STRUCT types up/down and return cast value. The body of this
9251         function comes mostly from value_cast_pointers.
9252         (value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
9253         to value_cast_structs. Now value_cast_pointers needs only create
9254         appropriate reference after using value_cast_structs for actual
9255         casting.
9256         (value_cast): Handle references.
9257
9258 2008-04-01  Marc Khouzam  <marc.khouzam@ericsson.com>
9259
9260         * MAINTAINERS: Added myself to section Write After Approval.
9261
9262 2008-03-30  Daniel Jacobowitz  <dan@codesourcery.com>
9263
9264         * ia64-tdep.c (examine_prologue): Correct array access.
9265
9266 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
9267
9268         * cp-support.c (first_component_command): Return if no arguments.
9269
9270 2008-03-28  Carlos O'Donell  <carlos@codesourcery.com>
9271
9272         * ser-mingw.c (ser_windows_open): Open requested name.
9273
9274 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
9275
9276         * MAINTAINERS: Added myself.
9277
9278 2008-03-28  Pedro Alves  <pedro@codesourcery.com>
9279
9280         * target.c (find_default_run_target): Allow a NULL `do_mesg'
9281         parameter.  If it is NULL, don't call error.
9282         (find_default_can_async_p, find_default_is_async_p): Pass NULL as
9283         `do_mesg' parameter to find_default_run_target.  If no target was
9284         found, return 0.
9285
9286 2008-03-28  Daniel Jacobowitz  <dan@codesourcery.com>
9287
9288         * mips-linux-tdep.c: Update N32/N64 signal frame comments.
9289         (N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
9290         (N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
9291         Delete.
9292         (mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.
9293
9294 2008-03-27  Joel Brobecker  <brobecker@adacore.com>
9295
9296         GDB 6.8 released.
9297
9298 2008-03-27  Ulrich Weigand  <uweigand@de.ibm.com>
9299
9300         * features/Makefile (%.dat): Set xmltarget to the base filename
9301         of the XML source, without subdirectory.
9302         * regformats/rs6000/powerpc-32.dat: Regenerate.
9303         * regformats/rs6000/powerpc-64.dat: Regenerate.
9304         * regformats/rs6000/powerpc-e500.dat: Regenerate.
9305
9306 2008-03-27  Markus Deuling  <deuling@de.ibm.com>
9307
9308         * xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
9309         objfile arch.
9310
9311 2008-03-27  Nick Roberts  <nickrob@snap.net.nz>
9312
9313         * mi/mi-main.c (enum captured_mi_execute_command_actions):
9314         Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.
9315
9316 2008-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
9317
9318         * objfiles.h (struct objfile): New GDBARCH member.
9319         (get_objfile_arch): Add prototype.
9320         * objfiles.c: Include "arch-utils.h".
9321         (allocate_objfile): Look up gdbarch associated with bfd.
9322         (get_objfile_arch): New function.
9323         * Makefile (objfiles.o): Update dependencies.
9324
9325         * dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
9326         by objfile arch.
9327         * dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
9328         by frame arch.
9329         (locexpr_describe_location): Replace current_gdbarch by
9330         objfile arch.
9331         * dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
9332         (dwarf2_add_field): Likewise.
9333         (read_tag_pointer_type): Likewise.
9334         (read_base_type): Likewise.
9335         (new_symbol): Likewise.
9336
9337         * coffread.c (decode_type): Add OBJFILE argument.  Update callers.
9338         (decode_base_type, decode_function_type): Likewise.
9339         (coff_read_struct_type, coff_read_enum_type): Likewise.
9340         (coff_symtab_read): Replace current_gdbarch by objfile arch.
9341         (decode_base_type): Likewise.
9342         (coff_read_enum_type): Likewise.
9343         (coff_read_struct_type): Replace current_objfile by OBJFILE argument.
9344         (coff_read_enum_type): Likewise.
9345
9346         * dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
9347         (end_psymtab): Likewise.
9348         (process_one_symbol): Likewise.
9349
9350         * mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
9351         (parse_procedure): Likewise.
9352         (parse_partial_symbols): Likewise.
9353
9354         * somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.
9355
9356         * stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
9357         Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
9358         built-in types.
9359         (read_range_type): Replace current_gdbarch by objfile arch.  Replace
9360         static range_index_type by built-in type.
9361         (read_one_struct_field): Replace current_gdbarch by objfile arch.
9362         (read_enum_type): Likewise.
9363
9364         * xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
9365         objfile arch.
9366
9367 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9368
9369         * varobj.h (varobj_floating_p): Declare.
9370         * varobj.c (varobj_floating_p): New.
9371         * mi/mi-cmd-var.c (mi_cmd_var_update): When passed
9372         '@' as the name, update all floating varobjs.
9373
9374 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9375
9376         * varobj.c (struct varobj_root): Rename use_selected_frame to
9377         floating, and clarify the meaning.
9378         (varobj_create, varobj_update,  new_root_variable): Adjust.
9379         (value_of_root): Don't use type_changed as in variable,
9380         adjust comment.
9381         (c_value_of_root): Adjust.
9382
9383 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9384
9385         * linux-nat.c (linux_nat_attach): Add the pid we attached to, to
9386         gdb's thread list.
9387         (linux_nat_wait): Add main lwp to gdb's thread list.
9388         * linux-thread-db.c (find_new_threads_callback): Also attach to
9389         already listed threads which thread_db didn't know about yet.
9390
9391 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9392
9393         * linux-nat.c (drain_queued_events): Fix comment typo.
9394         (linux_nat_attach): In async mode, don't rely on storing a pending
9395         status.  Instead place the wait status on the pipe.
9396         (linux_nat_resume): Remove unreacheable shortcut code in async
9397         mode.
9398         (stop_wait_callback): In async mode, don't store pending status.
9399         Instead, cancel breakpoints or resend the signal appropriatelly.
9400         (cancel_breakpoint): New, refactored from
9401         cancel_breakpoints_callback.
9402         (cancel_breakpoints_callback): Call cancel_breakpoint.
9403         (pipe_to_local_event_queue): Remove special token processing.
9404         (linux_nat_wait): Issue an internal error if a pending status is
9405         found in async mode.
9406
9407 2008-03-24  Daniel Jacobowitz  <dan@codesourcery.com>
9408
9409         * inflow.c (gdb_has_a_terminal): Guard access to our_process_group.
9410
9411 2008-03-24  Nick Roberts  <nickrob@snap.net.nz>
9412             Vladimir Prus  <vladimir@codesourcery.com>
9413
9414         * varobj.c  (struct varobj_root): New component thread_id.
9415         (varobj_get_thread_id, check_scope): New functions.
9416         (c_value_of_root): Use check_scope.  Switch to the
9417         proper thread if necessary.
9418
9419         * varobj.h (varobj_get_thread_id): New extern.
9420
9421         * mi/mi-cmd-var.c (print_varobj): Add thread-id field.
9422
9423 2008-03-23  Daniel Jacobowitz  <dan@codesourcery.com>
9424
9425         PR gdb/544
9426         * top.c: Revert 2008-03-21 changes.
9427
9428 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9429
9430         * thread.c (make_cleanup_restore_current_thread): Make it
9431         globally visible.
9432         * gdbthread.h (make_cleanup_restore_current_thread): Declare.
9433         * varobj.c (varobj_update): Don't save/restore frame.
9434         (c_value_of_root): Save/restore thread and frame here,
9435         using make_cleanup_restore_current_thread.
9436         * Makefile.in: Update dependecies.
9437
9438 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9439
9440         * varobj.c (struct varobj_root): Clarify
9441         comment on the frame field.
9442         (varobj_create): Don't set frame if we have no
9443         block.
9444
9445 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9446
9447         PR gdb/544
9448         Suggested by Jan Kratochvil:
9449         * top.c (gdb_rl_operate_and_get_next_completion): Call
9450         rl_redisplay_function.
9451         (gdb_rl_redisplay): New.
9452         (init_main): Set rl_redisplay_function.
9453
9454 2008-03-21  Thomas Mittelstaedt  <T.Mittelstaedt@cadenas.de>  (tiny change)
9455
9456         * aix-thread.c (pdc_read_regs): Fix compiler warning.
9457         (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
9458         (store_regs_kernel_thread): Likewise.
9459
9460 2008-03-21  Pedro Alves  <pedro@codesourcery.com>
9461
9462         Linux native async support.
9463
9464         * target.h (struct target_ops): Delete to_async_mask_value and add
9465         to_async_mask.
9466         (target_is_async_p, target_async): Formatting.
9467         (target_async_mask_value): Delete.
9468         (target_async_mask): Delete function declaration, and add new
9469         target macro with the same name.
9470
9471         * target.c (update_current_target): Replace to_async_mask_value by
9472         to_async_mask.  Default to_async_mask to return_one.
9473         (target_async_mask): Delete.
9474         (find_default_can_async_p, find_default_is_async_p): New.
9475         (init_dummy_target): register find_default_can_async_p and
9476         find_default_is_async_p on the dummy target.
9477
9478         * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
9479         (debug_linux_nat_async): New global.
9480         (show_debug_linux_nat_async): New function.
9481         (linux_nat_async_enabled, linux_nat_async_mask_value)
9482         (linux_nat_event_pipe, linux_nat_num_queued_events)
9483         (linux_nat_async_events_enabled): New globals.
9484         (struct waitpid_result): New struct.
9485         (waitpid_queue): New global.
9486         (queued_waitpid, push_waitpid, drain_queued_events): New.
9487         (my_waitpid): Call queued_waitpid.
9488         (linux_child_follow_fork): Disable async events during the call.
9489         (blocked_mask): Delete.
9490         (sync_sigchld_action, async_sigchld_action): New globals.
9491         (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD.  In
9492         async mode, block events during the call.
9493         (linux_nat_create_inferior): New.
9494         (linux_nat_attach): In sync mode, restore the mask states.  In
9495         async mode, wake the event loop immediatelly.
9496         (detach_callback): Drain all queued events of the lwp we're
9497         detaching from.
9498         (linux_nat_detach): Block async mode, and drain events of the main
9499         process.
9500         (linux_nat_resume): If in async mode, mask async events during the
9501         call.  If short circuiting, force event loop to wake up.  If
9502         resuming, set target_executing, and register target events in the
9503         event loop.
9504         (pipe_to_local_event_queue, local_event_queue_to_pipe): New.
9505         (linux_nat_wait): In async mode, block events during the call.
9506         Only enable/disable passing SIGINT to the inferior in sync mode.
9507         Get events from local waitpid queue.  If no interesting events was
9508         found, return to events loop.  Reregister target events in the
9509         event loop on exit.  In sync mode, no need to reblock SIGCHLD.
9510         (linux_nat_kill): Disable events on entry.
9511         (linux_nat_mourn_inferior): In sync mode, don't restore the masks
9512         here.  Detach async mode from the event loop if there are no more
9513         forks available, otherwise leave it on.
9514         (sigchld_handler): Assure this is called only in sync mode.
9515         (linux_async_permitted, linux_async_permitted_1): New globals.
9516         (set_maintenance_linux_async_permitted)
9517         (show_maintenance_linux_async_permitted): New functions.
9518         (linux_nat_is_async_p, linux_nat_can_async_p)
9519         (linux_nat_async_mask): New.
9520         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
9521         (get_pending_events, async_sigchld_handler): New.
9522         (linux_nat_async_events): New.
9523         (async_terminal_is_ours): New global.
9524         (linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
9525         (async_client_callback, async_client_context): New.
9526         (linux_nat_async_file_handler, linux_nat_async)
9527         (linux_nat_disable_async, linux_nat_enable_async): New.
9528         (linux_nat_add_target): Register linux_nat_create_inferior,
9529         linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
9530         linux_nat_async_mask, linux_nat_terminal_inferior and
9531         linux_nat_terminal_ours.
9532         (_initialize_linux_nat): Remove local action variable, and update
9533         code that used it to use sync_sigchld_action.  Add new
9534         "lin-lwp-async" debug set/show command.  Put the "lin-lwp" debug
9535         set/show command in the maintenance class.  Add new "linux-async"
9536         maintenance set/show command.  Block SIGCHLD by default.  Setup
9537         async_sichld_action, and sync_sigchld_action.  Install the default
9538         async mode.
9539         (lin_thread_get_thread_signals): Use a local sigset_t for blocking
9540         the cancel signals.
9541
9542         * linux-thread-db.c (re_check_for_thread_db): New.
9543         (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
9544         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
9545         (thread_db_async_mask): New.
9546         (init_thread_db_ops): Register thread_db_can_async_p,
9547         thread_db_is_async_p, thread_db_async and thread_db_async_mask.
9548
9549         * remote.c (remote_async_mask_value): New.
9550         (remote_return_zero): New.
9551         (init_remote_ops): Register remote_return_zero as callbacks of
9552         to_can_async_p and to_is_async_p.
9553         (remote_can_async_p, remote_is_async_p, remote_async): Update to
9554         use remote_async_mask_value.
9555         (remote_async_mask): New.
9556         (init_remote_async_ops): Remove to_async_mask_value setting and
9557         register remote_async_mask as to_async_mask callback in
9558         remote_async_ops.
9559
9560         * Makefile.in (linux-nat.o): Update.
9561
9562 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9563
9564         * gdbthread.h (add_thread_with_info): New.
9565         * linux-thread-db.c: Add some documentation.
9566         (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
9567         (struct private_thread_info): Remove th_valid and ti_valid.
9568         Replace ti with tid.
9569         (thread_get_info_callback): Do not add TID to the new ptid.  Do
9570         not cache th or ti.
9571         (thread_db_map_id2thr, lwp_from_thread): Delete functions.
9572         (thread_from_lwp): Assert that the LWP is set.  Do not add TID to the
9573         new PTID.
9574         (attach_thread): Handle an already-existing thread.  Use
9575         add_thread_with_info.  Cache the th and tid.
9576         (detach_thread): Verify that private was set.  Remove verbose
9577         argument and printing.  Update caller.
9578         (thread_db_detach): Do not adjust inferior_ptid.
9579         (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
9580         (check_event, find_new_threads_callback): Do not add TID to the new PTID.
9581         (thread_db_wait): Do not use lwp_from_thread.
9582         (thread_db_pid_to_str): Use the cached TID.
9583         (thread_db_extra_thread_info): Check that private is set.
9584         (same_ptid_callback): Delete.
9585         (thread_db_get_thread_local_address): Do not use it or check
9586         is_thread.  Check that private is set.  Assume that the thread
9587         handle is already cached.
9588         (init_thread_db_ops): Remove to_resume and to_kill.
9589         * thread.c (add_thread_with_info): New.
9590         (add_thread): Use it.
9591         * linux-nat.c (find_thread_from_lwp): Delete.
9592         (exit_lwp): Do not use it.  Check print_thread_events.  Print before
9593         deleting the thread.
9594         (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
9595         * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
9596         * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
9597         printf_unfiltered for thread exits.
9598         * procfs.c (procfs_wait): Likewise.
9599
9600 2008-03-21  Chris Demetriou  <cgd@google.com>
9601
9602         * symtab.c (rbreak_command): Quote symbol name before passing
9603         it to break_command.
9604
9605 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9606
9607         * eval.c (evaluate_subexp_for_address): Clarify error message.
9608         Use value_must_coerce_to_target.
9609         * infcall.c (value_arg_coerce): Call value_coerce_to_target.
9610         * valops.c (value_assign): Call value_coerce_to_target when
9611         assigning to anything but internalvars.  Leave GDB-side arrays
9612         as arrays when assigning to internalvars.
9613         (value_must_coerce_to_target, value_coerce_to_target): New.
9614         (value_coerce_array, value_addr): Call value_coerce_to_target.
9615         (value_array): Create the array in GDB's memory instead of
9616         the inferior's.
9617         * value.h (value_must_coerce_to_target, value_coerce_to_target):
9618         Declare.
9619
9620 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9621
9622         * top.c (quit_confirm): Warn that we will kill the program.
9623
9624 2008-03-19  Pedro Alves  <pedro@codesourcery.com>
9625
9626         * inflow.c (terminal_ours_1): Guard access to
9627         inferior_process_group with #ifdef PROCESS_GROUP_TYPE.
9628
9629 2008-03-18  Ulrich Weigand  <uweigand@de.ibm.com>
9630             Jim Blandy  <jimb@codesourcery.com>
9631             Daniel Jacobowitz  <drow@false.org>
9632
9633         * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
9634         (dwarf2_read_address): Update prototype.
9635
9636         * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
9637         (signed_address_type): Likewise.
9638         (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
9639         (execute_stack_op): Update calls to unsigned_address_type,
9640         signed_address_type and dwarf2_read_address.  Fix implementation
9641         of DW_OP_deref_size.
9642
9643         * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
9644         (dwarf2_per_cu_addr_size): Likewise.
9645         (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
9646         (struct dwarf2_loclist_baton): Likewise.
9647
9648         * dwarf2loc.c (find_location_expression): Update calls to
9649         dwarf2_read_address.  Use dwarf2_per_cu_objfile and
9650         dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
9651         (locexpr_describe_location): Likewise.
9652         (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
9653         Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
9654         (dwarf2_loc_desc_needs_frame): Add PER_CU parameter.  Set ctx->addr_size
9655         to dwarf2_per_cu_addr_size (per_cu).
9656         (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
9657         (loclist_read_variable): Likewise.
9658         (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.
9659
9660         * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
9661         instead of baton->objfile.
9662         (dwarf2_per_cu_obfile): New function.
9663         (dwarf2_per_cu_addr_size): Likewise.
9664
9665         * dwarf2-frame.c (struct comp_unit): Move higher.
9666         (struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
9667         (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
9668         (execute_cfa_program): Add FDE parameter.  Replace EH_FRAME_P
9669         parameter by using fde->eh_frame_p.  Use read_encoded_value
9670         to implement DW_CFA_set_loc.
9671         (struct dwarf2_frame_cache): Add ADDR_SIZE member.
9672         (dwarf2_frame_cache): Set cache->addr_size.  Update calls to
9673         execute_stack_op and execute_cfa_program.
9674         (dwarf2_frame_prev_register): Update calls to execute_stack_op.
9675         (size_of_encoded_value): Remove.
9676         (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
9677         Remove call to size_of_encoded_value.  Implement DW_EH_PE_funcrel.
9678         (add_cie): Set cie->unit backlink.
9679         (decode_frame_entry_1): Set cie->addr_size.  Update calls to
9680         read_encoded_value.
9681         (dwarf2_build_frame_info): Allocate UNIT on objfile obstack.
9682
9683 2008-03-17  Markus Deuling  <deuling@de.ibm.com>
9684
9685         * i386-tdep.c (i386_print_insn): Remove unnecessary call to
9686         gdbarch_bfd_arch_info.
9687
9688 2008-03-17  Joel Brobecker  <brobecker@adacore.com>
9689
9690         * aix-thread.c (pdc_read_regs): Minor reformatting.
9691
9692 2008-03-17  Vladimir Prus  <vladimir@codesourcery.com>
9693
9694         * thread.c (print_thread_info): Don't insist
9695         on having current thread if there are no
9696         threads at all.
9697
9698 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9699
9700         * infcmd.c (attach_command_post_wait)
9701         (attach_command_continuation): New.
9702         (attach_command): Support background async execution, and async
9703         execution in synchronous mode.
9704
9705 2008-03-17  Daniel Jacobowitz  <dan@codesourcery.com>
9706
9707         * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
9708         * symmisc.c (dump_symtab_1): Likewise.
9709         * wrapper.c (gdb_value_struct_elt): Likewise.
9710
9711 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9712
9713         * linux-nat.c (linux_nat_filter_event): Fix comment typo.
9714
9715 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9716
9717         * linux-nat.c (linux_nat_filter_event): New, refactored from
9718         linux_nat_wait.
9719         (linux_nat_wait): Call linux_nat_filter_event.
9720
9721 2008-03-17  Ulrich Weigand  <uweigand@de.ibm.com>
9722
9723         * top.c (execute_command): Fix uninitialized variable error.
9724
9725 2008-03-16  Nick Hudson  <nick.hudson@dsl.pipex.com>
9726
9727         * Makefile.in (amd64nbsd-nat.o): New dependency.
9728         * amd64nbsd-nat.c: Include "nbsd-nat.h".
9729         (_initialize_amd64nbsd_nat): Update target vector to use
9730         nbsd_pid_to_exec_file.
9731         * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
9732
9733 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9734
9735         Remove ignoring leading exec events code.
9736         * fork-child.c (startup_inferior): Do not set
9737         inferior_ignoring_leading_exec_events.
9738         * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
9739         (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
9740         * infrun.c (inferior_ignoring_leading_exec_events): Remove.
9741         (handle_inferior_event): Remove code for ignoring leading exec
9742         events.
9743         * target.c (update_current_target): Do not inherit, or default,
9744         to_reported_exec_events_per_exec_call.
9745         (debug_to_reported_exec_events_per_exec_call): Remove.
9746         (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
9747         * target.h (target_reported_exec_events_per_exec_call): Remove.
9748         (struct target): Remove the to_reported_exec_events_per_exec_call
9749         field.
9750
9751 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9752
9753         Implement -thread-info.
9754         * gdbthread.h (print_thread_info): Declare.
9755
9756         * thread.c (print_thread_info): New, extracted
9757         from info_threads_command and adjusted to
9758         work for CLI and MI.
9759         (info_threads_command): Use print_thread_info.
9760         * Makefile.in: Update dependencies.
9761
9762         * mi/mi-cmds.c (mi_cmds): Specify a handler
9763         for -thread-info.
9764         * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
9765         * mi/mi-main.c (mi_cmd_thread_info): New.
9766         (mi_cmd_list_features): Include 'thread-info'.
9767
9768 2008-03-14  Kevin Buettner  <kevinb@redhat.com>
9769
9770         * mips-tdep.c (mips32_scan_prologue): Use the ABI register size
9771         to decide whether to match instruction patterns using "sw" and "sd".
9772
9773 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9774
9775         * infcmd.c (jump_command): Postpone disabling stdin until after
9776         the possible query.
9777
9778 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9779
9780         * inflow.c (gdb_getpgrp): New.
9781         (gdb_has_a_terminal): Use get_getpgrp.
9782         (terminal_ours_1): If attach_flag is set, don't refetch
9783         inferior_process_group.
9784
9785 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9786
9787         * features/library-list.dtd: Allow "section" elements as children
9788         of "library".  Add "section" element and describe its attributes.
9789
9790         * solib-target.c (struct lm_info): Add section_bases member.
9791         (library_list_start_segment): Error out if seen a section element.
9792         (library_list_start_section): New.
9793         (library_list_end_library): New.
9794         (solib_target_free_library_list): Free section_bases.
9795         (section_attributes): New.
9796         (library_children): Make "segment" optional.  Add "section" child.
9797         (library_list_children): Register library_list_end_library.
9798         (solib_target_relocate_section_addresses): Handle section bases.
9799
9800         * NEWS: Mention new qXfer:libraries:read section offsets support.
9801
9802 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9803
9804         * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
9805         (make_exec_error_cleanup): Remove declarations.
9806         * utils.c (exec_error_cleanup_chain): Remove.
9807         (do_exec_error_cleanups, discard_exec_error_cleanups)
9808         (make_exec_error_cleanup): Remove.
9809         * event-loop.c (start_event_loop): Adjust call to
9810         async_enable_stdin.
9811         * event-top.c (async_enable_stdin): Remove the paramater dummy.
9812         (async_disable_stdin): Don't register async_enable_stdin via
9813         cleanup.
9814         * inf-loop.c (inferior_event_handler): Don't
9815         call do_exec_error_cleanups.  Call async_enable_stdin instead.
9816         * event-loop.c (start_event_loop): Adjust call to
9817         async_enable_stdin.
9818         * tui/tui-interp.c (tui_command_loop): Adjust call to
9819         async_enable_stdin.
9820
9821 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9822
9823         Async mode fixes.
9824         * Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
9825         * breakpoint.c (bpstat_do_actions): In async mode,
9826         don't jump to top expecting stop_bpstat to be already
9827         updated.
9828         * event-loop.c (start_event_loop): Call async_enable_stdin
9829         on exception.
9830         * event-top.c (async_enable_stdin): Do nothing if sync_execution
9831         is not set.
9832         (command_handler): Do not setup continuation here.
9833         (command_line_handler_continuation): Move to...
9834         * top.c (command_line_handler_continuation): ... here.
9835         (execute_command): In async mode, register continuation.
9836         Don't check frame's language in running in async mode.
9837         * exceptions.c (throw_exception): Don't do exec_error_cleanups.
9838         * inf-loop.c (complete_execution): Inline into...
9839         (inferior_event_handler): ... here.  Clear target_executing before
9840         doing any cleanups.  Don't try to show prompt if the target was
9841         resumed.
9842         * infcmd.c (signal_command): Add support for async mode.
9843         (finish_command): Only add continuation if the target was
9844         successfully resumed.
9845         * remote.c (init_async_opts): Register to_get_thread_local_address
9846         handler.
9847         * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
9848         with sync_execution.
9849         * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
9850         on exception.
9851
9852 2008-03-14  Daniel Jacobowitz  <dan@codesourcery.com>
9853
9854         * corefile.c (reopen_exec_file): Use exec_bfd_mtime.
9855         * exec.c (exec_bfd_mtime): Define.
9856         (exec_close): Clear it.
9857         (exec_file_attach): Set it.
9858         * gdbcore.h (exec_bfd_mtime): Declare.
9859         * source.c (find_source_lines): Do not use bfd_get_mtime.
9860
9861 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9862
9863         * top.c (simplified_command_loop): Remove.
9864
9865 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9866
9867         Remove unused remote.c hooks.
9868         * remote.c (deprecated_target_resume_hook)
9869         (deprecated_target_wait_loop_hook): Remove.
9870         (remote_resume): Do not call deprecated_target_resume_hook.
9871         (remote_wait): Do not call deprecated_target_wait_loop_hook.
9872         (remote_async_wait): Likewise.
9873
9874 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9875
9876         Implement MI notification for new threads.
9877         * doc/observer.texi (new_thread): Document.
9878         * observer.sh: Forward declare struct thread_info.
9879         * thread.c (add_thread): Notify observer.
9880
9881         * interps.h (interp_init_ftype): New parameter
9882         top_level.
9883         (interp_set): Likewise.
9884         (top_level_interpreter_data): Declare.
9885         * interps.c (interp_set): New parameter top_level.
9886         Pass it to interpreter's init function.  Remember
9887         top level interpreter.
9888         (interpreter_exec_cmd): Adjust.
9889         (top_level_interpreter_data): New.
9890         * main.c (captured_main): Pass 1 for top_level
9891         parameter of interp_set.
9892         * cli/cli-interp.c (cli_interpreter_init): New
9893         parameter top_level.
9894         * tui/tui-interp.c (tui_init): New parameter top_level.
9895
9896         * mi/mi-interp.c (mi_new_thread): New.
9897         (mi_interpreter_init): If top level, register
9898         observer for new threads.
9899
9900         * Makefile.in (mi-interp.o, thread.o): Update dependencies.
9901
9902 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9903
9904         * top.c (execute_command): Disable break and stop
9905         commands in async mode.
9906
9907 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9908
9909         revert:
9910         2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9911         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9912         Call target_stop in the INF_QUIT_REQ case.
9913         * Makefile.in (inf-loop.o): Update.
9914
9915 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9916
9917         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9918         Call target_stop in the INF_QUIT_REQ case.
9919         * Makefile.in (inf-loop.o): Update.
9920
9921 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9922
9923         * top.c (execute_command): Enable break, info and interrupt
9924         commands in async mode.
9925
9926 2008-03-13  Vladimir Prus  <vladimir@codesourcery.com>
9927             Daniel Jacobowitz  <dan@codesourcery.com>
9928
9929         * breakpoint.h (breakpoint_restore_shadows): New
9930         declaration.
9931         * breakpoint.c (breakpoint_restore_shadows): New.
9932         (read_memory_nobpt): Delete.
9933         * gdbcore.h (read_memory_nobpt): Delete declaration.
9934         * target.c (memory_xfer_partial): Call
9935         breakpoint_restore_shadows.
9936         (restore_show_memory_breakpoints)
9937         (make_show_memory_breakpoints_cleanup): New.
9938         (show_memory_breakpoints): New.
9939         * target.h (make_show_memory_breakpoints_cleanup): Declare.
9940         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
9941         Make sure we see memory breakpoints when checking if
9942         breakpoint is still there.
9943         * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
9944         hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
9945         m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
9946         sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
9947
9948 2008-03-12  Pedro Alves  <pedro@codesourcery.com>
9949
9950         * thread.c (add_thread): Use printf_unfiltered to print.
9951
9952 2008-03-12  Joel Brobecker  <brobecker@gnat.com>
9953
9954         * sol-thread.c: Replace use of TM_I386SOL2_H by an expression
9955         that is true only on x86-solaris and x86_64-solaris.
9956         * procfs.c: Likewise. Move procfs_find_LDT_entry up together
9957         with proc_get_LDT_entry.
9958
9959 2008-03-12  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9960
9961         * configure.ac (AC_CHECK_FUNCS): Add check for setsid.
9962         * config.in, configure: Regenerate.
9963         * fork-child.c (fork_inferior): Call create_tty_session.
9964         * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
9965         (create_tty_session): New function.
9966         * terminal.h: Declare create_tty_session.
9967
9968 2008-03-12  Alan Modra  <amodra@bigpond.net.au>
9969
9970         PR 5900
9971         * elfread.c (elf_symtab_read): Make shndx an unsigned int.
9972         * mipsread.c: Include elf/internal.h.
9973         (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
9974         to internal range.
9975
9976 2008-03-11  Markus Deuling  <deuling@de.ibm.com>
9977
9978         * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
9979         to get at the current architecture and at the target specific vector.
9980         Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
9981         remove define of I387_ST0_REGNUM.
9982
9983         * amd64-tdep.c (I387_ST0_REGNUM): Remove define.
9984
9985         (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
9986         get at the current architecture
9987         (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
9988         parameter.
9989
9990         * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
9991         I387_NUM_XMM_REGS and I387_MM0_REGNUM.
9992
9993         (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
9994         I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
9995         (I387_FSTAT_REGNUM): Add target specific vector as parameter.
9996
9997         (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
9998         at the target specific vector.
9999
10000         (i386_get_longjmp_target): Use get_frame_arch to get at the current
10001         architecture. Use gdbarch_tdep to get at the target specific vector.
10002
10003         (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
10004         update caller. Use gdbarch_tdep to get at the target specific vector.
10005
10006         (i386_register_to_value: Use get_frame_arch to get at the current
10007         architecture.
10008
10009         * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
10010         parameter.
10011
10012         * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
10013         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
10014         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
10015         FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.
10016
10017         (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
10018         undef's.
10019
10020         (i387_convert_register_p, i387_register_to_value,
10021         i387_value_to_register): Update call for i386_fp_regnum_p.
10022
10023         * i387-tdep.h: Remove comment.
10024         (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
10025         (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
10026         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
10027         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
10028         I387_MXCSR_REGNUM): Add target specific vector as parameter.
10029
10030 2008-03-10  Daniel Jacobowitz  <dan@codesourcery.com>
10031
10032         * Makefile.in (fork-child.o): Update.
10033         * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
10034         argument.  Gather all gdbserver features together.
10035         * fork-child.c (exec_wrapper): New variable.
10036         (fork_inferior): Use it.
10037         (startup_inferior): Skip an extra trap if using "set exec-wrapper".
10038         (unset_exec_wrapper_command, _initialize_fork_child): New.
10039
10040 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
10041
10042         * source.c (directory_command): Modify the determination of
10043         condition of terminal "from_tty".
10044
10045 2008-03-10  Matt Rice  <ratmice@gmail.com>
10046
10047         * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.
10048
10049 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
10050
10051         * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
10052         of the data passing to strtoulst function.
10053         (info_spu_signal_command): Likewise.
10054
10055 2008-03-08  Vladimir Prus  <vladimir@codesourcery.com>
10056
10057         * mi/mi-interp.c (mi_command_loop): Remove
10058         commented-out code.
10059
10060 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
10061
10062         * remote.c (extended_remote_attach_1): Make local variable pid an int
10063         instead of a pid_t.
10064
10065 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
10066
10067         * solib-svr4.c (svr4_same_1): New function, originally extracted
10068         from svr4_same and expanded to handle the sparc64 case.
10069         (svr4_same): Move up and reimplement using svr4_same_1.
10070         (enable_break): Use svr4_same_1 to do shared library name comparisons.
10071
10072 2008-03-07  Ramana Radhakrishnan  <ramana.r@gmail.com>
10073
10074         * MAINTAINERS: Move self to Paper trail.
10075
10076 2008-03-05  Daniel Jacobowitz  <dan@codesourcery.com>
10077
10078         * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
10079         * event-loop.c (call_async_signal_handler): New.
10080         * event-loop.h (call_async_signal_handler)
10081         (gdb_call_async_signal_handler): Declare.
10082         (mark_async_signal_handler): Add comments.
10083         * event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
10084         * mingw-hdep.c (sigint_event, sigint_handler): New.
10085         (gdb_select): Use them.  Wait for the readline signal handler
10086         to finish.
10087         (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
10088         * posix-hdep.c (gdb_call_async_signal_handler): New function.
10089         * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
10090         New.
10091         (remote_fileio_ctrl_c_signal_handler): Use
10092         gdb_call_async_signal_handler.
10093         (initialize_remote_fileio): Initialize sigint_fileio_token.
10094         * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
10095         not initialize tokens here.
10096         (handle_remote_sigint_twice): Likewise.  Reinstall
10097         handle_remote_sigint.
10098         (async_remote_interrupt_twice): Just call interrupt_query.
10099         (cleanup_sigint_signal_handler): Do not delete tokens.
10100         (remote_interrupt, remote_interrupt_twice): Use
10101         gdb_call_async_signal_handler.
10102         (interrupt_query): Reinstall the default signal handler.
10103         (_initialize_remote): Initialize tokens here.
10104
10105 2008-03-04  Joel Brobecker  <brobecker@adacore.com>
10106
10107         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
10108         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
10109         Change the type of the lr register to code_ptr.
10110         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
10111         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
10112         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
10113         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
10114         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
10115         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
10116         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.
10117
10118 2008-03-03  James E. Wilson  <wilson@tuliptree.org>
10119
10120         * MAINTAINERS: Update my email address.
10121
10122 2008-03-03  Keith Seitz  <keiths@redhat.com>
10123
10124         From Dave Murphy  <davem@devkitpro.org>:
10125         * configure.ac: Set tcl configdir to win under mingw.
10126         * configure: Regenerate.
10127
10128 2008-03-03  Daniel Jacobowitz  <dan@codesourcery.com>
10129
10130         * breakpoint.c (fetch_watchpoint_value): New function.
10131         (update_watchpoint): Set and clear val_valid.  Use
10132         fetch_watchpoint_value.  Handle unreadable values on the
10133         value chain.  Correct check for user-requested array watchpoints.
10134         (breakpoint_init_inferior): Clear val_valid.
10135         (watchpoint_value_print): New function.
10136         (print_it_typical): Use it.  Do not free or clear old_val.  Print
10137         watchpoints even if old_val == NULL.
10138         (watchpoint_check): Use fetch_watchpoint_value.  Check for values
10139         becoming readable or unreadable.
10140         (watch_command_1): Use fetch_watchpoint_value.  Set val_valid.
10141         (do_enable_watchpoint): Likewise.
10142         * breakpoint.h (struct breakpoint): Update comment for val.  Add
10143         val_valid.
10144         * NEWS: Mention watchpoints on inaccessible memory.
10145
10146 2008-02-29  Daniel Jacobowitz  <dan@codesourcery.com>
10147
10148         * Makefile.in (i386-nat.o): Update.
10149         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
10150         i386_use_watchpoints.
10151         * i386-linux-nat.c (_initialize_i386_linux_nat): Call
10152         i386_use_watchpoints.
10153         * i386-nat.c (i386_stopped_data_address): Take two arguments.
10154         (i386_stopped_by_watchpoint): Update call.
10155         (i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
10156         * config/i386/nm-i386.h: Conditionalize definitions on
10157         ! I386_WATCHPOINTS_IN_TARGET_VECTOR.
10158         (i386_use_watchpoints): Declare.
10159         (i386_stopped_data_address): Update.
10160         * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
10161         * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
10162
10163 2008-02-29  Joel Brobecker  <brobecker@adacore.com>
10164
10165         GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
10166         * version.in: Bump version to 6.8.50.20080229-cvs.
10167
10168 2008-02-28  Markus Deuling  <deuling@de.ibm.com>
10169
10170         * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
10171         properly.
10172
10173 2008-02-28  Tom Tromey  <tromey@redhat.com>
10174
10175         * infcmd.c (notice_args_read): Print result of get_inferior_args.
10176
10177 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
10178
10179         * infcmd.c (kill_if_already_running): Make static.  Use
10180         target_require_runnable.
10181         * target.c (target_require_runnable): New.
10182         * target.h (target_require_runnable): Declare.
10183
10184 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
10185
10186         * frame.c (reinit_frame_cache): Only annotate if frames were
10187         previously valid.
10188
10189 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
10190
10191         * regformats/reg-ppc.dat: Rename "ps" to "msr".
10192         * regformats/reg-ppc64.dat: Likewise.
10193
10194 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
10195
10196         * features/Makefile (%.dat): Emit xmltarget statement.
10197
10198         * regformats/regdat.sh: Support xmltarget and xmlarch statments.
10199         Generate code to set gdbserver_xmltarget in init_registers_${name}.
10200
10201         * regformats/arm-with-iwmmxt.dat: Regenerate.
10202         * regformats/mips64-linux.dat: Regenerate.
10203         * regformats/mips-linux.dat: Regenerate.
10204         * regformats/rs6000/powerpc-32.dat: Regenerate.
10205         * regformats/rs6000/powerpc-64.dat: Regenerate.
10206         * regformats/rs6000/powerpc-e500.dat: Regenerate.
10207
10208         * regformats/reg-arm.dat: Add xmlarch statement.
10209         * regformats/reg-i386.dat: Likewise.
10210         * regformats/reg-i386-linux.dat: Likewise.
10211         * regformats/reg-x86-64-linux.dat: Likewise.
10212         * regformats/reg-spu.dat: Likewise.
10213
10214 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
10215
10216         * remote.c (remote_wait, remote_async_wait): Stop if we receive
10217         an error.
10218
10219 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
10220
10221         * utils.c (debug_timestamp): New.
10222         (vfprintf_unfiltered): Print timestamps if requested.
10223         (show_debug_timestamp): New.
10224         (initialize_utils): Register "set debug timestamp".
10225         * NEWS: Mention "set debug timestamp".  Add GDB 6.8 section.
10226
10227 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
10228
10229         * breakpoint.c (skip_prologue_sal): New function.
10230         (resolve_sal_pc): Adjust SAL past prologue if the SAL was
10231         computed from a line number.
10232
10233 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
10234
10235         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml
10236         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
10237         Set PC register type to "code_ptr".
10238         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
10239         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
10240         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
10241         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
10242         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
10243         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
10244         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
10245         Regenerate.
10246
10247 2008-02-27  Ulrich Weigand  <uweigand@de.ibm.com>
10248
10249         * regformats/regdat.sh: Rename init_registers function in
10250         generated file to init_registers_${name}.
10251
10252         * regformats/reg-crisv32.dat: Set "name" to crisv32.
10253         * regformats/reg-ppc64.dat: Set "name" to ppc64.
10254         * regformats/reg-s390x.dat: Set "name" to s390x.
10255
10256 2008-02-26  Greg Law  <glaw@undo-software.com>
10257
10258         * regcache.c (registers_changed): Call reinit_frame_cache.
10259
10260 2008-02-26  Daniel Jacobowitz  <dan@codesourcery.com>
10261
10262         * configure.tgt (sh-*-linux*): Match sh*.  Add glibc-tdep.o.
10263         * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
10264         and svr4_fetch_objfile_link_map.
10265         * Makefile.in (sh-linux-tdep.o): Update.
10266
10267 2008-02-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10268
10269         * amd64-tdep.c (amd64_classify): Add support for decimal float
10270         types.
10271         * i386-tdep.c (i386_return_value): Make 128-bit decimal float
10272         use the struct return convention.
10273
10274 2008-02-26  Nick Roberts  <nickrob@snap.net.nz>
10275
10276         * breakpoint.c (print_one_breakpoint_location): Revert Enb field
10277         to old format.  Discard breakpoint address if shared library is
10278         unloaded.
10279         (breakpoint_1): Adjust formatting of table header accordingly.
10280
10281 2008-02-25  Vladimir Prus  <vladimir@codesourcery.com>
10282
10283        * remote.c (remote_get_threadlist): If the response
10284        is empty, don't try to parse it.
10285
10286 2008-02-23  Vladimir Prus  <vladimir@codesourcery.com>
10287
10288         Unbreak 'target async'.
10289         * serial.c (serial_async): Set the
10290         handler function before enabling async
10291         mode.
10292
10293 2008-02-22  Daniel Jacobowitz  <dan@codesourcery.com>
10294
10295         * solib-svr4.c (enable_break): Convert r_brk to a code address.
10296
10297 2008-02-21  Pedro Alves  <pedro@codesourcery.com>
10298
10299         * remote.c (extended_remote_attach_1): Set attach_flag.
10300         (extended_remote_create_inferior_1): Clear attach_flag.
10301
10302 2008-02-20  Daniel Jacobowitz  <dan@codesourcery.com>
10303
10304         * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
10305         r_brk_offset.
10306         (mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
10307         * solib-svr4.c (solib_svr4_r_brk): New.
10308         (open_symbol_file_object, svr4_current_sos): Always check the
10309         debug base.
10310         (svr4_fetch_objfile_link_map): Do not set debug_base.
10311         (enable_break): Use r_brk if it is set.
10312         (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
10313         (svr4_lp64_fetch_link_map_offsets): Likewise.
10314         * solib-svr4.h (struct link_map_offsets): Add r_brk_offset.
10315
10316 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10317             Mark Kettenis  <kettenis@gnu.org>
10318
10319         * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
10320         trad_frame_saved_reg.
10321         (trad-frame.h): New include.
10322
10323         (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
10324         instead of frame_obstack_zalloc.
10325         (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.
10326
10327         * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
10328
10329 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10330
10331         * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
10332         from disassemble_info instead of gdbarch_byte_order.
10333
10334         * mips-tdep.c (gdb_print_insn_mips): Likewise.
10335         * arm-tdep.c (gdb_print_insn_arm): Likewise.
10336
10337 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10338
10339         * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
10340         gdbarch as parameter.
10341
10342         * gdbarch.{c,h}: Regenerate.
10343
10344         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10345         parameter.
10346         * mem-break.c (default_memory_insert_breakpoint)
10347         (default_memory_remove_breakpoint): Likewise.
10348         * target.h (default_memory_remove_breakpoint)
10349         (default_memory_insert_breakpoint): Likewise.
10350
10351         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10352         parameter. Replace current_gdbarch by gdbarch.
10353         * m32r-tdep.c (m32r_memory_insert_breakpoint)
10354         (m32r_memory_remove_breakpoint): Likewise.
10355
10356 2008-02-19  Daniel Jacobowitz  <dan@codesourcery.com>
10357
10358         * MAINTAINERS: Add Vladimir Prus as MI maintainer.
10359
10360 2008-02-19  Joel Brobecker  <brobecker@adacore.com>
10361
10362         * NEWS: Add entry describing Add support improvements.
10363
10364 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10365
10366         * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
10367         M68K_FP0_REGNUM.
10368
10369 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10370
10371         * sentinel-frame.c (sentinel_frame_prev_register): Do not call
10372         register_offset_hack anymore.
10373
10374         * regcache.{c,h} (register_offset_hack): Remove.
10375
10376 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10377
10378         * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.
10379
10380         * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
10381         current_gdbarch by gdbarch.
10382         (hppa64_hpux_find_global_pointer): Likewise.
10383         * hppa-tdep.c (hppa_find_global_pointer): Likewise.
10384         (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
10385         find_global_pointer.
10386
10387         * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
10388         parameter.
10389         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.
10390
10391         * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
10392         of gdbarch_num_regs.
10393
10394         * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
10395         replace current_gdbarch by gdbarch.
10396         (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.
10397
10398 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10399
10400         * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
10401         and replace current_gdbarch by gdbarch.
10402
10403         (store_register): Update call for exec_one_dummy_insn.
10404         (fetch_register, store_register): Update call of regmap.
10405
10406         * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
10407         parameter and replace current_gdbarch by gdbarch.
10408
10409         (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
10410         the current architecture. Update call for getregs_supplies and
10411         getfpregs_supplies.
10412         (ppcnbsd_fetch_inferior_registers): Likewise.
10413
10414         * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
10415         replace current_gdbarch by gdbarch.
10416         (ppcobsd_fetch_registers, ppcobsd_store_registers): Use
10417         get_regcache_arch to get at the current architecture. Update call for
10418         getfpregs_supplies.
10419
10420 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10421
10422         * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
10423         variables.
10424
10425 2008-02-15  Markus Deuling  <deuling@de.ibm.com>
10426
10427         * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.
10428
10429 2008-02-14  Vladimir Prus  <vladimir@codesourcery.com>
10430
10431         * NEWS: Mention pending breakpints in MI.
10432
10433 2008-02-14  Markus Deuling  <deuling@de.ibm.com>
10434
10435         * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.
10436
10437 2008-02-13  Markus Deuling  <deuling@de.ibm.com>
10438
10439         Add script to build and test GDB using enable-targets=all.
10440
10441         * gdb_buildall.sh: New file.
10442
10443 2008-02-11  Maxim Grigoriev  <maxim2405@gmail.com>
10444
10445         * NEWS (New native configurations): Xtensa GNU/Linux.
10446         (New targets): Xtensa GNU/Linux.
10447         * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and
10448         xtensa-linux-tdep.o
10449         (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c
10450         (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies.
10451         * configure.tgt (xtensa*-*-linux*): New entry.
10452         * xtensa-config.c (xtensa_tdep): New variable.
10453         (xtensa_config_byte_order, xtensa_config_tdep): Removed.
10454         (rmap): Change format based on new macro XTREG.
10455         (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h.
10456         * xtensa-linux-nat.c: New.
10457         * xtensa-linux-tdep.c: New.
10458         * xtensa-xtregs.c: New.
10459         * xtensa-tdep.h (xtensa_elf_gregset_t): Update.
10460         (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE)
10461         (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros.
10462         (xtensa_register_t): New field coprocessor.
10463         (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected.
10464         * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed.
10465         (xtensa_pseudo_register_read, xtensa_pseudo_register_write):
10466         Update to handle privileged registers.
10467         (xtensa_supply_gregset) Remove exccause and excvaddr registers.
10468         (xtensa_push_dummy_call): Set windowstart register correctly.
10469         (call0_analyze_prologue): Initialize xtensa_default_isa.
10470         (xtensa_derive_tdep): New.
10471         (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and
10472         xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead.
10473         Call xtensa_derive_tdep().
10474         * config/xtensa/linux.mh: New.
10475         * regformats/reg-xtensa.dat: New.
10476
10477 2008-02-09  Aleksandar Ristovski  <aristovski@qnx.com>  (tiny change)
10478
10479         * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
10480         (filenames.h): New include.
10481         * Makefile.in (corelow.o): Add dependency for filenames.h.
10482
10483 2008-02-08  Doug Evans  <dje@google.com>
10484
10485         * source.c (find_and_open_source): Always rewrite absolute filenames.
10486
10487 2008-02-07  Doug Evans  <dje@google.com>
10488
10489         * breakpoint.c: #include "hashtab.h".
10490         (ambiguous_names_p): New fn.
10491         (update_breakpoint_locations): When restoring bp enable status, don't
10492         compare function names if any functions have same name.
10493         * Makefile.in (breakpoint.o): Add hashtab.h dependency.
10494
10495 2008-02-07  Joel Brobecker  <brobecker@adacore.com>
10496
10497         * ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
10498         instead of just a VEC*. Update use of SV.
10499         (ada_make_symbol_completion_list): Update symbol_completion_add calls.
10500
10501 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10502
10503         * NEWS: Put all new commands since gdb-6.7 together.
10504
10505 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10506
10507         * ada-lang.c: #include "vec.h".
10508         (struct string_vector, new_string_vector, string_vector_append):
10509         Delete.
10510         (char_ptr): New typedef.
10511         (DEF_VEC_P (char_ptr)): New VEC type.
10512         (symbol_completion_add): Update profile to take the new VEC type
10513         instead of the old string_vector structure. Update code accordingly.
10514         (ada_make_symbol_completion_list): Use the new VEC type instead of
10515         the old string_vector structure, and update the code accordingly.
10516         * Makefile.in (ada-lang.o): Add dependency on vec.h.
10517
10518 2008-02-06  Pierre Muller  <muller@ics.u-strasbg.fr>
10519
10520         * p-exp.y: Set current_type in missing places.
10521         (leftdiv_is_integer): New static variable.
10522         Typecast right operand of BINOP_DIV to long_double if both operands
10523         are integers.
10524
10525 2008-02-06  Maciej W. Rozycki  <macro@mips.com>
10526
10527         * remote-mips.c (set_breakpoint): Rename to...
10528         (mips_set_breakpoint): ... this.
10529         (clear_breakpoint): Rename to...
10530         (mips_clear_breakpoint): ... this.
10531         (common_breakpoint): Rename to...
10532         (mips_common_breakpoint): ... this.
10533         (check_lsi_error): Rename to...
10534         (mips_check_lsi_error): ... this.
10535
10536 2007-02-05  Joel Brobecker  <brobecker@adacore.com>
10537
10538         * language.h (struct language_defn): Add new field
10539         la_make_symbol_completion_list.
10540         * symtab.c (default_make_symbol_completion_list): Renames
10541         make_symbol_completion_list.
10542         (make_symbol_completion_list): New function.
10543         * symtab.h (default_make_symbol_completion_list): Add declaration.
10544         * langauge.c (unknown_language): Set la_make_symbol_completion_list.
10545         (auto_language, local_language): Likewise.
10546         * objc-lang.c (objc_language_defn): Likewise.
10547         * scm-lang.c (scm_language_defn): Likewise.
10548         * m2-lang.c (m2_language_defn): Likewise.
10549         * f-lang.c (f_language_defn): Likewise.
10550         * jv-lang.c (java_language_defn): Likewise.
10551         * p-lang.c (pascal_language_defn): Likewise.
10552         * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
10553         (minimal_language_defn): Likewise.
10554         * ada-lang.c (struct string_vector): New structure.
10555         (new_string_vector, string_vector_append, ada_unqualified_name)
10556         (add_angle_brackets, symbol_completion_match, symbol_completion_add)
10557         (ada_make_symbol_completion_list): New functions.
10558         (ada_language_defn): Set la_make_symbol_completion_list.
10559         * ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
10560         this function is static.
10561
10562 2008-02-05  Kevin Buettner  <kevinb@redhat.com>
10563
10564         * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
10565         to account for call site optimizations.
10566
10567 2008-02-05  Andrzej Zaborowski  <balrogg@gmail.com>
10568
10569         * tracepoint.c (read_actions): Handle end-of-text indicator
10570         in action list properly.  (Committed by Jim Blandy)
10571
10572 2008-02-05  Jim Blandy  <jimb@red-bean.com>
10573
10574         * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
10575         pseudoregister, not an internal error.
10576         Reported by: Andrzej Zaborowski
10577
10578 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10579
10580         * varobj.c (c_value_of_variable): Use xstrdup.
10581
10582 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10583
10584         Update stored rendition of varobj value when format changes.
10585         * varobj.c (varobj_set_display_format): Recomputed
10586         print_value.
10587         (c_value_of_variable): Return print_value.
10588
10589 2008-02-03  Doug Evans  <dje@google.com>
10590
10591         * eval.c (evaluate_subexp_standard): Fix type of result of mixed
10592         integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
10593         * valops.c (value_one): New function.
10594         * value.h (value_one): Declare.
10595
10596         Fix argument promotion for binary arithmetic ops for C.
10597         * valarith.c (unop_result_type): New fn.
10598         (binop_result_type): New fn.
10599         (value_binop): Move result type computation to binop_result_type.
10600         (value_pos, value_neg, value_complement): Move result type
10601         computation to unop_result_type.
10602
10603         PR 2384
10604         * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10605         Return basetype, fieldno if found.  All callers updated.
10606         Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
10607         objfile.
10608         * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10609         * symfile.h (fill_in_vptr_fieldno): Delete.
10610
10611 2008-02-02  Doug Evans  <dje@google.com>
10612
10613         * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.
10614
10615         * typeprint.c (*): Whitespace cleanup.
10616
10617 2008-02-02  Mark Kettenis  <kettenis@gnu.org>
10618             Luis Machado  <luisgpm@br.ibm.com>
10619             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10620
10621         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
10622         don't fit into registerson the stack the way GCC does.
10623
10624 2008-02-01  Joel Brobecker  <brobecker@adacore.com>
10625
10626         * symtab.c (symbol_set_names): Do not add an entry in the demangling
10627         hash table for Ada symbols. Just store the linkage name as is,
10628         and leave the demangled_name as NULL.
10629
10630 2007-02-01  Joel Brobecker  <brobecker@adacore.com>
10631
10632         * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
10633         in the global scope.
10634         (new_symbol): Likewise.
10635
10636 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10637
10638         * breakpoint.c (break_command_1): Return void.
10639         (break_command_really): Return void.  Rethrow
10640         exceptions instead of returning.
10641         (gdb_breakpoint): Remove the error_message parameter.
10642         Return void.  Rename to set_breakpoint.
10643         * gdb.h (gdb_breakpoint): Rename and move to...
10644         * breakpoint.h (set_breakpoint): ...here.
10645         * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
10646         event hooks even if exception is thrown.  Adjust to
10647         gdb_breakpoint interface changes.
10648
10649
10650 2008-02-01  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10651
10652         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
10653         float in both first and second word in the doubleword, to support
10654         old and new ABIs.
10655
10656 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10657
10658         Properly rethrow exception.  This fixes errors
10659         about non-existent functions for -break-insert.
10660         * breakpoint.c (break_command_really): Use throw_exception
10661         for rethrowing.  If rethrowing, don't print the exception.
10662
10663 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10664
10665         * NEWS: Mention Decimal Floating Point support.
10666
10667 2008-01-31  Joel Brobecker  <brobecker@adacore.com>
10668
10669         * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
10670         value type to builtin_type_void_func_ptr.
10671
10672 2008-01-31  Andreas Krebbel  <krebbel1@de.ibm.com>
10673
10674         * s390-tdep.c (is_float_singleton, is_float_like,
10675         alignment_of, s390_return_value): Make checks for
10676         TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.
10677
10678 2008-01-31  Luis Machado  <luisgpm@br.ibm.com>
10679             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10680
10681         * infcmd.c (default_print_registers_info): Also print hex
10682         raw contents for TYPE_CODE_DECFLOAT registers.
10683         * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
10684         * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
10685         (rs6000_register_name): Add support for DFP pseudo-registers.
10686         (rs6000_pseudo_register_type): Likewise.
10687         rs6000_pseudo_register_reggroup_p): Likewise.
10688         (ppc_pseudo_register_read): New function.
10689         (ppc_pseudo_register_write): Likewise.
10690         (rs6000_pseudo_register_read): Likewise.
10691         (rs6000_pseudo_register_write): Likewise.
10692         (e500_pseudo_register_read): Move checks to
10693         rs6000_pseudo_register_read.
10694         (e500_pseudo_register_write): Move checks to
10695         rs6000_pseudo_register_write.
10696         (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum.  Install
10697         rs6000_pseudo_register_read and rs6000_pseudo_register_write
10698         in gdbarch if SPE or DFP is available.  Adjust gdbarch's
10699         num_pseudo_regs to account for DFP pseudo regs.
10700
10701 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10702
10703         * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
10704         * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
10705         (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
10706         rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
10707         e500_pseudo_register_read, e500_pseudo_register_write): Use
10708         IS_SPE_PSEUDOREG macro.
10709         (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
10710         (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
10711         Remove initialization of tdep->ppc_ev31_regnum.
10712
10713 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
10714
10715         * printcmd.c (print_formatted): Handle references as for unformatted
10716         prints.
10717
10718 2008-01-30  Joel Brobecker  <brobecker@adacore.com>
10719
10720         * eval.c (evaluate_subexp_standard): Add handling of user
10721         registers when in EVAL_AVOID_SIDE_EFFECTS mode.
10722
10723 2008-01-30  Pierre Muller  <muller@ics.u-strasbg.fr>
10724
10725         * eval.c (evaluate_subexp_standard): Support
10726         BINOP_INTDIV opcode.
10727
10728 2008-01-30  Paul N. Hilfinger  <hilfinger@adacore.com>
10729
10730         * valarith.c (value_binop): Add floating-point BINOP_MIN and
10731         BINOP_MAX cases.
10732         For BINOP_EXP, use length and signedness of left operand only for
10733         result, as for shifts.
10734         For integral operands to BINOP_EXP, use new integer_pow and
10735         uinteger_pow functions so as to get full range of results.
10736         (integer_pow): New function.
10737         (uinteger_pow): New function.
10738
10739 2008-01-30  Vladimir Prus  <vladimir@codesourcery.com>
10740
10741         Use vector for varobj_list_children interface.
10742         * gdb/varobj.c (varobj_list_children): Return vector
10743         of varobjs.
10744         * gdb/varobj.h (varobj_list_children): Adjust
10745         prototype.
10746         (varobj_p): Declare.  Declare vector thereof.
10747         * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
10748         for varobj_list_children change.
10749         * Makefile.in (varobj_h): Update dependencies.
10750
10751 2008-01-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10752
10753         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
10754         TYPE_CODE_DECFLOAT arguments.
10755         (ppc64_sysv_abi_push_dummy_call) Likewise.
10756         (get_decimal_float_return_value): New function.
10757         (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
10758         values by calling get_decimal_float_return_value.
10759         (ppc64_sysv_abi_return_value): Likewise.
10760
10761 2008-01-30  Nick Roberts  <nickrob@snap.net.nz>
10762
10763         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file):  Add field
10764         for preprocessor macro information.  Formatting changes.
10765
10766 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10767
10768         * remote.c (struct remote_state): Add cached_wait_status.
10769         (remote_exec_file): New variable.
10770         (PACKET_vAttach, PACKET_vRun): New constants.
10771         (extended_remote_restart): Do not query for status.
10772         (struct start_remote_args): New.
10773         (remote_start_remote): Take it as a second argument.  Check
10774         whether the target is running.  Issue an error for non-running
10775         non-extended targets.  Cache the wait status.  Set inferior_ptid
10776         here.
10777         (remote_open_1): Prompt to disconnect non-running targets.  Make
10778         sure the target is marked running.  Do not set inferior_ptid here.
10779         Update call to remote_start_remote.  Do not call remote_check_symbols
10780         if the target is not running.
10781         (remote_detach_1): Rename from remote_detach.  Take an EXTENDED
10782         argument.  Handle a non-running target.
10783         (remote_detach): Use it.
10784         (extended_remote_detach): New.
10785         (remote_disconnect): Fix typo.  Use remoute_mourn_1.
10786         (extended_remote_attach_1, extended_remote_attach)
10787         (extended_async_remote_attach): New.
10788         (remote_vcont_resume): Remove unused variable.
10789         (remote_wait, remote_async_wait): Use any cached wait status.
10790         (putpkt_binary, getpkt): Clear any cached wait status.
10791         (extended_remoute_mourn_1): New.
10792         (extended_remote_mourn): Use it.
10793         (extended_async_remote_mourn, extended_remote_run): New.
10794         (extended_remote_create_inferior_1): New.
10795         (extended_remote_create_inferior): Use it.
10796         (extended_remote_async_create_inferior): Likewise.
10797         (remote_xfer_partial): Skip for non-executing targets.
10798         (init_extended_remote_ops): Set to_detach and to_attach.
10799         (init_extended_async_remote_ops): Likewise.  Use
10800         extended_async_remote_mourn.
10801         (_initialize_remote): Register vAttach, vRun, and
10802         set remote exec-file.
10803         * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.
10804
10805 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10806
10807         * Makefile.in (symfile.o): Update.
10808         * NEWS: Mention exec tracing support.
10809         * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
10810         exec events.
10811         * infcmd.c (kill_if_already_running, detach_command)
10812         (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
10813         * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
10814         (follow_exec): Do not check may_follow_exec.  Do not mourn and push
10815         targets.  Apply the sysroot path to the loaded executable.  Use
10816         no_shared_libraries.
10817         * linux-nat.c (linux_child_follow_fork): Print fork following
10818         messages if verbose.
10819         (kill_wait_callback): Kill again before waiting a second time.
10820         * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
10821         no_shared_libraries.
10822
10823 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10824
10825         * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.
10826
10827 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10828
10829         * nto-tdep.h: Remove #include "defs.h".
10830         * nto-tdep.c: Add #include "defs.h".
10831         * Makefile.in (nto_tdep_h): Update dependencies.
10832         (nto-tdep.o): Likewise.
10833
10834 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10835
10836         * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
10837         and use it.
10838         (proceed, start_remote): Update call to wait_for_inferior.
10839         * inferior.h (wait_for_inferior): Update declaration.
10840         * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
10841         solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
10842         * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
10843         TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.
10844
10845 2008-01-29  Aleksandar Ristovski  <aristovski@qnx.com>
10846
10847         * varobj (adjust_value_for_child_access): Added checking for
10848         returned value from gdb_value_ind.
10849         (c_describe_child): Likewise.
10850         (cplus_describe_child): Fixed a typo.
10851
10852 2008-01-29  Jim Blandy  <jimb@red-bean.com>
10853
10854         * MAINTAINERS: Update my info.
10855
10856 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10857
10858         Use multiple locations for hardware watchpoints.
10859         This eliminates the need to traverse value chain, doing
10860         various checks, in three different places.
10861
10862         * breakpoint.h (struct bp_location): New fields
10863         lengths and watchpoint_type.
10864         (struct breakpoint): Remove the val_chain field.
10865         * breakpoint.c (is_hardware_watchpoint): New.
10866         (free_valchain): Remove.
10867         (update_watchpoint): New.
10868         (insert_bp_location): For hardware watchpoint, just
10869         directly insert it.
10870         (insert_breakpoints): Call update_watchpoint_locations
10871         on all watchpoints.  If we have failed to insert
10872         any location of a hardware watchpoint, remove all inserted
10873         locations.
10874         (remove_breakpoint): For hardware watchpoints, directly
10875         remove location.
10876         (watchpoints_triggered): Iterate over locations.
10877         (bpstat_stop_status): Use only first location of
10878         a resource watchpoint.
10879         (delete_breakpoint): Don't call free_valchain.
10880         (print_one_breakpoint): Don't print all
10881         locations for watchpoints.
10882         (breakpoint_re_set_one): Use update_watchpoint for
10883         watchpoints.
10884
10885 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10886
10887         Don't reset watchpoint block on solib load.
10888
10889         * breakpoint.c (insert_bp_location): For watchpoints,
10890         recompute condition.
10891         (breakpoint_re_set_one): Instead of recomputing value
10892         and condition for watchpoints, just reset value and
10893         let insert_breakpoints/insert_bp_location recompute it.
10894         Don't do anything about disabled watchpoint.
10895
10896 2008-01-29  Pierre Muller  <muller@ics.u-strasbg.fr>
10897
10898         * valarith.c (value_binop): Handle unsigned integer
10899         division by zero.
10900
10901 2008-01-28  Kevin Buettner  <kevinb@redhat.com>
10902
10903         * mn10300-tdep.c (mn10300_analyze_prologue): Check for an
10904         instruction pattern that appears frequently in position
10905         independent code.  Fix bug in code which looks for "fmov" and
10906         backtracks if no "fmov" is found.
10907
10908 2008-01-28  Doug Evans  <dje@google.com>
10909
10910         * dbxread.c (read_dbx_symtab): Fix indentation.
10911         Reformat comments to 80 columns.
10912         Move local var def closer to only use.
10913
10914 2008-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
10915
10916         * fork-child.c (SHELL_FILE): Remove #ifndef.
10917         (fork_inferior): Remove SHELL_COMMAND_CONCAT.
10918
10919 2008-01-25  Pierre Muller  <muller@ics.u-strasbg.fr>
10920
10921         * i386-tdep.c (i386_skip_noop): New function.
10922         (i386_analyze_prologue): Call i386_skip_noop function.
10923
10924 2008-01-24  Michael Snyder  <msnyder@specifix.com>
10925
10926         * procfs.c (procfs_xfer_partial): Comment, cut/paste error.
10927         * win32-nat.c (win32_xfer_partial): Ditto.
10928         * target.c (default_xfer_partial): Minor whitespace adjustment.
10929
10930 2008-01-24  Pedro Alves  <pedro@codesourcery.com>
10931
10932         * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
10933         strip bit 1 even if pc doesn't point to thumb code.
10934
10935 2008-01-23  Daniel Jacobowitz  <dan@codesourcery.com>
10936
10937         * remote.c (remote_wait): Handle SIGINT between packets.
10938         (remote_async_wait): Likewise.
10939
10940 2008-01-23  Vladimir Prus  <vladimir@codesourcery.com>
10941             Chris Demetriou  <cgd@google.com>
10942
10943         * thread.c (add_thread_silent): Renamed
10944         from add_thread.
10945         (print_thread_events): New variable definition.
10946         (show_print_thread_events): New function.
10947         (_initialize_thread): Add "set print thread-events" and
10948         "show print thread-events" commands.
10949         (add_thread): Announce new thread.
10950         * gdbthread.h (add_thread_silent): Declare.
10951         (print_thread_events): New variable declaration.
10952         * inf-ttrace.c (inf_ttrace_wait): Don't
10953         inform about new thread, as add_thread is always
10954         called too, and will take care of that.
10955         * infrun.c (handle_inferior_event): Likewise.
10956         * procfs.c (procfs_wait): Likewise.
10957         * remote.c (remote_currthread): Likewise.
10958         * sol-thread.c (sol_thread_wait): Likewise.
10959         * win32-nat.c (get_win32_debug_event): Likewise.
10960         * linux-thread-db.c (attach_thread): Likewise.
10961         Remove the verbose parameter.
10962         (check_event): Make detach_thread be verbose
10963         only if print_thread_events is set.
10964         * linux-nat.c (lin_lwp_attach_lwp): Don't inform
10965         about new thread.  This is called only from
10966         linux-thread-db.c:attach_thread, which will take care.
10967         Remove the verbose parameter.
10968         * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.
10969
10970 2008-01-23  Nick Roberts  <nickrob@snap.net.nz>
10971
10972         * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.
10973
10974 2008-01-22  Vladimir Prus  <vladimir@codesourcery.com>
10975
10976         * breakpoint.c (break_command_really): New parameter
10977         ignore_count.
10978         (break_command_1): Pass 0 as
10979         ignore_count to break_command_really.
10980         (gdb_breakpoint): Pass ignore_count to
10981         break_command_really.
10982
10983 2008-01-21  Kevin Buettner  <kevinb@redhat.com>
10984
10985         * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
10986         sigcontext struct via pointer.
10987         (struct sigframe comment): Update to show new field `psc'.
10988
10989 2008-01-21  Vladimir Prus  <vladimir@codesourcery.com>
10990
10991         * infrun.c (handle_inferior_event): If
10992         we failed to remove breakpoints, error,
10993         don't try to increment PC by hand.
10994
10995 2008-01-18  Nick Hudson  <nick.hudson@dsl.pipex.com>
10996
10997         Add NetBSD/hppa target and host support.
10998
10999         * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
11000         (hppabsd_gregset): Move to ...
11001         (hppabsd_regset_from_core_section): Rename
11002         hppaobsd_regset_from_core_section and move to ...
11003         (hppabsd_find_global_pointer): Update comment.
11004         (hppabsd_init_abi): Make global. Do not register
11005         hppabsd_regset_from_core_section.
11006         (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
11007         move to ...
11008         (_initialize_hppabsd_tdep): Move to ...
11009         * hppaobsd-tdep.c: ... here. New file.
11010         * hppnbsd-tdep.c: New file.
11011         * hppnbsd-nat.c: New file.
11012         * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
11013         (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
11014         (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
11015         (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
11016         * configure.host (hppa*-*-netbsd*): New entry.
11017         * configure.tgt (hppa*-*-netbsd*): New entry.
11018         (hppa*-*-openbsd*): Update.
11019         * NEWS (New native configuration): Mention NetBSD/hppa.
11020         (New targets): Mention NetBSD/hppa.
11021
11022 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
11023
11024         * gdbarch.sh (function_list): Add new property bits_big_endian to
11025         gdbarch structure.
11026         * gdbarch.{c,h}: Regenerate.
11027
11028         * value.c (struct value): Replace BITS_BIG_ENDIAN by
11029         gdbarch_bits_big_endian (comment).
11030         (unpack_field_as_long, modify_field): Likewise.
11031         * value.h: Likewise (comment).
11032         * valops.c (value_slice): Likewise.
11033         * valarith.c (value_subscript, value_bit_index): Likewise.
11034         * gdbtypes.h (field): Likewise (comment).
11035         * eval.c (evaluate_subexp_standard): Likewise.
11036         * dwarf2read.c (dwarf2_add_field): Likewise.
11037         * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
11038         (move_bits, ada_value_assign, value_assign_to_component): Likewise.
11039
11040         * defs.h (BITS_BIG_ENDIAN): Remove.
11041
11042 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
11043
11044         * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
11045         function calls.
11046         * m2-exp.y (yylex): Likewise.
11047         * objc-exp.y (yylex): Likewise.
11048
11049         * defs.h (DEPRECATED_STREQN): Remove.
11050
11051 2008-01-17  H.J. Lu  <hjl.tools@gmail.com>
11052
11053         * MAINTAINERS: Update my email address.
11054
11055 2008-01-17  Jim Blandy  <jimb@codesourcery.com>
11056
11057         * README: Mention gdbserver/README.
11058
11059 2008-01-17  Pierre Muller  <muller@ics.u-strasbg.fr>
11060
11061         * valarith.c (value_binop): Handle BINOP_INTDIV
11062         for unsigned and signed integers.
11063
11064 2008-01-17  Ulrich Weigand  <uweigand@de.ibm.com>
11065
11066         * s390-tdep.c (s390_gdbarch_init): Set default long double
11067         type to 128-bit IEEE quad.
11068
11069 2008-01-17  Joel Brobecker  <brobecker@adacore.com>
11070
11071         * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
11072
11073 2008-01-16  Mark Kettenis  <kettenis@gnu.org>
11074
11075         * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.
11076
11077         * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
11078         * value.c: All callers changed.
11079
11080 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11081
11082         * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
11083         DEPRECATED_STREQ by its expression.
11084         * coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
11085         * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
11086         (scan_xcoff_symtab): Likewise.
11087         * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
11088         * f-lang.c (find_common_for_function): Likewise.
11089         * objc-exp.y (parse_number): Likewise.
11090
11091         * defs.h (DEPRECATED_STREQ): Remove.
11092
11093 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11094
11095         * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
11096         * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
11097         get_frame_arch to get at the current_architecture. Update AM33_MODE
11098         call.
11099         (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
11100         (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
11101         architecture.
11102         (set_reg_offsets, mn10300_analyze_prologue): Fix indentation.
11103
11104 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11105
11106         * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
11107         parameter.
11108         * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.
11109
11110         (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
11111         current_gdbarch by gdbarch. Update caller.
11112
11113         * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
11114         (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
11115         the current architecture. Update calls of
11116         amd64_native_gregset_supplies_p.
11117         * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
11118         (amd64bsd_store_inferior_registers): Likewise.
11119
11120 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11121
11122         * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
11123         Replace current_gdbarch by gdbarch. Update caller.
11124
11125 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11126
11127         * dbxread.c (repeated_header_complaint, dbx_symfile_init)
11128         (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
11129         (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
11130         (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
11131         (stabsect_build_psymtabs): Fix indentation.
11132
11133 2008-01-15  Michael Snyder  <msnyder@specifix.com>
11134
11135         * corelow.c (core_xfer_partial): Comment, cut/paste error.
11136
11137 2008-01-14  Pierre Muller  <muller@ics.u-strasbg.fr>
11138
11139         * win32-nat.c (win32_create_inferior): Restore code calling
11140         CloseHandle on ProcessInformation structure.
11141
11142 2008-01-13  Nick Hudson  <nick.hudson@dsl.pipex.com>
11143
11144         * configure.ac: Check for void * as 3 argument of ptrace.
11145         * configure: regenerate.
11146
11147 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11148
11149         * alpha-tdep.c (alpha_heuristic_proc_start)
11150         (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
11151         current_gdbarch by gdbarch.
11152
11153         (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
11154         current architecture by frame_info. Update alpha_heuristic_proc_start
11155         call.
11156
11157         (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
11158         get_frame_arch to get at the current architecture by frame_info. Update
11159         alpha_sigtramp_register_address call.
11160
11161         * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
11162         current_gdbarch by gdbarch. Update caller.
11163         (convert_to_extended, convert_from_extended): Add endianess parameter
11164         for comparison. Update caller.
11165         (arm_extract_return_value, arm_store_return_value): Use
11166         get_regcache_arch to get at the current architecture.
11167
11168         * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
11169         current_gdbarch by gdbarch. Update caller.
11170         (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
11171         gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.
11172
11173         * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
11174         gdbarch as parameter. Update caller.
11175         (h8300_init_frame_cache): Add gdbarch as parameter. Replace
11176         current_gdbarch by gdbarch. Update caller.
11177
11178         * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
11179         update caller. Replace current_gdbarch by gdbarch.
11180
11181         * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
11182         the current architecture. Replace current_gdbarch by gdbarch.
11183         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
11184         (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
11185         expression. Add gdbarch as parameter and replace current_gdbarch with
11186         it. Update caller.
11187         (M6811_TDEP): Remove.
11188         (m68hc11_frame_prev_register): Use get_frame_arch to get at the current
11189         architecture.
11190         (m68hc11_scan_prologue): Add gdbarch as parameter. Replace
11191         current_gdbarch by gdbarch. Update caller.
11192
11193         * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
11194         update caller.
11195         (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
11196         by gdbarch.
11197
11198         * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
11199         caller. Relace current_gdbarch by gdbarch.
11200         (altivec_register_p, spe_register_p): Likewise.
11201         * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
11202         parameter.
11203         * ppc-linux-nat.c (fetch_register, store_register): Update caller of
11204         altivec_register_p and spe_register_p.
11205
11206         * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
11207         caller. Replace current_gdbarch by gdbarch.
11208         (score_analyze_prologue): use get_frame_arch to get at the current
11209         architecture.
11210
11211         * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
11212         * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
11213         current_gdbarch by gdbarch. Update caller.
11214         (sparc_frame_cache): Use get_frame_arch to get at the current
11215         architecture.
11216         * sparce64-tdep.c (sparc64_skip_prologue): Update call of
11217         sparc_analyze_prologue.
11218
11219         * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
11220         parameter.
11221
11222 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11223
11224         * exec.c: #include "arch-utils.h"
11225          (print_section_info): Use gdbarch_from_bfd to get at the
11226         current architecture. Replace current_gdbarch. Fix indention. Replace
11227         deprecated_print_address_numeric by paddress.
11228         * Makefile.in (exec.o) Add dependency to arch-utils.h.
11229
11230         * valprint.c (val_print_string): Replace
11231         deprecated_print_address_numeric.
11232         * tracepoint.c (trace_mention, scope_info): Likewise.
11233         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
11234         (print_symbol, print_partial_symbols, maintenance_info_psymtabs)
11235         (maintenance_check_symtabs): Likewise.
11236         * symfile.c (list_overlays_command): Likewise.
11237         * stack.c (frame_info, print_block_frame_labels): Likewise.
11238         * printcmd.c (print_address, print_address_demangle)
11239         (address_info): Likewise.
11240         * corefile.c (memory_error): Likewise.
11241         * infcmd.c (jump_command): Likewise.
11242         * breakpoint.c (insert_bp_location, describe_other_breakpoints)
11243         (mention, delete_breakpoint): Likewise.
11244         * c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
11245         * dwarf2read.c (dump_die): Likewise.
11246         * ada-valprint.c (ada_val_print_1): Likewise.
11247         * f-valprint.c (f_val_print): Likewise.
11248         * linux-fork.c (info_forks_command): Likewise.
11249         * m32r-com.c (m32r_load_section, m32r_load)
11250         (m32r_upload_command): Likewise.
11251
11252         * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
11253
11254 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11255
11256         * gdbarch.sh (skip_prologue): Add gdbarch
11257         as parameter.
11258         * gdbarch.{c,h}: Regenerate.
11259
11260         * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
11261         * amd64-tdep.c (amd64_skip_prologue): Likewise.
11262         * avr-tdep.c (avr_skip_prologue): Likewise.
11263         * cris-tdep.c (cris_skip_prologue): Likewise.
11264         * frv-tdep.c (frv_skip_prologue): Likewise.
11265         * h8300-tdep.c (h8300_skip_prologue): Likewise.
11266         * hppa-tdep.c (hppa_skip_prologue): Likewise.
11267         * i386-tdep.c (i386_skip_prologue): Likewise.
11268         * ia64-tdep.c (ia64_skip_prologue): Likewise.
11269         * iq2000-tdep.c (iq2000_skip_prologue): Likewise.
11270         * m32r-tdep.c (m32r_skip_prologue): Likewise.
11271         * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
11272         * m68k-tdep.c (m68k_skip_prologue): Likewise.
11273         * m88k-tdep.c (m88k_skip_prologue): Likewise.
11274         * mep-tdep.c (mep_skip_prologue): Likewise.
11275         * mips-tdep.c (mips_skip_prologue): Likewise.
11276         * mn10300-tdep.c (mn10300_skip_prologue): Likewise.
11277         * mt-tdep.c (mt_skip_prologue): Likewise.
11278         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
11279         * score-tdep.c (score_skip_prologue): Likewise.
11280         * sh64-tdep.c (sh64_skip_prologue): Likewise.
11281         * sh-tdep.c (sh_skip_prologue): Likewise.
11282         * sparc64-tdep.c (sparc64_skip_prologue): Likewise.
11283         * sparc-tdep.c (sparc32_skip_prologue): Likewise.
11284         * spu-tdep.c (spu_skip_prologue): Likewise.
11285         * v850-tdep.c (v850_skip_prologue): Likewise.
11286         * vax-tdep.c (vax_skip_prologue): Likewise.
11287         * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
11288         * xtensa-tdep.c (xtensa_skip_prologue): Likewise.
11289
11290         * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
11291         current_gdbarch by gdbarch.
11292         * m32c-tdep.c (m32c_skip_prologue): Likewise.
11293         * s390-tdep.c (s390_skip_prologue): Likewise.
11294
11295 2008-01-10  Doug Evans  <dje@google.com>
11296
11297         * defs.h (struct continuation_arg): Fix typo in comment.
11298         * target.c (target_translate_tls_address): Fix comment spelling error.
11299
11300 2008-01-09  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11301
11302         * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
11303         (DOUBLEST_SCAN_FORMAT): Likewise.
11304         * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
11305         * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
11306         * c-exp.y (parse_number): Likewise.
11307         * jv-exp.y (parse_number): Likewise.
11308         * objc-exp.y (parse_number): Likewise.
11309         * p-exp.y (parse_number): Likewise.
11310
11311 2008-01-09  Joel Brobecker  <brobecker@adacore.com>
11312
11313         * gdbtypes.c (create_array_type): Add handling of null Ada arrays.
11314         (check_typedef): Likewise.
11315
11316 2008-01-09  Luis Machado  <luisgpm@br.ibm.com>
11317
11318         * printcmd.c (printf_command): Add seen_big_h, seen_big_d and
11319         seen_double_big_d, treat the new H, D, and DD modifiers as length
11320         modifiers.
11321
11322 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11323
11324         * dwarf2read.c (read_enumeration_type): Add comment.
11325
11326 2008-01-08  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11327
11328         * config.in: Regenerate.
11329
11330 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11331
11332         * ada-lang.c (ada_convert_actual): Renames convert_actual.
11333         Make non-static.
11334         (ada_convert_actuals): Delete.
11335         * ada-lang.h (ada_convert_actual): Add declaration.
11336         (ada_convert_actuals): Remove declaration.
11337         * infcall.c: #include "ada-lang.h".
11338         (value_arg_coerce): Add new parameter sp.  Update function
11339         documetnation.  Add handling of Ada function call parameters.
11340         * Makefile.in (infcall.o): Update dependencies.
11341
11342 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
11343
11344         * ada-lang.c (ensure_lval): Fix value lval kind.
11345         (convert_actual): Add handling for arguments passed by reference.
11346
11347 2008-01-08  Doug Evans  <dje@google.com>
11348
11349         * dbxread.c (read_dbx_symtab): Fix indentation.
11350
11351 2008-01-07  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11352
11353         * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
11354         (valarith.o): Depend on dfp.h.
11355         (valops.o): Likewise.
11356         * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
11357         (set_decnumber_context): New function.
11358         (decimal_check_errors): Likewise.
11359         (decimal_from_number): Likewise.
11360         (decimal_to_number): Likewise.
11361         (decimal_from_string): Use set_decnumber_context and
11362         decimal_check_errors.
11363         (decimal_from_integral): New function.
11364         (decimal_from_floating): Likewise.
11365         (decimal_to_double): Likewise.
11366         (promote_decimal): Likewise.
11367         (decimal_binop): Likewise.
11368         (decimal_is_zero): Likewise.
11369         (decimal_compare): Likewise.
11370         (decimal_convert): Likewise.
11371         * dfp.h (decimal_from_integral): New prototype.
11372         (decimal_from_floating): Likewise.
11373         (decimal_to_double): Likewise.
11374         (decimal_binop): Likewise.
11375         (decimal_is_zero): Likewise.
11376         (decimal_compare): Likewise.
11377         (decimal_convert): Likewise.
11378         * eval.c (evaluate_subexp_standard): Remove expect_type argument from
11379         call to value_from_decfloat.
11380         * valarith.c: Include dfp.h.
11381         (value_args_as_decimal): New function.
11382         (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
11383         (value_logical_not): Likewise.
11384         (value_equal): Likewise.
11385         (value_less): Likewise.
11386         (value_pos): Likewise.
11387         (value_neg): Formatting fix.
11388         * valops.c: Include dfp.h.
11389         (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
11390         * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
11391         (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
11392         (value_from_decfloat): Remove expect_type argument.
11393         * value.h (value_from_decfloat): Update prototype.
11394
11395 2008-01-07  Vladimir Prus  <vladimir@codesourcery.com>
11396
11397         Ignore change in name of dynamic linker during
11398         execution on Solaris.  This also unbreaks pending breakpoints.
11399
11400         * solist.h (struct target_so_ops): New field same.
11401         * solib-svr4.c (svr4_same): New.
11402         (_initialize_svr4_solib): Register svr4_same.
11403         * solib.c (update_solib_list): Use ops->same, if available.
11404
11405 2008-01-06  Christopher Faylor  <me+cygwin@cgf.cx>
11406
11407         * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
11408         when using MS-DOS paths.
11409
11410 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11411
11412         * NEWS: Mention --pid and --core command line behaviour changes.
11413
11414 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11415
11416         * main.c (captured_main): Remove 'count' varible and the
11417         ALIGN_STACK_ON_ENTRY block that used it.  Error out if --core and
11418         --pid options were issued simultaneously.  If an explicit pid
11419         option was passed, don't fallback to core file.  Detect extra
11420         arguments better in the presence of explicit pid or core
11421         arguments.
11422
11423 2008-01-05  Joel Brobecker  <brobecker@adacore.com>
11424
11425         * ada-lang.c (ada_which_variant_applies): Correctly compute
11426         the value of the discriminant when the variant record is packed.
11427
11428 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11429
11430         * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
11431         that are used to differentiate homonyms.
11432
11433 2008-01-04  Jerome Guitton  <guitton@adacore.com>
11434
11435         * ada-lang.c (decode_packed_array_type): Avoid a seg fault
11436         when the type is an anonymous pointer type.
11437         (ada_check_typedef): Avoid a seg fault when the type is null.
11438         * ada-typeprint.c (print_array_type): Add support for pointer
11439         to packed arrays.
11440
11441 2008-01-04  Paul N. Hilfinger  <hilfinger@adacore.com>
11442
11443         * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.
11444
11445 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11446
11447         * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
11448         EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.
11449
11450 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11451
11452         * ada-exp.y (chop_separator): New function.
11453         (write_selectors): Rewrite to re-use chop_separator.
11454         (ada_nget_field_index, get_symbol_field_type): New functions.
11455         (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
11456         expressions.
11457
11458 2008-01-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11459
11460         * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
11461         of SYMBOL_VALUE when working with function symbols.
11462
11463 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11464
11465         * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
11466         expressions.  These expressions do not need to be rewriten.
11467
11468 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11469
11470         * dwarf2read.c (read_enumeration_type): Flag type as stub if
11471         the given die is a declaration.
11472
11473 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11474
11475         * ada-lang.c (ada_array_bound_from_type): Make non-static.
11476         Handle properly the case when the index type is an enumerated type.
11477         Do not return the subtype of the bounds type, just return the
11478         bounds type directly - this is not needed and is more consistent
11479         with what we do for arrays when no XA parallel type exists.
11480
11481 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11482
11483         * ada-lang.c (static_unwrap_type): Add forward declaration.
11484         (template_to_static_fixed_type): Fields of dynamic types sometimes
11485         also need to be unwrapped. Take this into account.
11486         (ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
11487         (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
11488         * ada-typeprint.c (ada_print_type): Get the typename from
11489         the original type, not the base type.
11490
11491 2008-01-03  Jerome Guitton  <guitton@adacore.com>
11492
11493         * ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
11494         (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
11495         Update calls to ada_to_fixed_type.
11496         (ada_template_to_fixed_record_type_1): Ditto, but without looking
11497         for the tag.
11498         (ada_to_fixed_type): Add check_tag parameter; do not look for
11499         tag if null.  When looking for a tag, use a fixed record type.
11500         * ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
11501         * ada-valprint.c (printable_val_type, ada_value_print): Update
11502         calls to ada_to_fixed_type.
11503
11504 2008-01-03  Luis Machado  <luisgpm@br.ibm.com>
11505
11506         * doublest.c (convert_floatformat_to_doublest): Call
11507         floatformat_to_doublest instead of floatformat_to_double and use
11508         DOUBLEST variables.
11509         (convert_doublest_to_floatformat): Call floatformat_from_doublest
11510         instead of floatformat_from_double and use DOUBLEST variables.
11511
11512 2008-01-03  Nick Hudson  <nick.hudson@dsl.pipex.com>
11513
11514         * MAINTAINERS (Write After Approval): Add self.
11515
11516 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11517
11518         * symfile.c (set_initial_language): Make non-static.
11519         * symfile.h (set_initial_language): Add declaration.
11520         * language.c: #include "symfile.h".
11521         (set_language): Call set_initial_language if the frame language
11522         could not be determined.
11523
11524 2008-01-03  Paul N. Hilfinger  <hilfinger@adacore.com>
11525
11526         * eval.c (evaluate_subexp_for_address): Provide frame address to
11527         locate_var_value only if it will be needed.
11528
11529 2008-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
11530
11531         * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.
11532
11533 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11534
11535         * ada-lang.c (ada_evaluate_subexp): Modify the value returned
11536         when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
11537         This is needed to make sure that any other treatment applied
11538         to the resulting value does not fail for spurious reason,
11539         such as trying to take the address of this value.
11540
11541 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11542
11543         * ada-lang.c (ada_value_equal): Dereference reference types when
11544         comparing arrays.
11545
11546 2008-01-01  Daniel Jacobowitz  <dan@codesourcery.com>
11547
11548         Updated copyright notices for most files.
11549
11550 2008-01-01  Christopher Faylor  <me+gdb@cgf.cx>
11551
11552         * win32-nat.c (psapi_module_handle): Remove static.
11553         (get_module_name): Rename from psapi_get_dll_name.  Revamp slightly to
11554         return first module found if base_address is zero.  Don't initialize
11555         psapi function pointers here.  Convert to cygwin paths when
11556         appropriate.
11557         (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
11558         executable name.  Use get_module_name when that fails or when
11559         !__CYGWIN__.
11560         (_initialize_psapi): New function.  Initialize psapi stuff before it is
11561         needed or issue a warning if it is not found.  Move psapi_module_handle
11562         here.
11563
11564 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11565
11566         * ada-lang.c (ada_remove_trailing_digits): New function.
11567         (ada_remove_po_subprogram_suffix): New function.
11568         (ada_decode): Improve. Move the description of the algorithm
11569         directly inside the code, instead of in the function global
11570         description.
11571
11572 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11573
11574         * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
11575         and always print the dereferenced value.
11576
11577 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11578
11579         * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
11580         of the case where the first argument is a reference.
11581         (ada_evaluate_subexp, case BINOP_ADD): Likewise.
11582
11583 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11584
11585         Implement support for Ada interface types.
11586
11587         * ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
11588         (ada_is_ignored_field): Ignore fields that are a dispatch table
11589         of a tagged type.
11590
11591 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11592
11593         * top.c (print_gdb_version): Update copyright year.
11594
11595 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11596
11597         * ChangeLog-2007: New ChangeLog rotation.
11598         * ChangeLog: Reset for 2008.
11599         * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
11600         ChangeLog-2007.
11601
11602 For older changes see ChangeLog-2007.
11603 \f
11604 Local Variables:
11605 mode: change-log
11606 left-margin: 8
11607 fill-column: 74
11608 version-control: never
11609 coding: utf-8
11610 End: