2008-12-22 Paul Pluzhnikov <ppluzhnikov@google.com>
[external/binutils.git] / gdb / ChangeLog
1 2008-12-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
2
3         * python/python-internal.h (PyEval_ReleaseLock): New define.
4         
5 2008-12-22  Tom Tromey  <tromey@redhat.com>
6
7         * c-exp.y (ident_tokens): New global.
8         (struct token) <cxx_only>: New field.
9         (tokentab3): Update.
10         (tokentab2): Update.
11         (yylex): Use ident_tokens.
12
13 2008-12-22  Adam Denton  <adenton@yahoo.com>
14
15         PR gdb/8307:
16         * environ.c (free_environ): Free e->vector.
17
18 2008-12-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
19
20         Fix memory double-free.
21         * completer.c (line_completion_function): Clear LIST after called xfree.
22
23 2008-12-22  Joel Brobecker  <brobecker@adacore.com>
24
25         * breakpoint.c (update_watchpoint): Adjust and extend the description
26         of this function.  Fix one error message accordingly.
27
28 2008-12-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
29
30         Fix hw watchpoints created before the inferior was started.
31         * breakpoint.c (update_watchpoint): Convert the bp_watchpoint and
32         bp_hardware_watchpoint types according to the current runtime state.
33
34 2008-12-18  Pedro Alves  <pedro@codesourcery.com>
35
36         * linux-nat.c (linux_child_follow_fork): If following the child,
37         and not detaching the parent, also add the child fork to the fork
38         list.
39         * linux-fork.c (linux_fork_context): Remove dead error call.
40         Assert that the incoming newfp argument is not null.  Do not add a
41         new fork for inferior_ptid.  Assert that there is one already.
42
43 2008-12-16  Tristan Gingold  <gingold@adacore.com>
44
45         * inflow.c: Remove old_sigio, handle_sigio, old_fcntl_flags,
46         set_sigio_trap, clear_sigio_trap definitions.
47         * inferior.h: Remove set_sigio_trap and clear_sigio_trap declarations.
48         * inf-ptrace.c (inf_ptrace_wait): Remove call to set_sigio_trap
49         and clear_sigio_trap.
50         * inf-ttrace.c (inf_ttrace_wait): Ditto.
51         * linux-nat.c (linux_nat_wait): Ditto.
52         * spu-linux-nat.c (spu_child_wait): Ditto.
53         * rs6000-nat.c (rs6000_wait): Ditto.
54         * target.c: Remove target_activity_function and target_activity_fd.
55         * target.h: Remove target_activity_function and target_activity_fd
56         declarations.
57
58 2008-12-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
59
60         * dbxread.c (read_ofile_symtab): Sign-extend 32-bit N_LSYM and
61         N_PSYM STABS values for 64-bit GDB.
62
63 2008-12-15  Tristan Gingold  <gingold@adacore.com>
64
65         * dwarf2expr.c (execute_stack_op): Handle DW_OP_swap.
66
67 2008-12-15  Jerome Guitton  <guitton@adacore.com>
68
69         * ada-lang.c (ada_value_slice_ptr): Rename to...
70         (ada_value_slice_from_ptr): ... this. Return a lazy value instead
71         of a reference. Update comment.
72         (ada_value_struct_elt): Ditto if arg is a pointer or a reference.
73         Update comment as well.
74         (ada_evaluate_subexp): Update use of ada_value_slice_ptr.
75
76 2008-12-12  Kevin Buettner  <kevinb@redhat.com>
77
78         * gnu-v3-abi.c (vtable_ptrdiff_type): New function.
79         (gnuv3_decode_method_ptr, gnuv3_print_method_ptr)
80         (gnuv3_method_ptr_to_value): Use a better approximation for
81         `ptrdiff_t' instead of `long'.
82
83 2008-12-12  Kevin Buettner  <kevinb@redhat.com>
84
85         * m32c-tdep.c (m32c_gdbarch_init): Call set_gdbarch_vbit_in_delta().
86         (m32c_push_dummy_call): Dereference pointer type.
87
88 2008-12-12  Tom Tromey  <tromey@redhat.com>
89
90         PR cli/2563:
91         * cli/cli-decode.c (delete_cmd): Add hook-related out parameters.
92         (add_cmd): Update.  Install hooks into new command.
93         (add_alias_cmd): Update.
94
95 2008-12-11  Tom Tromey  <tromey@redhat.com>
96
97         * macroexp.c (get_pp_number): Require digit after leading ".".
98         Correctly handle suffixes.
99
100 2008-12-11  Tom Tromey  <tromey@redhat.com>
101
102         * macrocmd.c (macro_define_command): Skip whitespace after
103         macro name.
104         (print_one_macro): Print space after macro name.
105
106 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
107
108         * infrun.c (handle_inferior_event): Correctly tag non-executing
109         threads in multi-process.
110         (normal_stop): Correctly tag stopped threads in multi-process.
111
112 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
113
114         * remote.c (extended_remote_mourn_1): Always call
115         generic_mourn_inferior.
116
117 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
118
119         * remote.c (remote_detach_1): Don't delete the inferior here.
120         (process_stop_reply): Ditto.
121         (extended_remote_kill): Ditto.
122
123 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
124
125         * remote.c (read_ptid): If we don't know about any inferior yet,
126         use the pid of magic_null_ptid.
127         (remote_start_remote): In the non-stop mode case, don't set
128         inferior_ptid to magic_null_ptid here.
129
130 2008-12-11  Daniel Jacobowitz  <dan@codesourcery.com>
131             Pedro Alves  <pedro@codesourcery.com>
132
133         * infcmd.c (step_1): Use step_once in the synchronous case too.
134         (step_1_continuation): Wrap line.
135         (step_once): Adjust comment.  Only install the continuation in
136         async mode.
137
138 2008-12-11  Pedro Alves  <pedro@codesourcery.com>
139
140         * infrun.c (handle_inferior_event): On a TARGET_WAITKIND_EXITED or
141         TARGET_WAITKIND_SIGNALLED, switch inferior_ptid to the event ptid.
142         * linux_thread_db.c (thread_db_wait): On a TARGET_WAITKIND_EXITED
143         or TARGET_WAITKIND_SIGNALLED, return the ptid the beneath target
144         returned.
145         * inf-ptrace.c (inf_ptrace_wait): Return inferior_ptid instead of
146         minus_one_ptid if the inferior disappeared.
147         * rs6000-nat.c (rs6000_wait): Likewise.
148         * spu-linux-nat.c (spu_child_wait): Likewise.
149
150 2008-12-11  Tom Tromey  <tromey@redhat.com>
151
152         PR macros/2564:
153         * c-exp.y (macro_original_text, expansion_obstack,
154         expression_macro_scope): New globals.
155         (scan_macro_expansion): New function.
156         (scanning_macro_expansion): Likewise.
157         (finished_macro_expansion): Likewise.
158         (scan_macro_cleanup): Likewise.
159         (c_parse): Find macro scope.  Initialize obstack.
160         * c-lang.h (scan_macro_expansion, scanning_macro_expansion,
161         finished_macro_expansion, expression_macro_lookup_func,
162         expression_macro_lookup_baton): Remove.
163         * c-lang.c (scan_macro_expansion, scanning_macro_expansion,
164         finished_macro_expansion, expression_macro_lookup_func,
165         expression_macro_lookup_baton): Remove.
166         (macro_original_text, macro_expanded_text,
167         c_preprocess_and_parse): Remove.
168         (c_language_defn, cplus_language_defn, asm_language_defn,
169         minimal_language_defn): Use c_parse.
170
171 2008-12-10  Pedro Alves  <pedro@codesourcery.com>
172
173         * infcmd.c (until_next_command, finish_backward): Use get_frame_pc
174         instead of read_pc.
175
176 2008-12-09  Tom Tromey  <tromey@redhat.com>
177
178         PR gdb/1815:
179         * cli/cli-decode.c (delete_cmd): Forward declare.
180         (delete_cmd): Now static.  Change return type.  Remove command
181         from alias chain.  Rewrite.
182         (add_cmd): Initialize new fields.  Update cmd_pointer on all
183         aliases.
184         (add_alias_cmd): Put command on alias chain.
185         * command.h (delete_cmd): Don't declare.
186         * cli/cli-decode.h (delete_cmd): Don't declare.
187         (struct cmd_list_element) <aliases, alias_chain>: New fields.
188
189 2008-12-09  Tom Tromey  <tromey@redhat.com>
190
191         * config.in, configure: Rebuild.
192         * configure.ac: Check for locale.h, setlocale.  Call
193         AM_LC_MESSAGES.
194         * acinclude.m4: Include lcmessage.m4.
195
196 2008-12-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
197
198         * remote.c (remote_parse_stop_reply): Use REG only after its NULL check.
199
200 2008-12-08  Joel Brobecker  <brobecker@adacore.com>
201
202         * python/python-value.c (values_in_python): Add specific initialization
203         to NULL to work-around a MacOS linker bug.
204
205 2008-12-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
206
207         Fix loc_type of `bp_location's created by update_watchpoint.
208         * breakpoint.c (allocate_bp_location): Remove the bp_type parameter.
209         Replace bp_type by bpt->type.  Update prototype.  All callers updated.
210         (add_location_to_breakpoint):  Remove the bp_type parameter.
211         Replace bp_type by b->type.  All callers updated.
212         (set_breakpoint_location_function): Replace bptype by b->type.
213
214 2008-12-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
215
216         * breakpoint.c (update_global_location_list): Fix the comment.
217
218 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
219
220         * infcmd.c (step_1, step_once): Look up the stepping range based
221         on the current frame's PC, not on stop_pc.
222
223 2008-12-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
224
225         Fix compilation on 32-bit host configurations.
226         * ia64-tdep.c (ia64_breakpoint_from_pc): Suffix a constant by `LL'.
227
228 2008-12-05  Tristan Gingold  <gingold@adacore.com>
229
230         * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn): New function.
231         (amd64_darwin_sstep_at_sigreturn): New function.
232         (darwin_set_sstep): The sigreturn is a special case: the trace flag
233         must be set in the mcontext structure.
234
235 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
236
237         * infcmd.c (step_once): Remove dead code.
238
239 2008-12-04  Doug Evans  <dje@google.com>
240
241         * infcall.c (call_function_by_hand): Clean up use of local dummy_addr.
242
243 2008-12-02  Doug Evans  <dje@google.com>
244
245         * infrun.c (handle_inferior_event): Remove redundant resetting of
246         stepping_past_singlestep_breakpoint.
247
248 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
249
250         * target.h (target_get_osdata): Describe.
251         * osdata.h (make_cleanup_osdata_free): Declare.
252         * osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is
253         not defined.
254         (osdata_free_cleanup): New.
255         (make_cleanup_osdata_free): New.
256         (get_osdata): Fix leak.
257         (info_osdata_command): Use make_cleanup_osdata_free.
258         (info_processes_command): Delete.
259         (_initialize_osdata): Drop undocumented "info processes" alias.
260         * mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.
261
262 2008-12-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
263
264         Fix resolving external references to TLS variables.
265         * findvar.c: Include `objfiles.h'.
266         (read_var_value <LOC_UNRESOLVED>): New variable `obj_section'.  Handle
267         SEC_THREAD_LOCAL variables.
268         * printcmd.c (address_info <LOC_UNRESOLVED>): Handle SEC_THREAD_LOCAL
269         variables.
270
271 2008-12-02  Doug Evans  <dje@google.com>
272
273         * infrun.c (handle_inferior_event): Delete unused local tp.
274
275 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
276             Vladimir Prus  <vladimir@codesourcery.com>
277
278         Implement -list-thread-groups --available
279
280         * Makefile.in (XMLFILES): Add osdata.dtd.
281         (SFILES): Add osdata.c.
282         (COMMON_OBS): Add osdata.o.
283         * linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h.
284         (linux_nat_xfer_osdata): New function.
285         (linux_xfer_partial): Handle TARGET_OBJECT_OSDATA.
286         * osdata.c: New file.
287         * osdata.h: New file.
288         * remote.c (PACKET_qXfer_osdata): New packet enum.
289         (remote_protocol_features): Add "qXfer:osdata:read".
290         (remote_read_qxfer): Handle TARGET_OBJECT_OSDATA.
291         (extended_remote_can_run): New.
292         (init_extended_remote_ops): Set to_can_run to
293         extended_remote_can_run.
294         (_initialize_remote): Add packet config command for
295         "qXfer:osdata:read".
296         * xml-support.c (obstack_xml_printf): New function.
297         * xml-support.h (obstack_xml_printf): Declare.
298         * target.c (target_get_osdata): New function.
299         * target.h (enum target_object): Add TARGET_OBJECT_OSDATA.
300         (target_os_data): Declare.
301         * features/osdata.dtd: New file.
302         * mi/mi-main.c (mi_list_thread_groups): Handle the --available
303         option.
304
305 2008-12-01  Doug Evans  <dje@google.com>
306
307         * infrun.c (proceed): Delete unused local stop_signal.
308
309 2008-11-27  Tristan Gingold  <gingold@adacore.com>
310
311         * NEWS: Add entry for new native configuration: Darwin.
312         * configure.host: Add Darwin host.
313         * configure.tgt: Add Darwin target.
314         * defs.h (enum gdb_osabi): Add GDB_OSABI_DARWIN.
315         * osabi.c (gdb_osabi_names): Add name for Darwin abi.
316         * i386-darwin-nat.c: New file.
317         * i386-darwin-tdep.c: New file.
318         * machoread.c: New file.
319         * darwin-nat-info.c: New file.
320         * darwin-nat.c: New file.
321         * darwin-nat.h: New file.
322         * darwin.defs: New file.
323         * config/i386/darwin.mh: New file.
324
325 2008-11-26  Tristan Gingold  <gingold@adacore.com>
326
327         * MAINTAINERS: Add myself for write after approval privileges.
328
329 2008-11-26  Jerome Guitton  <guitton@adacore.com>
330
331         * value.h (allocate_value_lazy): New function declaration.
332         (value_free): Remove macro, make it a function.
333         * value.c (value): Move actual content outside of the memory space
334         of the struct; add a pointer to this actual content.
335         (allocate_value_lazy, allocate_value_contents): New function.
336         (allocate_value): Reimplement using these two new functions.
337         (value_contents_raw, value_contents_all_raw): If no memory
338         has been allocated yet for the actual content, allocate it.
339         (value_contents_all): Resync with struct value's changes.
340         (value_free): New function.
341         (value_copy, value_primitive_field): Use new function
342         allocate_value_lazy to allocate lazy values.
343         (value_change_enclosing_type): Resync with struct value's changes.
344         As the value is not reallocated, remove the special handling for
345         the value chain (now obsolete).
346         * valops.c (value_at_lazy): Use new function allocate_value_lazy.
347         (value_fetch_lazy): Allocate value content. Use allocate_value_lazy
348         to allocate lazy values.
349         (value_slice): Use allocate_value_lazy to allocate lazy values.
350
351 2008-11-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
352
353         Fix automatic restoration of breakpoints memory for ia64.
354         * ia64-tdep.c: New #if check on BREAKPOINT_MAX vs. BUNDLE_LEN.  
355         (ia64_memory_insert_breakpoint): New comment part for SHADOW_CONTENTS
356         content.  Remove variable instr.  New variable cleanup.  Disable
357         automatic breakpoints restoration.  PLACED_SIZE and SHADOW_LEN are now
358         set larger, to BUNDLE_LEN - 2.  Variable `bundle' type update.  Return
359         error if even just final target_write_memory has failed.
360         (ia64_memory_remove_breakpoint): Rename variables bundle to bundle_mem
361         and instr to instr_saved.  New variables bundle_saved and
362         instr_breakpoint.  Comment new reasons why we need to disable automatic
363         restoration of breakpoints.  Assert PLACED_SIZE and SHADOW_LEN.  New
364         check of the original memory content.  Return error if even just final
365         target_write_memory has failed.
366         (ia64_breakpoint_from_pc): Implement the emulation of permanent
367         breakpoints compatible with current bp_loc_is_permanent.
368         (template_encoding_table): Make it `const'.
369         * breakpoint.c (bp_loc_is_permanent): Support unsupported software
370         breakpoints.  New variables `cleanup' and `retval'.
371
372 2008-11-24  Tom Tromey  <tromey@redhat.com>
373
374         * ada-lang.c (value_from_contents_and_address): Move...
375         * value.c: ... here.
376         * ada-lang.h (value_from_contents_and_address): Move
377         declaration...
378         * value.h: ... here.
379
380 2008-11-24  Paul Pluzhnikov  <ppluzhnikov@google.com>
381
382         * valprint.c (val_print_array_elements): Pass correct
383         element address to val_print.
384         
385 2008-11-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
386
387         Fix access of an already freed memory.
388         * parse.c (parse_field_expression): Call xstrdup on `*name'.
389         * completer.c (expression_completer): Free fieldname.
390
391 2008-11-24  Daniel Jacobowitz  <dan@codesourcery.com>
392
393         PR gdb/2474
394         * remote.c (remote_read_description_p): New function.
395         (remote_start_remote): Try to fetch the target description
396         before adding shared libraries.  Try again later if the
397         target is running but stopped.
398         (remote_open_1): Mark extended targets as exited by default.
399         (remote_read_description): Check target_has_execution.
400
401 2008-11-24  Jerome Guitton  <guitton@adacore.com>
402
403         * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Use
404         the frame address in block instead of the return address to
405         locate the mdebug PDR of the frame.
406
407 2008-11-21  Joel Brobecker  <brobecker@adacore.com>
408
409         Remove the unused BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
410
411         * breakpoint.h (enum bpstat_what_main_action): Remove
412         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
413         * breakpoint.c (bpstat_what): Delete catch_shlib_event from enum class.
414         Remove the BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK column from
415         variable table.
416         * infrun.c (wait_for_inferior): Remove handling of
417         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
418
419 2008-11-21  Tom Tromey  <tromey@redhat.com>
420
421         * configure: Rebuild.
422         * configure.ac: Merge calls to AC_CHECK_FUNCS, AC_CHECK_HEADERS,
423         AC_CHECK_DECLS, and AC_CHECK_MEMBERS.
424
425 2008-11-21  Tom Tromey  <tromey@redhat.com>
426
427         * python/python-internal.h (PyGILState_Ensure): New define.
428         (PyGILState_Release): Likewise.
429         (PyEval_InitThreads): Likewise.
430         (PyThreadState_Swap): Likewise.
431         (PyEval_InitThreads): Likewise.
432         * python/python.c (_initialize_python): Initialize threads.
433         Release GIL.
434         (eval_python_from_control_command): Acquire GIL.
435         (python_command): Likewise.
436         * python/python-internal.h (make_cleanup_py_restore_gil):
437         Declare.
438         * python/python-utils.c (py_gil_restore): New function.
439         (make_cleanup_py_restore_gil): Likewise.
440
441 2008-11-20  Doug Evans  <dje@google.com>
442
443         * frame.c (frame_debug_got_null_frame): Remove file arg.
444         All callers updated.
445
446 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
447
448         * infrun.c (resume): If following a fork, also reset regcache,
449         gdbarch and pc.
450
451 2008-11-20  Doug Evans  <dje@google.com>
452
453         * printcmd.c (sym_info): Don't print the offset if it's zero.
454
455 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
456
457         * infrun.c (resume): If following a fork, reread the current
458         thread.  Avoid dereferencing a possibly dangling pointer.
459
460 2008-11-19  Doug Evans  <dje@google.com>
461
462         * inferior.h (proceed_to_finish): Delete, unused.
463         (stop_registers): Tweak comment.
464         * infrun.c (stop_registers): Tweak comment.
465
466 2008-11-19  Kevin Buettner  <kevinb@redhat.com>
467
468         * frv-tdep.c (frv_skip_main_prologue): New function.
469         (frv_gdbarch_init): Register frv_skip_main_prologue.
470         * solib-frv.c (fetch_loadmap): Return early when no segments are
471         found.
472         (frv_relocate_main_executable): Return early when both interpreter
473         and executable loadmap addresses are zero.
474
475 2008-11-19  Bob Wilson  <bob.wilson@acm.org>
476         
477         * xtensa-config.c (rmap): Remove entries for ar32 through ar63.  Add
478         threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7,
479         excsave5, excsave6, excsave7, cpenable, and vecbase registers.
480         (xtensa_submask0, xtensa_submask1, xtensa_submask2)
481         (xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6)
482         (xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10)
483         (xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14)
484         (xtensa_submask15): Adjust register numbers.
485         * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
486         (xtensa_regmap_table): Add entry for scompare1.
487         * regformats/reg-xtensa.dat: Remove ar32 through ar63.  Add threadptr
488         and scompare1.
489         
490 2008-11-19  Pedro Alves  <pedro@codesourcery.com>
491
492         * remote.c (escape_buffer): New.
493         (putpkt_binary, read_frame, getpkt_or_notif_sane_1): Use it.  Make
494         sure debug output printing a packet buffer goes through a single
495         fprintf_unfiltered call.
496         * utils.c (vfprintf_unfiltered): If outputting timestamps, end
497         output with a newline if it wasn't going to already.
498
499 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
500
501         * maint.c (maintenance_translate_address): Fix a buglet.
502         
503 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
504
505         * features/Makefile (rs6000/powerpc-isa205-32l-expedite,
506         rs6000/powerpc-isa205-altivec32l-expedite,
507         powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite,
508         rs6000/powerpc-isa205-altivec64l-expedite,
509         powerpc-isa205-vsx64l-expedite): New variables.
510         * regformats/rs6000/powerpc-isa205-32l.dat: Generate.
511         * regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate.
512         * regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate.
513         * regformats/rs6000/powerpc-isa205-64l.dat: Generate.
514         * regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate.
515         * regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate.
516
517 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
518
519         * ppc-linux-nat.c (ppc_register_u_addr): Add special case to return
520         offset for full 64-bit slot of FPSCR when in 32-bits.
521         (ppc_linux_read_description): Return target description with 64-bit
522         FPSCR when inferior is running on an ISA 2.05 or later processor.
523         * ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Call
524         initialize_tdec_powerpc_isa205_32l,
525         initialize_tdec_powerpc_isa205_altivec32l,
526         initialize_tdec_powerpc_isa205_vsx32l,
527         initialize_tdec_powerpc_isa205_64l,
528         initialize_tdec_powerpc_isa205_altivec64l and
529         initialize_tdec_powerpc_isa205_vsx64l.
530         * ppc-linux-tdep.h: Add external declaration for
531         tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l,
532         tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_64l,
533         tdesc_powerpc_isa205_altivec64l and tdesc_powerpc_isa205_vsx64l.
534         * features/rs600/powerpc-fpu-isa205.xml: New file.
535         * features/rs600/powerpc-isa205-32l.xml: New file.
536         * features/rs600/powerpc-isa205-64l.xml: New file.
537         * features/rs600/powerpc-isa205-altivec32l.xml: New file.
538         * features/rs600/powerpc-isa205-altivec64l.xml: New file.
539         * features/rs600/powerpc-isa205-vsx32l.xml: New file.
540         * features/rs600/powerpc-isa205-vsx64l.xml: New file.
541         * features/rs600/powerpc-isa205-32l.c: Generate.
542         * features/rs600/powerpc-isa205-64l.c: Generate.
543         * features/rs600/powerpc-isa205-altivec32l.c: Generate.
544         * features/rs600/powerpc-isa205-altivec64l.c: Generate.
545         * features/rs600/powerpc-isa205-vsx32l.c: Generate.
546         * features/rs600/powerpc-isa205-vsx64l.c: Generate.
547
548 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
549
550         * objfiles.h: New MULTI_OBJFILE_P macro.
551         * printcmd.c (sym_info): Print object name.
552         * maint.c (maintenance_translate_address): Likewise.
553         
554 2008-11-18  Joel Brobecker  <brobecker@adacore.com>
555
556         * NEWS: Document the removal of "catch load" and "catch unload".
557
558 2008-11-17  Doug Evans  <dje@google.com>
559
560         * infcall.c (call_function_by_hand): Fix punctuation and capitalization
561         on error messages.
562
563 2008-11-17  Ulrich Weigand  <uweigand@de.ibm.com>
564
565         PR gdb/2250
566         * infrun.c (clear_proceed_status_thread): New function.
567         (clear_proceed_status_callback): New function.
568         (clear_proceed_status): In all-stop mode, clear per-thread
569         proceed status of *all* threads, not only the current.
570         (handle_inferior_event): In all-stop mode, if we're stepping
571         one thread, but got some inferior event in another thread
572         that does not cause GDB to break to the user interface,
573         ensure the interrupted stepping operation continues in the
574         original thread.
575         (currently_stepping): Move thread-related tests to ...
576         (currently_stepping_thread): ... this new function.
577         (currently_stepping_callback): New function.
578
579 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
580
581         Implement =thread-selected notification.
582
583         * mi/mi-common.h (struct mi_interp): New, moved from ...
584         * mi/mi-interp.c: ...here.
585         * mi/mi-main.c (mi_execute_command): If the thread changed
586         as result of command, report that.
587
588 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
589
590         Implement continue/interrupt of thread groups.
591
592         * mi/mi-main.c (proceed_thread_callback): New.
593         (mi_cmd_exec_continue): If --thread-group is specified, resume all
594         threads in that group.
595         (interrupt_thread_callback): New.
596         (mi_cmd_exec_interrupt): If --thread-group is specified, interrupt
597         all threads in that group.
598
599 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
600
601         Implement '-target-detach pid'.
602
603         * infcmd.c (detach_command): Make nonstatic.
604         * inferior.h (detach_command): Declare.
605         * mi/mi-cmds.c (mi_cmds): Don't route -target-detach via CLI.
606         * mi/mi-cmds.h (mi_cmd_target_detach): Declare.
607         * mi/mi-main.c (find_thread_of_process, mi_cmd_target_detach): New.
608
609 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
610
611         Include group-id in thread-created notification.
612
613         * mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include
614         group id in the output.
615
616 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
617
618         Notification for attach/detach.
619
620         * inferior.c: Call the process observers.
621         * mi/mi-interp.c (mi_new_inferior, mi_inferior_exit): New.
622         (mi_interpreter_init): Register the above.
623
624 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
625
626         Implement -list-thread-groups.
627
628         * thread.c (print_thread_info): New parameter pid, to print
629         threads of specific process.
630         * gdbthread.h (print_thread_info): New parameter pid.
631         * mi/mi-cmds.c (mi_cmds): Register -list-thread-groups.
632         * mi/mi-cmds.h (mi_cmd_list_thread_groups): New.
633         * mi/mi-main.c (mi_cmd_thread_info): Adjust.
634         (print_one_process, mi_cmd_list_thread_groups): New.
635
636 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
637
638         Remove some unused macros related to the old load/unload catchpoints.
639
640         * breakpoint.c (SOLIB_LOADED_LIBRARY_PATHNAME)
641         (SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_CREATE_CATCH_LOAD_HOOK)
642         (SOLIB_CREATE_CATCH_UNLOAD_HOOK): Delete. No longer used.
643
644 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
645
646         Remove support for catch load and catch unload commands.
647
648         * breakpoint.h (enum bptype): Remove bp_catch_load and bp_catch_unload.
649         (struct breakpoint): Remove fields dll_pathname and
650         triggered_dll_pathname.
651         (bpstat_get_triggered_catchpoints, ep_is_shlib_catchpoint): Delete.
652         * breakpoint.c (ep_is_catchpoint): Remove handling of
653         bp_catch_load and bp_catch_unload.
654         (print_it_typical, bpstat_check_location, bpstat_what)
655         (print_one_breakpoint_location, print_one_breakpoint_location)
656         (user_settable_breakpoint, allocate_bp_location)
657         (set_raw_breakpoint_without_location, mention, delete_breakpoint,
658         (breakpoint_re_set_one, disable_command, enable_command): Likewise.
659         (ep_is_shlib_catchpoint, bpstat_get_triggered_catchpoints)
660         (catch_load_command_1, catch_unload_command_1): Delete.
661         (_initialize_breakpoint): Remove the "catch load" and "catch unload"
662         command creation.
663         * infrun.c (handle_inferior_event): Remove the handling of
664         load/unload catchpoint events.
665
666 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
667
668         From  Jerome Guitton  <guitton@adacore.com>
669         * dwarf2read.c (dwarf2_debug_line_missing_end_sequence_complaint):
670         New function.
671         (dwarf_decode_lines): Detect null file numbers. Detect the end of
672         the line program sequence when no end sequence is emitted.
673
674 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
675
676         * ada-lang.c (ada_evaluate_subexp): Improve handling of integer
677         type dereferencing.
678
679 2008-11-15  Daniel Jacobowitz  <dan@codesourcery.com>
680
681         * NEWS: Mention sparc64-linux-gnu gdbserver support.
682
683 2008-11-14  Daniel Gutson  <dgutson@codesourcery.com>
684
685         * configure.tgt (sparc64-*-linux*): Added gdbserver support.
686         * regformats/reg-sparc64.dat: New file.
687
688 2008-11-14  Tom Tromey  <tromey@redhat.com>
689
690         PR mi/2549:
691         * mi/mi-main.c (get_register): Use get_formatted_print_options.
692
693 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
694
695         * printcmd.c: define PRINTF_HAS_LONG_LONG only if not yet defined.
696
697 2008-11-13  Ulrich Weigand  <uweigand@de.ibm.com>
698
699         * auxv.c (fprint_target_auxv): Handle AT_BASE_PLATFORM and
700         AT_EXECFN.  Re-sort AT_SECURE.
701
702 2008-11-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
703
704         * monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'.
705
706 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
707
708         * ia64-tdep.c: Remove commented out #define.
709
710 2008-11-12  Joel Brobecker  <brobecker@adacore.com>
711
712         From Joel Sherrill  <joel.sherrill@oarcorp.com>
713         * remote-sim.c (gdbsim_mourn_inferior): Use "target" parameter
714         instead of the "gdbsim_ops" global.
715
716 2008-11-11  Doug Evans  <dje@google.com>
717
718         * infcall.c (call_function_by_hand): Handle inferior exit.
719
720 2008-11-11  Thiago Jung Bauermann  <bauerman@br.ibm.com>
721
722         * remote-sim.c (gdbsim_create_inferior, gdbsim_mourn_inferior): Add
723         missing struct target_ops argument.
724
725 2008-11-11  Joel Sherrill <joel.sherrilL@oarcorp.com>
726
727         * MAINTAINERS: Add myself for write after approval privileges.
728
729 2008-11-10  Tom Tromey  <tromey@redhat.com>
730
731         * gdbtypes.c (copy_type_recursive): Clear new fields.
732
733 2008-11-10  Tom Tromey  <tromey@redhat.com>
734
735         * cli/cli-cmds.c (source_script): Clean up full_pathname.  Run
736         cleanups on early return.
737
738 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
739
740         Kill pthread_ops_hack
741
742         * target.h (struct target_ops): Make to_attach, to_detach,
743         to_create_inferior and to_mourn_inferior accept a pointer
744         to struct target_ops.
745         (target_attach, target_create_inferior, target_create_inferior):
746         Convert from macros to function.  Find the right target to
747         invoke a method of.
748         (find_default_attach, find_default_create_inferior): New parameter
749         ops.
750         * corefile.c (core_file_command): Pass target to to_detach.
751         * corelow.c (core_detach): Add 'ops' parameter.
752         * fork-child.c (fork_inferior): Return the pid.  Allow
753         init_trace_fun to be NULL.
754         * inf-ptrace (ptrace_ops_hack): Remove.
755         (inf_ptrace_him): Remove, moving all logic into....
756         (inf_ptrace_create_inferior): ... here.  Push the target
757         passed as parameter.
758         (inf_ptrace_mourn_inferior, inf_ptrace_attach, inf_ptrace_detach):
759         Push/pop target passed as parameter, no ptrace_ops_hack.
760         (inf_ptrace_target): Don't remember result.
761         * inferior.h (fork_inferior): Adjust prototype.
762         * linux-nat.c (linux_nat_create_inferior, linux_nat_attach)
763         (linux_nat_detach, linux_nat_mourn_inferior): New parameter ops.
764         Pass it to linux_ops target.
765         * linux-thread-db.c (thread_db_detach, thread_db_mourn_inferior):
766         New parameter ops. Pass it to the target beneath.
767         * remote.c (remote_mourn, extended_remote_mourn, remote_detach)
768         (extended_remote_create_inferior): New parameter ops. Pass it
769         further.
770         * target.c (debug_to_attach, debug_to_detach)
771         (debug_to_mourn_inferior): New parameter ops.
772         (target_create_inferior): New.
773         (update_current_target): Do not inherit to_attach, to_detach,
774         to_create_inferiour, to_mourn_inferior.  Do not default
775         to_detach and to_mourn_inferior.
776         (target_detach): Find the right target to use.
777         (target_mourn_inferior): New.
778         (find_default_attach, find_default_create_inferior): New parameter
779         ops.  Pass the found target when calling its method.
780         (init_dummy_target): Provide fallback definition of to_detach.
781         (target_attach): New.
782         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
783         (debug_to_mourn_inferiour): New parameter ops.
784         * aix-thread.c: Adjust.
785         * bsd-uthread.c: Adjust.
786         * gnu-nat.c: Adjust.
787         * go32-nat.c: Adjust.
788         * hpux-thread.c: Adjust.
789         * inf-ttrace.c: Ajust.
790         * monitor.c: Adjust.
791         * nto-procfs.c: Adjust.
792         * procfs.c: Adjust.
793         * remote-m32r-sdi.c: Adjust.
794         * remote-mips.c: Adjust.
795         * remote-sim.c: Adjust.
796         * rs6000-nat.c: Adjust.
797         * sol-thread.c: Adjust.
798         * win32-nat.c: Adjust.
799         * dec-thread.c: Adjust.
800
801 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
802
803         * thread.c (print_thread_info): Eliminate now useless checks
804         for exited threads.
805
806 2008-11-06  Pedro Alves  <pedro@codesourcery.com>
807
808         * i386-dicos-tdep.c (i386_dicos_init_abi): Set decr_pc_after_break
809         to 0.
810
811 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
812
813         * remote.c (notice_new_inferiors): Add a new inferior only when
814         we're going to add a new thread.
815
816 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
817
818         * defs.h (add_inferior_continuation)
819         (do_all_inferior_continuations)
820         (discard_all_inferior_continuations): Declare.
821         * utils.c (add_inferior_continuation)
822         (do_all_inferior_continuations)
823         (discard_all_inferior_continuations): New.
824         * inferior.h (struct inferior) <continuations>: New field.
825         * inferior.c (free_inferior): Discard all the inferior
826         continuations.
827         * inf-loop.c (inferior_event_handler): Do all current inferior
828         continuations.
829         * infcmd.c (attach_command): Register an inferior continuation
830         instead of a thread continuation.
831         * infrun.c (handle_inferior_event): If stop_soon is
832         STOP_QUIETLY_NO_SIGSTOP, also expect a TARGET_SIGNAL_0.
833
834 2008-11-04  Pedro Alves  <pedro@codesourcery.com>
835
836         * inf-loop.c (inferior_event_handler): On INF_ERROR and
837         INF_REG_EVENT throwing, don't call target_async or pop_target.
838         Call pop_all_targets_above.
839         * remote.c (remote_close): Call remote_terminal_ours.  Don't call
840         signal or target_async.
841
842 2008-11-04  Daniel Jacobowitz  <dan@codesourcery.com>
843
844         * eval.c (evaluate_subexp_standard): Assert that there is at
845         least one array dimension.
846
847 2008-11-03  Vladimir Prus  <vladimir@codesourcery.com>
848
849         Make attach_command exception-safe
850         * infcmd.c (attach_command): Call async_enable_stdin
851         if exception is thrown.
852
853 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
854
855         * gdbarch.sh (has_global_solist): Mention global breakpoints.
856         * gdbarch.h: Regenerate.
857
858 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
859
860         * remote.c (remote_start_remote): If the solib list is global,
861         fetch libraries and insert breakpoints after connecting.
862         * infcmd.c (post_create_inferior): If the solist is shared between
863         inferiors, no need to refetch it on every new inferior.
864         (detach_command): If the shared library list is shared between
865         inferiors, then don't clear it on every inferior detach.
866         * gdbarch.sh (has_global_solist): New.
867         * i386-dicos-tdep.c (i386_dicos_init_abi): Set
868         gdbarch_has_global_solist.
869         * target.c (target_pre_inferior): If the shared library list is
870         shared between inferiors, then don't clear it here, neither
871         invalidate the memory regions or clear the target description.
872         (target_detach): If the shared library list is shared between
873         inferiors, then don't remove breakpoints from the target here.
874         (target_disconnect): Comment.
875         * solib.c (update_solib_list): Check for null_ptid.
876         * breakpoint.c (insert_breakpoints, update_global_location_list):
877         If the shared library list is shared between inferiors, insert
878         breakpoints even if there's no execution.
879         (breakpoint_init_inferior): If the shared library list is shared
880         between inferiors, don't delete breakpoints or mark them
881         uninserted here.
882
883         * gdbarch.c, gdbarch.h: Regenerate.
884
885 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
886
887         * inferior.h (inferior_ignoring_leading_exec_events): Delete
888         declaration.
889
890 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
891
892         * inferior.h (write_inferior_status_register): Delete.
893         * infrun.c (write_inferior_status_register): Delete.
894
895 2008-10-30  Tom Tromey  <tromey@redhat.com>
896
897         * value.c (coerce_array): Use check_typedef.
898
899 2008-10-30  Tom Tromey  <tromey@redhat.com>
900
901         * cli/cli-logging.c (handle_redirections): Make a cleanup.
902         * reggroups.c (maintenance_print_reggroups): Make a cleanup.
903         * regcache.c (regcache_print): Make a cleanup.
904         * maint.c (maintenance_print_architecture): Make a cleanup.
905         * dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.
906
907 2008-10-30  Tom Tromey  <tromey@redhat.com>
908
909         * utils.c (make_cleanup_close): Use make_cleanup_dtor.
910         (do_close_cleanup): Don't free 'fd'.
911
912 2008-10-30  Tom Tromey  <tromey@redhat.com>
913
914         * source.c (symtab_to_fullname): Test 'r >= 0'.
915         (psymtab_to_fullname): Likewise.
916         (get_filename_and_charpos): Make a cleanup.
917         (forward_search_command): Likewise.
918         (reverse_search_command): Likewise.
919         * exec.c (exec_file_attach): Close scratch_chan on failure.
920         * nto-procfs.c (procfs_open): Make a cleanup.
921         (procfs_pidlist): Likewise.
922         (do_closedir_cleanup): New function.
923
924 2008-10-30  Andreas Schwab  <schwab@suse.de>
925
926         * infcmd.c (construct_inferior_arguments): Handle newlines
927         specially.
928
929 2008-10-30  Joel Brobecker  <brobecker@adacore.com>
930
931         * breakpoint.h (enum bptype): Delete bp_catch_exec.
932         * breakpoint.c (insert_catchpoint): Remove handling for
933         bp_catch_exec breakpoint kinds.
934         (insert_bp_location, update_breakpoints_after_exec, remove_breakpoint)
935         (ep_is_catchpoint, print_it_typical, bpstat_check_location),
936         (bpstat_check_location, bpstat_what, print_one_breakpoint_location)
937         (print_one_breakpoint_location, user_settable_breakpoint)
938         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
939         (allocate_bp_location, mention, breakpoint_re_set_one)
940         (disable_command, enable_command): Likewise.
941         (create_exec_event_catchpoint): Delete.
942         (insert_catch_exec, remove_catch_exec, breakpoint_hit_catch_exec)
943         (print_it_catch_exec, print_one_catch_exec, print_mention_catch_exec):
944         New functions.
945         (catch_exec_breakpoint_ops): New static global.
946         (catch_exec_command_1): Use create_catchpoint instead of
947         create_exec_event_catchpoint to create the exec catchpoint.
948
949 2008-10-28  Tom Tromey  <tromey@redhat.com>
950
951         * Makefile.in (SUBDIR_CLI_OBS): Don't mention cli-utils.o.
952         (SUBDIR_CLI_DEPS): Don't mention cli-utils.c.
953         (HFILES_NO_SRCDIR): Don't mention cli-utils.h.
954         (cli-utils.o): Remove.
955         * cli/cli-utils.c: Remove.
956         * cli/cli-utils.h: Remove.
957
958 2008-10-28  Tom Tromey  <tromey@redhat.com>
959
960         * varobj.c (value_get_print_value): Include valprint.h.
961         (value_get_print_value): Use get_formatted_print_options.
962         * value.h (struct value_print_options): Declare.
963         (value_print, val_print, common_val_print, val_print_string):
964         Update.
965         * value.c: Include valprint.h.
966         (show_values): Use get_user_print_options.
967         (show_convenience): Likewise.
968         * valprint.h (prettyprint_arrays, prettyprint_structs): Don't
969         declare.
970         (struct value_print_options): New type.
971         (vtblprint, unionprint, addressprint, objectprint, print_max,
972         inspect_it, repeat_count_threshold, output_format,
973         stop_print_at_null): Don't declare.
974         (user_print_options, get_user_print_options,
975         get_raw_print_options, get_formatted_print_options): Declare.
976         (print_array_indexes_p): Don't declare.
977         (maybe_print_array_index, val_print_array_elements): Update.
978         * valprint.c (print_max): Remove.
979         (user_print_options): New global.
980         (get_user_print_options, get_raw_print_options,
981         get_formatted_print_options): New functions.
982         (print_array_indexes, repeat_count_threshold, stop_print_at_null,
983         prettyprint_structs, prettyprint_arrays, unionprint,
984         addressprint): Remove.
985         (val_print): Remove format, deref_ref, pretty arguments; add
986         options.  Update.
987         (common_val_print): Likewise.
988         (print_array_indexes_p): Remove.
989         (maybe_print_array_index): Remove format, pretty arguments; add
990         options.  Update.
991         (val_print_array_elements): Remove format, deref_ref, pretty
992         arguments; add options.  Update.
993         (val_print_string): Add options argument.  Update.
994         (_initialize_valprint): Use user_print_options.
995         (output_format): Remove.
996         (set_output_radix_1): Use user_print_options.
997         * typeprint.c: Include valprint.h.
998         (objectprint): Don't declare.
999         (whatis_exp): Use get_user_print_options.
1000         * tui/tui-regs.c: Include valprint.h.
1001         (tui_register_format): Use get_formatted_print_options.
1002         * tracepoint.c: Include valprint.h.
1003         (addressprint): Don't declare.
1004         (trace_mention): Use get_user_print_options.
1005         (tracepoints_info): Likewise.
1006         * stack.c (print_frame_args): Use get_raw_print_options.
1007         (print_frame_info): Use get_user_print_options.
1008         (print_frame): Likewise.
1009         * sh64-tdep.c: Include valprint.h
1010         (sh64_do_register): Use get_formatted_print_options.
1011         * scm-valprint.c (scm_inferior_print): Remove format, deref_ref,
1012         pretty arguments; add options.
1013         (scm_scmlist_print): Likewise.  Update.
1014         (scm_scmval_print): Likewise.
1015         (scm_val_print): Likewise.
1016         (scm_value_print): Remove format, pretty arguments; add options.
1017         Update.
1018         * scm-lang.h (scm_value_print, scm_val_print, scm_scmval_print):
1019         Update.
1020         * scm-lang.c (scm_printstr): Add options argument.
1021         * python/python-value.c: Include valprint.h.
1022         (valpy_str): Use get_user_print_options.
1023         * printcmd.c: Include valprint.h.
1024         (addressprint): Don't declare.
1025         (inspect_it): Remove.
1026         (print_formatted): Remove format option; add options.  Update.
1027         (print_scalar_formatted): Likewise.
1028         (print_address_demangle): Use get_user_print_options.
1029         (do_examine): Use get_formatted_print_options.
1030         (print_command_1): Likewise.
1031         (output_command): Use get_formatted_print_options.
1032         (do_one_display): Likewise.
1033         (print_variable_value): Use get_user_print_options.
1034         * p-valprint.c (pascal_val_print): Remove format, deref_ref,
1035         pretty arguments; add options.  Update.
1036         (pascal_value_print): Remove format, pretty arguments; add
1037         options.  Update.
1038         (vtblprint, objectprint): Don't declare.
1039         (pascal_static_field_print): Remove.
1040         (pascal_object_print_value_fields): Remove format, pretty
1041         arguments; add options.  Update.
1042         (pascal_object_print_static_field): Likewise.
1043         (_initialize_pascal_valprint): Use user_print_options.  Update.
1044         * p-lang.h (pascal_val_print, pascal_value_print,
1045         pascal_printstr, pascal_object_print_value_fields): Update.
1046         (vtblprint, static_field_print): Don't declare.
1047         * p-lang.c (pascal_printstr): Add options argument.  Update.
1048         * objc-lang.c (objc_printstr): Add options argument.  Update.
1049         * mt-tdep.c: Include valprint.h.
1050         (mt_registers_info): Use get_raw_print_options.
1051         * mips-tdep.c: Include valprint.h.
1052         (mips_print_fp_register): Use get_formatted_print_options.
1053         (mips_print_register): Likewise.
1054         * mi/mi-main.c: Include valprint.h.
1055         (get_register): Use get_user_print_options.
1056         (mi_cmd_data_evaluate_expression): Likewise.
1057         (mi_cmd_data_read_memory): Use get_formatted_print_options.
1058         * mi/mi-cmd-stack.c: Include valprint.h.
1059         (list_args_or_locals): Use get_raw_print_options.
1060         * m2-valprint.c (print_function_pointer_address): Add addressprint
1061         argument.
1062         (m2_print_long_set): Remove format, pretty arguments.
1063         (m2_print_unbounded_array): Remove format, deref_ref, pretty
1064         arguments; add options.  Update.
1065         (print_unpacked_pointer): Remove format argument; add options.
1066         Now static.  Update.
1067         (print_variable_at_address): Remove format, deref_ref, pretty
1068         arguments; add options.  Update.
1069         (m2_print_array_contents): Likewise.
1070         (m2_val_print): Likewise.
1071         * m2-lang.h (m2_val_print): Update.
1072         * m2-lang.c (m2_printstr): Add options argument. Update.
1073         * language.h (struct value_print_options): Declare.
1074         (struct language_defn) <la_printstr>: Add options argument.
1075         <la_val_print>: Remove format, deref_ref, pretty argument; add
1076         options.
1077         <la_value_print>: Remove format, pretty arguments; add options.
1078         <la_print_array_index>: Likewise.
1079         (LA_VAL_PRINT, LA_VALUE_PRINT, LA_PRINT_STRING,
1080         LA_PRINT_ARRAY_INDEX): Update.
1081         (default_print_array_index): Update.
1082         * language.c (default_print_array_index): Remove format, pretty
1083         arguments; add options.  Update.
1084         (unk_lang_printstr): Add options argument.
1085         (unk_lang_val_print): Remove format, deref_ref, pretty arguments;
1086         add options.
1087         (unk_lang_value_print): Remove format, pretty arguments; add
1088         options.
1089         * jv-valprint.c (java_value_print): Remove format, pretty
1090         arguments; add options.  Update.
1091         (java_print_value_fields): Likewise.
1092         (java_val_print): Remove format, deref_ref, pretty arguments; add
1093         options.  Update.
1094         * jv-lang.h (java_val_print, java_value_print): Declare.
1095         * infcmd.c: Include valprint.h.
1096         (print_return_value): Use get_raw_print_options.
1097         (default_print_registers_info): Use get_user_print_options,
1098         get_formatted_print_options.
1099         (registers_info): Use get_formatted_print_options.
1100         * gdbtypes.h (struct value_print_options): Declare.
1101         (print_scalar_formatted): Update.
1102         * f-valprint.c (f77_print_array_1): Remove format, deref_ref,
1103         pretty arguments; add options.  Update.
1104         (f77_print_array): Likewise.
1105         (f_val_print): Likewise.
1106         * f-lang.h (f_val_print): Update.
1107         * f-lang.c (f_printstr): Add options argument.  Update.
1108         (c_value_print): Update declaration.
1109         * expprint.c: Include valprint.h.
1110         (print_subexp_standard): Use get_raw_print_options,
1111         get_user_print_options.
1112         * eval.c: Include valprint.h.
1113         (objectprint): Don't declare.
1114         (evaluate_subexp_standard): Use get_user_print_options.
1115         * cp-valprint.c (vtblprint, objectprint, static_field_print):
1116         Remove.
1117         (cp_print_value_fields): Remove format, pretty arguments; add
1118         options.  Update.
1119         (cp_print_value): Likewise.
1120         (cp_print_static_field): Likewise.
1121         (_initialize_cp_valprint): Use user_print_options.  Update.
1122         * c-valprint.c (print_function_pointer_address): Add addressprint
1123         argument.
1124         (c_val_print): Remove format, deref_ref, pretty arguments; add
1125         options.  Update.
1126         (c_value_print): Add options argument.  Update.
1127         * c-lang.h (c_val_print, c_value_print, c_printstr): Update.
1128         (vtblprint, static_field_print): Don't declare.
1129         (cp_print_value_fields): Update.
1130         * c-lang.c (c_printstr): Add options argument.  Update.
1131         * breakpoint.c: Include valprint.h.
1132         (addressprint): Don't declare.
1133         (watchpoint_value_print): Use get_user_print_options.
1134         (print_one_breakpoint_location): Likewise.
1135         (breakpoint_1, print_it_catch_fork, print_it_catch_vfork, mention,
1136         print_exception_catchpoint): Likewise.
1137         * auxv.c (fprint_target_auxv): Don't declare addressprint.  Use
1138         get_user_print_options.
1139         * ada-valprint.c (struct ada_val_print_args): Remove format,
1140         deref_ref, and pretty; add options.
1141         (print_optional_low_bound): Add options argument.
1142         (val_print_packed_array_elements): Remove format and pretty
1143         arguments; add options.  Update.
1144         (printstr): Add options argument.  Update.
1145         (ada_printstr): Likewise.
1146         (ada_val_print): Remove format, deref_ref, pretty arguments; add
1147         options argument.  Update.
1148         (ada_val_print_stub): Update.
1149         (ada_val_print_array): Remove format, deref_ref, pretty arguments;
1150         add options.  Update.
1151         (ada_val_print_1): Likewise.
1152         (print_variant_part): Likewise.
1153         (ada_value_print): Remove format, pretty arguments; add options.
1154         Update.
1155         (print_record): Likewise.
1156         (print_field_values): Likewise.
1157         * ada-lang.h (ada_val_print, ada_value_print, ada_printstr):
1158         Update.
1159         * ada-lang.c (ada_print_array_index): Add options argument; remove
1160         format and pretty arguments.
1161         (print_one_exception): Use get_user_print_options.
1162
1163 2008-10-28  Tom Tromey  <tromey@redhat.com>
1164
1165         * cli/cli-script.c (do_fclose_cleanup): Remove.
1166         (script_from_file): Use make_cleanup_fclose.
1167         * xml-tdesc.c (do_cleanup_fclose): Remove.
1168         (fetch_xml_from_file): Use make_cleanup_fclose.
1169         * tracepoint.c (tracepoint_save_command): Use
1170         make_cleanup_fclose.  Always free pathname.
1171         * source.c (print_source_lines_base): Use make_cleanup_fclose.
1172         * remote.c (fclose_cleanup): Remove.
1173         (remote_file_put): Use make_cleanup_fclose.
1174         (remote_file_get): Likewise.
1175         * linux-nat.c (linux_nat_find_memory_regions): Use
1176         make_cleanup_fclose.
1177         (linux_nat_info_proc_cmd): Likewise.
1178         (linux_proc_pending_signals): Likewise.
1179         * fbsd-nat.c (fbsd_find_memory_regions): Use make_cleanup_fclose.
1180         Free file name.
1181         * cli/cli-dump.c (do_fclose_cleanup): Remove.
1182         (make_cleanup_fclose): Remove.
1183         * defs.h (make_cleanup_fclose): Declare.
1184         * utils.c (do_fclose_cleanup): New function.
1185         (make_cleanup_fclose): Likewise.
1186
1187 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1188
1189         * inflow.c (kill_command): If the target claims there is still
1190         execution, don't clear the thread list.
1191
1192 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1193
1194         * cp-name-parser.y: Include defs.h instead of config.h.
1195         (parse_escape): Rename to ...
1196         (cp_parse_escape): ... this.
1197         (yylex): Update.
1198         (xfree) [TEST_CPNAMES]: New.
1199
1200 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1201
1202         * CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
1203         2.13 and configure.in.
1204
1205 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1206
1207         * target.h (struct target_ops) <to_supports_multi_process>: New
1208         field.
1209         (target_supports_multi_process): New define.
1210         * target.c (update_current_target): Inherit and de_fault
1211         to_supports_multi_process.
1212         * infcmd.c (attach_command): Allow attaching to multiple processes
1213         if the target supports it.
1214         (detach_command): If the target claims there is still execution,
1215         don't clear the thread list.
1216         * remote.c (remote_supports_multi_process): New.
1217         (init_remote_ops): Register remote_supports_multi_process.
1218
1219 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1220
1221         * Makefile.in (.y.c, .l.c): sed free to xfree.
1222
1223 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1224
1225         * Makefile.in (INSTALLED_LIBS, CLIBS): Remove reference to
1226         $(TM_CLIBS).
1227         (CDEPS): Remove reference to $(TM_CDEPS).
1228
1229 2008-10-26  Michael Snyder  <msnyder@vmware.com>
1230
1231         * infrun.c (handle_inferior_event): Handle dynamic symbol
1232         resolution in reverse.
1233
1234 2008-10-25  Joel Brobecker  <brobecker@adacore.com>
1235
1236         * infrun.c: Minor comment reformatting.
1237
1238 2008-10-25  Pedro Alves  <pedro@codesourcery.com>
1239
1240         * ada-exp.y (write_object_renaming): Use malloc instead of
1241         xmalloc.
1242         * p-exp.y (pop_current_type): Use free instead of xfree.
1243
1244 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1245
1246         * fork-child.c (startup_inferior): Only set threads not-executing
1247         after getting all the pending execs.  On TARGET_WAITKIND_IGNORE,
1248         keep waiting, don't resume.  On all other cases but
1249         TARGET_WAITKIND_SIGNALLED and TARGET_WAITKIND_EXITED, switch to
1250         the event ptid.
1251
1252 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1253
1254         Remote non-stop mode support.
1255
1256         * remote.c (pending_stop_reply): New.
1257         (struct remote_state) <non_stop_aware, support_vCont_t>: New
1258         fields.
1259         (remote_async_inferior_event_token)
1260         (remote_async_get_pending_events_token): New.
1261         (notice_new_inferiors): New, abstracted out from record_currthread.
1262         (record_currthread): Call it.
1263         (remote_threads_info): Default threads to running in non-stop
1264         mode.  In non-stop mode, only qfThreadInfo is supported.
1265         (remote_close): Discard all pending stop_replies.  Close the event
1266         sources.
1267         (set_stop_requested_callback): New.
1268         (remote_start_remote): Implement non-stop mode startup.  In
1269         all-stop, don't clear the thread list here.
1270         (remote_non_stop_feature): New.
1271         (remote_protocol_features): Add a "QNonStop" feature.
1272         (remote_open_1): Clear cached_wait_status and non_stop_aware.
1273         Clear the thread list here.
1274         (remote_detach_1): Discard pending stop replies of the process we
1275         detached from.
1276         (extended_remote_attach_1): Implement non-stop mode.
1277         (remote_vcont_probe): Recognize `vCont;t'.
1278         (remote_vcont_resume): Implement non-stop mode.
1279         (remote_resume): Don't set waiting_for_stop_reply in non-stop
1280         mode.
1281         (remote_stop_ns): New.
1282         (remote_stop): Rename to ...
1283         (remote_stop_as): ... this.  If we have a cached wait status,
1284         don't bother interrupting the remote.
1285         (remote_stop): Reimplement as wrapper around remote_stop_as and
1286         remote_stop_ns.
1287         (interrupt_query): Don't query in async mode.
1288         (struct cached_reg, cahed_reg_t): New.
1289         (struct stop_reply): New.
1290         (stop_reply_queue): New.
1291         (stop_reply_xmalloc, stop_reply_xfree)
1292         (discard_pending_stop_replies, do_stop_reply_xfree)
1293         (queued_stop_reply, push_stop_reply, peek_stop_reply)
1294         (remote_parse_stop_reply, remote_get_pending_stop_replies)
1295         (process_stop_reply): New.
1296         (remote_wait_ns): New.
1297         (remote_wait_as): Use remote_parse_stop_reply.  Invalidate the
1298         notion of current general thread is a process exit was reported.
1299         (remote_wait): Call remote_wait_ns in non-stop mode.
1300         (handle_notification): New.
1301         (putpkt_binary): Handle notifications.  Don't care for
1302         waiting_for_stop_reply in non-stop mode.
1303         (getpkt_sane): Rename to ...
1304         (getpkt_or_notif_sane_1): ... this.  Add `expecting_notif'
1305         argument.  Handle it.  Handle notifications.
1306         (getpkt_sane): Reimplement as wrapper around getpkt_or_notif_sane_1.
1307         (getpkt_or_notif_sane): New.
1308         (select_new_thread_callback): Check for exited state instead of
1309         comparing the ptid against minus_one_ptid.
1310         (extended_remote_create_inferior_1): Query the remote about the
1311         current thread.
1312         (remote_supports_non_stop): New.
1313         (init_remote_ops): Register it.
1314         (remote_async_inferior_event_handler): New.
1315         (remote_async_get_pending_events_handler): New.
1316
1317         * infcmd.c (proceed_thread_callback): Comment.
1318         (proceed_after_attach_callback, proceed_after_attach): New.
1319         (attach_command_post_wait): In background attach, resume all
1320         threads, but only if they are unsignalled, and not explicitly
1321         stopped.  In foreground attach, in non-stop mode, make sure to
1322         stop all threads of the just attached to process.
1323         (attach_command): In non-stop mode: If doing a background attach,
1324         stop at least one thread.  If a foreground attach, stop all
1325         threads.
1326
1327 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1328
1329         * event-loop.h: Mention async_event_handlers.
1330         (async_event_handler): Forward declare.
1331         (async_event_handler_func): New typedef.
1332         (create_async_event_handler, delete_async_event_handler)
1333         (mark_async_event_handler): Declare.
1334         * event-loop.c (event_data): New.
1335         (event_handler_func): Take an event_data instead of an integer.
1336         (struct gdb_event): Replace the integer file descriptor by a
1337         generic event_data.
1338         (async_event_handler): New.
1339         (async_handler_ready): Delete.
1340         (async_event_handler_list): New.
1341         (create_event): New.
1342         (create_file_event): Use it.
1343         (process_event): Adjust.
1344         (gdb_do_one_event): Poll from the event sources in round-robin
1345         fashion across calls.  Be sure to consult all sources before
1346         blocking.
1347         (handle_file_event): Take an event_data instead of an integer.
1348         Adjust.
1349         (gdb_wait_for_event): Add `block' argument.  Handle it.
1350         (mark_async_signal_handler): Remove unneeded cast.
1351         (invoke_async_signal_handler): Rename to ...
1352         (invoke_async_signal_handlres): ... this.  Return true if any was
1353         handled.
1354         (check_async_ready): Delete
1355         (create_async_event_handler): New.
1356         (mark_async_event_handler): New.
1357         (struct async_event_handler_data): New.
1358         (invoke_async_event_handler): New.
1359         (check_async_event_handlers): New.
1360         (delete_async_event_handler): New.
1361         (handle_timer_event): Adjust.
1362
1363 2008-10-24  Doug Evans  <dje@google.com>
1364
1365         * dwarf2read.c (typename_concat): Don't segv if prefix or suffix
1366         is NULL.  Simplify obs == NULL case.
1367
1368 2008-10-24  Hui Zhu  <teawater@gmail.com>
1369             Pedro Alves  <pedro@codesourcery.com>
1370
1371         * infrun.c (can_use_displaced_stepping): Change type to
1372         const char pointer.
1373         (can_use_displaced_stepping_auto): New string.
1374         (can_use_displaced_stepping_on): New string.
1375         (can_use_displaced_stepping_off): New string.
1376         (can_use_displaced_stepping_enum): New array.
1377         (show_can_use_displaced_stepping): In auto mode, also show
1378         the current effect of the option.
1379         (use_displaced_stepping): Return non-zero if displaced
1380         stepping is auto, and can be used with GDBARCH, and in
1381         non-stop mode.  Return non-zero if displaced stepping is on,
1382         and can be used with GDBARCH.  Return zero otherwise.
1383         (_initialize_infrun): Make the "set displaced-stepping"
1384         command an enum command.  Change its class to class_run.
1385         Place it in the top level set list.  Extend help to describe
1386         the auto mode.
1387
1388 2008-10-23  Pedro Alves  <pedro@codesourcery.com>
1389
1390         * defs.h: Mention ptid_is_pid.
1391         * inferior.h (ptid_is_pid): Declare.
1392         * gdbthread.h (struct thread_info) <stop_requested>: New field.
1393         (set_stop_requested): Declare.
1394         * infcmd.c (interrupt_target_1): Call set_stop_requested.
1395         * infrun.c (clear_proceed_status): Clear stop_requested.
1396         (infrun_thread_stop_requested_callback,
1397         infrun_thread_stop_requested): New.
1398         (handle_inferior_event): If a TARGET_SIGNAL_TRAP is reported on a
1399         thread that had an explicit stop request, pretend we got a
1400         TARGET_SIGNAL_0.  Always stop if the thread had an explicit stop
1401         request.
1402         (print_stop_reason): In the SIGNAL_RECEIVED case, if we're not
1403         outputting to MI, and we got a TARGET_SIGNAL_0, print "# Stopped",
1404         instead of mentioning signal 0.
1405         (ptid_is_pid): New.
1406         * thread.c (set_stop_requested): New.
1407
1408         * linux-nat.c (queued_waitpid): Rename to ...
1409         (queued_waitpid_1): ... this.  Add `peek' argument.  Handle it.
1410         (queued_waitpid): New, as wrapper to queued_waitpid_1.
1411         (push_waitpid): Push the SIGTRAP to the local event queue, to the
1412         kernel's.
1413         (send_sigint_callback): Delete.
1414         (linux_nat_stop_lwp): New.
1415         (linux_nat_stop): Use it.
1416
1417 2008-10-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
1418
1419         * python/python-value (valpy_getitem): Fix heap corruption.
1420         
1421 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1422
1423         * nto-procfs.c (do_attach): Form proper ptid including pid and tid.
1424         (procfs_create_inferior): Fetch list of threads.
1425
1426 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1427
1428         * nto-procfs.c (procfs_files_info): Fix a typo.
1429         (procfs_create_inferior): Make attach_flag per-inferior.
1430
1431 2008-10-23  Tom Tromey  <tromey@redhat.com>
1432
1433         * python/python-value.c (value_to_value_object): Initialize
1434         owned_by_gdb field.
1435         (valpy_new): Likewise.
1436         
1437 2008-10-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1438             Joel Brobecker  <brobecker@adacore.com>
1439
1440         * ada-tasks.c (task_states, long_task_states): Use constant N_()
1441         initializer.  Define the strings as const.
1442         (short_task_info, info_task): Translate the strings above.
1443
1444 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1445
1446         * NEWS: Add entry for new feature (Ada tasking support).
1447
1448 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1449
1450         * configure.ac: On alpha-osf, error out if enable_tui is set to
1451         "yes", and set enable_tui to "no" if previously set to "auto".
1452         Check for waddstr only if TUI support was requested. Move the
1453         part of the configure script that updates various Makefile
1454         variables up, together with the check for waddstr.
1455         * configure: Regenerate.
1456
1457 2008-10-22  Joel brobecker  <brobecker@adacore.com>
1458
1459         * gdbtypes.c (copy_type): New function.
1460         * gdbtypes.h (copy_type): Add declaration.
1461         * ada-lang.c (ada_to_fixed_type_1): If there is a parallel XVZ
1462         variable, then use it.
1463
1464 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1465
1466         * target.h (struct target_ops): Add new field to_get_ada_task_ptid.
1467         (target_get_ada_task_ptid): New macro.
1468         * target.c (default_get_ada_task_ptid): New function.
1469         (update_current_target): Inherit field default_get_ada_task_ptid.
1470         (update_current_target): Make default_get_ada_task_ptid the default
1471         value for field to_get_ada_task_ptid.
1472         * ada-lang.h (struct task_control_block): Delete. Never used.
1473         (struct task_ptid, task_ptid_t, struct task_entry, task_list):
1474         Likewise.
1475         (struct ada_task_info): New.
1476         (ada_task_is_alive, ada_find_printable_frame)
1477         (ada_task_list_iterator_ftype, iterate_over_live_ada_tasks): Add
1478         declarations.
1479         (ada_build_task_list): Update prototype.
1480         (init_task_list, ada_is_exception_breakpoint): Remove prototypes.
1481         * ada-lang.c (ada_find_printable_frame): Make non-static.
1482         * ada-tasks.c: New file.
1483         * Makefile.in (SFILES): Add ada-tasks.c.
1484         (COMMON_OBS): Add ada-tasks.o.
1485         * linux-thread-db.c (thread_db_find_thread_from_tid)
1486         (thread_db_get_ada_task_ptid): New functions.
1487         (init_thread_db_ops): Set thread_db_ops.to_get_ada_task_ptid.
1488
1489 2008-10-22  Tom Tromey  <tromey@redhat.com>
1490
1491         PR gdb/2506:
1492         * c-exp.y (string_exp): New production.
1493         (exp): Use it.
1494
1495 2008-10-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1496
1497         * mips-tdep.c (mips_n32n64_fp_arg_chunk_p): Update TYPE_FIELD_STATIC
1498         removed before.
1499
1500 2008-10-20  Joel Brobecker  <brobecker@adacore.com>
1501
1502         * NEWS: Add entry mentioning thread-support on Tru64
1503
1504 2008-10-19  Joel Brobecker  <brobecker@adacore.com>
1505
1506         * dec-thread.c: New file.
1507         * config/alpha/alpha-osf3.mh (NATDEPFILES): Add dec-thread.o.
1508         (NAT_CLIBS): Define.
1509
1510 2008-10-19  Hui Zhu  <teawater@gmail.com>
1511
1512         * infrun.c (handle_inferior_event): Set "stop_pc" when
1513         TARGET_WAITKIND_NO_HISTORY.
1514
1515 2008-10-19  Pedro Alves  <pedro@codesourcery.com>
1516
1517         * python/python-value.c (value_object_methods)
1518         (value_object_as_number, value_object_as_mapping): Move to bottom
1519         of file.
1520         (valpy_dealloc, valpy_new, valpy_length, valpy_getitem)
1521         (valpy_setitem, valpy_str, valpy_add, valpy_subtract)
1522         (valpy_multiply, valpy_divide, valpy_remainder, valpy_power)
1523         (valpy_negative, valpy_positive, valpy_absolute, valpy_nonzero)
1524         (valpy_richcompare, valpy_dereference): Don't forward-declare.
1525         (valpy_length) [HAVE_LIBPYTHON2_4]: Change return type to `int'.
1526
1527 2008-10-18  Pedro Alves  <pedro@codesourcery.com>
1528
1529         * infrun.c (adjust_pc_after_break): Do nothing if executing in
1530         reverse.
1531
1532 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1533
1534         * infcmd.c (GO_USAGE): Delete.
1535         (go_command): Adjust.
1536
1537 2008-10-17  Michael Snyder  <msnyder@vmware.com>
1538         Target interface for reverse debugging.
1539         * target.h (enum target_waitkind): 
1540         Add new wait event, TARGET_WAITKIND_NO_HISTORY.
1541         (struct target_ops): New method to_can_execute_reverse.
1542         (target_can_execute_reverse): New macro.
1543         * target.c (update_current_target): Inherit to_can_execute_reverse.
1544
1545         Remote interface for reverse debugging.
1546         * remote.c (remote_can_execute_reverse): New target method.
1547         (remote_resume): Check for reverse exec direction, and send 
1548         appropriate command to target.
1549         (remote_wait_as): Check target response for NO_HISTORY status.
1550         Also check for empty reply (target doesn't understand "bs" or "bc).
1551         (remote_vcont_resume): Jump out if attempting reverse execution.
1552
1553         Event handling interface for reverse debugging.
1554         * infrun.c (execution_direction): New state variable.
1555         (enum inferior_stop_reason): Add NO_HISTORY reason.
1556         (handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY.
1557         Handle stepping over a function call in reverse.
1558         Handle stepping thru a line range in reverse.
1559         Handle setting a step-resume breakpoint in reverse.
1560         Handle stepping into a function in reverse.
1561         Handle stepping between line ranges in reverse.
1562         (print_stop_reason): Print reason for NO_HISTORY.
1563         (step_into_function): Rename to handle_step_into_function.
1564         (handle_step_into_function_backward): New function.
1565         (set_exec_direction_func, show_exec_direction_func): New funcs.
1566         (proceed): No need to singlestep over a breakpoint
1567         when resuming in reverse.
1568         
1569         * inferior.h (enum exec_direction_kind): New enum.
1570         (execution_direction): Export new execution state variable.
1571
1572         * breakpoint.c (make_breakpoint_silent): New function.
1573         * breakpoint.h (make_breakpoint_silent): Export.
1574         * infcmd.c (finish_command): Check for reverse exec direction.
1575         (finish_backward): New function, handle finish cmd in reverse.
1576
1577         User interface for reverse execution.
1578         * Makefile.in (reverse.c): New file.
1579         * reverse.c: New file.  User interface for reverse execution.
1580
1581 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1582
1583         * remote.c (record_currthread): Add inferior before child threads.
1584         (remote_threads_info): Check for exited threads.  Mention
1585         notification order.
1586
1587 2008-10-16  Joel Brobecker  <brobecker@adacore.com>
1588
1589         * breakpoint.h (enum bptype): New enum bp_catchpoint.
1590         Delete bp_catch_fork and bp_catch_vfork.
1591         (struct breakpoint_ops): Add new methods "insert", "remove"
1592         and "breakpoint_hit".
1593         * breakpoint.c (create_fork_vfork_event_catchpoint)
1594         (create_fork_event_catchpoint, create_vfork_event_catchpoint): Remove.
1595         (insert_catchpoint): Remove handling of bp_catch_fork and
1596         bp_catch_vfork catchpoints, and handle them as bp_catchpoint
1597         catchpoints instead.
1598         (insert_bp_location, update_breakpoints_after_exec)
1599         (remove_breakpoint, bpstat_check_location, bpstat_what)
1600         (allocate_bp_location): Likewise.
1601         (print_it_typical, print_one_breakpoint_location, mention): Remove
1602         handling of bp_catch_fork and bp_catch_vfork breakpoints.
1603         (ep_is_catchpoint, user_settable_breakpoint)
1604         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
1605         (breakpoint_re_set_one, disable_command, enable_command):
1606         Remove use of bp_catch_fork and bp_catch_vfork.  Add handling of
1607         bp_catchpoint breakpoints.
1608         (insert_catch_fork, remove_catch_fork, breakpoint_hit_catch_fork)
1609         (print_it_catch_fork, print_one_catch_fork, print_mention_catch_fork):
1610         New functions.
1611         (catch_fork_breakpoint_ops): New static constant.
1612         (insert_catch_vfork, remove_catch_vfork, breakpoint_hit_catch_vfork)
1613         (print_it_catch_vfork, print_one_catch_vfork)
1614         (print_mention_catch_vfork): New functions.
1615         (catch_vfork_breakpoint_ops): New static constant.
1616         (create_catchpoint, create_fork_vfork_event_catchpoint): New functions.
1617         (catch_fork_command_1): Use create_fork_vfork_event_catchpoint
1618         to create the fork and vfork catchpoints.
1619         (gnu_v3_exception_catchpoint_ops): Set new breakpoint_ops fields.
1620         * ada-lang.c (catch_exception_breakpoint_ops): Set new breakpoint_ops
1621         fields.
1622         (catch_exception_unhandled_breakpoint_ops): Likewise.
1623         (catch_assert_breakpoint_ops): Likewise.
1624
1625 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1626
1627         * remote.c (set_general_process): New.
1628         (remote_check_symbols): Use it.
1629
1630 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1631
1632         * remote.c (push_remote_target): Delete.
1633         * target.h (push_remote_target): Delete declaration.
1634
1635 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1636
1637         * remote.c (remote_close): Unregister remote_desc from the event
1638         loop.  Always restore the SIGINT handler.  Discard all inferiors
1639         here.
1640         (remote_detach_1, remote_disconnect): Don't unregister the file
1641         descriptor from the event loop here.
1642         (interrupt_query, readchar, getpkt_sane): Pop the target instead
1643         of morning the current inferior.
1644         (remote_kill): Don't unregister the file descriptor from the event
1645         loop here.
1646         (remote_mourn_1): Don't discard inferiors here.
1647
1648 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1649
1650         * breakpoint.c (breakpoint_init_inferior): Clean up the moribund
1651         locations list.
1652         (moribund_breakpoint_here_p): Record the moribund
1653         location in the moribund_locations vector.
1654         * breakpoint.h (moribund_breakpoint_here_p): Declare.
1655         (displaced_step_fixup): Check if the breakpoint the thread was
1656         trying to step over has been removed since having been placed in
1657         the displaced stepping queue.
1658         (adjust_pc_after_break): In non-stop mode, check for a moribund
1659         breakpoint at the stop pc.
1660         (handle_inferior_event): Don't retire moribund breakpoints on
1661         TARGET_WAITKIND_IGNORE.
1662
1663 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1664
1665         * infrun.c (displaced_step_prepare): Switch thread temporarily
1666         while we're here.
1667         (displaced_step_fixup): Make sure target_resume sees ptid as
1668         inferior_ptid.  Add debug output.
1669
1670 2008-10-14  Pedro Alves  <pedro@codesourcery.com>
1671
1672         Remove dead code.
1673
1674         * breakpoint.c (show_breakpoint_hit_counts): Delete.
1675         (print_one_breakpoint_location): Adjust.
1676         (breakpoint_clear_ignore_counts): Delete.
1677         * breakpoint.h (breakpoint_clear_ignore_counts): Remove
1678         declaration.
1679         * target.c (generic_mourn_inferior): Don't clear ignore
1680         counts (never reached).
1681
1682 2008-10-10  Doug Evans  <dje@google.com>
1683
1684         * dwarf2read.c (comp_unit_head): Use unsigned int consistently
1685         for dwarf section offsets and sizes.
1686         (dwarf2_cu): Ditto.
1687         (dwarf2_per_cu_data): Ditto.
1688         (create_all_comp_units): Change offset to unsigned int.
1689         (load_full_comp_unit,find_partial_die_in_comp_unit,find_partial_die,
1690         dwarf2_find_containing_comp_unit,dwarf2_find_comp_unit): Ditto.
1691
1692         * dwarf2read.c (read_initial_length): Delete cu_header arg.
1693         All callers updated.
1694         (read_checked_initial_length_and_offset): New function.
1695         (read_offset_1): New function.
1696         (read_offset): Call it.
1697         (dwarf_decode_line_header): Call read_checked_initial_length_and_offset
1698         instead of read_initial_length.  Call read_offset_1 instead of
1699         read_offset.
1700
1701         * dwarf2read.c (dwarf2_get_ref_die_offset): Remove unused arg `cu'.
1702         All callers updated.
1703
1704         * dwarf2read.c (dwarf_attr_name): Unconditionally support all
1705         DW_AT_MIPS_* except DW_AT_MIPS_fde which collides with
1706         DW_AT_HP_block_index.
1707
1708 2008-10-10  Pedro Alves  <pedro@codesourcery.com>
1709
1710         * remote.c (remote_start_remote): Always tell the stub if we're in
1711         extended-remote.
1712
1713 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1714
1715         * remote.c (remote_wait): Rename to...
1716         (remote_wait_as): ... this.  Don't loop here.  If the remote
1717         didn't stop, return TARGET_WAITKIND_IGNORE.
1718         (remote_wait): New, reimplemented on top of remote_wait_as.
1719
1720 2008-10-09  Thomas Schwinge  <tschwinge@gnu.org>
1721
1722         * Makefile.in (gnu-nat.o): Revert the 2008-09-10 change, as the problem
1723         is fixed upstream.
1724
1725         * reply_mig_hack.awk: Use the `BAD_TYPECHECK' macro.
1726
1727         * MAINTAINERS (Write After Approval): Add myself.
1728
1729 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1730
1731         Make it compile without warnings.
1732
1733         * procfs.c (create_procinfo): Initialize `parent'.
1734         (dead_procinfo): Pass a constant string as format to error.
1735         (procfs_address_to_host_pointer): Add cast to gdb_type *.
1736         (procfs_find_LDT_entry): Adjust format string to long int
1737         ptid.tid.
1738         (procfs_xfer_partial): Adjust prototype.  Add gdb_byte* cast.
1739         (procfs_xfer_memory): Adjust prototype.
1740         (info_mappings_callback, info_proc_mappings): Adjust to not pass a
1741         variable as printf_filtered format.
1742         (procfs_make_note_section): Change type of auxv local to gdb_byte.
1743         * Makefile.in: Remove special rule.
1744
1745 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1746             Daniel Jacobowitz  <dan@codesourcery.com>
1747
1748         * remote.c (remote_open_1): Move acknowledging any pending ack,
1749         querying supported features, activating noack mode, finding the
1750         target description, enabling extended remote, and checking remote
1751         symbols from here ...
1752         (remote_start_remote): ... to here.
1753         (remote_open_1): Don't pop the target if it is already gone.
1754         * target.c (unpush_target): Check for the dummy target.
1755
1756 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1757
1758         * ser-mingw.c: Include "command.h".
1759         (pipe_windows_open): Declare locals at the beginning of the scope.
1760
1761 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1762
1763         * remote.c (struct remote_state) <waiting_for_stop_reply>: New
1764         field.
1765         (remote_open_1): Clear waiting_for_stop_reply.
1766         (remote_resume): Set waiting_for_stop_reply.
1767         (remote_wait): Clear or set waiting_for_stop_reply accordingly.
1768         (putpkt_binary): If we're in async mode and waiting for a stop
1769         reply, bail out with an error.
1770         (extended_remote_mourn_1): Clear waiting_for_stop_reply.
1771
1772 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1773
1774         * remote.c (remote_get_thread_info): If the remote doesn't support
1775         the query, bail out.
1776
1777 2008-10-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
1778
1779         Convert static_kind into loc_kind enum.
1780         * gdbtypes.h (enum field_loc_kind): New.
1781         (union field_location): New field dwarf_block.
1782         (struct field): Rename static_kind as loc_kind.
1783         (FIELD_STATIC_KIND): Rename to ...
1784         (FIELD_LOC_KIND): ... here.
1785         (TYPE_FIELD_STATIC_KIND): Rename to ...
1786         (TYPE_FIELD_LOC_KIND): ... here and use there now new FIELD_LOC_KIND.
1787         (TYPE_FIELD_STATIC_HAS_ADDR): Remove.
1788         (TYPE_FIELD_STATIC): Remove.
1789         (TYPE_FIELD_BITPOS): Reformat.
1790         (SET_FIELD_BITPOS): New.
1791         (FIELD_PHYSADDR): Rename to ...
1792         (FIELD_STATIC_PHYSADDR): ... here.
1793         (TYPE_FIELD_STATIC_PHYSADDR): Follow the FIELD_PHYSADDR rename.
1794         (SET_FIELD_PHYSADDR): Use new FIELD_LOC_KIND.
1795         (FIELD_PHYSNAME): Rename to ...
1796         (FIELD_STATIC_PHYSNAME): ... here.
1797         (TYPE_FIELD_STATIC_PHYSNAME): Follow the FIELD_PHYSNAME rename.
1798         (SET_FIELD_PHYSNAME): Use new FIELD_LOC_KIND.
1799         (FIELD_DWARF_BLOCK, TYPE_FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK): New.
1800         (field_is_static): New declaration.
1801         * gdbtypes.c (field_is_static): New function.
1802         (copy_type_recursive): Update throughout.
1803         * amd64-tdep.c, c-typeprint.c, coffread.c, cp-valprint.c, dwarf2read.c,
1804         eval.c, jv-typeprint.c, jv-valprint.c, mdebugread.c, p-typeprint.c,
1805         p-valprint.c, valops.c, value.c, varobj.c: Update throughout.
1806
1807 2008-10-07  Thomas Schwinge  <tschwinge@gnu.org>
1808             Pedro Alves  <pedro@codesourcery.com>
1809
1810         * gnu-nat.h: Rename `current_inferior' to `gnu_current_inf' to
1811         avoid a name collision.
1812         * gnu-nat.c: Likewise.
1813         * i386gnu-nat.c: Likewise.
1814
1815 2008-10-07  Joel Brobecker  <brobecker@adacore.com>
1816
1817         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Add handling
1818         of arguments that are references.
1819
1820 2008-10-06  Doug Evans  <dje@google.com>
1821
1822         * dwarf2read.c (dwarf2_die_debug): New static global.
1823         (dump_die_shallow): Renamed from dump_die, New args f, indent.
1824         Print to specified file, indented by the specified amount.
1825         (dump_die_for_error): New fn.  Point all existing callers of
1826         dump_die here.
1827         (dump_die_die_1,dump_die): New fns, replaces ...
1828         (dump_die_list): ... deleted.
1829         (read_die_and_children_1): Old contents of read_die_and_children
1830         moved here.
1831         (read_die_and_children): Rewrite.
1832         (read_die_and_siblings): Call read_die_and_children_1 instead of
1833         read_die_and_children.
1834         (_initialize_dwarf2_read): New option "debug dwarf2-die".
1835         * gdbinit.in (pdie): New macro.
1836
1837         * dwarf2read.c (offset_in_cu_p): New function.
1838         (find_partial_die,follow_die_ref): Use it.
1839
1840         * symmisc.c (maintenance_info_symtabs): Watch for ^c.
1841         (maintenance_info_psymtabs): Ditto.
1842
1843 2008-10-05  Michael Snyder  <msnyder@vmware.com>
1844
1845         * infrun.c (handle_inferior_event): Fix typo in comment.
1846
1847 2008-10-04  Vladimir Prus  <vladimir@codesourcery.com>
1848
1849         * mi/mi-interp.c (mi_on_resume): Flush raw_stdout.
1850
1851 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1852
1853         PR gdb/2384:
1854         * gdbtypes.c (get_vptr_fieldno): baseclass and basetype may have
1855         different lifetimes.
1856         
1857 2008-10-03  Joel Brobecker  <brobecker@adacore.com>
1858
1859         * solib-osf.c: Include "solib.h".
1860
1861 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1862         
1863         * utils.c, defs.h (gdb_buildargv): New fn. Wrap buildargv
1864         and check for out-of-memory condition.
1865         * exec.c (exec_file_command): Call it.
1866         * infrun.c (handle_command, xdb_handle_command): Likewise.
1867         * interps.c (interpreter_exec_cmd): Likewise.
1868         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
1869         * procfs.c (info_proc_cmd): Likewise.
1870         * remote-mips.c (common_open): Likewise.
1871         * remote-sim.c (gdbsim_kill, gdbsim_create_inferior)
1872         (gdbsim_open): Likewise.
1873         * remote.c (extended_remote_run, remote_put_command)
1874         (remote_get_command, remote_delete_command): Likewise.
1875         * ser-mingw.c (pipe_windows_open): Likesise.
1876         * source.c (add_path, show_substitute_path_command)
1877         (unset_substitute_path_command, set_substitute_path_command):
1878         Likewise.
1879         * stack.c (backtrace_command): Likewise.
1880         * symfile.c (symbol_file_command, generic_load)
1881         (add_symbol_file_command): Likesise.
1882         * symmisc.c (maintenance_print_symbols, maintenance_print_psymbols)
1883         (maintenance_print_msymbols): Likewise.
1884
1885 2008-10-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1886
1887         Replace TYPE_ARRAY_{UPPER,LOWER}_BOUND_TYPE by a bit if {un,}defined.
1888         * c-typeprint.c (c_type_print_varspec_suffix), m2-typeprint.c
1889         (m2_array), p-typeprint.c (pascal_type_print_varspec_prefix),
1890         valops.c (value_cast), varobj.c (c_number_of_children): Replace
1891         TYPE_ARRAY_UPPER_BOUND_TYPE compared to BOUND_CANNOT_BE_DETERMINED by
1892         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1893         * parse.c (follow_types): Use TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1894         * f-valprint.c (f77_get_dynamic_upperbound): Replace with ...
1895         (f77_get_upperbound): ... this function handling now only
1896         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1897         (f77_get_dynamic_lowerbound): Replace with ...
1898         (f77_get_lowerbound): ... this function handling now only
1899         TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED.
1900         (f77_get_dynamic_length_of_aggregate, f77_create_arrayprint_offset_tbl):
1901         Update their callers.
1902         * eval.c (evaluate_subexp_standard): Update their callers.
1903         * f-lang.h (f77_get_dynamic_upperbound, f77_get_upperbound)
1904         (f77_get_dynamic_lowerbound, f77_get_lowerbound): Update their
1905         prototypes.
1906         (BOUND_FETCH_OK, BOUND_FETCH_ERROR): Remove.
1907         * f-typeprint.c (f_type_print_varspec_suffix, f_type_print_base): Remove
1908         the lower_bound_was_default variable.  Update the
1909         f77_get_dynamic_upperbound, f77_get_upperbound and
1910         TYPE_ARRAY_UPPER_BOUND_TYPE calls.
1911         * gdbtypes.c (print_bound_type): Remove the function.
1912         (recursive_dump_type): Remove its calls printing UPPER_BOUND_TYPE and
1913         LOWER_BOUND_TYPE.
1914         * gdbtypes.h (enum array_bound_type): Remove.
1915         (struct main_type): Remove the fields upper_bound_type and
1916         lower_bound_type.  Comment the new overload of the field artificial.
1917         (TYPE_ARRAY_UPPER_BOUND_TYPE): Replace by ...
1918         (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED): ... this macro.
1919         (TYPE_ARRAY_LOWER_BOUND_TYPE): Replace by ...
1920         (TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): ... this macro.
1921
1922 2008-10-02  Tom Tromey  <tromey@redhat.com>
1923
1924         * Makefile.in (HFILES_NO_SRCDIR): Remove gdb-events.h, gstdint.h.
1925
1926 2008-10-02  Daniel Jacobowitz  <dan@codesourcery.com>
1927
1928         * mips-linux-tdep.c (mips_linux_in_dynsym_resolve_code): Update
1929         comments.
1930         (mips_linux_skip_resolver): Also use glibc_skip_solib_resolver.
1931         (mips_linux_init_abi): Do not override skip_trampoline_code.
1932         * configure.tgt (mips*-*-linux*): Add glibc-tdep.o.
1933         * mips-tdep.c (mips32_scan_prologue): Stop scanning at branches.
1934         (mips_stub_frame_sniffer): Use the stub frame sniffer for PIC stubs.
1935         (mips_skip_mips16_trampoline_code): Rename from
1936         mips_skip_trampoline_code.
1937         (mips_skip_pic_trampoline_code, mips_skip_trampoline_code): New.
1938         * infrun.c (handle_inferior_event): Do not pass zero to
1939         in_solib_dynsym_resolve_code.
1940
1941 2008-10-02  Pierre Muller  <muller@ics.u-strasbg.fr>
1942             Pedro Alves  <pedro@codesourcery.com>
1943
1944         * win32-nat.c (do_initial_win32_stuff): Set inferior_ptid.
1945
1946
1947 2008-10-01  Tom Tromey  <tromey@redhat.com>
1948
1949         * symtab.c (search_symbols): Update.
1950         * symtab.h (domain_enum_tag) <METHODS_DOMAIN>: Remove.
1951
1952 2008-10-01  Tom Tromey  <tromey@redhat.com>
1953
1954         * symfile.c (syms_from_objfile): Update.
1955         (reread_symbols): Update.
1956         * objfiles.h (OBJF_SYMS): Remove.
1957         (OBJF_REORDERED): Renumber.
1958         (OBJF_SHARED): Likewise.
1959         (OBJF_READNOW): Likewise.
1960         (OBJF_USERLOADED): Likewise.
1961
1962 2008-10-01  Tom Tromey  <tromey@redhat.com>
1963
1964         * symtab.c (find_pc_sect_psymtab): Use MSYMBOL_TYPE.
1965         (find_pc_sect_symtab): Likewise.
1966         * symmisc.c (dump_msymbols): Use MSYMBOL_TYPE.
1967         * solib-som.c (som_solib_desire_dynamic_linker_symbols): Use
1968         MSYMBOL_TYPE, not SYMBOL_TYPE.
1969         * parse.c (write_exp_msymbol): Use MSYMBOL_TYPE.
1970         * objc-lang.c (find_methods): Use MSYMBOL_TYPE.
1971         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Use
1972         MSYMBOL_TYPE.
1973         * m2-exp.y (yylex): Use SYMBOL_CLASS.
1974
1975 2008-10-01  Tom Tromey  <tromey@redhat.com>
1976
1977         * xcoffread.c (RECORD_MINIMAL_SYMBOL): Update.
1978         (scan_xcoff_symtab): Update.
1979         * mdebugread.c (record_minimal_symbol): Update.
1980         (parse_partial_symbols): Update.
1981         * elfread.c (record_minimal_symbol): Update.
1982         * dbxread.c (record_minimal_symbol): Update.
1983         * coffread.c (record_minimal_symbol): Update.
1984         * sh64-tdep.c (MSYMBOL_IS_SPECIAL): Redefine.
1985         (sh64_elf_make_msymbol_special): Update.
1986         * mips-tdep.c (mips_elf_make_msymbol_special): Use
1987         MSYMBOL_TARGET_FLAG_1.
1988         (mips_elf_make_msymbol_special): Likewise.
1989         (msymbol_is_special): Likewise.
1990         * minsyms.c (prim_record_minimal_symbol_and_info): Update.
1991         (install_minimal_symbols): Likewise.
1992         (prim_record_minimal_symbol): Update.
1993         (prim_record_minimal_symbol_and_info): Remove 'info' argument.
1994         * m68hc11-tdep.c (MSYMBOL_SET_RTC): Redefine.
1995         (MSYMBOL_SET_RTI): Redefine.
1996         (MSYMBOL_IS_RTC): Redefine.
1997         (MSYMBOL_IS_RTI): Redefine.
1998         * arm-tdep.c (MSYMBOL_SET_SPECIAL): Redefine.
1999         (MSYMBOL_IS_SPECIAL): Redefine.
2000         * symtab.h (struct minimal_symbol) <info>: Remove.
2001         <target_flag_1, target_flag_2>: New fields.
2002         (MSYMBOL_INFO): Remove.
2003         (MSYMBOL_TARGET_FLAG_1): New macro.
2004         (MSYMBOL_TARGET_FLAG_2): Likewise.
2005         (prim_record_minimal_symbol_and_info): Update.
2006
2007 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2008
2009         * ada-lang.c (is_digits_suffix): Delete unused function.
2010
2011 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
2012
2013         * ada-lang.c (ada_modulus): Correct to avoid sign problem with
2014         moduli >= 2**31.
2015
2016 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
2017
2018         * ada-lang.c (ada_lookup_struct_elt_type): Handle case of a "naked"
2019         variant branch.
2020         (empty_record): Use INIT_CPLUS_SPECIFIC, since this field is not
2021         supposed to be null.  Fixes debugger segfaults.
2022         (is_unchecked_variant): New function.
2023         (to_fixed_variant_branch_type): Modify to leave unchecked unions
2024         untouched.
2025         (ada_template_to_fixed_record_type_1): Fix comment.
2026
2027 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2028
2029         * ada-lang.c (standard_exc): New static constant.
2030         (ada_exception_catchpoint_cond_string): Add special handling
2031         for the predefined exceptions.
2032
2033 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2034
2035         * ada-lang.c (ADA_RETAIN_DOTS): Delete this dead macro.  Update
2036         the code accordingly.
2037
2038 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2039
2040         * ada-lang.c (ada_evaluate_subexp) [UNOP_IND]: Remove strange
2041         treatment of expect_type. Return the correct type when dereferencing
2042         an integer.
2043
2044 2008-09-30  Tom Tromey  <tromey@redhat.com>
2045
2046         PR gdb/2484:
2047         * symtab.c (struct add_macro_name_data): New struct.
2048         (add_macro_name): New function.
2049         (default_make_symbol_completion_list): Complete macro names.
2050         * scm-lang.c (scm_language_defn): Update.
2051         * p-lang.c (pascal_language_defn): Update.
2052         * objc-lang.c (objc_language_defn): Update.
2053         * macrotab.h (macro_callback_fn): Add user_data argument.
2054         (macro_for_each): Likewise.
2055         (macro_for_each_in_scope): Declare.
2056         * macrotab.c: (struct macro_for_each_data): New struct.
2057         (foreach_macro): Use it.
2058         (macro_for_each): Likewise.
2059         (foreach_macro_in_scope): New function.
2060         (macro_for_each_in_scope): Likewise.
2061         * macrocmd.c (print_one_macro): Add argument.
2062         (macro_list_command): Pass NULL to macro_for_each.
2063         * m2-lang.c (m2_language_defn): Update.
2064         * language.h (struct language_defn) <la_macro_expansion>: New
2065         field.
2066         (macro_expansion): New enum.
2067         * language.c (unknown_language_defn): Update.  Fix order of
2068         initializers.
2069         (auto_language_defn): Likewise.
2070         (local_language_defn): Update.
2071         * jv-lang.c (java_language_defn): Update.
2072         * f-lang.c (f_language_defn): Update.
2073         * c-lang.c (c_language_defn): Update.
2074         (cplus_language_defn): Likewise.
2075         (asm_language_defn): Likewise.
2076         (minimal_language_defn): Likewise.
2077         * ada-lang.c (ada_language_defn): Update.
2078
2079 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
2080
2081         * dwarf2read.c (dwarf2_get_subprogram_pc_bounds): New function.
2082         (get_scope_pc_bounds): Use it.
2083
2084 2008-09-27  Tom Tromey  <tromey@redhat.com>
2085
2086         * NEWS: Update.
2087         * macrocmd.c (extract_identifier): Add is_parameter argument.
2088         (macro_define_command): Update.
2089         (macro_undef_command): Likewise.
2090         * macroexp.c (stringify): New function.
2091         (find_parameter): Likewise.
2092         (gather_arguments): Add nargs argument.  Handle varargs.
2093         (substitute_args): Add is_varargs and va_arg_name arguments.
2094         Handle varargs, splicing, stringification.  Use find_parameter.
2095         (expand): Handle varargs.
2096
2097 2008-09-27  Tom Tromey  <tromey@redhat.com>
2098
2099         * scm-lang.c (scm_language_defn): Update.
2100         * p-typeprint.c (pascal_print_typedef): New function.
2101         * p-lang.h: (pascal_print_typedef): Declare.
2102         * p-lang.c (pascal_language_defn): Update.
2103         * objc-lang.c (objc_language_defn): Update.
2104         * m2-typeprint.c (m2_print_typedef): New function.
2105         * m2-lang.h (m2_print_typedef): Declare.
2106         * m2-lang.c (m2_language_defn): Update.
2107         * language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal):
2108         Remove.
2109         (struct language_defn) <la_print_typedef>: New field.
2110         (default_print_typedef): Declare.
2111         (LA_PRINT_TYPEDEF): New define.
2112         * language.c (unknown_language_defn): Update.
2113         (auto_language_defn): Update.
2114         (local_language_defn): Update.
2115         * jv-lang.c (java_language_defn): Update.
2116         * f-lang.c (f_language_defn): Update.
2117         * c-typeprint.c (c_print_typedef): New function.
2118         * c-lang.h (c_print_typedef): Declare.
2119         * c-lang.c (c_language_defn): Update.
2120         (cplus_language_defn): Update.
2121         (asm_language_defn): Update.
2122         (minimal_language_defn): Update.
2123         * ada-lang.c (ada_language_defn): Update.
2124         * typeprint.c (default_print_typedef): New function.
2125
2126 2008-09-27  Tom Tromey  <tromey@redhat.com>
2127
2128         * jv-exp.y (insert_exp): Define using ISO syntax.
2129         (copy_exp): Likewise.
2130         (push_expression_name): Likewise.
2131         (push_fieldnames): Likewise.
2132         (java_type_from_name): Likewise.
2133         (yyerror): Likewise.
2134         (yylex): Likewise.
2135         (parse_number): Likewise.
2136
2137 2008-09-26  Joel Brobecker  <brobecker@adacore.com>
2138
2139         * MAINTAINERS (GLOBAL MAINTAINERS): Add Pedro Alves.
2140
2141 2008-09-25  Stephan Springl  <springl-gdb@bfw-online.de> (tiny change)
2142
2143         * stack.c (print_frame_args): Fix typos in comments.
2144
2145 2008-09-25  Sérgio Durigan Júnior  <sergiodj@linux.vnet.ibm.com>
2146
2147         * linux-nat.c (get_pending_status): Fix argument to WIFSTOPPED.
2148
2149 2008-09-24  Vladimir Prus  <vladimir@codesourcery.com>
2150
2151         * remote-sim.c (gdbsim_create_inferior): Fix missing parenthesis.
2152         
2153 2008-09-24  Andreas Schwab  <schwab@suse.de>
2154
2155         * frame.c (get_frame_register_bytes): Take pseudo registers into
2156         account.  Avoid excessive function calls.
2157
2158 2008-09-23  Doug Evans  <dje@google.com>
2159
2160         * dcache.c (state_chars): New static global.
2161         (ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
2162         All uses updated.
2163         (dcache_info): Print cache state as mnemonically useful letters instead
2164         of magic numbers.
2165
2166         * dwarf2read.c (comp_unit_head): Reorganize for better packing.
2167
2168 2008-09-22  Tom Tromey  <tromey@redhat.com>
2169
2170         * symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
2171         printf_filtered.
2172
2173 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2174
2175         * infrun.c (follow_exec): Don't do a generic mourn.  Instead
2176         inline the required bits.
2177         * breakpoint.h (enum inf_context): Add inf_execd.
2178
2179 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2180
2181         * infrun.c (handle_inferior_event): In the follow exec case,
2182         context-switch before doing anything else.
2183
2184 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2185
2186         * top.c (any_thread_of, kill_or_detach): New functions.
2187         (quit_target): Iterate over all inferiors, killing or detaching
2188         accordingly.
2189
2190 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2191
2192         Remove the attach_flag global, and make it per-inferior.
2193
2194         * inferior.h (attach_flag): Delete.
2195         (inferior_process): Declare.
2196         * solib.c (update_solib_list): Adjust.
2197         * gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
2198         * inf-ptrace.c (inf_ptrace_detach): Adjust.
2199         (inf_ptrace_files_info): Get it from the current inferior.
2200         * inf-ttrace.c (inf_ttrace_attach): Adjust.
2201         (inf_ttrace_files_info): Get it from the current
2202         inferior.
2203         * inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
2204         (clear_sigint_trap): Get it from the current process.
2205         * remote.c (extended_remote_attach_1)
2206         (extended_remote_create_inferior_1): Adjust.
2207         * top.c (quit_confirm, quit_target): Get it from the current inferior.
2208         * procfs.c (do_detach): Adjust.
2209         (procfs_wait): Get it from the event inferior.
2210         (procfs_files_info): Get it from the current inferior.
2211         * nto-procfs.c (procfs_files_info): Likewise.
2212         (procfs_attach): Adjust.  Set the attach_flag here.
2213         (do_attach): Don't set it here.
2214         (procfs_detach): Don't clear it.
2215         (procfs_mourn_inferior): Don't clear it.
2216         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2217         * target.c (attach_flag): Delete.
2218         (generic_mourn_inferior): Don't clear it.
2219         * win32-nat.c (get_win32_debug_event): Get it from the event
2220         process.
2221         (do_initial_win32_stuff): Add attaching argument.  Set attach_flag
2222         in the inferior accordingly.
2223         (win32_attach): Don't set the attach_flag here.  Pass 1 to
2224         do_intial_win32_stuff.
2225         (win32_files_info): Get it from the current inferior.
2226         (win32_create_inferior): Dont clear attach_flag here.  Pass 0 to
2227         do_intial_win32_stuff.
2228
2229 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2230
2231         Make the stop_soon global be per-inferior instead.
2232
2233         * infcmd.c (attach_command_post_wait): Adjust.
2234         (attach_command): Likewise.
2235
2236         * inferior.h (stop_soon): Delete.
2237         (struct inferior): Add stop_soon member.
2238
2239         * infrun.c (stop_soon): Delete.
2240         (clear_proceed_status, start_remote)
2241         (fetch_inferior_event, handle_inferior_event): Adjust.
2242         (signal_stop_state): Don't check stop_soon here.  Check in callers
2243         instead.
2244         (save_inferior_status, restore_inferior_status): Adjust.
2245
2246         * linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
2247         signals to common code if starting up the inferior.
2248         
2249         * inferior.h (struct inferior_info): Added stop_soon member.
2250         * inferior.c (add_inferior) Clear stop_soon.
2251
2252         * mips-tdep.c (heuristic_proc_start): Adjust.
2253         * nto-procfs.c (procfs_create_inferior): Adjust.
2254         * solib-irix.c (irix_solib_create_inferior_hook): Adjust.
2255         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2256         * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
2257         * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
2258
2259         * win32-nat.c (do_initial_win32_stuff): Adjust.
2260
2261         * alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
2262
2263 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2264
2265         Implement remote multi-process extensions.
2266
2267         * remote.c (struct remote_state): Add extended and
2268         multi_process_aware fields.
2269         (remote_multi_process_p): New.
2270         (PACKET_vKill): New.
2271         (record_currthread): Use thread_change_ptid.  Notice new
2272         inferiors.
2273         (set_thread, remote_thread_alive): Use write_ptid.
2274         (write_ptid, read_ptid): New.
2275         (remote_current_thread, remote_threads_extra_info): Use them.
2276         (remote_threads_info): Likewise.  Detect new inferiors.
2277         (remote_start_remote): Add inferior to inferior list.
2278         (remote_multi_process_feature): New.
2279         (remote_protocol_features): Add "multiprocess" feature.
2280         (remote_query_supported): Pass "multiprocess+" as supported
2281         features.
2282         (remote_open_1): Clear multi_process_aware.  Set extended
2283         accordingly.
2284         (remote_detach_1): Detach current process.  Use extended packet
2285         format for extended-remote multi-process.  Detach process from the
2286         inferior list.  Only mourn after printing output.
2287         (extended_remote_attach_1): Add process to the inferior list.
2288         (remote_vcont_resume): Use write_ptid to pass the thread ids.
2289         (remote_wait): Use read_ptid.  Implement the extended
2290         multi-process extension format of the 'W' and 'X' reply packets.
2291         Remove exited inferiors from inferior list.
2292         (remote_xfer_memory): Set general thread.
2293         (remote_vkill): New.
2294         (extended_remote_kill): New.
2295         (remote_mourn_1): Discard all inferiors.
2296         (select_new_thread_callback): New.
2297         (extended_remote_mourn_1): If there are more processes to debug,
2298         switch to a thread in another process, and don't pop the target.
2299         (extended_remote_create_inferior_1): Add the new process to the
2300         inferior list.
2301         (remote_stopped_by_watchpoint): Indenting.
2302         (remote_xfer_partial): Set the general thread.
2303         (remote_pid_to_str): If the remote is multi-process aware, print
2304         the process id as well as the thread id.
2305         (remote_get_thread_local_address): Use write_ptid.
2306         (init_extended_remote_ops): Register extended_remote_kill.
2307         (_initialize_remote): Register new packets.  Change
2308         magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
2309         member to 42000.
2310
2311         * thread.c (thread_change_ptid): Also account for the inferior pid
2312         changing.
2313
2314         * inferior.h (discard_all_inferiors): Declare.
2315         * inferior.c (discard_all_inferiors): New.
2316
2317 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2318
2319         * gnu-nat.c (gnu_attach): Add process to inferiors table.
2320         (gnu_detach): Remove it.
2321         * go32-nat.c (go32_create_inferior): Add process to gdb's inferior
2322         table.
2323         * inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
2324         to inferior table accordingly.
2325         (inf_ptrace_attach): Add new process to inferior table.
2326         (inf_ptrace_detach): Remove it.
2327         * inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
2328         to inferior table accordingly.
2329         (inf_ttrace_attach): Add process to inferior table.
2330         (inf_ttrace_detach): Remove it.
2331         * linux-fork.c (init_fork_list): Delete any left over inferior.
2332         (linux_fork_mourn_inferior, detach_fork_command): Also delete
2333         processes from inferior list.
2334         * monitor.c (monitor_open): Add process to inferior list.
2335         (monitor_close): Remove it.
2336         * nto-procfs.c (procfs_attach): Add process to inferior list.
2337         Find threads after pushing the target.
2338         (procfs_detach): Remove process from inferior list.
2339         (procfs_create_inferior): Add process to inferior list.
2340         * procfs.c (procfs_detach): Remove process from inferior list.
2341         (do_attach): Add process to inferior list.
2342         * remote-sim.c (sim_create_inferior): Add process to inferior list.
2343         (gdbsim_close): Remove it.
2344         * target.c (generic_mourn_inferior): If inferior_ptid is not
2345         null_ptid, remove the corresponding inferior from inferior list.
2346         * win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
2347         (win32_detach): Remove it.
2348         * linux-nat.c (linux_child_follow_fork): Delete and add inferiors
2349         to inferior list accordingly.
2350         * fork-child.c (fork_inferior): Add process to inferior list.
2351         * corelow.c (CORELOW_PID): Define.
2352         (core_close): Remove core from inferior list.
2353         (core_open): Add it.
2354
2355 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2356
2357         * inferior.h: Forward declare struct ui_out.
2358         Forward declare struct private_inferior.
2359         (struct inferior): New.
2360         (init_inferior_list, add_inferior, add_inferior_silent)
2361         (delete_inferior, delete_inferior_silent, detach_inferior)
2362         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
2363         (valid_inferior_id, find_inferior_pid): New functions.
2364         (inferior_callback_func): New typedef.
2365         (iterate_over_inferiors, print_inferior, have_inferiors)
2366         (current_inferior): New functions.
2367         * inferior.c: New file.
2368
2369         * Makefile.in (SFILES): Add inferior.c.
2370         (COMMON_OBS): Add inferior.o.
2371
2372 2008-09-22  Jonathan Larmour  <jifl@eCosCentric.com>
2373
2374         * arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
2375         instead of determining symbol and line info directly.
2376         * MAINTAINERS: Update my email address.
2377
2378 2008-09-22  Daniel Jacobowitz  <dan@codesourcery.com>
2379
2380         * symtab.c (skip_prologue_using_sal): Treat two consecutive lines
2381         at the same address as a prologue marker.  Do not skip an entire
2382         function.
2383
2384 2008-09-22  Andrew Stubbs  <ams@codesourcery.com>
2385
2386         * frame.c (get_frame_register_bytes): Comment improvments.
2387
2388 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2389
2390         * linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
2391         all-stop mode.
2392
2393 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2394
2395         * MAINTAINERS: Update my email address.
2396
2397 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2398
2399         * frame.c (get_frame_register_bytes): Detect bad debug info.
2400
2401 2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
2402
2403         Fix a crash on uninitialized ECS->EVENT_THREAD for a newly found thread.
2404         * infrun.c (wait_for_inferior): Move this ECS->EVENT_THREAD
2405         initialization ...
2406         (fetch_inferior_event): ... and this ECS->EVENT_THREAD initialization
2407         ...
2408         (handle_inferior_event): ... here after the add_thread call together
2409         with the local adjust_pc_after_break and reinit_frame_cache calls.
2410
2411 2008-09-16  David Daney  <ddaney@avtrex.com>
2412
2413         * breakpoint.c (bpstat_stop_status): Clear breakpoint_at for
2414         all hardware bpstats.
2415
2416 2008-09-16  Joel Brobecker  <brobecker@adacore.com>
2417
2418         * gstdint.h: Delete.
2419
2420 2008-09-15  Mark Kettenis  <kettenis@gnu.org>
2421
2422         * infcall.c (generic_push_dummy_code): Remove.
2423         (push_dummy_code): Unconditionally call gdbarch_push_dummy_code.
2424
2425 2008-09-15  Doug Evans  <dje@google.com>
2426
2427         * dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
2428         (struct attribute): Ditto.
2429
2430 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2431
2432         * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind_cache): Record
2433         HPPA_IPSW_REGNUM and HPPA_SAR_REGNUM values.
2434
2435         * hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
2436         "#if 0" "#endif".  Fix mapping of DWARF DBX registers to GDB registers.
2437         Correct arguments and improve comments.
2438         (hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum.  Delete
2439         disabled code.
2440         * hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating
2441         point DBX register, change error to warning, and improve comments.
2442
2443 2008-09-14  Doug Evans  <dje@google.com>
2444
2445         * dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.
2446
2447 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2448
2449         * hppa-linux-tdep.c (hppa_linux_supply_fpregset): Correct iteration.
2450
2451 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2452
2453         * defs.h (GCC_GENERATED_STDINT_H): Define.
2454
2455 2008-09-13  Tom Tromey  <tromey@redhat.com>
2456
2457         * varobj.c (varobj_set_display_format): Use xfree.
2458         * tracepoint.c (stringify_collection_list): Use xfree.
2459         * remote-fileio.c (remote_fileio_reset): Use xfree.
2460         * mipsread.c (read_alphacoff_dynamic_symtab): Use xfree.
2461         * dfp.c (decimal_from_floating): Use xfree, xstrprintf.  Don't use
2462         asprintf.
2463         * cp-support.c (mangled_name_to_comp): Use xfree.
2464
2465 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2466
2467         * ada-lang.c (remove_extra_symbols): Remove stub symbols if
2468         the associated complete symbol is also in the list.
2469         (ada_add_local_symbols, ada_add_non_local_symbols): New functions,
2470         extracted out from ada_lookup_symbol_list.
2471         (ada_lookup_symbol_list): Use them.  Remove the search through
2472         the minimal symbols.
2473
2474 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2475
2476         * dwarf2read.c (add_partial_subprogram): New procedure.
2477         (scan_partial_symbols): Use it.
2478         (load_partial_dies): Read in children of subprogram and lexical
2479         blocks for Ada compilation units.
2480
2481 2008-09-13  Tom Tromey  <tromey@redhat.com>
2482
2483         * symfile.c (build_id_verify): Free 'found'.
2484         (find_separate_debug_file): Use xfree, not free.
2485
2486 2008-09-12  Doug Evans  <dje@google.com>
2487
2488         * corefile.c (write_memory): Remove unnecessary copying.
2489
2490         * sol-thread.c (_initialize_sol_thread): Add FIXME regarding
2491         order of _initialize_* fns.
2492
2493         * dwarf2read.c (comp_unit_head): Rename first_die_ptr to
2494         first_die_offset.  All uses updated.
2495         Delete unused members cu_head_ptr, next.
2496         Move members base_known, base_address to ...
2497         (dwarf2_cu) ... here.  All uses updated.
2498
2499 2008-09-12  Pedro Alves  <pedro@codesourcery.com>
2500
2501         * Makefile.in (generated_files): Add $(NAT_GENERATED_FILES).
2502         * config/i386/i386gnu.mh (NAT_GENERATED_FILES): New.
2503
2504 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2505
2506         * fork-child.c (startup_inferior): Use target_wait and target_resume
2507         directly instead of calling wait_for_inferior / resume.
2508
2509         * infcmd.c (kill_if_already_running): Do not call no_shared_libraries
2510         or init_wait_for_inferior.
2511         (run_command_1): Call init_wait_for_inferior.
2512
2513 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2514
2515         * gdbtypes.h (builtin_type_void_data_ptr, builtin_type_void_func_ptr,
2516         builtin_type_CORE_ADDR, builtin_type_char, builtin_type_short,
2517         builtin_type_int, builtin_type_long, builtin_type_signed_char,
2518         builtin_type_unsigned_char, builtin_type_unsigned_short,
2519         builtin_type_unsigned_int, builtin_type_unsigned_long,
2520         builtin_type_float, builtin_type_double, builtin_type_long_double,
2521         builtin_type_complex, builtin_type_double_complex, builtin_type_string,
2522         builtin_type_bool, builtin_type_long_long,
2523         builtin_type_unsigned_long_long): Remove macros.
2524
2525         (builtin_type_f_character, builtin_type_f_integer,
2526         builtin_type_f_integer_s2, builtin_type_f_logical,
2527         builtin_type_f_logical_s1, builtin_type_f_logical_s2,
2528         builtin_type_f_real, builtin_type_f_real_s8, builtin_type_f_real_s16,
2529         builtin_type_f_complex_s8, builtin_type_f_complex_s16,
2530         builtin_type_f_complex_s32): Likewise.
2531
2532         (builtin_type_m2_char, builtin_type_m2_int, builtin_type_m2_card,
2533         builtin_type_m2_real, builtin_type_m2_bool): Likewise.
2534
2535         (struct builtin_f_type, builtin_f_type): Move to f-lang.h.
2536         (struct builtin_m2_type, builtin_m2_type): Move to m2-lang.h.
2537
2538         * f-lang.h (struct builtin_f_type, builtin_f_type): Move here.
2539         * m2-lang.h (struct builtin_m2_type, builtin_m2_type): Move here.
2540
2541 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2542
2543         * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Use builtin types of
2544         target_gdbarch instead of builtin_type_void_data_ptr.
2545         (LM_DYNAMIC_FROM_LINK_MAP, LM_NEXT, LM_NAME,
2546         IGNORE_FIRST_LINK_MAP_ENTRY, scan_dyntag, elf_locate_base,
2547         solib_svr4_r_map, solib_svr4_r_brk, solib_svr4_r_ldsomap,
2548         open_symbol_file_object): Likewise.
2549         * nto-tdep.c (LM_ADDR): Likewise.
2550
2551 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2552
2553         * bsd-uthread.c (bsd_uthread_read_memory_address): New function.
2554         (bsd_uthread_fetch_registers, bsd_uthread_store_registers,
2555         bsd_uthread_wait, bsd_uthread_find_new_threads): Use it.
2556
2557 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2558
2559         * procfs.c (procfs_address_to_host_pointer): Use target_gdbarch
2560         and its associated types to perform pointer conversion.
2561         (procfs_can_use_hw_breakpoint): Likewise.
2562         (procfs_auxv_parse): Remove unused variable.
2563
2564 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2565
2566         * auxv.c (default_auxv_parse): Use gdbarch_ptr_bit (target_gdbarch)
2567         instead of builtin_type_void_data_ptr.
2568         * target.c (default_region_ok_for_hw_watchpoint): Likewise.
2569
2570 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2571
2572         * expprint.c (print_subexp_standard): Compare against builtin type
2573         associated with exp->gdbarch instead of builtin_type_char.
2574
2575         * f-valprint.c (f_val_print): Use extract_unsigned_integer to
2576         extract values of arbitrary logical type.  Handle arbitrary
2577         complex types.
2578
2579         * printcmd.c (float_type_from_length): New function.
2580         (print_scalar_formatted, printf_command): Use it.
2581
2582 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2583
2584         * valops.c: Include "objfiles.h" and "symtab.h".
2585         (find_function_in_inferior): New argument OBJF_P.  Use it to return
2586         objfile where function is defined.  Use per-objfile arch types
2587         instead of builtin_type_ to define default return type.
2588
2589         * linux-fork.c (checkpoint_command): Update calls.  Use per-objfile
2590         architecture to define inferior call argument types.
2591         * gcore.c (derive_heap_segment): Likewise.
2592         * objc-lang.c (value_nsstring): Likewise.
2593         * scm-lang.c (scm_lookup_name): Likewise.
2594         * scm-valprint.c (scm_inferior_print): Likewise.
2595         * valops.c (value_allocate_space_in_inferior): Likewise.
2596
2597         * eval.c (evaluate_subexp_standard): Update calls.
2598         * objc-lang.c (lookup_objc_class, print_object_command): Likewise.
2599
2600         * linux-fork.c: Include "objfiles.h".
2601         * scm-lang.c: Include "objfiles.h".
2602         * scm-valprint.c: Include "objfiles.h".
2603
2604 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2605
2606         * gdbarch.sh (name_of_malloc): Remove.
2607         * gdbarch.c, gdbarch.h: Re-generate.
2608         * valops.c (value_allocate_space_in_inferior): Do not call
2609         gdbarch_name_of_malloc.
2610
2611 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2612
2613         * valarith.c (value_x_unop): Use builtin_type_int8 as type for
2614         UNOP_POSTINCREMENT/UNOP_POSTDECREMENT constant 0 argument.
2615         (value_bit_index): Use extract_unsigned_integer
2616         instead of unpack_long to read single byte.
2617
2618 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2619
2620         * infcall.c (value_arg_coerce): Add GDBARCH parameter.  Use its
2621         associates types instead of builtin_type_ macros.
2622         (find_function_addr): Leave output VALUE_TYPE NULL if unknown.
2623         (call_function_by_hand): Use per-architecture "int" type as
2624         fall-back if find_function_addr returns NULL VALUE_TYPE.
2625         Update call to value_arg_coerce.
2626
2627 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2628
2629         * cp-abi.h (cplus_method_ptr_size): Add TO_TYPE parameter.
2630         (cplus_make_method_ptr): Add TYPE parameter.
2631         * cp-abi.c (cplus_method_ptr_size): Add TO_TYPE parameter.  Pass it
2632         on to current_cp_abi.method_ptr_size callback.
2633         (cplus_make_method_ptr): Add TYPE parameter.  Pass it on to
2634         current_cp_abi.make_method_ptr callback.
2635
2636         * gdbtypes.c (lookup_methodptr_type): Pass target type
2637         argument to cplus_method_ptr_size.
2638         * valops.c (value_cast): Pass type argument to cplus_make_method_ptr.
2639         (value_struct_elt_for_reference): Likewise.
2640
2641         * gnu-v3-abi.c (get_class_arch): New function.
2642         (vtable_address_point_offset): Add GDBARCH parameter.  Use it
2643         instead of current_gdbarch.  Update all callers.
2644         (gnuv3_get_vtable): Likewise.
2645         (gnuv3_get_virtual_fn): Likewise.
2646         (gnuv3_decode_method_ptr): Likewise.
2647         (gnuv3_rtti_type): Call get_class_arch to determine architecture.
2648         Use it instead of current_gdbarch.
2649         (gnuv3_virtual_fn_field): Likewise.
2650         (gnuv3_baseclass_offset): Likewise.
2651         (gnuv3_print_method_ptr): Likewise.
2652         (gnuv3_method_ptr_to_value): Likewise.
2653         (gnuv3_method_ptr_size): Add TYPE parameter.  Use it to determine
2654         class architecture.  Use architecture types instead of builtin types.
2655         (gnuv3_make_method_ptr): Likewise.
2656
2657         * cp-valprint.c (cp_print_class_member): Expect pointer type
2658         instead of class type.  Use its length when extracting value.
2659         * c-valprint.c (c_val_print): Update call to cp_print_class_member.
2660
2661 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2662
2663         * stack.c (return_command): Use frame architecture to determine
2664         default integer return type.
2665
2666         * f-valprint.c (f77_get_dynamic_lowerbound): Use frame architecture
2667         to determine pointer types.
2668         (f77_get_dynamic_upperbound): Likewise.
2669
2670         * objc-lang.c (OBJC_FETCH_POINTER_ARGUMENT): Remove.
2671         (resolve_msgsend): Use architecture of current frame to determine
2672         pointer types.  Inline OBJC_FETCH_POINTER_ARGUMENT.
2673         (resolve_msgsend_stret, resolve_msgsend_super,
2674         resolve_msgsend_super_stret): Likewise.
2675
2676 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2677
2678         * alpha-tdep.c (alpha_register_type): Use builtin_type (gdbarch)
2679         instead of builtin_type_ macros.
2680         * amd64-tdep.c (amd64_register_type): Likewise.
2681         (amd64_get_longjmp_target): Likewise.
2682         * arm-tdep.c (arm_register_type): Likewise.
2683         * avr-tdep.c (avr_register_type): Likewise.
2684         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
2685         * frv-tdep.c (frv_register_type): Likewise.
2686         * h8300-tdep.c (h8300_register_type): Likewise.
2687         * hppa-tdep.c (hppa32_convert_from_func_ptr_addr, 
2688         hppa_skip_trampoline_code): Likewise.
2689         * i386-tdep.c (i386_register_type): Likewise.
2690         (i386_unwind_pc, i386_sse_type): Likewise.
2691         * ia64-tdep.c (ia64_register_type): Likewise.
2692         * m32r-tdep.c (m32r_register_type): Likewise.
2693         * m68k-tdep.c (m68k_register_type, m68k_unwind_pc): Likewise.
2694         * m88k-tdep.c (m88k_register_type): Likewise.
2695         * mep-tdep.c (mep_register_type): Likewise.
2696         * mips-tdep.c (mips_pseudo_register_type): Likewise.
2697         * mn10300-tdep.c (mn10300_register_type): Likewise.
2698         * mt-tdep.c (mt_copro_register_type): Likewise.
2699         * rs6000-tdep.c (rs6000_builtin_type_vec64): Likewise.
2700         (rs6000_convert_register_p, rs6000_register_to_value,
2701         rs6000_value_to_register): Likewise.
2702         * s390-tdep.c (s390_register_type): Likewise.
2703         * sh64-tdep.c (sh64_register_type): Likewise.
2704         (sh64_build_float_register_type, sh64_do_fp_register): Likewise.
2705         * sh-tdep.c (sh_sh2a_register_type, sh_sh3e_register_type,
2706         sh_sh4_build_float_register_type, sh_sh4_register_type,
2707         sh_default_register_type): Likewise.
2708         * sparc64-tdep.c (sparc64_register_type): Likewise.
2709         * sparc-tdep.c (sparc32_register_type): Likewise.
2710         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
2711         * v850-tdep.c (v850_register_type): Likewise.
2712         * vax-tdep.c (vax_register_type): Likewise.
2713         * xtensa-tdep.c (xtensa_register_type, xtensa_unwind_pc,
2714         xtensa_push_dummy_call): Likewise.
2715
2716         * std-regs.c (value_of_builtin_frame_fp_reg,
2717         value_of_builtin_frame_pc_reg): Likewise.
2718         * target-descriptions.c (tdesc_register_type): Likewise.
2719
2720 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2721
2722         * ada-lang.c (ada_coerce_to_simple_array_type): Use builtin_type_int32
2723         instead of builtin_type_int as default unspecified integral type.
2724         (ada_index_type, ada_array_bound_from_type, ada_variant_discrim_type,
2725         assign_component, to_fixed_range_type): Likewise.
2726         * ada-typeprint.c (print_range, print_range_bound,
2727         print_range_type_named): Likewise.
2728         * ada-valprint.c (print_optional_low_bound, ada_val_print_1): Likewise.
2729         * eval.c (evaluate_subexp_standard): Likewise.
2730         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2731         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
2732         build_gdb_vtable_type): Likewise.
2733         * jv-lang.c (java_array_type): Likewise.
2734         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Likewise.
2735         * m2-valprint.c (m2_print_long_set): Likewise.
2736         * parse.c (follow_types): Likewise.
2737         * p-typeprint.c (pascal_type_print_base): Likewise.
2738         * valops.c (value_one, value_array, value_string,
2739         value_bitstring): Likewise.
2740         * value.c (allocate_repeat_value, value_from_string): Likewise.
2741         * varobj.c (c_describe_child): Likewise.
2742         * mt-tdep.c (mt_register_type): Likewise.
2743         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
2744         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
2745
2746 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2747
2748         * defs.h (struct gdbarch): Add forward declaration.
2749         (set_next_address): Add GDBARCH argument.
2750         * printcmd.c (set_next_address): Use it to find pointer type.
2751         * breakpoint.c (breakpoint_1): Update call.
2752         * source.c (line_info): Likewise.
2753         * findcmd.c (find_command): Use current_gdbarch to find pointer type.
2754
2755         * breakpoint.c (set_breakpoint_count): Use platform-neutral
2756         types for internal variable values.
2757         * infrun.c (handle_inferior_event): Likewise.
2758         * source.c (forward_search_command, reverse_search_command): Likewise.
2759         * tracepoint.c (set_tracepoint_count, set_traceframe_num,
2760         set_tracepoint_num, set_traceframe_context): Likewise.
2761
2762 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2763
2764         * gdbtypes.h (struct builtin_type): Remove builtin_true_char
2765         and builtin_true_unsigned_char.
2766         (builtin_type_true_char): Remove macro, add extern declaration.
2767         (builtin_type_true_unsigned_char): Add extern declaration.
2768         * gdbtypes.c (builtin_type_true_char): New global variable.
2769         (builtin_type_true_unsigned_char): Likewise.
2770         (_initialize_gdbtypes): Initialize them.
2771         (gdbtypes_post_init): Do not initialize builtin_true_char
2772         and builtin_true_unsigned_char members of struct builtin_type.
2773
2774         * printcmd.c (print_scalar_formatted): Do not use builtin_type;
2775         use builtin_type_true_unsigned_char instead.
2776
2777         * ada-valprint.c (ada_val_print_1): Use builtin_type_true_char
2778         instead of builtin_type_char for internal string.
2779
2780 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2781
2782         * gdbtypes.h (builtin_type_void): Remove macro, add declaration.
2783         (builtin_type_f_void): Remove macro.
2784         * gdbtypes.c (builtin_type_void): New global variable.
2785         (_initialize_gdbtypes): Initialize it.
2786
2787         * gnu-v3-abi.c (build_gdb_vtable_type): Do not call
2788         lookup_pointer_type or lookup_function_type on builtin_type_void.
2789         * printcmd.c (set_next_address): Likewise.
2790         * objc-lang.c (value_nsstring): Likewise.
2791         * mt-tdep.c (mt_copro_register_type): Likewise.
2792         * xtensa-tdep.c (xtensa_register_type): Likewise.
2793
2794         * symfile.c (syms_from_objfile): Remove special handling
2795         of builtin_type_void and builtin_type_char.
2796
2797 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2798
2799         * eval.c (evaluate_subexp_standard): Use exp->gdbarch types instead
2800         of builtin_type_ macros when handling OP_OBJC_ operations.
2801         * objc-lang.c (print_object_command): Likewise.
2802
2803 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2804
2805         * ada-valprint.c: Include "objfiles.h".
2806         (ada_val_print_1): Use the gdbarch associated with the objfile whether
2807         a System.Address type is defined to retrieve the proper pointer type
2808         to use to print it.
2809
2810 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2811
2812         * ada-lang.c (value_pos_atr): Add TYPE argument.  Use it as
2813         result type instead of builtin_type_int.
2814         (value_subscript_packed): Use pos_atr instead of value_pos_atr.
2815         (ada_value_subscript): Update call to value_pos_atr.
2816         (ada_value_ptr_subscript): Likewise.
2817         (ada_evaluate_subexp): Likewise.
2818
2819 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2820
2821         * ada-lang.c (cast_to_fixed): Do not cast to builtin_type_double.
2822         (cast_from_fixed_to_double): Rename to ...
2823         (cast_from_fixed): ... this.  Add TYPE parameter.  Use it instead
2824         of builtin_type_double.
2825         (ada_value_cast): Use cast_from_fixed instead of casting result
2826         of cast_from_fixed_to_double.
2827         (ada_evaluate_subexp): Update calls to cast_from_fixed_to_double. 
2828
2829 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2830
2831         * valops.c (value_ind): No longer allow dereferencing an
2832         integer type.
2833         * eval.c (evaluate_subexp_standard): Handle deferencing an
2834         integer type here.
2835         * ada-lang.c (ada_evaluate_subexp): Likewise.
2836
2837 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2838
2839         * ada-valprint.c (ada_val_print_1): When implicitly dereferencing
2840         a reference type, pass the reference type directly to unpack_pointer.
2841         * c-valprint.c (c_val_print): Likewise.
2842         * f-valprint.c (f_val_print): Likewise.
2843         * m2-valprint.c (print_variable_at_address, m2_val_print): Likewise.
2844         * p-valprint.c (pascal_val_print): Likewise.
2845
2846 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2847
2848         * eval.c (evaluate_subexp_standard): Use builtin_type_int8
2849         to construct the EVAL_SKIP dummy return value.
2850         * ada-lang.c (ada_evaluate_subexp): Likewise.
2851         * jv-lang.c (evaluate_subexp_java): Likewise.
2852         * m2-lang.c (evaluate_subexp_modula2): Likewise.
2853         * scm-lang.c (evaluate_exp): Likewise.
2854
2855 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2856
2857         * value.h (coerce_enum, coerce_number): Remove prototypes.
2858         * value.c (coerce_enum, coerce_number): Remove.
2859         * valarith.c (value_x_binop): Do not call coerce_enum.
2860         (value_x_unop): Likewise.
2861         (value_logical_not): Call coerce_array instead of coerce_number.
2862
2863 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2864
2865         * ax-gdb.c: Include "language.h".
2866         (gen_frame_args_address): Add GDBARCH parameter; use it
2867         instead of current_gdbarch.
2868         (gen_frame_locals_address): Likewise.
2869         (gen_var_ref): Add GDBARCH parameter.  Update calls to
2870         gen_frame_args_address and gen_frame_locals_address.  Use
2871         pointer type from gdbarch.
2872         (gen_usual_unary): Add EXP parameter.  Use integer type
2873         from exp->gdbarch.
2874         (gen_usual_arithmetic): Likewise.
2875         (gen_integral_promotions): Likewise.
2876         (gen_add, gen_sub): Remove.
2877         (gen_ptradd, gen_ptrsub, gen_ptrdiff): New functions.
2878         (gen_logical_not): Use passed-in boolean result type
2879         instead of builtin_type_int.
2880         (gen_complement): Do not call gen_usual_unary or
2881         gen_integral_promotions.
2882         (gen_struct_ref): Call require_rvalue instead of gen_usual_unary.
2883         (gen_repeat): Add EXP parameter.  Update call to gen_expr.
2884         Use builtin_type_int32 as internal range type.
2885         (gen_sizeof): Add EXP and SIZE_TYPE parameters.  Use SIZE_TYPE
2886         as result type.  Update call to gen_expr.
2887         (gen_expr): Add EXP parameter.  Update calls to gen_expr,
2888         gen_repeat, gen_var_ref, gen_usual_unary, gen_usual_arithmetic,
2889         and gen_integral_promotions.  Call gen_ptradd, gen_ptrsub,
2890         gen_ptrdiff, or gen_binop instead of gen_add or gen_sub.
2891         Use exp->gdbarch instead of current_gdbarch.
2892         Call language_bool_type to determine result type of UNOP_LOGICAL_NOT.
2893
2894 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2895
2896         * eval.c (evaluate_subexp_standard): Add calls to binop_promote
2897         and unop_promote before calling value_binop et. al.
2898         * ada-lang.c (ada_evaluate_subexp): Add calls to binop_promote
2899         and unop_promote before calling value_binop et. al.
2900
2901         * valarith.c (value_binop): Do not call binop_promote or unop_promote.
2902         (value_pos): Do not call unop_promote.
2903         (value_neg, value_complement): Likewise.
2904
2905 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2906
2907         * value.h (unop_promote, binop_promote): Add prototypes.
2908         * eval.c (unop_promote, binop_promote): New functions.
2909         * valarith.c (unop_result_type, binop_result_type): Remove.
2910         (value_binop): Call binop_promote or unop_promote.
2911         Inline remaining parts of binop_result_type.  Remove special
2912         code to truncate integer values for unsigned operations.
2913         (value_pos): Call unop_promote.  Inline remaining parts of
2914         unop_result_type.
2915         (value_neg, value_complement): Likewise.
2916
2917 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2918
2919         * value.h (value_add, value_sub): Remove.
2920         (value_ptradd, value_ptrsub, value_ptrdiff): Add prototypes.
2921         * valarith.c (value_add, value_sub): Remove.
2922         (value_ptradd, value_ptrsub, value_ptrdiff): New functions.
2923         (find_size_for_pointer_math): Add assertion.  Update comment.
2924         (value_binop): Update comment.
2925
2926         * eval.c (ptrmath_type_p): New function.
2927         (evaluate_subexp_standard): Replace value_add and value_sub
2928         by value_ptradd, value_ptrsub, value_ptrdiff or value_binop.
2929         Use builtin_type_uint8 instead of builtin_type_char to hold
2930         the increment for BINOP_{PRE,POST}{IN,DE}CREMENT operations.
2931         * valarith.c (value_subscript): Replace value_add by
2932         value_ptradd.  Replace value_sub by value_binop.
2933         * ada-lang.c (ada_value_ptr_subscript): Likewise.
2934         (ada_tag_name_2): Replace value_add by value_ptradd.
2935         (ada_evaluate_subexp): Replace value_add and value_sub by
2936         value_binop.
2937         * m2-lang.c (evaluate_subexp_modula2): Replace value_add
2938         by value_ptradd.
2939         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2940         * gnu-v3-abi.c (gnuv3_method_ptr_to_value): Likewise.
2941
2942 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2943
2944         * eval.c (evaluate_subexp_for_sizeof): Use builtin_int type of
2945         the expression architecture instead of builtin_type_int as the
2946         sizeof return type.
2947
2948 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2949
2950         * expression.h (enum exp_opcode): Document OP_COMPLEX to take
2951         a type parameter as expression element.
2952         * eval.c (evaluate_subexp_standard) [OP_COMPLEX]: Retrieve result
2953         type as expression element.
2954         * f-exp.y: Pass in type when buildin OP_COMPLEX expression.
2955         * parse.c (operator_length_standard): Update length of OP_COMPLEX.
2956
2957 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2958
2959         * language.h (struct language_arch_info): New members
2960         bool_type_default and bool_type_symbol.
2961         (lang_bool_type): Remove prototype.
2962         (LA_BOOL_TYPE): Remove macro.
2963         (language_bool_type): Add prototype.
2964         * language.c (lang_bool_type): Remove.
2965         (language_bool_type): New function.
2966
2967         * value.h (value_in): Change return value to int.
2968         * value.c (value_in): Return int instead of struct value *.
2969
2970         * eval.c (evaluate_subexp_standard): Call language_bool_type instead
2971         of using LA_BOOL_TYPE.  Update call to value_in.
2972         * ada-lang.c (ada_evaluate_subexp): Call language_bool_type instead
2973         of using LA_BOOL_TYPE or builtin_type_int for boolean values.
2974
2975         * language.c (unknown_language_arch_info): Set bool_type_default member
2976         of struct language_arch_info.
2977         * ada-lang.c (ada_language_arch_info): Set bool_type_symbol and
2978         bool_type_default members of struct language_arch_info.
2979         * c-lang.c (c_language_arch_info): Set bool_type_default member
2980         of struct language_arch_info.
2981         (cplus_language_arch_info): Set bool_type_symbol and bool_type_default
2982         members of struct language_arch_info.
2983         * f-lang.c (f_language_arch_info): Set bool_type_symbol and
2984         bool_type_default members of struct language_arch_info.
2985         * jv-lang.c (java_language_arch_info): Set bool_type_symbol and
2986         bool_type_default members of struct language_arch_info.
2987         * m2-lang.c (m2_language_arch_info): Set bool_type_symbol and
2988         bool_type_default members of struct language_arch_info.
2989         * p-lang.c (p_language_arch_info): Set bool_type_symbol and
2990         bool_type_default members of struct language_arch_info.
2991
2992 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2993
2994         * jv-lang.c (enum java_primitive_types): New type.
2995         (java_language_arch_info): New function.
2996         (java_language): Use it instead of c_language_arch_info.
2997
2998 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2999
3000         * value.h (value_bitstring_subscript): New prototype.
3001         * valarith.h (value_bitstring_subscript): New function.
3002         (value_subscript): No longer handle TYPE_CODE_BITSTRING.
3003         * eval.c (evaluate_subexp_standard): Call value_bitstring_subscript
3004         instead of value_subscript to handle TYPE_CODE_BITSTRING.
3005
3006 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3007
3008         * expression.h (struct expression): New member GDBARCH.
3009         * parse.c (parse_exp_in_context): Initialize it.
3010         * parser-def.h (parse_gdbarch, parse_language): New macros.
3011
3012         * ada-exp.y (parse_type): New macro.
3013         Replace builtin_type_ macros by using parse_type.
3014         Replace current_language by parse_language.
3015         * ada-lex.l (processInt): Replace current_gdbarch by parse_gdbarch.
3016         Replace builtin_type_ macros.
3017
3018         * c-exp.y (parse_type): New macro.
3019         Replace builtin_type_ macros by using parse_type.
3020         (parse_number): Replace current_gdbarch by parse_gdbarch.
3021         (yylex): Replace current_language by parse_language.
3022
3023         * f-exp.y (parse_type, parse_f_type): New macros.
3024         Replace builtin_type_ macros by using parse_{f_,}type.
3025         (parse_number): Replace current_gdbarch by parse_gdbarch.
3026         (yylex): Replace current_language by parse_language.
3027
3028         * jv-exp.y (parse_type): New macro.
3029         (parse_number): Replace builtin_type_ macros by using parse_type.
3030
3031         * m2-exp.y (parse_type, parse_m2_type): New macros.
3032         Replace builtin_type_ macros by using parse_{m2_,}type.
3033
3034         * objc-exp.y (parse_type): New macro.
3035         Replace builtin_type_ macros by using parse_type.
3036         (parse_number): Replace current_gdbarch by parse_gdbarch.
3037         (yylex): Replace current_language by parse_language.
3038
3039         * p-exp.y (parse_type): New macro.
3040         Replace builtin_type_ macros by using parse_type.
3041         (parse_number): Replace current_gdbarch by parse_gdbarch.
3042         (yylex): Replace current_language by parse_language.
3043
3044 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
3045
3046         * parser-defs.h (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE
3047         and DATA_SYMBOL_TYPE arguments.
3048         * parse.c (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE and
3049         DATA_SYMBOL_TYPE arguments.  Replace use of builtin_type_CORE_ADDR.
3050         (write_dollar_variable): Update call.
3051
3052         * ada-exp.y (write_var_or_type): Update call.
3053         * c-exp.y: Likewise.
3054         * f-exp.y: Likewise.
3055         * jv-exp.y: Likewise.
3056         * m2-exp.y: Likewise.
3057         * objc-exp.y: Likewise.
3058         * p-exp.y: Likewise.
3059
3060 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
3061
3062         * ada-lang.c (ada_parent_type): Add handling of the case where
3063         the _parent field is a pointer and/or has a parallel XVS type.
3064         (ada_evaluate_subexp) [OP_VAR_VALUE]: When doing an
3065         EVAL_AVOID_SIDE_EFFECTS evaluation of a tagged type, return
3066         the type of the tag instead of doing forcing an EVAL_NORMAL
3067         expression evaluation.
3068
3069 2008-09-10  Paul N. Hilfinger  <hilfinger@adacore.com> 
3070             Joel Brobecker  <brobecker@adacore.com>
3071
3072         * ada-lang.c (is_digits_suffix): New function.
3073         (is_dot_digits_suffix): Remove.
3074         (ada_lookup_symbol_list): Remove digits suffix from minimal symbols
3075         before looking up in symbol table, and do not use wild matches on them.
3076         (wild_match): Reimplement for speed and to allow matching of operator
3077         symbols.
3078         (is_valid_name_for_wild_match): Return zero for names that do not
3079         follow the GNAT encoding.
3080
3081         (is_name_suffix): Fix typo in comment.
3082         (to_record_with_fixed_variant_part): Ditto.
3083
3084 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
3085
3086         * Makefile.in (gnu-nat.o): New rule.
3087
3088 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
3089
3090         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Use
3091         archecture-neutral builtin_type_int32 instead of builtin_type_int.
3092
3093 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
3094
3095         * ada-lang.c (ada_evaluate_subexp) [BINOP_ADD, BINOP_SUB]:
3096         Add special handling for pointer types.
3097
3098 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
3099
3100         * inf-ttrace.c (inf_ttrace_follow_fork): Declare locals at the
3101         right scope level.
3102         (inf_ttrace_resume, inf_ttrace_wait): Typos.
3103
3104 2008-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
3105
3106         * ada-lang.c (ada_array_length): Use builtin_type_int32 instead
3107         of builtin_type_int.
3108         (ada_evaluate_subexp) [UNOP_IN_RANGE]: Use operand range type
3109         instead of builtin_type_int.
3110
3111 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3112
3113         * infrun.c (normal_stop): Run hook-stop last.
3114
3115 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3116
3117         * gnu-nat.c (gnu_pid_to_exec_file): Delete.
3118         (init_gnu_ops): Don't register it.
3119
3120 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3121
3122         * gnu-nat.c (gnu_attach): Push target before fetching the list of
3123         threads.
3124
3125 2008-09-08  Daniel Jacobowitz  <dan@codesourcery.com>
3126
3127         * valops.c (value_cast_structs): Return NULL for failure.
3128         (value_cast): Handle NULL from value_cast_structs.
3129         (value_fetch_lazy): Call check_typedef.  Remove unused variable.
3130
3131 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3132
3133         * inferior.h (context_switch_to): Delete.
3134         * infrun.c (context_switch): Don't save and load infrun state.
3135         (context_switch_to): Delete.
3136
3137         * infcmd.c (proceed_thread_callback): Replace context_switch_to
3138         calls by switch_to_thread calls.
3139
3140         * gdbthread.h (save_infrun_state, load_infrun_state): Delete.
3141         * thread.c (main_thread_state, main_thread_executing): Delete.
3142         (inferior_thread): Delete references to them.
3143         (add_thread_silent): Fix case where we're adding a thread with the
3144         same ptid as an exited thread.  Remove references to
3145         context-switching.
3146         (load_infrun_state, save_infrun_state): Delete.
3147         (thread_alive, is_thread_state, any_running, is_executing)
3148         (set_executing): Remove the special handling for targets that
3149         don't register any thread.
3150         (restore_current_thread, thread_apply_all_command)
3151         (do_captured_thread_select): Unconditionally call
3152         switch_to_thread.
3153
3154         * mi/mi-main.c (mi_cmd_execute): Check for exited threads.
3155         Call switch_to_thread instead of context_switch_to.
3156
3157 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3158
3159         Remove global continuations in favour of a per-thread
3160         continuations.
3161
3162         * gdbthread.h (struct thread_info): Add comments around
3163         continuations and intermediate_continuations.
3164         (save_infrun_state, load_infrun_state): Delete continuations and
3165         intermediate_continuations arguments.
3166         * infrun.c (context_switch): Don't context-switch the continuations.
3167         * thread.c (clear_thread_inferior_resources): Discard all
3168         continuations of the thread we're clearing.
3169         (save_infrun_state, load_infrun_state): Delete continuations and
3170         intermediate_continuations arguments, and the code referencing
3171         them.
3172         * utils.c: Include "gdbthread.h".
3173         (cmd_continuation, intermediate_continuation): Delete.
3174         (add_continuation): Add thread_info* argument.  Install the
3175         continuation on it.
3176         (restore_thread_cleanup): New.
3177         (do_all_continuations_ptid, do_all_continuations_thread_callback):
3178         New.
3179         (do_all_continuations): Reimplement.
3180         (discard_all_continuations_thread_callback,
3181         discard_all_continuations_thread): New.
3182         (discard_all_continuations): Reimplement.
3183         (add_intermediate_continuation): Add thread_info* argument.
3184         Install the continuation on it.
3185         (do_all_intermediate_continuations_thread_callback)
3186         (do_all_intermediate_continuations_thread): New.
3187         (do_all_intermediate_continuations): Reimplement.
3188         (discard_all_intermediate_continuations_thread_callback): New.
3189         (discard_all_intermediate_continuations_thread): New.
3190         (discard_all_intermediate_continuations): Reimplement.
3191
3192         * breakpoint.c (until_break_command): Install the continuation on
3193         the current thread.
3194
3195         * defs.h (cmd_continuation, intermediate_continuation): Delete.
3196         (struct thread_info): Forward declare.
3197         (add_continuation, add_intermediate_continuation): Add
3198         thread_info* argument.
3199         (do_all_continuations_thread, discard_all_continuations_thread)
3200         (do_all_intermediate_continuations_thread)
3201         (discard_all_intermediate_continuations_thread): Declare.
3202         * inf-loop.c (inferior_event_handler): In non-stop only run
3203         continuations on the thread that stopped.  In all-stop, run
3204         continuations on all threads.
3205         * infcmd.c (step_once, finish_command): Adjust.
3206
3207 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3208
3209         Remove the global stop_step in favour of a per-thread
3210         stop_step.
3211
3212         * inferior.h (stop_step): Delete.
3213
3214         * gdbthread.h (struct thread_info): Add comments to stop_step.
3215         (save_infrun_state, load_infrun_state): Remove stop_step argument.
3216         * thread.c (load_infrun_state, save_infrun_state): Remove
3217         stop_step argument, and references to it.
3218
3219         * infrun.c (clear_proceed_status): Clear stop_step.
3220         (fetch_inferior_event): Adjust.
3221         (context_switch): Don't context-switch stop_step.
3222         (handle_inferior_event): Adjust.
3223         (normal_stop): Adjust.
3224         (save_inferior_status, restore_inferior_status): Adjust.
3225
3226         * infcmd.c (stop_step): Delete.
3227         (step_1, step_1_continuation, step_once, until_next_command):
3228         Adjust.
3229
3230 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3231
3232         Remove the global step_multi in favour of a per-thread
3233         step_multi.
3234
3235         * inferior.h (step_multi): Delete.
3236         * gdbthread.h (struct thread_info): Add comments around
3237         step_multi.
3238         (save_infrun_state, load_infrun_state): Remove step_multi
3239         parameter.
3240         * thread.c (load_infrun_state, save_infrun_state): Remove
3241         step_multi argument, and references to it.
3242         * infcmd.c (step_multi): Delete.
3243         (step_1): Adjust.
3244         (step_1_continuation, until_next_command): Adjust.
3245         * infrun.c (fetch_inferior_event): Adjust.
3246         (context_switch): Don't context-switch step_multi.
3247         (print_stop_reason, normal_stop): Adjust.
3248
3249 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3250
3251         Remove the global stop_signal in favour of a per-thread
3252         stop_signal.
3253
3254         * inferior.h (stop_signal): Delete.
3255         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3256         stop_signal argument.
3257         * thread.c (load_infrun_state, save_infrun_state): Remove
3258         stop_signal argument.  Don't reference it.
3259
3260         * infcmd.c (stop_signal): Delete.
3261         (program_info): Adjust.
3262         * infrun.c (resume): Clear stop_signal.
3263         (proceed): Adjust.  Pass the last stop_signal to the thread we're
3264         resuming.
3265         (context_switch): Don't context-switch stop_signal.
3266         (handle_inferior_event, keep_going): Adjust.
3267         (save_inferior_status, restore_inferior_status): Adjust.
3268
3269         * fbsd-nat.c: Include "gdbthread.h".
3270         (find_signalled_thread, find_stop_signal): New.
3271         (fbsd_make_corefile_notes): Use it.
3272         * fork-child.c (startup_inferior): Adjust.
3273
3274         * linux-nat.c (get_pending_status): Adjust.
3275         (linux_nat_do_thread_registers): Adjust.
3276         (find_signalled_thread, find_stop_signal): New.
3277         (linux_nat_do_thread_registers): Add stop_signal parameter.
3278         (struct linux_nat_corefile_thread_data): Add stop_signal member.
3279         (linux_nat_corefile_thread_callback): Pass stop_signal.
3280         (linux_nat_do_registers): Delete.
3281         (linux_nat_make_corefile_notes): Use find_stop_signal.  Assume
3282         there's always a thread.
3283
3284         * procfs.c (find_signalled_thread, find_stop_signal): New.
3285         (find_stop_signal): New.
3286         (procfs_do_thread_registers): Add stop_signal parameter.
3287         (struct procfs_corefile_thread_data): Add stop_signal member.
3288         (procfs_corefile_thread_callback): Pass args->stop_signal.
3289         (procfs_make_note_section): Find the last stop_signal.
3290
3291         * solib-irix.c: Include gdbthread.h.
3292         (irix_solib_create_inferior_hook): Adjust.
3293         * solib-osf.c: Include gdbthread.h.
3294         (osf_solib_create_inferior_hook): Adjust.
3295         * solib-sunos.c: Include gdbthread.h.
3296         (sunos_solib_create_inferior_hook): Adjust.
3297         * solib-svr4.c: Include gdbthread.h.
3298         (svr4_solib_create_inferior_hook): Adjust.
3299
3300         * win32-nat.c (do_initial_win32_stuff): Adjust.
3301
3302 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3303
3304         * gdbthread.h (struct thread_info): Add comments around
3305         proceed_to_finish.
3306         (save_infrun_state, load_infrun_state): Remove proceed_to_finish
3307         argument.
3308         * thread.c (load_infrun_state, save_infrun_state): Delete
3309         proceed_to_finish argument and references to it.
3310
3311         * infcall.c (call_function_by_hand): Adjust.
3312         * infcmd.c (finish_command): Adjust.
3313         * infrun.c (proceed_to_finish): Delete.
3314         (clear_proceed_status): Adjust.
3315         (context_switch): Don't context-switch proceed_to_finish.
3316         (normal_stop, save_inferior_status, restore_inferior_status):
3317         Adjust.
3318
3319 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3320
3321         * inferior.h (stop_bpstat): Delete.
3322
3323         * breakpoint.h (bpstat_do_actions): Remove bpstat* argument.
3324         
3325         * breakpoint.c (bpstat_do_actions): Rename to ...
3326         (bpstat_do_actions_1): ... this.  Make static.  Change return type
3327         to int.  Return true if a breakpoint proceeded.
3328         (bpstat_do_actions): New, as wrapper around bpstat_do_actions_1.
3329         (delete_breakpoint): Don't reference the global stop_bpstat; it's
3330         gone.
3331
3332         * gdbthread.h (struct thread_info): Add stop_bpstat.
3333         (save_infrun_state, load_infrun_state): Remove stop_bpstat
3334         argument.
3335         * thread.c (load_infrun_state, save_infrun_state): Remove
3336         stop_bpstat argument, and the code referencing it.
3337
3338         * infcall.c: Include "gdbthread.h".
3339         (call_function_by_hand): Adjust.
3340         * exceptions.c: Include "gdbthread.h".
3341         (throw_exception): Adjust.
3342         * infcmd.c (stop_bpstat): Delete.
3343         (continue_command): In all-stop, set the ignore count on the
3344         thread that reported the stop.  In non-stop, set it on the current
3345         thread.
3346         (finish_command_continuation): Adjust.
3347         (program_info): Adjust.
3348         * infrun.c (clear_proceed_status): Adjust.
3349         (context_switch): Don't context-switch stop_bpstat.
3350         (handle_inferior_event): Adjust.
3351         (normal_stop): Adjust.
3352         (save_inferior_status, restore_inferior_status): Adjust.
3353
3354         * inf-loop.c (inferior_event_handler): Remove parameter to
3355         bpstat_do_actions call.
3356         * top.c (command_loop): Remove parameter to bpstat_do_actions
3357         call.  Call it unconditionally.
3358         * event-top.c (command_handler): Ditto.
3359         * python/python.c (execute_gdb_command): Ditto.
3360
3361 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3362
3363         * inferior.h (step_over_calls): Delete.
3364
3365         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3366         step_over_calls argument.
3367         * thread.c (save_infrun_state, load_infrun_state): Remove
3368         step_over_calls argument.  Adjust.
3369
3370         * infcmd.c (step_over_calls): Delete.
3371         (step_1): Adjust.
3372         * infrun.c (clear_proceed_status): Adjust.
3373         (context_switch): Don't context-switch step_over_calls.
3374         (handle_inferior_event, save_inferior_status)
3375         (restore_inferior_status): Adjust.
3376
3377 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3378
3379         Remove context switching in favour of accessing thread_info fields
3380         directly.
3381
3382         * infrun.c (stepping_over_breakpoint, step_resume_breakpoint):
3383         Delete.
3384         (struct thread_stepping_state): Delete.
3385         (gtss, tss): Delete.
3386         (follow_inferior_reset_breakpoints, follow_exec)
3387         (resume, clear_proceed_status): Adjust.
3388         (prev_pc): Delete.
3389         (proceed, start_remote, init_wait_for_inferior): Adjust.
3390         (struct execution_control_state): Add event_thread member.
3391         (delete_step_resume_breakpoint_callback)
3392         (delete_step_thread_step_resume_breakpoint)
3393         (delete_step_thread_step_resume_breakpoint_cleanup)
3394         (delete_step_thread_step_resume_breakpoint): New.
3395         (wait_for_inferior, init_execution_control_state): Use
3396         delete_step_thread_step_resume_breakpoint_cleanup.
3397         (wait_for_inferior): Set the event_thread.
3398         (fetch_inferior_event): Ditto.  Delete the step-resume breakpoint
3399         with delete_step_thread_step_resume_breakpoint.
3400         (init_thread_stepping_state): Change parameter type to
3401         thread_info.  Adjust.
3402         (context_switch): Don't context switch prev_pc,
3403         stepping_over_breakpoint, step_resume_breakpoint,
3404         step_range_start, step_range_end, step_frame_id,
3405         tss->stepping_over_breakpoint,
3406         tss->stepping_through_solib_after_catch,
3407         tss->stepping_through_solib_catchpoints, tss->current_line, or
3408         tss->current_symtab.
3409         (adjust_pc_after_break, handle_inferior_event)
3410         (currently_stepping, step_into_function)
3411         (insert_step_resume_breakpoint_at_sal)
3412         (insert_longjmp_resume_breakpoint, keep_going): Adjust.
3413         (clear_stepping_state): New.
3414         (normal_stop): Adjust.
3415         (save_inferior_status, restore_inferior_status): Adjust.
3416
3417         * gdbthread.h (struct thread_info): Comments describing the
3418         members moved here.  Add step_after_step_resume_breakpoint.
3419         (delete_step_resume_breakpoint): Add thread_info argument.
3420         (save_infrun_state, load_infrun_state): Remove prev_pc,
3421         trap_expected, step_resume_breakpoint, step_range_start,
3422         step_range_end, step_frame_id, another_trap,
3423         stepping_through_solib_after_catch,
3424         stepping_through_solib_catchpoints, current_line and
3425         current_symtab function arguments.
3426         (inferior_thread): Declare.
3427
3428         * thread.c (inferior_thread): New.
3429         (delete_step_resume_breakpoint): Add a thread_info parameter and
3430         rewrite.
3431         (load_infrun_state, save_infrun_state): Remove prev_pc,
3432         trap_expected, step_resume_breakpoint, step_range_start,
3433         step_range_end, step_frame_id, stepping_over_breakpoint,
3434         stepping_through_solib_after_catch,
3435         stepping_through_solib_catchpoints, current_line and
3436         current_symtab args.  Remove code referencing them.
3437
3438         * infcmd.c (step_range_start, step_range_end, step_frame_id):
3439         Delete.
3440         (step_1, step_once, until_next_command): Adjust.
3441
3442         * inferior.h (step_range_start, step_range_end, step_frame_id):
3443         Delete.
3444
3445         * linux-nat.c (linux_child_follow_fork): If following the child,
3446         move the step state to it.  Adjust.
3447         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
3448         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
3449
3450 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3451
3452         * bsd-uthread.c (bsd_uthread_find_new_threads): Claim the main
3453         thread.
3454
3455 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3456
3457         * corelow.c (add_to_thread_list): If this is the first time we
3458         hear about thread info, update inferior_ptid.
3459         (core_open): Clear the thread list and set inferior_ptid before
3460         acknowledging a new inferior.  Find threads before fetching
3461         register info.  Give an upper target layer a chance to find and
3462         claim new threads.  Print core generation and stop signal info
3463         after finding new threads.
3464         (get_core_register_section): Look at the lwp member of
3465         inferior_ptid for detecting if we have threads info, instead of
3466         the pid member.
3467         (core_pid_to_str): New.
3468         (init_core_ops): Register core_pid_to_str.
3469
3470 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3471
3472         * spu-linux-nat.c (spu_child_post_startup_inferior)
3473         (spu_child_post_attach): Don't add the main thread here.
3474
3475 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3476
3477         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
3478
3479         * gnu-nat.c (inf_validate_procs): If this is the first time we're
3480         seeing a thread id, extend the main thread's ptid.  If we still
3481         have pending execs, don't be verbose about new threads.
3482         (gnu_wait, gnu_resume, gnu_attach, gnu_thread_alive)
3483         (gnu_pid_to_str, cur_thread, sig_thread_cmd): Adjust.
3484         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers):
3485         Adjust.
3486
3487 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3488
3489         * procfs.c (to_attach): Create a procinfo for the current lwp.
3490         Add it to gdb's thread list.
3491         (procfs_fetch_registers, procfs_store_registers): Assume there's
3492         always an lwp.
3493         (procfs_wait): Don't add the main thread here.
3494         (procfs_init_inferior): Create a procinfo for the main lwp here.
3495         Change main thread's ptid with thread_change_ptid.
3496         (procfs_notice_thread): Check for exited threads.
3497         (procfs_corefile_thread_callback): Remove check for the main
3498         process.
3499         (procfs_make_note_section): Assume there is always a thread.
3500
3501         * sol-thread.c (sol_thread_attach): Clear sol_thread_active before
3502         attaching.  Change the main thread ptid with thread_change_ptid.
3503         (sol_thread_detach): Clear sol_thread_active.
3504         (sol_thread_wait): Check for exited threads.
3505         (sol_thread_create_inferior): Clear sol_thread_active before
3506         creating a new inferior.  Change the main thread ptid with
3507         thread_change_ptid.
3508         (sol_thread_mourn_inferior): Clear sol_thread_active.
3509         (sol_find_new_threads_callback): Check for exited threads.
3510
3511 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3512
3513         * inf-ttrace.c (inf_ttrace_wait): On TTEVT_LWP_CREATE and
3514         LWP_TERMINATE, resume the caller thread.  On TTEVT_LWP_CREATE,
3515         TTEVT_LWP_EXIT and TTEVT_LWP_TERMINATE, don't stop the whole
3516         process, and return TARGET_WAITKIND_IGNORE.
3517
3518 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3519
3520         * inf-ttrace.c: Include <signal.h>
3521         (inf_ttrace_delete_dead_threads_callback): New.
3522         (inf_ttrace_resume_lwp): New.
3523         (inf_ttrace_resume_callback, inf_ttrace_resume): Rewrite.  Don't
3524         delete dying threads until they are really dead.
3525         (inf_ttrace_wait): After stopping the whole process, delete any
3526         dying thread that is really dead by now.
3527         (inf_ttrace_thread_alive): Return 1.
3528         (inf_ttrace_extra_thread_info): New.
3529         (inf_ttrace_target): Register inf_ttrace_extra_thread_info.
3530
3531 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3532
3533         * inf-ttrace.c (inf_ttrace_follow_fork): Register the main thread
3534         of the child fork.
3535         (inf_ttrace_attach): Add the main thread.
3536         (inf_ttrace_resume_callback): Check for exited threads.  Adjust
3537         for always a thread.
3538         (inf_ttrace_wait): Decorate the main thread's ptid with lwp info
3539         using thread_change_ptid, and set its private data.  Don't add the
3540         main thread here.
3541         (inf_ttrace_pid_to_str): Adjust.
3542
3543 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3544
3545         * bsd-uthread.c (bsd_uthread_wait): Decorate the main thread with
3546         thread_change_ptid.  Check for exited threads.
3547         (bsd_uthread_find_new_threads): Check for exited threads.
3548
3549 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3550
3551         * inf-ptrace.c: Include "gdbthread.h".
3552         (inf_ptrace_attach): Add the main thread here.
3553         * linux-nat.c (linux_nat_attach): Don't add the main thread here.
3554         Decorate the main thread id with the lwp id.
3555
3556 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3557
3558         * linux-nat.c (linux_nat_wait): Update inferior_ptid's ptid with
3559         thread_change_ptid.  Don't add or mark the main thread as running
3560         and executing here.
3561         * fork-child.c (fork_inferior): Add the main thread here.
3562
3563 2008-09-08  Jerome Guitton  <guitton@adacore.com>
3564
3565         * rs6000-tdep.c (rs6000_fetch_instruction)
3566         (rs6000_skip_stack_check): New functions.
3567         (skip_prologue): Skip stack check sequence.
3568         
3569 2008-09-08  David Daney  <ddaney@avtrex.com>
3570
3571         * dummy-frame.h (frame.h): Include it.
3572         (struct frame_id): Remove declaration.
3573
3574 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3575
3576         * spu-tdep.c (spu_push_dummy_code): New function.
3577         (spu_gdbarch_init): Install it.
3578
3579 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3580
3581         * gdbarch.sh (gdbarch_dump): Use core_addr_to_string_nz
3582         instead of paddr_nz.
3583         * gdbarch.c: Regenerate.
3584
3585         * target.c (target_xfer_partial, debug_print_register): Use
3586         core_addr_to_string_nz instead of paddr_nz.
3587
3588 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3589
3590         * rs6000-tdep.c (rs6000_gdbarch_init): Setup displaced stepping
3591         *before* calling gdbarch_init_osabi.
3592         (rs6000_aix_init_osabi): Disable displaced stepping.
3593
3594 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3595
3596         * target.c (update_current_target): Do not inherit to_open
3597         or to_close.
3598         (pop_target): Call target_close on target_stack instead
3599         of current_target.
3600         (pop_all_targets_above): Likewise.
3601
3602 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3603
3604         * gnu-v3-abi.c (gnuv3_decode_method_ptr): New function.
3605         (gnuv3_print_method_ptr): Use it.
3606         (gnuv3_method_ptr_to_value): Likewise.
3607
3608 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3609
3610         * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to
3611         register_area callback function.
3612         * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
3613         Use it instead of current_gdbarch.
3614         * nto-procfs.c (procfs_store_registers): Update call.
3615
3616 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3617
3618         * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
3619         regcache architecture instead of current_gdbarch.
3620
3621 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3622
3623         * mep-tdep.c (struct mep_prologue): Add gdbarch member.
3624         (check_for_saved): Use it instead of current_gdbarch.
3625         (is_arg_spill): Add gdbarch paramter.  Use it instead
3626         of current_gdbarch.
3627         (mep_analyze_prologue): Add gdbarch parameter.  Pass it
3628         to is_arg_spill and check_for_saved.
3629         (mep_skip_prologue, mep_analyze_frame_prologue): Update calls.
3630
3631 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3632
3633         * hppa-tdep.c (internalize_unwinds): Use objfile architecture
3634         instead of current_gdbarch.
3635
3636 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3637
3638         * m68k-tdep.h (m68kbsd_fpreg_offset): Add gdbarch parameter.
3639         * m68kbsd-tdep.c (m68kbsd_fpreg_offset): Add gdbarch paramter.
3640         Use it instead of current_gdbarch.
3641         (m68kbsd_supply_fpregset): Update call.
3642         * m68kbsd-nat.c (m68kbsd_supply_fpregset): Likewise.
3643         (m68kbsd_collect_fpregset): Likewise.
3644
3645 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3646
3647         * cris-tdep.c (cris_version, cris_mode): Remove.
3648         (crisv32_single_step_through_delay): Use tdep->cris_mode.
3649         (cris_breakpoint_from_pc): Likewise.
3650         (cris_frame_unwind_cache): Use tdep->cris_version.
3651         (crisv32_scan_prologue): Likewise.
3652         (cris_spec_reg_applicable): Add gdbarch argument.
3653         Use tdep->cris_version.
3654         (cris_register_size, cris_special_register_name): Update calls.
3655         (cris_special_register_name): Add gdbarch argument.
3656         (cris_register_name, crisv32_register_name): Update calls.
3657
3658 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3659
3660         * m68hc11-tdep.c (gdb_print_insn_m68hc11): Use info->arch
3661         instead of current_gdbarch.
3662
3663         * sh64-tdep.c (gdb_print_insn_sh64): Remove.
3664         (sh64_gdbarch_init): Install print_insn_sh64 directly.
3665         * sh-tdep.c (gdb_print_insn_sh): Remove.
3666         (sh_gdbarch_init): Install print_insn_sh directly.
3667
3668         * mips-tdep.c (gdb_print_insn_mips): Do not check mips_abi
3669         from current_gdbarch.
3670         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): New functions.
3671         (mips_gdbarch_init): Install them instead of gdb_print_insn_mips
3672         depending on mips_abi.
3673
3674 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3675
3676         * gdbarch.sh (addr_bits_remove): Change type to 'm'.
3677         (smash_text_address): Likewise.
3678         * gdbarch.c, gdbarch.h: Regenerate.
3679
3680         * arch-utils.c (core_addr_identity): Add gdbarch parameter.
3681         * arch-utils.h (core_addr_identity): Likewise.
3682         * arm-tdep.c (arm_addr_bits_remove): Likewise.
3683         (arm_smash_text_address): Likewise.
3684         * hppa-tdep.c (hppa_smash_text_address): Likewise.
3685         * m88k-tdep.c (m88k_addr_bits_remove): Likewise.
3686         * s390-tdep.c (s390_addr_bits_remove): Likewise.
3687
3688         * mips-tdep.c (mips_addr_bits_remove): Add gdbarch parameter.
3689         Use it instead of current_gdbarch.
3690
3691         * arm-tdep.c (arm_prologue_prev_register, arm_unwind_pc,
3692         arm_dwarf2_prev_register): Update calls.
3693         * m88k-tdep.c (m88k_unwind_pc): Update call.
3694
3695 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3696
3697         * dwarf2expr.h (dwarf2_read_address): Add gdbarch argument.
3698         * dwarf2expr.c (dwarf2_read_address): Add gdbarch argument.
3699         Call gdbarch_integer_to_address directly instead of converting
3700         to value and back.  Update comment.
3701         (execute_stack_op): Update call site.
3702         * dwarf2loc.c (find_location_expression): Likewise.
3703         (locexpr_describe_location): Update
3704
3705         * dwarf2expr.h (struct dwarf_expr_context): Add gdbarch member.
3706         * dwarf2-frame.c (execute_stack_op): Initialize ctx->gdbarch.
3707         * dwarf2loc. (dwarf2_evaluate_loc_desc): Likewise.
3708         (dwarf2_loc_desc_needs_frame): Likewise.
3709
3710 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3711
3712         * breakpoint.h (struct bp_location): Change type of section
3713         member to "struct obj_section *".
3714         * tracepoint.h (struct tracepoint): Likewise.
3715         * symtab.h (struct general_symbol_info): Replace bfd_section
3716         member with obj_section.
3717         (struct symtab_and_line): Change type of section member to
3718         "struct obj_section *".
3719         (SYMBOL_BFD_SECTION): Remove macro, replace by ...
3720         (SYMBOL_OBJ_SECTION): ... this.
3721
3722         * minsym.c (prim_record_minimal_symbol_and_info): Record symbol
3723         section as obj_section instead of bfd_section.
3724
3725         * ada-lang.c (ada_decode_symbol): Use gsymbol->obj_section
3726         directly instead of looking of obj_section from bfd_section.
3727
3728         * objfiles.h (find_pc_sect_section): Remove.
3729         * objfiles.c (find_pc_sect_section): Remove.
3730         (find_pc_section): Inline find_pc_sect_section code.
3731
3732         * symfile.h (find_pc_overlay): Return struct obj_section *.
3733         (find_pc_mapped_section): Likewise.
3734         (section_is_overlay, section_is_mapped): Change type of section
3735         argument to struct obj_section *.
3736         (pc_in_mapped_range, pc_in_unmapped_range): Likewise.
3737         (overlay_mapped_address, overlay_unmapped_address): Likewise.
3738         (symbol_overlayed_address): Likewise.
3739         * symtab.h (symbol_overlayed_address): Likewise.
3740         * symfile.c (overlay_is_mapped): Remove.
3741         (section_is_mapped): Inline overlay_is_mapped code.  Update.
3742         (overlay_invalidate_all): Update.
3743         (section_is_overlay): Change section argument to type
3744         "struct obj_section *".  Use bfd_ methods.
3745         (pc_in_unmapped_range): Likewise.  Handle relocated sections.
3746         (pc_in_mapped_range): Likewise.  Handle relocated sections.
3747         (sections_overlap): Likewise.
3748         (overlay_unmapped_address): Likewise.
3749         (overlay_mapped_address): Likewise.
3750         (symbol_overlayed_address): Likewise.
3751         (find_pc_overlay): Return struct obj_section *.
3752         (find_pc_mapped_section): Likewise.
3753         (list_overlays_command): Update.
3754         (map_overlay_command, unmap_overlay_command): Update.
3755         (simple_overlay_update): Update.
3756
3757         * block.h (blockvector_for_pc_sect): Change section argument
3758         to type "struct obj_section *".
3759         (block_for_pc_sect): Likewise.
3760         * block.c (blockvector_for_pc_sect): Change section argument
3761         to type "struct obj_section *".
3762         (block_for_pc_sect): Likewise.
3763         * symtab.h (find_pc_sect_function, find_pc_sect_psymtab,
3764         find_pc_sect_symtab, find_pc_sect_psymbol, find_pc_sect_line,
3765         lookup_minimal_symbol_by_pc_section, find_function_start_pc): Likewise.
3766         (matching_bfd_sections): Rename to ...
3767         (matching_obj_sections): ... this.  Update argument types.
3768         * blockframe.c (find_pc_sect_function): Likewise.
3769         * breakpoint.c (describe_other_breakpoints): Likewise.
3770         (breakpoint_has_pc, check_duplicates_for): Likewise.
3771         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3772         (lookup_minimal_symbol_by_pc_section): Likewise.
3773         * symtab.c (find_pc_sect_psymtab_closer): Likewise.
3774         (find_pc_sect_psymtab, find_pc_sect_psymbol, find_pc_sect_symtab,
3775         find_pc_sect_line, find_function_start_pc): Likewise.
3776         (matching_bfd_sections): Rename to ...
3777         (matching_obj_sections): ... this.  Update argument types.
3778
3779         * blockframe.c (find_pc_partial_function): Update to section
3780         type changes.  No longer call find_pc_sect_section.
3781         (cache_pc_function_section): Change to type "struct obj_section *".
3782         * breakpoint.c (resolve_sal_pc): Update to section type changes.
3783         * exec.c (xfer_memory): Likewise.
3784         * findvar.c (read_var_value): Likewise.
3785         * infcmd.c (jump_command): Likewise.
3786         * linespec.c (minsym_found): Likewise.
3787         * maint.c (maintenance_translate_address): Likewise.
3788         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3789         (lookup_solib_trampoline_symbol_by_pc): Likewise.
3790         * parse.c (write_exp_msymbol): Likewise.
3791         * printcmd.c (build_address_symbolic): Likewise.
3792         (address_info, sym_info): Likewise.
3793         * symmisc.c (dump_msymbols, print_symbol): Likewise.
3794         * symtab.c (fixup_section): Likewise.
3795         (fixup_symbol_section, fixup_psymbol_section): Likewise.
3796         (find_pc_line, find_function_start_sal): Likewise.
3797         * target.c (memory_xfer_partial): Likewise.
3798         * hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline): Likewise.
3799         * spu-tdep.c (spu_overlay_update): Likewise.
3800
3801 2008-09-04  Doug Evans  <dje@google.com>
3802
3803         * defs.h (plongest,pulongest): Renamed from paddr_u,paddr_d.
3804         Change argument of pulongest from CORE_ADDR to ULONGEST.
3805         All callers updated.
3806         * utils.c (plongest): Renamed from paddr_d.
3807         (pulongest): Renamed from paddr_u, change arg type to ULONGEST.
3808         * remote-mips.c (send_srec): Use paddr_nz instead of paddr_u in
3809         `CORE_ADDR addr' arg of error message.
3810
3811 2008-09-03  Angela Marie Thomas <angela@releasedominatrix.com>
3812
3813         * ser-tcp.c (ser_tcp_send_break): New function.
3814         (_initialize_ser_tcp): Use ser_tcp_send_break.
3815         * ser-tcp.h (ser_tcp_send_break): New prototype.
3816
3817 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3818
3819         * spu-tdep.c (spu_push_dummy_call): Update all stack pointer slots
3820         when allocating stack frame for inferior call.
3821
3822 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3823
3824         * spu-tdep.c (spu_frame_unwind_cache): Do not attempt to unwind
3825         SP or return address if we failed to find a valid frame.
3826
3827 2008-09-03  Aleksandar Ristovski  <aristovski@qnx.com>
3828
3829         * breakpoint.c (breakpoint_init_inferior): Mark as not inserted only
3830         non-permanent breakpoints.
3831         (bpstat_stop_status): Change enable_state to bp_disabled only for
3832         non-permanent breakpoints.
3833         (bp_loc_is_permanent): New function.
3834         (create_breakpoint): Check if the location points to a permanent
3835         breakpoint and if it does, make breakpoint permanent.
3836         (update_breakpoint_locations): Make sure new locations of permanent
3837         breakpoints are properly initialized.
3838         * i386-tdep.c (i386_skip_permanent_breakpoint): New function.
3839         (i386_gdbarch_init): Set gdbarch_skip_permanent_breakpoint.
3840
3841 2008-09-02  Pedro Alves  <pedro@codesourcery.com>
3842
3843         * breakpoint.c (insert_breakpoints, update_global_location_list):
3844         Check breakpoints_always_inserted_mode instead of
3845         always_inserted_mode directly.
3846
3847 2008-09-02  Andreas Schwab  <schwab@suse.de>
3848
3849         * ia64-tdep.c (ia64_get_dyn_info_list): Use obj_section_addr.
3850
3851 2008-09-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
3852
3853         Stay compatible after the GCC PR fortran/29635 fix.
3854         * dwarf2read.c (process_die <DW_TAG_imported_module>)
3855         (process_die <DW_TAG_imported_module>): Do not assert anything about
3856         these unsupported tags.
3857
3858 2008-08-29  Tom Tromey  <tromey@redhat.com>
3859
3860         * maint.c (_initialize_maint_cmds): Fix typo.
3861
3862 2008-08-29  Tom Tromey  <tromey@redhat.com>
3863
3864         * dwarf2read.c (dwarf2_build_psymtabs_hard): Copy dirname on
3865         obstack.
3866
3867 2008-08-27  Ulrich Weigand  <uweigand@de.ibm.com>
3868
3869         * remote.c: Include "gdb_stat.h".
3870
3871 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3872
3873         * dummy-frame.h (dummy_frame_pop): Add prototype.
3874         * dummy-frame.c: Include "observer.h".
3875         (dummy_frame_push): Do not check for stale frames.
3876         (dummy_frame_pop): New function.
3877         (cleanup_dummy_frames): New function.
3878         (_initialize_dummy_frame): Install it as inferior_created observer.
3879
3880         * frame.h (struct frame_id): Update comments.
3881         (frame_id_inner): Remove prototype.
3882         * frame.c (frame_id_inner): Make static.  Add comments.
3883         (frame_find_by_id): Update frame_id_inner safety net check to avoid
3884         false positives for targets using non-contiguous stack ranges.
3885         (get_prev_frame_1): Update frame_id_inner safety net check.
3886         (frame_pop): Call dummy_frame_pop when popping a dummy frame.
3887
3888         * stack.c (return_command): Directly pop the selected frame.
3889         * infrun.c (handle_inferior_event): Remove dead code.
3890         * i386-tdep.c (i386_push_dummy_call): Update comment.
3891
3892 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3893
3894         * breakpoint.c (remove_breakpoint): Do not fail if unable to remove
3895         breakpoint from shared library.
3896
3897 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3898
3899         * solib-svr4.c (read_program_header): New function.
3900         (scan_dyntag_auxv): New function.
3901         (elf_locate_base): Use it if scan_dyntag fails.
3902         (find_program_interpreter): New function.
3903         (enable_break): Use it instead of .interp section.
3904
3905 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3906
3907         * remote.h (remote_filename_p, remote_bfd_open): Add prototypes.
3908         * remote.c (remote_bfd_iovec_open, remote_bfd_iovec_close,
3909         remote_bfd_iovec_pread, remote_bfd_iovec_stat, remote_filename_p,
3910         remote_bfd_open): New functions.
3911         (remote_hostio_send_command): Fail safely if remote connection
3912         is not set up.
3913
3914         * solist.h (solib_open): Remove prototype.
3915         (solib_bfd_open): Add prototype.
3916         * solib.c: Include "remote.h".
3917         (solib_open): Remove, replace by ...
3918         (solib_bfd_open): ... this new function.  Handle remote BFDs.
3919         (solib_map_sections): Replace solib_open by solib_bfd_open.
3920         * solib-frv.c: Include "exceptions.h".
3921         (enable_break2): Replace solib_open by solib_bfd_open.
3922         * solib-svr4.c: Include "exceptions.h".
3923         (enable_break): Replace solib_open by solib_bfd_open.
3924
3925         * symfile.c: Include "remote.h".
3926         (build_id_verify): Handle remote BFDs.
3927         (separate_debug_file_exists): Use BFD to access file.  Handle
3928         remote BFDs.
3929         (symfile_bfd_open): Handle remote BFDs.
3930         (reread_symbols): Handle remote BFDs.
3931
3932         * NEWS: Mention "remote:" argument prefix to "set sysroot".
3933
3934 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3935
3936         * gdbarch.sh (target_gdbarch): New global variable.
3937         (deprecated_current_gdbarch_select_hack): Set it.
3938         * gdbarch.c, gdbarch.h: Regenerate.
3939
3940         * arch-utils.c (gdbarch_update_p): Use target_gdbarch instead
3941         of current_gdbarch.
3942         * target-descriptions.c (target_find_description): Likewise.
3943         * arm-tdep.c (arm_update_current_architecture): Likewise.
3944         (show_fp_model, arm_show_abi, arm_show_fallback_mode, 
3945         arm_show_force_mode): Likewise.
3946         * mips-tdep.c (show_mask_address, show_mipsfpu_command,
3947         show_mips_abi): Likewise.
3948         * mep-tdep.c (me_module_register_set, current_me_module): Likewise.
3949
3950         * target.c (target_translate_tls_address): Use target_gdbarch
3951         instead of current_gdbarch.
3952         * remote.c (struct packet_reg): Likewise.
3953         (get_remote_arch_state, packet_reg_from_regnum,
3954         packet_reg_from_pnum, remote_check_symbols, remote_wait,
3955         remote_address_masked, remote_insert_breakpoint,
3956         remote_insert_hw_breakpoint, remote_read_description): Likewise.
3957         * remote-m32r-sdi.c (m32r_resume, m32r_wait): Likewise.
3958         * remote-mips.c (mips_open, mips_common_breakpoint): Likewise.
3959         * cris-tdep.c (cris_can_use_hardware_watchpoint): Likewise.
3960
3961         * solib.c (solib_open, solib_map_sections, solib_read_symbols,
3962         solib_add, info_sharedlibrary_command, solib_address, 
3963         solib_create_inferior_hook, in_solib_dynsym_resolve_code,
3964         solib_global_lookup): Likewise.
3965         * solib-frv.c (enable_break2, frv_relocate_main_executable): Likewise.
3966         * solib-irix.c (irix_current_sos, irix_open_symbol_file_object):
3967         Likewise.
3968         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
3969         * solib-svr4.c (exec_entry_point, enable_break, svr4_free_so,
3970         set_solib_svr4_fetch_link_map_offsets, svr4_fetch_link_map_offsets):
3971         Likewise.
3972         * nto-tdep.c (nto_find_and_open_solib, nto_init_solib_absolute_prefix,
3973         nto_truncate_ptr): Likewise.
3974         * mips-linux-tdep.c (mips_linux_in_dynsym_stub): Likewise.
3975
3976 2008-08-26  Luis Machado  <luisgpm@br.ibm.com>
3977
3978         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections) New structure.
3979         (ppc_linux_vmx_regset_sections): New structure.
3980         (ppc_linux_fp_regset_sections): New structure.
3981         (ppc_linux_init_abi): Select core-file regset  based on target
3982         features.
3983
3984 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3985
3986         * target.c (debug_print_register): Use regcache_raw_collect
3987         instead of regcache_cooked_read.  Only handle raw registers.
3988
3989 2008-08-25  Pedro Alves  <pedro@codesourcery.com>
3990
3991         * cp-name-parser.y: Include config.h before system headers.
3992
3993 2008-08-25  Ulrich Weigand  <uweigand@de.ibm.com>
3994
3995         * m88k-tdep.c: Update for unwinder changes.
3996
3997 2008-08-24  Tom Tromey  <tromey@redhat.com>
3998
3999         * s390-tdep.c (s390_address_class_type_flags): Use
4000         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1.
4001         (s390_address_class_type_flags_to_name): Likewise.
4002         (s390_address_class_name_to_type_flags): Likewise.
4003
4004 2008-08-24  Tom Tromey  <tromey@redhat.com>
4005
4006         * rs6000-tdep.c (rs6000_builtin_type_vec128): Don't use
4007         TYPE_FLAGS.
4008         * features/rs6000/powerpc-vsx32l.c
4009         (initialize_tdesc_powerpc_vsx32l): Update.
4010         * features/rs6000/powerpc-vsx32.c
4011         (initialize_tdesc_powerpc_vsx32): Update.
4012         * features/rs6000/powerpc-vsx64.c
4013         (initialize_tdesc_powerpc_vsx64): Update.
4014         * features/rs6000/powerpc-vsx64l.c
4015         (initialize_tdesc_powerpc_vsx64l): Update.
4016         * target-descriptions.c (maint_print_c_tdesc_cmd): Emit
4017         TYPE_VECTOR, not TYPE_FLAGS.
4018
4019 2008-08-24  Tom Tromey  <tromey@redhat.com>
4020
4021         * xml-tdesc.c (tdesc_end_union): Update.
4022         * stabsread.c (define_symbol): Update.
4023         (read_type): Update.
4024         (read_struct_type): Update.
4025         (read_enum_type): Update.
4026         * spu-tdep.c (spu_builtin_type_vec128): Update.
4027         * sh-tdep.c (sh_push_dummy_call_fpu): Update.
4028         (sh_push_dummy_call_nofpu): Update.
4029         * mdebugread.c (parse_symbol): Update.
4030         (parse_symbol): Update.
4031         (parse_symbol): Update.
4032         (upgrade_type): Update.
4033         * jv-lang.c (java_lookup_class): Update.
4034         * iq2000-tdep.c (iq2000_pointer_to_address): Update.
4035         * i386-tdep.c (i386_mmx_type): Update.
4036         (i386_sse_type): Update.
4037         * gdbtypes.h (enum type_flag_value): New enum.
4038         (enum type_instance_flag_value): New enum.
4039         (TYPE_FLAG_UNSIGNED, TYPE_FLAG_NOSIGN, TYPE_FLAG_STUB,
4040         TYPE_FLAG_TARGET_STUB, TYPE_FLAG_STATIC, TYPE_FLAG_PROTOTYPED,
4041         TYPE_FLAG_INCOMPLETE, TYPE_FLAG_VARARGS, TYPE_FLAG_VECTOR,
4042         TYPE_FLAG_FIXED_INSTANCE, TYPE_FLAG_STUB_SUPPORTED,
4043         TYPE_FLAG_NOTTEXT): Now enum constants.
4044         (TYPE_FLAG_CONST, TYPE_FLAG_VOLATILE, TYPE_FLAG_CODE_SPACE,
4045         TYPE_FLAG_DATA_SPACE, TYPE_FLAG_ADDRESS_CLASS_1,
4046         TYPE_FLAG_ADDRESS_CLASS_2): Remove.
4047         (TYPE_INSTANCE_FLAG_CONST, TYPE_INSTANCE_FLAG_VOLATILE,
4048         TYPE_INSTANCE_FLAG_CODE_SPACE, TYPE_INSTANCE_FLAG_DATA_SPACE,
4049         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1,
4050         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2): New constants.
4051         (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB, TYPE_TARGET_STUB,
4052         TYPE_STATIC, TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_VARARGS,
4053         TYPE_VECTOR, TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED,
4054         TYPE_NOTTEXT): Update.
4055         (TYPE_FLAG_ADDRESS_CLASS_ALL): Remove.
4056         (TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL): New define.
4057         (TYPE_VOLATILE, TYPE_CODE_SPACE, TYPE_DATA_SPACE,
4058         TYPE_ADDRESS_CLASS_1, TYPE_ADDRESS_CLASS_2,
4059         TYPE_ADDRESS_CLASS_ALL): Update.
4060         (struct main_type) <flags>: Remove.
4061         <flag_unsigned, flag_nosign, flag_stub, flag_target_stub,
4062         flag_static, flag_prototyped, flag_incomplete, flag_varargs,
4063         flag_vector, flag_stub_supported, flag_nottext,
4064         flag_fixed_instance>: New fields.
4065         <nfields, vptr_fieldno>: Move earlier.
4066         (TYPE_FLAGS): Remove.
4067         * gdbtypes.c (make_pointer_type): Update.
4068         (address_space_name_to_int): Update.
4069         (address_space_int_to_name): Update.
4070         (make_type_with_address_space): Update.
4071         (make_cv_type): Update.
4072         (create_range_type): Update.
4073         (get_discrete_bounds): Update.
4074         (create_set_type): Update.
4075         (make_vector_type): Update.
4076         (smash_to_method_type): Update.
4077         (check_typedef): Update.
4078         (check_stub_method): Update.
4079         (init_type): Individually assign flag fields.
4080         (recursive_dump_type): Don't print entire TYPE_FLAGS field.  Do
4081         print TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED, and TYPE_NOTTEXT.
4082         (copy_type_recursive): Copy the entire main type.  Don't use
4083         TYPE_FLAGS.
4084         * features/rs6000/powerpc-altivec64l.c
4085         (initialize_tdesc_powerpc_altivec64l): Update.
4086         * features/rs6000/powerpc-altivec64.c
4087         (initialize_tdesc_powerpc_altivec64): Update.
4088         * features/rs6000/powerpc-altivec32l.c
4089         (initialize_tdesc_powerpc_altivec32l): Update.
4090         * features/rs6000/powerpc-altivec32.c
4091         (initialize_tdesc_powerpc_altivec32): Update.
4092         * features/rs6000/powerpc-7400.c (initialize_tdesc_powerpc_7400):
4093         Update.
4094         * features/arm-with-iwmmxt.c (initialize_tdesc_arm_with_iwmmxt):
4095         Update.
4096         * dwarf2read.c (read_structure_type): Update.
4097         (read_enumeration_type): Likewise.
4098         (process_enumeration_scope): Likewise.
4099         (read_tag_pointer_type): Likewise.
4100         (read_subroutine_type): Likewise.
4101         (read_subroutine_type): Likewise.
4102         (read_base_type): Likewise.
4103         * coffread.c (coff_read_enum_type): Update.
4104         * ada-valprint.c (adjust_type_signedness): Update.
4105         * ada-typeprint.c (print_record_field_types): Update.
4106         * ada-lang.c (packed_array_type): Update.
4107         (empty_record): Don't reset TYPE_FLAGS.
4108         (ada_template_to_fixed_record_type_1): Update.
4109         (ada_template_to_fixed_record_type_1): Likewise.
4110         (template_to_static_fixed_type): Likewise.
4111         (to_record_with_fixed_variant_part): Likewise.
4112         (to_fixed_record_type): Likewise.
4113         (to_fixed_array_type): Likewise.
4114         (to_static_fixed_type): Likewise.
4115
4116 2008-08-23  Jim Blandy  <jimb@redhat.com>
4117
4118         PR macros/607:
4119         * symmisc.c (print_symbol_bcache_statistics): Include statistics
4120         for the macro bcache.
4121
4122 2008-08-23  Tom Tromey  <tromey@redhat.com>
4123
4124         * macrotab.h (struct macro_definition) <kind>: Shrink to one bit.
4125         (argc): Now 31 bits.
4126
4127 2008-08-22  Tom Tromey  <tromey@redhat.com>
4128
4129         * NEWS: Move macro entries back under "New commands".
4130
4131 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4132
4133         * breakpoint.c (create_overlay_event_breakpoint): Rename to ...
4134         (create_overlay_event_breakpoint_1): ... this.  Add OBJFILE parameter.
4135         (create_overlay_event_breakpoint): Loop over all objfiles to install
4136         multiple instances of the overlay event breakpoint if present.
4137
4138 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4139
4140         * spu-tdep.c (spu_overlay_new_objfile): Only consider SPU objfiles.
4141         (info_spu_event_command): Command only supported on SPU architecture.
4142         (info_spu_signal_command): Likewise.
4143         (info_spu_mailbox_command): Likewise.
4144         (info_spu_dma_command): Likewise.
4145         (info_spu_proxydma_command): Likewise.
4146
4147 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4148
4149         * infrun.c (adjust_pc_after_break): Do not call get_thread_regcache
4150         if the thread has already exited.
4151
4152 2008-08-22  Pedro Alves  <pedro@codesourcery.com>
4153
4154         * infrun.c (proceed): Move back setting previous_inferior_ptid
4155         from here ...
4156         (wait_for_inferior): ... to here.
4157         (fetch_inferior_event): ... and here.
4158
4159 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4160
4161         * gdbarch.sh: Include "regcache.h" into gdbarch.c.
4162         (deprecated_current_gdbarch_select_hack): Call registers_changed
4163         instead of reinit_frame_cache.
4164         * gdbarch.c: Regenerate.
4165
4166 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4167
4168         * elfread.c (elf_symtab_read): Do not relocate thread-local symbols.
4169
4170 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4171
4172         * xcoffread.c (SYMNAME_ALLOC): Correct syntax.
4173
4174 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4175
4176         * findvar.c (locate_var_value): Do not call get_frame_arch
4177         with a NULL frame argument.
4178
4179 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4180
4181         * frame.h (frame_map_regnum_to_name): Remove prototype.
4182         (frame_map_name_to_regnum): Remove prototype.
4183         * frame.c (frame_map_regnum_to_name): Remove.
4184         (frame_map_name_to_regnum): Remove.
4185         (frame_unwind_register_value): Use user_reg_map_regnum_to_name
4186         instead of frame_map_regnum_to_name.
4187         * ax-gdb.c: Include "user-regs.h".
4188         (gen_expr): Use user_reg_map_name_to_regnum instead of
4189         frame_map_name_to_regnum.
4190         * eval.c:  Include "user-regs.h".
4191         (evaluate_subexp_standard): Use user_reg_map_name_to_regnum
4192         instead of frame_map_name_to_regnum.
4193         * infcmd.c (registers_info): Likewise.
4194         * parse.c: Include "user-regs.h".
4195         (write_dollar_variable): Use user_reg_map_name_to_regnum
4196         instead of frame_map_name_to_regnum.
4197         * tracepoint.c: Include "user-regs.h".
4198         (encode_actions): Use user_reg_map_name_to_regnum
4199         instead of frame_map_name_to_regnum.
4200         * valops.c: Include "user-regs.h".
4201         (value_fetch_lazy): Use user_reg_map_regnum_to_name instead
4202         of frame_map_regnum_to_name.
4203
4204 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4205
4206         * ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read
4207         and manually relocate .opd contents from BFD instead of reading
4208         them from target memory.
4209
4210 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4211
4212         * dwarf2read.c (processing_current_prefix): Delete static
4213         variable.
4214         (process_full_comp_unit): Do not set processing_current_prefix.
4215         (dwarf2_full_name): New function.
4216         (read_func_scope): Do not set processing_current_prefix.  Use
4217         determine_prefix.
4218         (read_structure_type): Do not set processing_current_prefix.  Remove
4219         unused inner cleanup.
4220         (process_structure_scope): Do not set processing_current_prefix.
4221         (read_enumeration_type): Use dwarf2_full_name.
4222         (determine_class_name): Return a const char *.  Put the result
4223         on the objfile obstack.  Use dwarf2_full_name.
4224         (read_namespace_type): New function.
4225         (read_namespace): Do not create the type here.  Use
4226         determine_prefix.
4227         (read_typedef): Use dwarf2_full_name.  Do not pass the name
4228         to init_type.
4229         (read_base_type): Do not pass the name to init_type.  Handle
4230         TYPE_FLAG_NOSIGN.
4231         (read_unspecified_type): Do not pass the name to init_type.
4232         (new_symbol): Use dwarf2_full_name instead of
4233         processing_current_prefix.
4234         (read_type_die): Do not set processing_current_prefix.  Handle
4235         DW_TAG_namespace.
4236         (determine_prefix): Handle specifications.  Return the result
4237         on the objfile obstack.  Handle unions correctly.
4238
4239 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4240
4241         * buildsym.c (add_symbol_to_list): Do not call
4242         cp_scan_for_anonymous_namespaces here.
4243         (finish_block): Do not call cp_set_block_scope here.
4244         * cp-namespace.c (processing_has_namespace_info)
4245         (processing_current_prefix): Delete.
4246         (cp_initialize_namespace): Do not initialize
4247         processing_has_namespace_info.
4248         (cp_scan_for_anonymous_namespaces): Use SYMBOL_DEMANGLED_NAME.  Do
4249         not check processing_has_namespace_info.
4250         (cp_set_block_scope): Take prefix and namespace info flag as
4251         arguments.  Honor namespaces regardless of a demangled name.
4252         * cp-support.h (processing_has_namespace_info)
4253         (processing_current_prefix): Delete declarations.
4254         (cp_set_block_scope): Update prototype.
4255         * dwarf2read.c (processing_has_namespace_info)
4256         (processing_current_prefix): New static variables.
4257         (read_file_scope): Initialize processing_has_namespace_info.
4258         (read_func_scope): Call cp_set_block_scope for C++.
4259         (new_symbol): Call cp_scan_for_anonymous_namespaces for C++.
4260         * symtab.c (symbol_demangled_name): Accept a const argument.
4261         * symtab.h (symbol_demangled_name): Update prototype.
4262
4263 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4264
4265         * ax-gdb.c (gen_var_ref): Use SYMBOL_LINKAGE_NAME.
4266         * blockframe.c (find_pc_partial_function): Likewise.
4267         * buildsym.c (find_symbol_in_list): Likewise.
4268         * c-valprint.c (c_val_print): Likewise.
4269         * coffread.c (patch_opaque_types, process_coff_symbol): Likewise.
4270         (coff_read_enum_type): Likewise.  Use SYMBOL_SET_LINKAGE_NAME.
4271         * cp-support.c (cp_remove_params): Renamed from remove_params and
4272         made global.
4273         (overload_list_add_symbol): Update call to remove_params.
4274         * cp-support.h (cp_remove_params): Declare.
4275         * dwarf2read.c (process_enumeration_scope): Use SYMBOL_LINKAGE_NAME.
4276         (dwarf2_const_value): Use SYMBOL_PRINT_NAME.
4277         * expprint.c (dump_subexp_body_standard): Likewise.
4278         * f-valprint.c (info_common_command, there_is_a_visible_common_named):
4279         Use SYMBOL_LINKAGE_NAME to find symbols and SYMBOL_PRINT_NAME
4280         for messages.
4281         * findvar.c (read_var_value): Use SYMBOL_LINKAGE_NAME.
4282         * gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise.
4283         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
4284         (hppa_hpux_skip_trampoline_code): Use SYMBOL_LINKAGE_NAME to find
4285         symbols and SYMBOL_PRINT_NAME for messages.
4286         * jv-lang.c (add_class_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4287         * linespec.c (decode_line_2): Use SYMBOL_LINKAGE_NAME.
4288         * mdebugread.c (parse_symbol): Use SYMBOL_LINKAGE_NAME and
4289         SYMBOL_SET_LINKAGE_NAME.
4290         (mylookup_symbol): Use SYMBOL_LINKAGE_NAME.
4291         * minsyms.c (add_minsym_to_demangled_hash_table): Use
4292         SYMBOL_SEARCH_NAME.
4293         (lookup_minimal_symbol): Use SYMBOL_LINKAGE_NAME or
4294         SYMBOL_MATCHES_SEARCH_NAME, depending on the pass.
4295         * objfiles.h (ALL_OBJFILE_MSYMBOLS): Use SYMBOL_LINKAGE_NAME.
4296         * printcmd.c (build_address_symbolic): Use SYMBOL_LINKAGE_NAME.
4297         (address_info): Use SYMBOL_PRINT_NAME for messages and
4298         SYMBOL_LINKAGE_NAME for lookups.
4299         * sol-thread.c (info_cb): Use SYMBOL_PRINT_NAME for messages.
4300         * stabsread.c (patch_block_stabs, define_symbol)
4301         (read_type, read_enum_type, common_block_end)
4302         (cleanup_undefined_types_1, scan_file_globals): Use
4303         SYMBOL_LINKAGE_NAME, SYMBOL_SET_LINKAGE_NAME, ALL_OBJFILE_MSYMBOLS,
4304         and SYMBOL_PRINT_NAME.
4305         * stack.c (print_frame_args): Use SYMBOL_LINKAGE_NAME.
4306         (print_frame, frame_info): Use SYMBOL_PRINT_NAME for output.  Use
4307         cp_remove_params instead of cplus_demangle.
4308         (print_block_frame_labels, print_frame_arg_vars): Use
4309         SYMBOL_LINKAGE_NAME.
4310         * symmisc.c (dump_msymbols): Use ALL_OBJFILE_MSYMBOLS and
4311         SYMBOL_LINKAGE_NAME.
4312         (dump_symtab_1, print_symbol, print_partial_symbols)
4313         (maintenance_check_symtabs): Use SYMBOL_LINKAGE_NAME.
4314         * symtab.h (DEPRECATED_SYMBOL_NAME): Delete.
4315         (SYMBOL_SET_LINKAGE_NAME): New.
4316         (SYMBOL_SET_NAMES): Add a comment.
4317         * tracepoint.c (set_traceframe_context, validate_actionline)
4318         (collect_symbol, scope_info): Use SYMBOL_LINKAGE_NAME for
4319         lookups and SYMBOL_PRINT_NAME for output.
4320         * typeprint.c (typedef_print): Use SYMBOL_LINKAGE_NAME.
4321         * xcoffread.c (process_xcoff_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4322
4323 2008-08-21  Pedro Alves  <pedro@codesourcery.com>
4324
4325         * arm-tdep.c (arm_pc_is_thumb): Use obj_section_addr.
4326         * hppa-hpux-tdep.c (hppa_hpux_find_dummy_bpaddr): Likewise.
4327         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Use
4328         obj_section_addr and obj_section_endaddr.
4329         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Likewise.
4330         * hppabsd-tdep.c (hppabsd_find_global_pointer): Likewise.
4331         * ia64-tdep.c (ia64_find_global_pointer): Likewise.
4332         (find_extant_func_descr): Likewise.
4333         * solib-frv.c (frv_relocate_main_executable): Use
4334         obj_section_addr.
4335         * xstormy16-tdep.c (xstormy16_find_jmp_table_entry): Use
4336         obj_section_addr and obj_section_endaddr.
4337
4338 2008-08-21  Paul N. Hilfinger  <hilfinger@adacore.com>
4339
4340         * NEWS: Amplify last entry on boolean types in Ada.
4341
4342 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4343
4344         * dwarf2read.c (die_specification, dwarf2_extension, follow_die_ref):
4345         Make the dwarf2_cu * parameter output as well as input.  Update it if
4346         we follow a reference to another CU.
4347         (read_func_scope, determine_class_name, namespace_name, dwarf2_attr)
4348         (die_type, die_containing_type): Update calls to changed functions.
4349         Use the returned CU along with the returned DIE.
4350         (read_namespace): Use dwarf2_attr instead of dwarf2_extension.
4351
4352 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4353
4354         * dwarf2read.c (queue_comp_unit): Take an objfile argument.  Read
4355         in the DIEs here.
4356         (process_queue): Do not read in the DIEs here.
4357         (psymtab_to_symtab_1): Update call to queue_comp_unit.
4358         (read_full_die): Do not call queue_comp_unit from here.
4359         (maybe_queue_comp_unit): New function.
4360         (follow_die_ref): Use it.
4361
4362 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4363
4364         * dwarf2read.c (struct attribute): Move earlier.
4365         (struct die_info): Change attrs to a trailing array.
4366         (dwarf_alloc_die): Take the number of attributes.  Allocate space
4367         for them.
4368         (read_full_die): Update call to dwarf_alloc_die.  Do not manually
4369         allocate attributes.
4370
4371 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4372
4373         * dwarf2read.c (REF_HASH_SIZE): Delete.
4374         (struct dwarf2_cu): Replace die_ref_table with die_hash.
4375         (struct die_info): Remove next_ref.
4376         (store_in_ref_table): Remove offset argument.  Rewrite to use
4377         htab_find_slot_with_hash.
4378         (die_hash, die_eq): New.
4379         (read_comp_unit): Allocate the die_hash.
4380         (read_die_and_children): Update call to store_die_ref.
4381         (follow_die_ref): Rewrite to use htab_find_with_hash.
4382
4383 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4384
4385         * dwarf2read.c (free_die_list, copy_die): Delete.
4386         (dwarf_alloc_die): Take a CU argument.  Allocate the new DIE
4387         on the obstack.
4388         (read_full_die): Update call to dwarf_alloc_die.  Allocate
4389         attributes on the CU obstack.
4390         (free_one_comp_unit): Do not call free_die_list.
4391
4392 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4393
4394         * dwarf2read.c (read_die_and_children): Ignore NULL DIEs.
4395         (read_die_and_siblings): Likewise.  Do not add padding DIEs to the
4396         sibling list.
4397         (read_full_die): Do not allocate DIEs for abbrev 0.
4398         (follow_die_ref): Correct error message.
4399
4400 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4401
4402         * linespec.c (symtab_from_filename): Also throw NOT_FOUND_ERROR if
4403         there are no symbols loaded, instead of throwing a generic error.
4404         (decode_variable): Likewise.
4405
4406 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4407
4408         * objfiles.h (struct obj_section): Remove addr and endaddr fields.
4409         (obj_section_offset, obj_section_addr, obj_section_endaddr): New
4410         macros.
4411         * objfiles.c (add_to_objfile_sections): Don't set addr, endaddr
4412         and offset.  Use size_t instead of unsigned long.
4413         (build_objfile_section_table): Use size_t instead of unsigned
4414         long.
4415         (objfile_relocate): Don't relocate s->addr and s->endaddr, they're
4416         gone.
4417         (find_pc_sect_section): Use obj_section_addr and
4418         obj_section_endaddr.
4419         * symfile.c (symfile.c): Remove code that maps sections
4420         offsets in "addr" to the object's sections.
4421         * blockframe.c (find_pc_partial_function): Use obj_section_endaddr.
4422         * gcore.c (gcore_create_callback): Use obj_section_addr and
4423         obj_section_endaddr.
4424         * maint.c (print_objfile_section_info): Likewise.
4425         * printcmd.c (sym_info): Use obj_section_addr and
4426         obj_section_endaddr.
4427         * symtab.c (fixup_section): Likewise.
4428
4429 2008-08-20  Mark Kettenis  <kettenis@gnu.org>
4430
4431         * sparc-tdep.c: Make some comments catch up with reality.
4432
4433 2008-08-20  Vladimir Prus  <vladimir@codesourcery.com>
4434
4435         * NEWS: Mention 'set target-async'
4436
4437 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4438
4439         * infrun.c (resume): If the thread is placed to the deferred step
4440         queue, mark it as running.
4441
4442 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4443
4444         Make sure target supports non-stop.
4445         * infcmd.c (run_command_1, attach_command): If non-stop mode
4446         is requested, verify the target supports it.
4447         * linux-nat.c (linux_nat_supports_non_stop): New.
4448         (linux_nat_add_target): Register the above.
4449         * target.c (find_default_supports_non_stop)
4450         (target_supports_non_stop): New.
4451         (init_dummy_target): Register find_default_supports_non_stop.
4452         * target.h (struct target_ops): New field to_supports_non_stop.
4453         (target_supports_non_stop): New.
4454
4455 2008-08-19  Pedro Alves  <pedro@codesourcery.com>
4456             Vladimir Prus  <vladimir@codesourcery.com>
4457
4458         * target.c (target_async_permitted, target_async_permitted_1)
4459         (set_maintenance_target_async_permitted)
4460         (show_maintenance_target_async_permitted): New.
4461         (initialize_targets): Register 'set target-async'.
4462         * target.h (target_async_permitted): Declare.
4463         * linux-nat.c (linux_nat_async_enabled)
4464         (linux_nat_async_permitted, set_maintenance_linux_async_permitted)
4465         (show_maintenance_linux_async_permitted): Remove.
4466         (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p)
4467         (get_pending_events, linux_nat_async): Use target_async_permitted.
4468         (linux_nat_set_async_mode): Remove, moving the only used bits
4469         into...
4470         (linux_nat_setup_async): This.
4471         (_initialize_linux_nat): Do not register 'maint set linux-async'.
4472         Use linux_nat_setup_async.
4473         * remote.c (remote_async_permitted, remote_async_permitted_set)
4474         (set_maintenance_remote_async_permitted)
4475         (show_maintenance_remote_async_permitted): Remove.
4476         (remote_open_1, remote_terminal_inferior, remote_can_async_p)
4477         (remote_is_async_p): Use target_async_permitted.
4478         (_initialize_remote): Don't register 'main set remote-async'.
4479         * mi/mi-cmds.c (mi_cmds): Register -list-target-features.
4480         * mi/mi-cmds.h (mi_cmd_list_target_features): New.
4481         * mi/mi-main.c (mi_cmd_list_target_features): New.
4482
4483 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4484
4485         * target.c (maybe_kill_then_attach)
4486         (maybe_kill_then_create_inferior): Remove.
4487         (update_current_target): Do not default to_attach,
4488         to_create_inferiour, to_is_async_p.
4489
4490 2008-08-19  Paul N. Hilfinger  <hilfinger@adacore.com>
4491         
4492         Changes for supporting boolean types in debugging data.
4493         * ada-lang.c (discrete_type_high_bound,discrete_type_low_bound): Change 
4494         API to return LONGEST values rather than struct values.
4495         (ada_evaluate_subexp): Change to use new API of discrete_type_low_bound
4496         and discrete_type_high_bound.
4497         (to_fixed_range_type): Create a range type in cases where 
4498         argument is base type and its limits are representable as ints.
4499         (ada_is_modular_type): Correct so that base type must be integral.
4500         * ada-lex.l (TRUEKEYWORD,FALSEKEYWORD): Make 'true' and 'false' 
4501         keywords when they appear alone, since we are phasing out 
4502         direct representation of these identifiers in debugging data.
4503         * ada-exp.y: Define 'true' and 'false' as primaries.
4504         (type_boolean): New function.
4505         (type_int,type_long,type_long_long,type_floattype_double)
4506         (type_long_double): Remove uses of current_gdbarch for consistency
4507         with type_boolean.
4508         (write_int): Change comment to indicate that it might write boolean 
4509         constant as well.
4510         * ada-typeprint.c (ada_print_type): Print '(false, true)' for boolean
4511         type, since will no longer be represented as enumerated type in 
4512         debugging data.
4513         * ada-valprint.c (print_optional_low_bound): Handle boolean case
4514         as well.
4515         * NEWS: Note support boolean types.
4516         
4517 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4518
4519         * bsd-uthread.c (bsd_uthread_close): New.
4520         (bsd_uthread_deactivate): Don't cleanup here, just unpush the
4521         target.
4522         (bsd_uthread_solib_loaded): Fix typo.
4523         (bsd_uthread_target): Register bsd_uthread_close.
4524
4525 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4526
4527         * corelow.c (core_open): Assume there was no upper layer left
4528         behind from a previous inferior.
4529         * target.c (pop_all_targets): Rename to ...
4530         (pop_all_targets_above): ... this.  Add a target stratum
4531         parameter.  Use it instead of hardcoding the dummy_stratum.
4532         (pop_all_targets): New, defer to pop_all_targets_above.
4533         (target_preopen): Use pop_all_targets_above.
4534         * target.h (pop_all_targets_above): Declare.
4535
4536 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4537
4538         * gdbthread.h (thread_change_ptid): Declare.
4539         * infrun.c (infrun_thread_ptid_changed): New.
4540         (_initialize_infrun): Attach infrun_thread_ptid_changed to the
4541         thread_ptid_changed observer.
4542         * regcache.c (regcache_thread_ptid_changed): New.
4543         (_initialize_regcache): Attach regcache_thread_ptid_changed to the
4544         thread_ptid_changed observer.
4545         * thread.c (thread_change_ptid): New.
4546
4547 2008-08-18  Tom Tromey  <tromey@redhat.com>
4548
4549         * symfile.c (reread_symbols): Update.
4550         * solib-sunos.c (allocate_rt_common_objfile): Update.
4551         * objfiles.c (allocate_objfile): Update.
4552         * objfiles.h (struct objfile) <md, mmfd, deprecated_obj_private>:
4553         Remove.
4554
4555 2008-08-18  Tom Tromey  <tromey@redhat.com>
4556
4557         * gdbtypes.c (copy_type_recursive): Allocate 'stored' on objfile's
4558         obstack.
4559
4560 2008-08-18  Daniel Jacobowitz  <dan@codesourcery.com>
4561
4562         * rs6000-tdep.c (struct rs6000_framedata): Add gpr_mask, used_bl,
4563         lr_register.
4564         (rs6000_in_function_epilogue_p): Check for bctr.
4565         (skip_prologue): Initialize lr_register.  Set lr_reg to a register
4566         number.  Set gpr_mask and used_bl.  Continue scanning while some
4567         expected registers are not saved.  Set lr_register if LR is not
4568         stored.
4569         (rs6000_frame_cache): Handle gpr_mask and lr_register.
4570
4571 2008-08-17  Tom Tromey  <tromey@redhat.com>
4572
4573         PR gdb/1535:
4574         * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): New macros.
4575         (ep_find_event_name_end): Remove.
4576         (catch_fork_temporary, catch_vfork_temporary,
4577         catch_fork_permanent, catch_vfork_permanent): New constants.
4578         (catch_vfork, catch_fork): Remove.
4579         (catch_fork_command_1): Add 'command' argument.  Remove
4580         'fork_kind' and 'tempflag'.  Handle NULL 'arg'.  Update switch for
4581         all cases.
4582         (catch_exec_command_1): Add 'command' argument; remove
4583         'tempflag'.  Handle NULL 'arg'.
4584         (catch_load_command_1): Likewise.
4585         (catch_unload_command_1): Likewise.
4586         (catch_ada_exception_command): Likewise.
4587         (catch_assert_command): Likewise.
4588         (catch_catch_command): New function.
4589         (catch_throw_command): Likewise.
4590         (catch_command_1): Remove.
4591         (catch_command): Just call error.
4592         (tcatch_command): Likewise.
4593         (catch_cmdlist): New global.
4594         (tcatch_cmdlist): Likewise.
4595         (add_catch_command): New function.
4596         (_initialize_breakpoint): Create "catch" and "tcatch" as prefix
4597         commands.  Create all catch sub-commands.
4598
4599 2008-08-17  Pedro Alves  <pedro@codesourcery.com>
4600
4601         * gdbthread.h: Add comments.
4602         * stack.c (get_selected_block): Return 0 on an exited thread.
4603         * top.c (execute_command): Check for is_stopped, not !is_running.
4604         * event-top.c (command_handler): Likewise.
4605
4606 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4607
4608         * mi/mi-main.c (mi_cmd_exec_next, mi_cmd_exec_next_instruction)
4609         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
4610         (mi_cmd_exec_finish): Remove "return".
4611
4612 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4613
4614         * target.h (pop_all_targets): Declare.
4615         * target.c (pop_all_targets): New.
4616         * top.c (quit_target): Pop all targets instead of just closing the
4617         current.
4618
4619 2008-08-16  Vladimir Prus  <vladimir@codesourcery.com>
4620             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4621
4622         * cli-script.c (read_next_line): Add parse_commands argument.
4623         (recurse_read_control_structure): Adapt to new read_next_line
4624         signature.
4625         (read_command_lines): Add parse_commands argument.
4626         (define_command): Adapt to new read_command_lines signature.
4627         (document_command): Likewise.
4628         * breakpoint.c (commands_command): Likewise.
4629         * defs.h (read_command_lines): Adjust function prototype.
4630
4631 2008-08-16  Paul N. Hilfinger  <hilfinger@adacore.com>
4632
4633         * ada-lang.c (pos_atr): Account for the possibility that the 
4634         argument may be a reference.
4635
4636 2008-08-16  Paul N. Hilfinger  <hilfingr@adacore.com>
4637
4638         * xcoffread.c (scan_xcoff_symtab): Do not include global symbols
4639         ('F' format) for @FIX names generated by the loader, retaining only
4640         the minimal symbols (and no partial symbol tables) for these names.
4641         Fixes warning messages about symbols that are found in partial 
4642         symbol tables, but not full symbol tables.
4643
4644 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4645
4646         * infrun.c (fetch_inferior_event): Only call normal_stop if not
4647         stopping quietly.
4648
4649 2008-08-15  Luis Machado  <luisgpm@br.ibm.com>
4650
4651         * rs6000-tdep: Include "features/rs6000/powerpc-vsx32.c".
4652         Include "features/rs6000/powerpc-vsx64.c".
4653         (ppc_supply_vsxregset): New function.
4654         (ppc_collect_vsxregset): New function.
4655         (IS_VSX_PSEUDOREG): New macro.
4656         (IS_EFP_PSEUDOREG): New macro.
4657         (vsx_register_p): New function.
4658         (ppc_vsx_support_p): New function.
4659         (rs6000_builtin_type_vec128): New function.
4660         (rs6000_register_name): Hide upper halves of vs0~vs31.  Return
4661         correct names for VSX registers and EFPR registers.
4662         (rs6000_pseudo_register_type): Return correct types for VSX
4663         and EFPR registers.
4664         (rs6000_pseudo_register_reggroup_p): Return correct group for
4665         VSX and EFPR registers.
4666         (ppc_pseudo_register_read): Rename to dfp_pseudo_register_read.
4667         (ppc_pseudo_register_write): Rename to dfp_pseudo_register_write.
4668         (vsx_pseudo_register_read): New function.
4669         (vsx_pseudo_register_write): New function.
4670         (efpr_pseudo_register_read): New function.
4671         (efpr_pseudo_register_write): New function.
4672         (rs6000_pseudo_register_read): Call new VSX and EFPR read functions.
4673         (rs6000_pseudo_register_write): Call new VSX and EFPR write functions.
4674         (rs6000_gdbarch_init): Declare have_vsx.
4675         Initialize new upper half VSX registers.
4676         Initialize VSX-related and EFPR-related pseudo-registers variables.
4677         Adjust the number of pseudo registers accordingly.
4678
4679         * ppc-linux-nat.c: Define PTRACE_GETVSXREGS, PTRACE_SETVSXREGS
4680         and SIZEOF_VSRREGS.
4681         (gdb_vsxregset_t): New type.
4682         (have_ptrace_getsetvsxregs): New variable.
4683         (fetch_vsx_register): New function.
4684         (fetch_register): Handle VSX registers.
4685         (fetch_vsx_registers): New function.
4686         (fetch_ppc_registers): Handle VSX registers.
4687         (store_ppc_registers): Handle VSX registers.
4688         (store_vsx_register): New function.
4689         (store_register): Handle VSX registers.
4690         (store_vsx_registers): New function.
4691         (ppc_linux_read_description): Handle VSX-enabled inferiors.
4692         (gdb_vsxregset_t): New type.
4693         (supply_vsxregset): New function.
4694         (fill_vsxregset): New function.
4695
4696         * ppc-tdep.h (vsx_register_p): New prototype.
4697         (vsx_support_p): New prototype.
4698         (ppc_vsr0_regnum): New variable.
4699         (ppc_vsr0_upper_regnum): Likewise.
4700         (ppc_efpr0_regnum): Likewise.
4701         (ppc_builtin_type_vec128): New type.
4702         (ppc_num_vsrs): New constant.
4703         (ppc_num_vshrs): New constant.
4704         (ppc_num_efprs): Likewise.
4705         Define POWERPC_VEC_VSX PPC_VSR0_UPPER_REGNUM and PPC_VSR31_UPPER_REGNUM.
4706         (ppc_supply_vsxregset): New prototype.
4707         (ppc_collect_vsxregset): New prototype.
4708
4709         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-vsx32l.c"
4710         Include "features/rs6000/powerpc-vsx64l.c".
4711         (_initialize_ppc_linux_tdep): Initialize VSX-enabled targets.
4712         (ppc_linux_regset_sections): Add new ".reg-ppc-vsx" field.
4713         (ppc32_linux_vsxregset): New 32-bit VSX-enabled regset.
4714         (ppc_linux_regset_from_core_section): Handle VSX core section.
4715         (ppc_linux_core_read_description): Support VSX-enabled core files.
4716
4717         * ppc-linux-tdep.h: Declare *tdesc_powerpc_vsx32l
4718         Declare tdesc_powerpc_vsx64l
4719
4720         * corelow.c (get_core_register_section): Support VSX-enabled
4721         core files.
4722
4723         * features/rs6000/power-vsx.xml: New VSX descriptions.
4724         * features/rs6000/powerpc-vsx32.xml: New file.
4725         * features/rs6000/powerpc-vsx32l.xml: New file.
4726         * features/rs6000/powerpc-vsx64.xml: New file.
4727         * features/rs6000/powerpc-vsx64l.xml: New file.
4728         * features/rs6000/powerpc-vsx32.c: New file (generated).
4729         * features/rs6000/powerpc-vsx32l.c: New file (generated).
4730         * features/rs6000/powerpc-vsx64.c: New file (generated).
4731         * features/rs6000/powerpc-vsx64l.c: New file (generated).
4732         * features/Makefile: Updated with new descriptions.
4733         * regformats/rs6000/powerpc-vsx32l.dat: New file (generated).
4734         * regformats/rs6000/powerpc-vsx64l.dat: New file (generated).
4735
4736 2008-08-15  Vladimir Prus  <vladimir@codesourcery.com>
4737
4738         * ia64-linux.nat (_initialize_ia64_linux_nat): Don't
4739         call linux_target twice.
4740
4741 2008-08-14  Aleksandar Ristovski  <aristovski@qnx.com>
4742
4743         * nto-tdep.c (lm_info): Updated struct lm_info definition from
4744         solib-svr4.c
4745         (LM_ADDR): Use l_addr if available; if not, use link map and set 
4746         l_addr.
4747
4748 2008-08-14  Tom Tromey  <tromey@redhat.com>
4749
4750         * macrocmd.c (macro_define_command): Check for NULL argument.
4751         (macro_undef_command): Likewise.
4752
4753 2008-08-14  Pedro Alves  <pedro@codesourcery.com>
4754
4755         * infcmd.c (continue_1): Add an ERROR_NO_INFERIOR call.
4756
4757 2008-08-13  Pedro Alves  <pedro@codesourcery.com>
4758
4759         * breakpoint.c (always_inserted_auto, always_inserted_on)
4760         (always_inserted_off, always_inserted_enums): New.
4761         (always_inserted_mode): Change type to char* and point to
4762         always_inserted_auto.
4763         (show_always_inserted_mode): In auto mode, also show the current
4764         effect of the option.
4765         (breakpoints_always_inserted_mode): Adjust for the new auto mode.
4766         (_initialize_breakpoint): Make the "set breakpoints
4767         always-inserted" command an enum command.  Extend help to describe
4768         the auto mode.
4769
4770 2008-08-13  Ulrich Weigand  <uweigand@de.ibm.com>
4771
4772         * spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status
4773         query valid) bit.  Ignore bits outside the condition field.
4774         (info_spu_proxydma_command): Ignore bits outside the field.
4775
4776 2008-08-12  Michael Snyder  <msnyder@vmware.com>
4777
4778         * MAINTAINERS: Update my email address.
4779
4780 2008-08-12  Ulrich Weigand  <uweigand@de.ibm.com>
4781
4782         * ppc-linux-nat.c (ppc_linux_get_hwcap): Really get AT_HWCAP.
4783
4784 2008-08-12  Pedro Alves  <pedro@codesourcery.com>
4785
4786         Add no-ack mode to the remote protocol --- optionally stop ACKing
4787         packets and responses when we have a reliable communication
4788         medium.
4789
4790         Based on Apple's GDB, by Jason Molenda <jmolenda@apple.com>
4791
4792         * remote.c (struct remote_state): Add noack_mode field.
4793         (PACKET_QStartNoAckMode): New.
4794         (remote_start_remote): Don't any outstanding packet here.
4795         (remote_open_1): Clear noack_mode.  Ack any outstanding packet
4796         here.  Activate noack mode if requested.
4797         (remote_protocol_features): Add QStartNoAckMode.
4798         (remote_open_1):
4799         (putpkt_binary): Don't send ack in noack mode.
4800         (read_frame): Don't recompute the checksum in noack mode.
4801         (getpkt_sane): Skip sending ack if in noack mode.
4802         (_initialize_remote): Add set/show remote noack mode.
4803         * NEWS:  Note the new features.
4804
4805 2008-08-11  Kevin Buettner  <kevinb@redhat.com>
4806
4807         * rs6000-tdep.c (BL_MASK, BL_INSTRUCTION, BL_DISPLACEMENT_MASK):
4808         New macros.
4809         (rs6000_skip_main_prologue): New function.
4810         (rs6000_gdb_arch_init): Register rs6000_skip_main_prologue.
4811
4812 2008-08-11  Sandra Loosemore  <sandra@codesourcery.com>
4813
4814         * MAINTAINERS (Write After Approval):  Add self.
4815
4816 2008-08-11  Stan Shebs  <stan@codesourcery.com>
4817
4818         ARM BE8 support.
4819         * disasm.c (gdb_disassemble_info): Set endian_code.
4820         * gdbarch.sh (gdbarch_info): New field byte_order_for_code.
4821         * gdbarch.h, gdbarch.c: Regenerate.
4822         * arch-utils.c (initialize_current_architecture): Set the
4823         default byte_order_for_code.
4824         (gdbarch_info_init): Ditto.
4825         (gdbarch_info_fill): Ditto.
4826         * arm-tdep.c (SWAP_INT, SWAP_SHORT): New macros.
4827         (thumb_analyze_prologue): Swap halfword if code endianness is
4828         different from general endianness.
4829         (arm_skip_prologue): Similarly.
4830         (arm_scan_prologue): Ditto.
4831         (thumb_get_next_pc): Ditto.
4832         (arm_get_next_pc): Ditto.
4833         (arm_gdbarch_init): Set byte_order_for_code from BE8 flag,
4834         choose correct endianness for breakpoints.
4835
4836 2008-08-10  Pedro Alves  <pedro@codesourcery.com>
4837
4838         * bsd-kvm.c: Include "gdbthread.h".
4839         (bsd_kvm_ptid): New.
4840         (bsd_kvm_open): Add a main thread.
4841         (bsd_kvm_close): Delete it.
4842         (bsd_kvm_thread_alive): New.
4843         (bsd_kvm_pid_to_str): New.
4844         (bsd_kvm_add_target): Register bsd_kvm_thread_alive and
4845         bsd_kvm_pid_to_str.
4846         (bsd_kvm_add_target): Initialize bsd_kvm_ptid.
4847
4848 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4849
4850         * buildsym.c (start_subfile): Properly cast sentinel in concat
4851         call.
4852         * cp-name-parser.y: Include "config.h".
4853         * xml-tdesc.c (fetch_xml_from_file): Properly cast sentinel in
4854         concat call.
4855         * gdb_select.h: Include sys/time.h if sys/select.h is not
4856         available.
4857
4858 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4859
4860         * go32-nat.c: Include "gdbthread.h".
4861         (go32_stop, go32_kill_inferior): Delete the main thread.
4862         (go32_create_inferior): Add it.
4863         (go32_thread_alive, go32_pid_to_str): New.
4864         (init_go32_ops): Register go32_thread_alive and go32_pid_to_str.
4865
4866 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4867
4868         * go32-nat.c (fetch_register, store_register): Pass the regcache
4869         gdbarch to i386_fp_regnum_p and i386_fpc_regnum_p.
4870         (go32_xfer_memory): Change type of myaddr parameter to gdb_byte.
4871         (struct seg_descr, struct seg_descr): pack the whole struct
4872         instead of each member individually.
4873
4874 2008-08-09  Andreas Schwab  <schwab@suse.de>
4875
4876         * python/python.c (_initialize_python): Use unabbreviated commands
4877         in prefix name.
4878
4879 2008-08-09  Daniel Jacobowitz  <dan@codesourcery.com>
4880
4881         * Makefile.in (stamp-h): Also create .deps.
4882
4883 2008-08-09  Tom Tromey  <tromey@redhat.com>
4884
4885         * Makefile.in (generated_files): Add GNULIB_H.
4886
4887 2008-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4888
4889         * solib-pa64.c (pa64_solib_create_inferior_hook): Don't set
4890         DT_HP_DEBUG_PRIVATE.  Add warning if DT_HP_DEBUG_PRIVATE is not set.
4891         Revise comment.
4892         (pa64_current_sos): Remove map private warning warning.
4893         * solib-som.c: Include string.h and sys/utsname.h.
4894         (get_hpux_major_release): New function.
4895         (som_solib_create_inferior_hook): Read dynamic linker header.  Warn
4896         about shared library private mapping on HP-UX 11 and later.  Only force
4897         private mapping of shared libraries on HP-UX 10 and earlier.
4898         (link_map_start): Delete warning.
4899
4900 2008-08-09  Xuepeng Guo  <xuepeng.guo@intel.com>
4901             H.J. Lu  <hongjiu.lu@intel.com>
4902             Mark Kettenis <kettenis@gnu.org>
4903
4904         * amd64-tdep.c (amd64_frame_cache): Add saved_sp_reg.
4905         (amd64_init_frame_cache): Initialize saved_sp_reg.
4906         (amd64_analyze_stack_align): New.
4907         (amd64_analyze_prologue): Call it.
4908         (amd64_frame_cache): Use saved_sp_reg if it is invalid.  Don't set
4909         %rip to 8 when halfway aligning the stack.
4910
4911         * amd64-tdep.h (amd64_regnum): Add AMD64_R9_REGNUM to
4912         AMD64_R14_REGNUM.
4913
4914         * i386-tdep.c (i386_frame_cache): Remove stack_align.  Add
4915         saved_sp_reg.
4916         (i386_alloc_frame_cache): Remove stack_align.  Initialize
4917         saved_sp_reg to -1.
4918         (i386_analyze_stack_align): Rewrite.
4919         (i386_frame_cache): Use saved_sp_reg if it is valid.
4920
4921 2008-08-09  Ulrich Weigand  <uweigand@de.ibm.com>
4922
4923         * target.c: Include "solib.h".
4924         (target_pre_inferior): Call no_shared_libraries.
4925         * infcmd.c (run_command_1): Do not call objfile_purge_solibs
4926         or clear_solib.
4927         (attach_command): Do not call clear_solib.
4928
4929 2008-08-09  Mark Kettenis  <kettenis@gnu.org>
4930
4931         * i386obsd-nat.c (i386obsd_supply_pcb): Supply the right bytes for
4932         the %eip register.
4933
4934 2008-08-08  Tom Tromey  <tromey@redhat.com>
4935
4936         * Makefile.in (python.o): Remove dependencies.  Use COMPILE and
4937         POSTCOMPILE.
4938         (python-utils.o): Likewise.
4939
4940 2008-08-08  Andreas Schwab  <schwab@suse.de>
4941
4942         * corefile.c (_initialize_core): Remove spurious paren from set
4943         gnutarget doc string.
4944
4945 2008-08-08  Luis Machado  <luisgpm@br.ibm.com>
4946
4947         * ppc-linux-nat.c: Include "auxv.h" and "elf/common.h".
4948         Define PPC_FEATURE_BOOKE.
4949         (ppc_linux_get_hwcap): New function.
4950         (ppc_linux_region_ok_for_hw_watchpoint): Handle PowerPC 440
4951         4-bytes alignment restrictions.
4952         (ppc_linux_insert_watchpoint): Handle PowerPC 440-specific
4953         positioning of the read/write flags.
4954         (ppc_linux_watchpoint_addr_within_range): Handle PowerPC 440
4955         4-bytes alignment.
4956
4957 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
4958
4959         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
4960
4961         * win32-nat.c (win32_add_thread): Change thread argument type to
4962         ptid_t.  Adjust.
4963         (win32_add_thread): Adjust.
4964         (win32_delete_thread): Change thread argument type to ptid_t.
4965         Adjust.
4966         (win32_fetch_inferior_registers, win32_store_inferior_registers)
4967         (win32_resume, get_win32_debug_event, get_win32_debug_event)
4968         (win32_wait, win32_pid_to_exec_file, win32_pid_to_str): Adjust.
4969         (init_win32_ops): Put to_magic last.
4970         (win32_win32_thread_alive): Adjust.
4971
4972 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
4973
4974         * remote-m32r-sdi.c (m32r_thread_alive, m32r_pid_to_str): New.
4975         (init_m32r_ops): Register m32r_thread_alive and m32r_pid_to_str.
4976
4977 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
4978
4979         * remote-m32r-sdi.c: Include "gdbthread.h".
4980         (remote_m32r_ptid): New.
4981         (m32r_close): Delete the main thread.
4982         (m32r_resume): Set inferior_ptid toA remote_m32r_ptid. Add the
4983         main thread.
4984         (m32r_kill, m32r_load, sdireset_command): Delete the main thread.
4985         (_initialize_remote_m32r): Initialize remote_m32r_ptid.
4986
4987 2008-08-07  Tom Tromey  <tromey@redhat.com>
4988             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4989
4990         * aclocal.m4, configure: Rebuild.
4991         * configure.in: Call ZW_CREATE_DEPDIR,
4992         ZW_PROG_COMPILER_DEPENDENCIES, AC_PROG_MAKE_SET.
4993         (MAKE, GMAKE): New substs.
4994         * acinclude.m4: Include depstand.m4.
4995         * Makefile.in (DEPMODE, DEPDIR, COMPILE.post, COMPILE.pre,
4996         COMPILE, POSTCOMPILE, depcomp): New variables.
4997         Remove all _h variables.
4998         Remove many .o targets.
4999         ($(srcdir)/copying.c): avoid backslash-newline after comment
5000         sign (@maintainer_mode_true@).
5001         (HFILES_NO_SRCDIR): Regenerate.
5002         (generated_files): New variable.
5003         (all_gdbtk_cflags): Likewise.
5004         (.c.o): Rewrote.
5005         (init.o, version.o, copying.o): Remove.
5006         (distclean): Remove DEPDIR.
5007         (test-cp-name-parser.o, hpux-thread.o, main.o, monitor.o,
5008         printcmd.o, procfs.o, v850ice.o): Rewrite.
5009         (cli-cmds.o, cli-decode.o, cli-dump.o, cli-interp.o, cli-logging.o,
5010         cli-script.o, cli-setshow.o, cli-utils.o): Likewise.
5011         (gdbtk.o, gdbtk-bp.o, gdbtk-cmds.o, gdbtk-hooks.o, gdbtk-interp.o,
5012         gdbtk-main.o, gdbtk-register.o, gdbtk-stack.o, gdbtk-varobj.o,
5013         gdbtk-wrapper.o): Likewise.
5014         (mi-cmd-break.o, mi-cmd-disas.o, mi-cmd-env.o, mi-cmd-file.o,
5015         mi-cmds.o, mi-cmd-stack.o, mi-cmd-target.o, mi-cmd-var.o,
5016         mi-console.o, mi-getopt.o, mi-interp.o, mi-main.o, mi-out.o,
5017         mi-parse.o, mi-symbol-cmds.o, mi-common.o, signals.o, tui.o,
5018         tui-command.o, tui-data.o, tui-disasm.o, tui-file.o, tui-hooks.o,
5019         tui-interp.o, tui-io.o, tui-layout.o, tui-main.o, tui-out.o,
5020         tui-regs.o, tui-source.o, tui-stack.o, tui-win.o, tui-windata.o,
5021         tui-wingeneral.o, tui-winsource.o): Likewise.
5022         (all_object_files): New variable.
5023         ($(all_object_files)): New target.
5024         Include dependency files, when using GNU Make.
5025
5026 2008-08-07  Ulrich Weigand  <uweigand@de.ibm.com>
5027
5028         * spu-tdep.c (info_spu_dma_cmdlist): Only show entries with
5029         the valid bit set.  Ensure display order respects partial
5030         order defined by dependency bits.
5031
5032 2008-08-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5033
5034         * solib-pa64.c (read_dld_descriptor): Return zero if load map is not
5035         setup.
5036
5037 2008-08-06  Mark Kettenis  <kettenis@gnu.org>
5038
5039         * i386obsd-nat.c (i386obsd_supply_pcb): Adjust for changes in
5040         OpenBSD 4.3.
5041
5042 2008-08-06  Vladimir Prus  <vladimir@codesourcery.com>
5043             Tom Tromey  <tromey@redhat.com>
5044             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5045             Doug Evans  <dje@google.com>
5046
5047         * Makefile.in (SUBDIR_PYTHON_OBS, SUBDIR_PYTHON_SRCS,
5048         SUBDIR_PYTHON_DEPS, SUBDIR_PYTHON_LDFLAGS, SUBDIR_PYTHON_CFLAGS,
5049         PYTHON_CFLAGS): New.
5050         (python_h, python_internal_h): New.
5051         (cli-script.o): Depend on python.h
5052         (python.o, python-utils.o): New.
5053         * cli/cli-script.c (print_command_lines): Handle python_control.
5054         (execute_control_command): Handle python_control.
5055         (execute_control_command_untraced): New function.
5056         (while_command): Call execute_control_command_untraced.
5057         (if_command): Likewise.
5058         (get_command_line): Remove static attribute.
5059         (read_next_line): Handle "python".
5060         (recurse_read_control_structure): Handle python_control.
5061         (read_command_lines): Handle python_control.
5062         Include python.h.
5063         * cli/cli-script.h (get_command_line): Add prototype.
5064         (execute_control_command_untraced): Likewise.
5065         * configure.ac: Add --with-python.
5066         * defs.h (enum command_control_type) <python_control>: New
5067         constant.
5068         * python/python-internal.h: New file.
5069         * python/python.c: New file.
5070         * python/python.h: New file.
5071         * python/python-utils.c: New file.
5072         * NEWS: Mention Python scripting support and its new commands.
5073
5074 2008-08-06  Ulrich Weigand  <uweigand@de.ibm.com>
5075
5076         * spu-tdep.c (spu_gdbarch_init): Call set_gdbarch_frame_red_zone_size.
5077
5078 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
5079
5080         * MAINTAINERS (Write After Approval): Add self.
5081
5082 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
5083
5084         * breakpoint.c (hw_breakpoint_used_count): Use breakpoint_enabled.
5085         (insert_breakpoint_locations): Likewise.
5086
5087 2008-08-05  Phil Muldoon  <pmuldoon@redhat.com>
5088
5089         * breakpoint.c (create_longjmp_breakpoint): Remove unused struct
5090         breakpoint.
5091         (set_longjmp_breakpoint): Likewise.
5092
5093 2008-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5094
5095         PR build/2490
5096         * solib-pa64.c: Only compile if both HAVE_ELF_HP_H and __LP64__ are
5097         defined.
5098
5099 2008-08-05  Tom Tromey  <tromey@redhat.com>
5100
5101         * bcache.c (deprecated_bcache_added): Initialize obstack.
5102         (bcache_xmalloc): Don't initialize obstack.
5103         (bcache_xfree): Conditionally free obstack.
5104         (bcache_memory_used): Update.
5105
5106 2008-08-05  Tom Tromey  <tromey@redhat.com>
5107
5108         * symfile.c (add_psymbol_to_bcache): Return a const pointer.  Use
5109         bcache_full.
5110         (append_psymbol_to_list): Accept a const pointer.
5111         (add_psymbol_to_list): Fix const correctness.
5112         * bcache.h: (deprecated_bcache_added, deprecated_bcache): Remove.
5113         (bcache_full): Declare.
5114         * bcache.c (bcache_data, deprecated_bcache): Remove.
5115         (bcache): Use bcache_full.
5116         (bcache_full): Rename from deprecated_bcache_added.  Change return
5117         type.
5118
5119 2008-08-04  Stan Shebs  <stan@codesourcery.com>
5120
5121         * solib-svr4.c (BKPT_AT_SYMBOL): Remove, always defined.
5122         (bkpt_names): Remove SOLIB_BKPT_NAME, never defined.
5123         (enable_break): Remove test of BKPT_AT_SYMBOL.
5124
5125 2008-08-02  Keith Seitz  <keiths@redhat.com>
5126
5127         * acinclude.m4: Include ../config/tcl.m4 to pick up
5128         standard Tcl configury bits.
5129         Remove all Tcl, Tk, Itcl, Itk, etc definitions.
5130         * configure.ac: Don't check if ../itcl exists when building
5131         gdbtk. It could be installed.
5132         Rewrite gdbtk configury to allow for using system-supplied
5133         Tcl and Tk. Gdbtk no longer requires build-time access to
5134         itcl and itk.
5135         * Makefile.in: Remove everything related to itcl and itk.
5136         Rewrite the Tcl bits for gdbtk to correspond to rewrite of
5137         configure.ac.
5138         Remove v850ice.o build rule.
5139         (ALL_TCL_CFLAGS): New convenience defintion. Change all
5140         gdbtk sources to use it.
5141         * configure: Regenerate.
5142
5143 2008-07-31  Stan Shebs  <stan@codesourcery.com>
5144
5145         * coffread.c (coff_symtab_read): Remove FUNCTION_EPILOGUE_SIZE.
5146
5147 2008-07-30  Stan Shebs  <stan@codesourcery.com>
5148
5149         * objfiles.c (TARGET_KEEP_SECTION): Remove.
5150         (add_to_objfile_sections): Remove use.
5151
5152 2008-07-29  Tom Tromey  <tromey@redhat.com>
5153
5154         * cli/cli-decode.c (lookup_cmd_1): Use memcpy.
5155         (lookup_cmd_composition): Likewise.
5156
5157 2008-07-29  Tom Tromey  <tromey@redhat.com>
5158
5159         * cli/cli-cmds.c (edit_command): Remove unused variables.  Delete
5160         dead code.  Fix indentation.
5161
5162 2008-07-29  Stan Shebs  <stan@codesourcery.com>
5163
5164         * main.c (captured_main): Remove long-unused #if 0 blocks.
5165
5166 2008-07-28  Tom Tromey  <tromey@redhat.com>
5167
5168         * annotate.h (deprecated_annotate_starting_hook): Remove.
5169         (deprecated_annotate_stopped_hook): Remove.
5170         (deprecated_annotate_exited_hook): Remove.
5171         * Makefile.in (annotate.o): Depend on observer_h.
5172         * top.c (deprecated_delete_breakpoint_hook): Remove.
5173         (deprecated_create_breakpoint_hook): Likewise.
5174         (deprecated_modify_breakpoint_hook): Likewise.
5175         * interps.c (clear_interpreter_hooks): Update for removed hooks.
5176         * breakpoint.c (mention): Don't call removed hook.
5177         (delete_breakpoint): Likewise.
5178         (disable_breakpoint): Likewise.
5179         (do_enable_breakpoint): Likewise.
5180         * annotate.c: Include observer.h.
5181         (breakpoint_changed): Change type of argument.
5182         (_initialize_annotate): Register observers.
5183         (deprecated_annotate_starting_hook): Remove.
5184         (deprecated_annotate_stopped_hook): Remove.
5185         (deprecated_annotate_exited_hook): Remove.
5186         (annotate_starting): Update for hook removal.
5187         (annotate_stopped): Likewise.
5188         (annotate_exited): Likewise.
5189         * defs.h (deprecated_delete_breakpoint_hook): Remove.
5190         (deprecated_create_breakpoint_hook): Likewise.
5191         (deprecated_modify_breakpoint_hook): Likewise.
5192
5193 2008-07-28  Tom Tromey  <tromey@redhat.com>
5194
5195         * main.c (captured_main): Don't use BEFORE_MAIN_LOOP_HOOK.
5196
5197 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5198
5199         * configure.ac: Check for the GNU/Linux ptrace signature.
5200         * configure: Regenerated.
5201
5202 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5203
5204         * linux-nat.c (resume_callback): Add more debugging output.
5205         (linux_nat_has_pending_sigint): New function, based on
5206         linux_nat_has_pending.
5207         (set_ignore_sigint, maybe_clear_ignore_sigint): New functions.
5208         (stop_wait_callback): Remove flush_mask handling.  Honor
5209         ignore_sigint.  Call maybe_clear_ignore_sigint.  Pass NULL
5210         to recursive calls.
5211         (linux_nat_has_pending, flush_callback): Remove.
5212         (linux_nat_filter_event): Check for ignore_sigint.
5213         (linux_nat_wait): Remove flush_mask support and call to
5214         flush_callback.  Use set_ignore_sigint and maybe_clear_ignore_sigint.
5215         * linux-nat.h (struct lwp_info): Add ignore_sigint field.
5216
5217 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5218
5219         * linux-nat.c (count_events_callback, select_event_lwp_callback): Only
5220         report events from resumed threads.
5221
5222 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5223
5224         * mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
5225         (mips_linux_init_abi): Set tdep->syscall_next_pc.
5226         * mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
5227         mips-tdep.h.
5228         (mips32_next_pc): Handle the syscall instruction.
5229         * mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
5230         from mips-tdep.c.  Add syscall_next_pc to gdbarch_tdep.
5231
5232 2008-07-26  Tom Tromey  <tromey@redhat.com>
5233
5234         PR gdb/1158:
5235         * valops.c (value_struct_elt): Treat function-valued field as a
5236         static method.
5237
5238 2008-07-26  Tom Tromey  <tromey@redhat.com>
5239
5240         PR gdb/1136:
5241         * macroexp.c (get_punctuator) <punctuators>: Rearrange to put
5242         longer tokens first.
5243
5244 2008-07-26  Vladimir Prus  <vladimir@codesourcery.com>
5245
5246         Kill cmd_async_ok.
5247         * cli/cli-decode.h (CMD_ASYNC_OK, set_cmd_async_ok)
5248         (get_cmd_async_ok): Remove.
5249         * cli/cli-decode.c (set_cmd_async_ok, get_cmd_async_ok): Remove.
5250         * cli/cli-cmds.c (init_cli_cmds): Don't use set_cmd_async_ok.
5251         * infcmd.c (_initialize_infcmd): Likewise.
5252         * thread.c (_initialize_thread): Likewise.
5253
5254 2008-07-25  Joseph Myers  <joseph@codesourcery.com>
5255
5256         * mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
5257         128-bit long doubles in even-odd pairs of FPRs.  Do not
5258         right-align float arguments for big-endian.
5259         (mips_n32n64_return_value): Apply return value convention for
5260         structs containing one or two floating-point values to soft-float
5261         as well as hard-float.  Handle 128-bit long doubles in such
5262         structs.
5263         (mips_o32_push_dummy_call): Only skip one integer register for a
5264         float argument passed in an FPR.
5265
5266 2008-07-25  Tom Tromey  <tromey@redhat.com>
5267
5268         * tui/tui-hooks.c: Include observer.h.
5269         (tui_event_default, tui_old_event_hooks, tui_event_hooks):
5270         Remove.
5271         (tui_bp_created_observer, tui_bp_deleted_observer,
5272         tui_bp_modified_observer): New globals.
5273         (tui_install_hooks): Use observers, not events.
5274         (tui_remove_hooks): Likewise.
5275         * mi/mi-cmd-break.c: Include observer.h, not gdb-events.h.
5276         (mi_breakpoint_observers_installed, mi_can_breakpoint_notify): New
5277         globals.
5278         (breakpoint_notify): Check mi_can_breakpoint_notify.
5279         (breakpoint_hooks): Remove.
5280         (mi_cmd_break_insert): Attach observers.  Don't use events.
5281         * tracepoint.c: Include observer.h, not gdb-events.h.
5282         (tracepoint_operation, trace_pass_command): Notify observer.
5283         * interps.c: Don't include gdb-events.h.
5284         (clear_interpreter_hooks): Don't call clear_gdb_event_hooks.
5285         * gdbarch.c: Rebuild.
5286         * gdbarch.sh: Emit include for observer.h, not gdb-events.h.
5287         (deprecated_current_gdbarch_select_hack): Notify observer.
5288         * breakpoint.h: Don't include gdb-events.h.
5289         * breakpoint.c: Don't include gdb-events.h.
5290         (condition_command): Notify observer.
5291         (commands_command): Likewise.
5292         (commands_from_control_command): Likewise.
5293         (mention, delete_breakpoint, set_ignore_count): Likewise.
5294         (disable_breakpoint, do_enable_breakpoint): Likewise.
5295         * Makefile.in (gdb_events_h): Remove.
5296         (breakpoint_h): Update.
5297         (COMMON_OBS): Remove gdb-events.o.
5298         (gdb-events.o): Remove.
5299         (breakpoint.o, gdbarch.o, interps.o, tracepoint.o, gdbtk-bp.o,
5300         gdbtk-hooks.o, mi-cmd-break.o, tui-hooks.o): Update.
5301         * gdb-events.c: Remove.
5302         * gdb-events.h: Remove.
5303         * gdb-events.sh: Remove.
5304
5305 2008-07-24  Pedro Alves  <pedro@codesourcery.com>
5306
5307         * remote.c (remote_threads_extra_info): Don't query the remote
5308         server about info on the internally added main thread.
5309
5310 2008-07-24  Aleksandar Ristovski  <aristovski@qnx.com>
5311
5312         * nto-procfs.c (procfs_attach): Populate initial thread list.
5313         (procfs_wait): Return new pid, built from the inferior status.
5314
5315 2008-07-23  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5316
5317         * configure.ac (CONFIG_INITS): Delete long obsoleted variable.
5318         * configure: Regenerate.
5319
5320 2008-07-23  Aleksandar Ristovski  <aristovski@qnx.com>
5321
5322         * nto-procfs.c (procfs_xfer_memory): Changed signature.
5323         (procfs_resume): Workaround for dereferencing type-punned pointer
5324         warning.
5325         * nto-tdep.c (nto_parse_redirection): Change signature to be const
5326         correct.
5327         * nto-tdep.h (nto_parse_redirection): Likewise.
5328
5329 2008-07-21  Stan Shebs  <stan@codesourcery.com>
5330
5331         Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
5332         * gdbarch.sh: Adjust comment to refer to
5333         in_solib_dynsym_resolve_code().
5334         * gdbarch.h, gdbarch.c: Update.
5335         * solib-osf.c: Ditto.
5336         * infrun.c: Ditto.
5337         (handle_inferior_event): Use in_solib_dynsym_resolve_code
5338         unconditionally.
5339         * config/mips/nm-irix5.h: Remove undef of
5340         IN_SOLIB_DYNSYM_RESOLVE_CODE.
5341
5342 2008-07-21  Tom Tromey  <tromey@redhat.com>
5343
5344         * symfile.c (reread_symbols): Don't pass argument to observer.
5345         * exec.c (exec_file_attach): Don't pass argument to observer.
5346         * ada-lang.c (ada_executable_changed_observer): Remove argument.
5347         * symtab.c (symtab_observer_executable_changed): Remove argument.
5348         * observer.sh: Handle functions with no arguments.
5349
5350 2008-07-20  Sergei Poselenov  <sposelenov@emcraft.com>
5351             Chris Demetriou  <cgd@google.com>
5352
5353         * elfread.c (elf_symfile_segments): Fix the check that each loadable
5354         section fits within an ELF segment to handle ELF segments that hit
5355         the end of the address space.
5356
5357 2008-07-20  Chris Demetriou  <cgd@google.com>
5358
5359         * MAINTAINERS (Write After Approval): Add self.
5360
5361 2008-07-18  Tom Tromey  <tromey@redhat.com>
5362
5363         PR gdb/855:
5364         * NEWS: Add entry for macro commands.
5365         * Makefile.in (macrocmd.o): Add gdb_string.h.
5366         * macroscope.h (user_macro_scope): Declare.
5367         (default_macro_scope): Update documentation.
5368         (macro_user_macros): Declare.
5369         * c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
5370         Use user_macro_scope.
5371         (null_macro_lookup): Remove.
5372         * macrotab.h (macro_callback_fn): Declare.
5373         (macro_for_each): Likewise.
5374         (macro_allow_redefinitions): Likewise.
5375         * macrotab.c (foreach_macro): New function
5376         (macro_for_each): Likewise.
5377         (struct macro_table) <redef_ok>: New field.
5378         (macro_allow_redefinitions): New function.
5379         (new_macro_table): Update.
5380         (macro_define_function): Likewise.
5381         (macro_define_object): Likewise.
5382         * macroscope.c (user_macro_scope): New function.
5383         (default_macro_scope): Use it.
5384         (macro_user_macros): New global.
5385         (standard_macro_lookup): Look in macro_user_macros.
5386         (_initialize_macroscope): New function.
5387         * macroexp.h (macro_is_whitespace, macro_is_digit,
5388         macro_is_identifier_nondigit): Declare.
5389         * macroexp.c (macro_is_whitespace): Rename.  No longer static.
5390         (macro_is_digit): Likewise.
5391         (macro_is_identifier_nondigit): Likewise.
5392         (get_identifier): Update.
5393         (get_pp_number): Likewise.
5394         (get_token): Likewise.
5395         * macrocmd.c (skip_ws): New function.
5396         (extract_identifier): Likewise.
5397         (free_macro_definition_ptr): Likewise.
5398         (user_macros): Remove.
5399         (macro_define_command): Implement.
5400         (_initialize_macrocmd): Update.
5401         (macro_undef_command): Implement.
5402         (print_one_macro): New function.
5403         (macro_list_command): Implement.
5404
5405 2008-07-18  Joseph Myers  <joseph@codesourcery.com>
5406
5407         * configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
5408         in BFD ELF check.
5409         * configure: Regenerate.
5410
5411 2008-07-17  Paul Pluzhnikov  <ppluzhnikov@google.com>
5412
5413         * auxv.c (fprint_target_auxv): Stop at AT_NULL.
5414
5415 2008-07-15  Andreas Schwab  <schwab@suse.de>
5416
5417         * valops.c (value_cast_pointers): Follow typedefs when checking
5418         result of coercion.
5419
5420 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5421
5422         * block.c (block_function): Renamed to ...
5423         (block_linkage_function): ... this.  All callers changed.
5424         * block.h (block_function): Renamed to ...
5425         (block_linkage_function): ... this.
5426
5427 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5428
5429         * mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.
5430
5431 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5432
5433         * frame.c (frame_sp_unwind): Delete.
5434         (get_frame_sp): Do not use it.
5435         * frame.h (frame_sp_unwind): Delete prototype.
5436
5437 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5438
5439         * ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.
5440
5441 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5442
5443         * dwarf2-frame.c (dwarf2_frame_cache): Update comment.
5444         * frame.c (frame_unwind_address_in_block): Delete.
5445         (get_frame_address_in_block): Do not use it.  Check the type
5446         of the next frame first.
5447         (frame_cleanup_after_sniffer): Update comment.
5448         * frame.h (frame_unwind_address_in_block): Delete prototype.
5449         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
5450
5451 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5452
5453         * frame.c (frame_func_unwind): Delete.
5454         (get_frame_func): Do not use it.
5455         * frame.h (frame_func_unwind): Delete prototype.
5456         * hppa-tdep.c (hppa_frame_cache): Update comment.
5457         * rs6000-tdep.c (rs6000_frame_cache): Update comment.
5458
5459 2008-07-14  Stan Shebs  <stan@codesourcery.com>
5460
5461         * remote-sim.c (init_gdbsim_ops): Remove
5462         TARGET_REDEFINE_DEFAULT_OPS.
5463
5464 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5465
5466         * findvar.c (read_var_value): Remove unused variable.
5467
5468 2008-07-15  Luis Machado  <luisgpm@br.ibm.com>
5469
5470         * infrun.c (handle_inferior_event): Tag threads as stopped
5471         before inserting breakpoints.
5472
5473 2008-07-15  Hui Zhu  <teawater@gmail.com>
5474
5475         * MAINTAINERS: Added myself to section Write After Approval.
5476
5477 2008-07-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
5478
5479         PR gdb/2477
5480         * cp-abi.c (value_virtual_fn_field): Handle invalid pointers.
5481
5482 2008-07-14  Pedro Alves  <pedro@codesourcery.com>
5483
5484         * i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
5485         (i386_dicos_push_dummy_code): New.
5486         (i386_dicos_init_abi): Don't register i386_dicos_frame_align.
5487         Register i386_dicos_push_dummy_code.
5488
5489 2008-07-14  Markus Deuling  <deuling@de.ibm.com>
5490
5491         * mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
5492         (mips_n32n64_push_dummy_call, mips_o64_return_value)
5493         (mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
5494
5495         (MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
5496         (fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
5497         (mips_n32n64_fp_arg_chunk_p): Update caller.
5498
5499         (mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
5500         (mips_n32n64_push_dummy_call): Update caller.
5501
5502         (MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
5503         current_gdbarch.
5504         (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
5505         (mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
5506
5507
5508         (MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
5509         current_gdbarch.
5510         (mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
5511         (mips_o64_push_dummy_call): Update caller.
5512
5513         (MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
5514         (fp_register_arg_p, mips_dump_tdep): Update caller.
5515
5516         (set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
5517         (mips16_scan_prologue, mips32_scan_prologue): Update caller.
5518
5519         (reset_saved_regs): Make static.  Add gdbarch as parameter.  Replace
5520         current_gdbarch.
5521         (mips32_scan_prologue): Update caller.
5522
5523         (heuristic_proc_start): Add gdbarch as parameter. Replace
5524         current_gdbarch.
5525         (mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
5526
5527         * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
5528         (mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
5529         the current architecture. Update call to getregs_supplies.
5530         (getregs_supplies): Add gdbarch as parameter and replace
5531         current_gdbarch.
5532
5533         * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
5534         get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
5535         NBSD_MIPS_JB_ELEMENT_SIZE.
5536         (NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
5537         replace current_gdbarch.
5538
5539         * remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
5540         current_gdbarch.
5541         (mips_fetch_registers, mips_store_registers): Update call
5542         to mips_map_regno.
5543         (mips_load): Use get_regcache_arch to get at the current_architecture
5544         and replace current_gdbarch.
5545
5546 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5547
5548         * thread.c (restore_selected_frame): On fail to restore, select
5549         the innermost frame, and don't crash when warning the user.
5550
5551 2008-07-13  Hui Zhu  <teawater@gmail.com>
5552
5553         * symtab.c (expand_line_sal): Fix a memory leak.
5554
5555 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5556
5557         * utils.c (struct continuation): Define as inheriting struct
5558         cleanup.
5559         (add_continuation, do_all_continuations)
5560         (discard_all_continuations, add_intermediate_continuation)
5561         (do_all_intermediate_continuations)
5562         (discard_all_intermediate_continuations): Adjust.
5563
5564 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5565
5566         Skip varobj in running threads.
5567         * mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
5568         thread is not stopped, skip the varobj.
5569         * Makefile.in: Update dependencies.
5570
5571 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5572
5573         Enable all commands while inferiour is running
5574         * mi/mi-main.c (mi_cmd_execute): Don't check if
5575         inferiour is executing.
5576
5577 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5578
5579         Allow all CLI command even if target is executing.
5580         * gdb/top.c (execute_command_1): Don't check if the inferiour
5581         is running.
5582
5583 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5584
5585         * mi/mi-main.c (mi_cmd_execute): Remove unused variable.
5586         Fix printing of frame, when frame is wrong.
5587
5588 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5589
5590         * spu-tdep.c (spu_frame_unwind_cache): Do not error if
5591         backchain is unreadable.
5592
5593 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5594
5595         * spu-linux-nat.c: Include "gdbthread.h".
5596         (spu_child_post_startup_inferior): Register main thread.
5597         (spu_child_post_attach): Likewise.
5598         * Makefile.in (spu-linux-nat.o): Update dependencies.
5599
5600 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5601
5602         Rewrite continuations internals on top of cleanups and plug
5603         continuation arguments leaks.
5604
5605         * defs.h (struct continuation): Make it opaque.
5606         (add_continuation, add_intermediate_continuation): Drop the int
5607         argument of the continuation hook argument.  Add
5608         continuation_free_args argument.
5609         (do_all_continuations, do_all_intermediate_continuations): Drop
5610         the error_p argument.
5611
5612         * utils.c (add_continuation): Drop the int argument of the
5613         continuation hook argument.  Add continuation_free_args argument.
5614         Reimplement on top of cleanups.
5615         (do_all_continuations): Drop error argument.  Reimplement on top
5616         of cleanups.
5617         (discard_all_continuations): Reimplement on top of cleanups.
5618         (add_intermediate_continuation): Drop the int argument of the
5619         continuation hook argument.  Add continuation_free_args argument.
5620         Reimplement on top of cleanups.
5621         (do_all_intermediate_continuations): Drop error argument.
5622         Reimplement on top of cleanups.
5623         (discard_all_intermediate_continuations): Reimplement on top of
5624         cleanups.
5625
5626         * breakpoint.c (until_break_command_continuation): Drop error
5627         argument.  Add xfree as continuation argument deleter.
5628
5629         * inf-loop.c (inferior_event_handler): On error, discard all
5630         continuations.  Adjust to new do_all_intermediate_continuations
5631         and do_all_continuations interfaces.
5632
5633         * infcmd.c (step_1_continuation): Drop error_p argument.  Adjust.
5634         Pass xfree as continuation argument deleter.
5635         (finish_command_continuation): Drop error_p argument.  Adjust.
5636         (finish_command_continuation_free_arg): New.
5637         (finish_command): Pass finish_command_continuation_free_arg as
5638         continuation argument deleter.  Adjust to new do_all_continuations
5639         interfaces.
5640         (attach_command_continuation): Drop error_p argument.
5641         (attach_command_continuation_free_args): New.
5642         (attach_command): Pass attach_command_continuation_free_args as
5643         continuation argument deleter.
5644
5645         * interps.c (interp_set): Adjust to new do_all_continuations
5646         interfaces.
5647
5648         * event-top.c (stdin_event_handler): In error, also discard the
5649         intermediate continuations.
5650
5651 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5652
5653         Replace struct continuation_args by void* and per command structs.
5654
5655         * top.c (execute_command): Remove unused arg1 and arg2 locals.
5656
5657         * breakpoint.c (struct until_break_command_continuation_args):
5658         New.
5659         (until_break_command_continuation): Take a void* instead of a
5660         continuations_arg.  Adjust.
5661         (until_break_command): Adjust to use struct
5662         until_break_command_continuation_args instead of struct
5663         continuation_arg.
5664
5665         * infcmd.c (struct step_1_continuation_args): New.
5666         (step_1_continuation): Take a void* instead of a
5667         continuations_arg.  Adjust to use struct step_1_continuation_args.
5668         (step_once): Adjust to use struct step_1_continuation_args.
5669
5670         (struct finish_command_continuation_args): New.
5671         (finish_command_continuation): Take a void* instead of a
5672         continuations_arg.  Adjust to use struct
5673         finish_command_continuation_args.
5674         (finish_command): Adjust to use struct
5675         finish_command_continuation_args.
5676         (struct attach_command_continuation_args): New.
5677         (attach_command_continuation): Take a void* instead of a
5678         continuations_arg.  Adjust to use struct
5679         attach_command_continuation_args.
5680         (attach_command): Adjust to use struct
5681         attach_command_continuation_args.
5682
5683         * defs.h (struct continuation_arg): Delete.
5684         (struct continuation): Replace the struct continuation_arg*
5685         parameter of continuation_hook by a void*.  Replace "arg_list"
5686         member by a new "args" member with void* type.
5687         (add_continuation, add_intermediate_continuation): Replace struct
5688         continuation_arg type usages by void* usages.
5689
5690         * utils.c (add_continuation, do_all_continuations)
5691         (add_intermediate_continuation)
5692         (do_all_intermediate_continuations): Replace struct
5693         continuation_arg type usages by void* usages.  Pass "args" instead
5694         of "arg_list".
5695
5696 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5697
5698         * infrun.c (struct thread_stepping_state): Delete sal member.
5699         (init_thread_stepping_state): Add local sal.  Use it instead of
5700         tss->sal.
5701         (handle_inferior_event): New local stop_pc_sal.  Use it instead of
5702         tss->sal.
5703         (step_into_function): Add local stop_func_sal.  Use it instead of
5704         tss->sal.
5705
5706 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5707
5708         Implement -exec-continue/-exec-interrupt --all.
5709         * infcmd.c (continue_1): New, extracted from
5710         (continue_command): ...here.
5711         (interrupt_target_1): New, extracted from
5712         (interrupt_target_command): ...here.
5713         * inferior.h (continue_1, interrupt_target_1): New.
5714         * mi/mi-main.c (mi_cmd_exec_continue)
5715         (mi_cmd_exec_interrupt): Handle --all.
5716
5717 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5718
5719         Implement --thread and --frame.
5720         * gdbthread.h (find_thread_id): Declare.
5721         * thread.c (find_thread_id): Make non-static.
5722         * mi/mi-main.c (mi_cmd_execute): Switch to the right
5723         thread and frame, if necessary.
5724         * mi/mi-parse.c (mi_parse): Handle --thread and --frame.
5725         * mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
5726
5727 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5728
5729         * infrun.c (resume): Discard cleanups on early exit path.
5730
5731 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5732
5733         * infrun.c (normal_stop): For MI, report which threads
5734         were stopped.
5735
5736 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5737
5738         Report thread state in -thread-info output.
5739         * thread.c (print_thread_info): Add new field "state".
5740
5741 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5742
5743         * infrun.c (handle_inferior_event): Also ignore a
5744         TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
5745
5746 2008-07-11  Tom Tromey  <tromey@redhat.com>
5747
5748         * completer.c (complete_line_internal): New function, from
5749         complete_line.  Add 'for_help' parameter.
5750         (complete_line): Use it.
5751         (command_completer): Move later.  Rewrite.
5752
5753 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5754
5755         * thread.c (thread_apply_command): Move making the cleanup out of
5756         the loop.
5757
5758 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5759
5760         Exited threads.
5761
5762         * thread.c (enum thread_state): New.
5763         (thread_state main_thread_running): Delete, in favor of...
5764         (thread_state main_thread_state): ... this.  Update throughout.
5765         (clear_thread_inferior_resources): New, split from free_thread.
5766         (free_thread): Call clear_thread_inferior_resources.
5767         (init_thread_list): Set main thread to stopped state.
5768         (add_thread_silent): Take care of PTID reuses.
5769         (delete_thread): If deleting inferior_ptid or a thread with
5770         refcount > 0, mark it as exited, but still keep it in the list.
5771         Only notify of thread exits, if we haven't done so yet.
5772         (iterate_over_threads): Make it safe to delete threads while
5773         iterating over them.
5774         (do_captured_list_thread_ids): Don't account for exited threads.
5775         (thread_alive): Check for the THREAD_EXITED state, and don't set
5776         ptid to -1 on exited threads.
5777         (set_running): Update to account for extra possible states.
5778         (is_thread_state): New.
5779         (is_stopped, is_exited): New.
5780         (is_running): Implement in terms of is_thread_state.
5781         (any_running): Update.
5782         (print_thread_info): Update.  Account for exited threads.  Don't
5783         warn about missed frame restoring here, its done in the cleanup.
5784         (switch_to_thread): Don't read from a thread that has gone.
5785         (restore_current_thread): In non-stop mode, do a full context
5786         switch.
5787         (restore_selected_frame): Add a frame_level argument.  Rewrite.
5788         (struct current_thread_cleanup): Add selected_frame_level and
5789         was_stopped members.
5790         (do_restore_current_thread_cleanup): Check if thread was stopped
5791         and still is, and if the target has registers, stack and memory
5792         before restoring the selected frame.  Don't delete the cleanup
5793         argument here.
5794         (restore_current_thread_cleanup_dtor): New.
5795         (make_cleanup_restore_current_thread): Remove all arguments.
5796         Rewrite.
5797         (thread_apply_all_command): Update.  Prune threads.
5798         (thread_apply_command): Update.
5799         (thread_command): Account for currently selected exited thread.
5800         (do_captured_thread_select): Check for a running thread.  Prune
5801         threads.
5802         (_initialize_thread): Make "info threads", "thread", "thread
5803         apply", and "thread apply all" appliable without a selected thread.
5804         * gdbthread.h (struct thread_info): Replace running_ by state_.
5805         Add refcount.
5806         (is_exited, is_stopped): Declare.
5807         (make_cleanup_restore_current_thread): Remove all arguments.
5808         * infrun.c: Include "event-top.h".
5809         (fetch_inferior_event): In non-stop mode, restore selected thread
5810         and frame after handling the event and running breakpoint
5811         commands.  Display GDB prompt if needed.
5812         (normal_stop): In non-stop mode, don't print thread switching
5813         notice.
5814         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
5815         (get_cmd_no_selected_thread_ok): New.
5816         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
5817         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
5818         Declare.
5819         * cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
5820         no-selected-thread ok.
5821         * top.c (execute_command): Check for non no-selected-thread-ok
5822         commands.
5823         * linux-nat.c (struct saved_ptids, threads_to_delete)
5824         (record_dead_thread, prune_lwps): Delete.
5825         (exit_lwp): Unconditionally delete thread.
5826         (linux_nat_resume): Remove prune_lwps call.
5827         * infcmd.c (proceed_thread_callback): Check if !is_stopped instead
5828         of is_running.  Adjust to make_cleanup_restore_current_thread
5829         interface change.
5830         * mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
5831         selected thread has exited.
5832         * inf-loop.c (inferior_event_handler): Don't display the prompt
5833         here.
5834         * varobj.c (c_value_of_root): Update.
5835         * defs.h (make_cleanup_dtor): Declare.
5836         * utils.c (make_cleanup_dtor): New.
5837
5838         * Makefile.in (infrun.o): Depend on $(event_top_h).
5839
5840 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5841
5842         Add "continue -a" and "interrupt -a" options for non-stop mode.
5843
5844         * infcmd.c (proceed_thread_callback, do_context_switch_to): New.
5845         (continue_command): Add "-a" option.
5846         (interrupt_target_command): Add "-a" option.
5847         (_initialize_infcmd): Add extend help of continue and interrupt
5848         command to mention the new "-a" option.  Mark "continue" async ok.
5849
5850 2008-07-10  Doug Evans  <dje@google.com>
5851
5852         Add "set print symbol-loading on|off".
5853         * NEWS: Document new option.
5854         * symfile.h (print_symbol_loading): Declare.
5855         * symfile.c (print_symbol_loading): New global.
5856         (symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
5857         from ..." if print_symbol_loading.
5858         (_initialize_symfile): Add set/show print symbol-loading.
5859         * solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
5860         if print_symbol_loading.
5861
5862 2008-07-10  Pedro Alves  <pedro@codesourcery.com>
5863
5864         Non-stop linux native.
5865
5866         * linux-nat.c (linux_test_for_tracefork): Block events while we're
5867         here.
5868         (get_pending_status): Implement non-stop mode.
5869         (linux_nat_detach): Stop threads before detaching.
5870         (linux_nat_resume): In non-stop mode, always resume only a single
5871         PTID.
5872         (linux_handle_extended_wait): On a clone event, in non-stop mode,
5873         add new lwp to GDB's thread table, and mark as running, executing
5874         and stopped appropriately.
5875         (linux_nat_filter_event): Don't assume there are other running
5876         threads when a thread exits.
5877         (linux_nat_wait): Mark the main thread as running and executing.
5878         In non-stop mode, don't stop all lwps.
5879         (linux_nat_kill): Stop lwps before killing them.
5880         (linux_nat_thread_alive): Use signal 0 to detect if a thread is
5881         alive.
5882         (send_sigint_callback): New.
5883         (linux_nat_stop): New.
5884         (linux_nat_add_target): Set to_stop to linux_nat_stop.
5885
5886         * linux-nat.h (thread_db_attach_lwp): Declare.
5887
5888         * linux-thread-db.c (thread_get_info_callback): Check for new
5889         threads if we have none.
5890         (thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
5891         stopped lwp.  Check for new threads if we have none.
5892         (thread_db_attach_lwp): New.
5893         (thread_db_init): Set proc_handle.pid to inferior_ptid.
5894         (check_event): Set proc_handle.pid to the stopped lwp.
5895         (thread_db_find_new_threads): Set proc_handle.pid to any stopped
5896         lwp available, bail out if there is none.
5897
5898         * linux-fork.c (linux_fork_killall): Use SIGKILL instead of
5899         PTRACE_KILL.
5900
5901 2008-07-10  Kevin Buettner  <kevinb@redhat.com>
5902
5903         * rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
5904         `current_pc' from CORE_ADDR to ULONGEST.
5905
5906         * remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
5907         gdbsim_stop().
5908
5909 2008-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
5910
5911         * NEWS (New commands): Mention "set disable-randomization".
5912         * configure.ac: Add check for HAVE_PERSONALITY and
5913         HAVE_DECL_ADDR_NO_RANDOMIZE.
5914         * configure, config.in: Regenerate.
5915         * linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>.
5916         [HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set
5917         ADDR_NO_RANDOMIZE.
5918         (disable_randomization, show_disable_randomization)
5919         (set_disable_randomization): New.
5920         (linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables
5921         PERSONALITY_ORIG and PERSONALITY_SET.  Disable randomization upon the
5922         variable DISABLE_RANDOMIZATION.
5923         (_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable
5924         DISABLE_RANDOMIZATION.
5925
5926 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5927
5928         Adjust all targets to new target_stop interface.
5929
5930         * gnu-nat.c (gnu_stop): Add ptid argument.
5931         * go32-nat.c (go32_stop): Add ptid argument.
5932         (go32_create_inferior): Pass inferior_ptid to go32_stop.
5933         * hpux-thread.c (hpux_thread_stop): Add ptid argument.
5934         * monitor.c (monitor_stop): Add ptid argument.
5935         (monitor_open): Pass inferior_ptid to monitor_stop.
5936         (monitor_interrupt): Pass inferior_ptid to target_stop.
5937         (monitor_stop): Add ptid argument.
5938         * nto-procfs.c (nto_interrupt): Pass inferior_ptid to target_stop.
5939         (procfs_create_inferior): Add ptid argument.
5940         * procfs.c (procfs_stop): Add ptid argument.
5941         * remote-m32r-sdi.c (m32r_stop): Add ptid argument.
5942         * remote-sim.c (gdbsim_stop): Add ptid argument.
5943         * sol-thread.c (sol_thread_stop): Add ptid argument.
5944         * win32-nat.c (win32_stop): Add ptid argument.
5945
5946 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5947
5948         Non-stop inferior control.
5949
5950         * infrun.c (resume): In non-stop mode, always resume just one
5951         thread.
5952         (proceed): Don't call prepare_to_proceed in non-stop mode.
5953         (fetch_inferior_event): In non-stop mode, switch context before
5954         handling the event.
5955         (error_is_running, ensure_not_running): New.
5956         (handle_inferior_event): In non-stop mode: Mark only the event
5957         thread as stopped.  Require that the target module manages adding
5958         threads to the thread list.  Assert that there isn't a
5959         deferred_step_ptid set.  Don't switch to infwait_thread_hop_state.
5960         (normal_stop): Only mark not-running if inferior hasn't exited.
5961         In non-stop mode, only mark the event thread.
5962
5963         * thread.c:Include "cli/cli-decode.h".
5964         (print_thread_info): Don't read from a running thread.
5965         Output "(running)" if thread is running.
5966         (switch_to_thread): Don't read stop_pc if thread is executing.
5967         (do_restore_current_thread_cleanup): Don't write to a running
5968         thread.
5969         (thread_apply_all_command): Don't read from a running thread.  In
5970         non-stop mode, do a full context-switch instead of just switching
5971         threads.
5972         (thread_apply_command): In non-stop mode, do a full context-switch
5973         instead of just switching threads.
5974         (do_captured_thread_select): Likewise.  Inform user if selected
5975         thread is running.
5976         (_initialize_thread): Mark "info threads" and "thread" and
5977         async_ok.
5978
5979         * inf-loop.c (inferior_event_handler): In non-stop mode, don't
5980         unregister the target from the event loop.
5981
5982         * infcmd.c (continue_command, step_1, jump_command)
5983         (signal_command): Ensure the selected thread isn't running.
5984         (interrupt_target_command): In non-stop mode, interrupt only the
5985         selected thread.
5986
5987         * inferior.h (error_is_running, ensure_not_running): Declare.
5988
5989         * target.h (struct target_ops): Add ptid argument to the to_stop
5990         member.
5991         (target_stop): Add ptid_t argument.
5992
5993         * target.c (update_current_target): Add ptid argument to to_stop's
5994         type.
5995         (debug_to_stop): Add ptid_t argument.
5996         (debug_to_rcmd): Set to_stop_ptid.
5997
5998         * remote.c (remote_stop): Add ptid_t argument.
5999         (async_remote_interrupt): Add inferior_ptid to target_stop.
6000         * inf-ptrace.c (inf_ptrace_stop): Add ptid argument.
6001
6002         * Makefile.in (thread.o): Depend on $(cli_decode_h).
6003
6004 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6005
6006         Don't rely on ecs->wait_for_more.
6007
6008         * infrun.c (proceed): Clear the stepping state, set
6009         previous_inferior_ptid and clear infwait state.
6010         (wait_for_inferior): Don't clear the stepping state, set
6011         previous_inferior_ptid, or clear the infwait state here.
6012         (fetch_inferior_event): Don't clear the stepping state, set
6013         previous_inferior_ptid, or clear the infwait state here.  Don't
6014         condition on wait_for_more.
6015
6016 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6017
6018         Refactor infrun a bit.
6019
6020         * infrun.c (currently_stepping): Take a struct
6021         thread_stepping_state instead of an execution_control_state.
6022         (struct thread_stepping_state): New, split from
6023         execution_control_state.
6024         (gtss, tss): New globals.
6025         (proceed): Clear the stepping state, set previous_inferior_ptid
6026         and clear infwait state.
6027         (init_wait_for_inferior): Clear the stepping state,
6028         previous_inferior_ptid and infwait state.
6029         (waiton_ptid, infwait_state): New, split from
6030         execution_control_state.
6031         (struct execution_control_state): Members that persist through
6032         events moved out to either struct thred_stepping_state or made
6033         global.  Deleted unneeded wp, saved_inferior_ptid, tmpstatus.
6034         (wait_for_inferior, fetch_inferior_event): Use local
6035         execution_control_state.  Update to execution_control_state split.
6036         (init_execution_control_state): Adjust.
6037         (init_thread_stepping_state): New, extracted from
6038         init_execution_control_state.
6039         (context_switch): Take a ptid instead of an
6040         execution_control_state.
6041         (context_switch_to): Adjust.
6042         (adjust_pc_after_break): Adjust.
6043         (init_infwait_state): New.
6044         (handle_inferior_event): Adjust.
6045
6046 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6047             Vladimir Prus  <vladimir@codesourcery.com>
6048
6049         Per-thread commands.
6050
6051         * gdbthread.h: Remove unneeded forward declarations.
6052         Include "inferior.h".
6053         (struct thread_info): Add continuations,
6054         intermediate_continuations, proceed_to_finish, step_over_calls,
6055         stop_step, step_multi and stop_signal members.
6056         (save_infrun_state): Add continuations,
6057         intermediate_continuations, proceed_to_finish, step_over_calls,
6058         stop_step, step_multi, stop_signal and stop_bpstat parameters.
6059         (load_infrun_state): Add continuations,
6060         intermediate_continuations, proceed_to_finish, step_over_calls,
6061         stop_step, step_multi, stop_signal and stop_bpstat parameters.
6062
6063         * thread.c (load_infrun_state): In non-stop mode, load
6064         continuations, intermediate_continuations, proceed_to_finish,
6065         step_over_calls, stop_step, step_multi and stop_signal.
6066         (save_infrun_state): Store continuations,
6067         intermediate_continuations, proceed_to_finish, step_over_calls,
6068         stop_step, step_multi, stop_signal and stop_bpstat.
6069         (save_infrun_state): Store continuations,
6070         intermediate_continuations, proceed_to_finish, step_over_calls,
6071         stop_step, step_multi, stop_signal and stop_bpstat.
6072         (free_thread): Clear The thread's stop_bpstat.
6073
6074         * inferior.h (context_switch_to): Declare.
6075
6076         * infrun.c (ecss): New global.
6077         (context_switch): Context switch continuations,
6078         intermediate_continuations, proceed_to_finish, step_over_calls,
6079         stop_step, step_multi, stop_signal and stop_bpstat.
6080         (wait_for_inferior): Use global ecss.
6081         (async_ecss, async_ecs): Delete.
6082         (fetch_inferior_event): Use global ecss.
6083         (context_switch_to): New.
6084
6085         * top.c (execute_command): In non-stop, only check if the current
6086         thread is running, in all-stop, check if there's any thread
6087         running.
6088
6089         * breakpoint.c (bpstat_remove_breakpoint): New.
6090         (bpstat_remove_breakpoint_callback): New.
6091         (delete_breakpoint): Clear the stop_bpstats of all threads.
6092
6093         * mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
6094         current thread is running, in all-stop, check if there's any
6095         thread running.
6096
6097         * Makefile.in (gdbthread_h): Depend on $(inferior_h).
6098
6099 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6100
6101         Add non_stop global.
6102
6103         * inferior.h (non_stop): Declare.
6104         * infrun.c (non_stop, non_stop_1): New.
6105         (set_non_stop, show_non_stop): New.
6106         (_initialize_infrun): Add "set/show non-stop" command.
6107
6108 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6109
6110         Adjust fork/vfork/exec to pass ptids around.
6111
6112         * target.h (struct target_waitstatus): Store related_pid as a ptid.
6113         (inferior_has_forked, inferior_has_vforked, inferior_has_execd):
6114         Take a ptid_t.
6115         * breakpoint.h (struct breakpoint): Change forked_inferior_pid
6116         type to ptid.
6117         * breakpoint.c (print_it_typical, bpstat_check_location)
6118         (print_one_breakpoint_location, set_raw_breakpoint_without_location)
6119         (create_fork_vfork_event_catchpoint): Adjust.
6120         * infrun.c (fork_event): Change parent_pid and child_pid types to
6121         ptid.
6122         (follow_exec, inferior_has_forked, inferior_has_vforked)
6123         (inferior_has_execd): Take a ptid_t and don't trim it.
6124         * linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
6125         * linux-nat.c (linux_child_follow_fork): Adjust.
6126         * inf-ptrace.c (inf_ptrace_wait): Adjust.
6127         * inf-ttrace.c (inf_ttrace_wait): Adjust.
6128         * win32-nat.c (get_win32_debug_event): Don't set related_pid.
6129
6130 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6131
6132         Add "executing" property to threads.
6133
6134         * inferior.h (target_executing): Delete.
6135         * gdbthread.h (struct thread_info): Add executing_ field.
6136         (set_executing, is_executing): New.
6137         * thread.c (main_thread_executing): New.
6138         (init_thread_list): Clear it and also main_thread_running.
6139         (is_running): Return false if target has no execution.
6140         (any_running, is_executing, set_executing): New.
6141
6142         * top.c: Include "gdbthread.h".
6143         (target_executing): Delete.
6144         (execute_command): Replace target_executing check by any_running.
6145         * event-top.c: Include "gdbthread.h".
6146         (display_gdb_prompt, command_handler): Replace target_executing by
6147         is_running.
6148         * inf-loop.c: Include "gdbthread.h".  Don't mark as not executing
6149         here.  Replace target_executing by is_running.
6150         * infrun.c (handle_inferior_event): Mark all threads as
6151         not-executing.
6152         * linux-nat.c (linux_nat_resume): Don't mark thread as executing
6153         here.
6154         * stack.c (get_selected_block): Return null if inferior is
6155         executing.
6156         * target.c (target_resume): Mark resumed ptid as executing.
6157         * breakpoint.c (until_break_command): Replace target_executing
6158         check by is_executing.
6159         * remote.c (remote_async_resume): Don't mark inferior as executing
6160         here.
6161         * mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
6162         by any_running.
6163
6164         * mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
6165         (mi_execute_async_cli_command): Replace target_executing by
6166         is_running.
6167
6168         * frame.c (get_current_frame): Error out if the current thread is
6169         executing.
6170         (has_stack_frames): New.
6171         (get_selected_frame, deprecated_safe_get_selected_frame): Check
6172         has_stack_frames.
6173
6174         * Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
6175         $(gdbthread_h).
6176
6177 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6178
6179         * symfile.c (load_command): Reopen the exec file and reread
6180         symbols before anything else.
6181
6182 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6183
6184         * remote-sim.c: Include gdbthread.h.
6185         (remote_sim_ptid): New global.
6186         (gdbsim_create_inferior): Silently add the main task to GDB's
6187         thread list.
6188         (gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
6189         task from GDB's thread list.
6190         (gdbsim_resume): Adjust to use remote_sim_ptid.
6191         (gdbsim_thread_alive, gdbsim_pid_to_str): New.
6192         (init_gdbsim_ops): Register gdbsim_thread_alive and
6193         gdbsim_pid_to_str.
6194         (_initialize_remote_sim): Initialize remote_sim_ptid.
6195         * Makefile.in (remote-sim.o): Depend on $(gdbthread_h).
6196
6197 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6198
6199         * monitor (monitor_ptid): New global.
6200         (monitor_open): Silently add the main task to GDB's thread list.
6201         (monitor_close, monitor_mourn_inferior): Silently delete the main
6202         task from GDB's thread list.
6203         (monitor_thread_alive, monitor_pid_to_str): New.
6204         (init_base_monitor_ops): Register monitor_thread_alive and
6205         monitor_pid_to_str.
6206         (_initialize_remote_monitors): Initialize monitor_ptid.
6207
6208         * gdbthread.h (delete_thread_silent): Declare.
6209         * thread.c (delete_thread): Rename to ...
6210         (delete_thread_1): ... this.  Add "silent" parameter.  If silent,
6211         don't do exit notifications.
6212         (delete_thread, delete_thread_silent): New, as wrappers to
6213         delete_thread_1.
6214
6215 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6216
6217         * breakpoint.c (update_global_location_list): Add boolean
6218         "should_insert" argument.  Only insert locations if caller told it
6219         too.
6220         (update_global_location_list_nothrow): Add boolean "should_insert"
6221         argument.  Pass it to update_global_location_list.
6222         (insert_breakpoints, create_longjmp_breakpoint)
6223         (create_overlay_event_breakpoint, enable_overlay_breakpoints)
6224         (create_thread_event_breakpoint, create_solib_event_breakpoint)
6225         (create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
6226         (enable_watchpoints_after_interactive_call_stop)
6227         (set_momentary_breakpoint, create_breakpoints)
6228         (break_command_really, watch_command_1)
6229         (create_ada_exception_breakpoint, update_breakpoint_locations)
6230         (do_enable_breakpoint, enable_command): Pass true to
6231         update_global_location_list.
6232         (bpstat_stop_status, disable_overlay_breakpoints)
6233         (disable_watchpoints_before_interactive_call_start)
6234         (delete_breakpoint, disable_breakpoint, disable_command): Pass
6235         false to update_global_location_list.
6236         (update_breakpoints_after_exec): Don't temporarily disable
6237         always-inserted mode.
6238
6239 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6240
6241         * breakpoint.c (mark_breakpoints_out): Make public.
6242         (update_breakpoints_after_exec): Don't call mark_breakpoints_out
6243         here.  Update comment.
6244         * breakpoint.h (mark_breakpoints_out): Declare.
6245
6246         * linux-nat.c (linux_handle_extended_wait): On
6247         TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
6248         * inf-ttrace.c (inf_ttrace_wait): Likewise.
6249
6250 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6251
6252         * infrun.c (follow_exec): Reset shared libraries before adding the
6253         main exec file.
6254
6255 2008-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6256
6257         * breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.
6258
6259 2008-07-07  Pedro Alves  <pedro@codesourcery.com>
6260
6261         * i386-dicos-tdep.c: Include "inferior.h".
6262         (i386_dicos_frame_align): New.
6263         (i386_dicos_init_abi): Register i386_dicos_frame_align.  Set call
6264         dummy location ON_STACK.
6265         * Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).
6266
6267 2008-07-07  Joel Brobecker  <brobecker@adacore.com>
6268
6269         * gstdint.h: New file.
6270
6271 2008-07-05  Vladimir Prus  <vladimir@codesourcery.com>
6272
6273         * mi/mi-interp.c (mi_on_resume): Don't try to report
6274         resumed thread it the thread list is empty.
6275
6276 2008-07-05  Pierre Muller  <muller@ics.u-strasbg.fr>
6277
6278         * cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
6279         completer for set to filename_completer.
6280
6281         NEWS: Mention it.
6282
6283 2008-07-04  Vladimir Prus  <vladimir@codesourcery.com>
6284
6285         Implement -target-attach.
6286         * mi/mi-cmds.c (mi_cmds): Forward -target-attach to CLI attach.
6287
6288 2008-06-21  Hui Zhu  <teawater@gmail.com>
6289
6290         * target-descriptions.c (maint_print_c_tdesc_cmd): Fix a memory leak.
6291
6292 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6293
6294         * config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.
6295         * config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete.
6296
6297         * target.h (struct target_ops): Add to_attach_no_wait member.
6298         (target_attach_no_wait): New.
6299         * target.c (update_current_target): Inherit to_attach_no_wait.
6300
6301         * infcmd.c: Replace ATTACH_NO_WAIT compile time check by
6302         target_attach_no_wait runtime check.
6303
6304         * gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops.
6305         * win32-nat.c (init_win32_ops): Set to_attach_no_wait in
6306         win32_ops.
6307
6308 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6309
6310         * i386-tdep.c (i386_displaced_step_fixup): Condition log printing
6311         on debug_displaced being set.
6312
6313 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6314
6315         * frame.c (get_prev_frame_1): Call frame_unwind_find_by_frame
6316         directly instead of get_frame_id.
6317
6318 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6319
6320         * rs6000-tdep.c (ppc_displaced_step_fixup): New function.
6321         (deal_with_atomic_sequence): Update BC masks.
6322         (rs6000_gdbarch_init): Init displaced stepping infra-structure.
6323         Define BRANCH_MASK, B_INSN, BC_INSN, BXL_INSN, BP_MASK and BP_INSN.
6324
6325 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6326
6327         * cris-tdep.c (crisv32_single_step_through_delay): Get this frame's
6328         register, not the previous frame's.
6329
6330 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6331
6332         * source.c (select_source_symtab): Make sure we skip namespace
6333         symtabs when showing cpp source code.
6334
6335 2008-06-30  Hans-Peter Nilsson  <hp@axis.com>
6336
6337         * MAINTAINERS (Authorized committers): Fix my email address.
6338
6339 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6340
6341         * mi/mi-cmds.c (mi_cmds): Route -exec-run, -exec-until,
6342         -target-download and -target-select via CLI, so that
6343         the quoting rules are the same as they were (unfortunately)
6344         in all prior gdb releases.
6345         * mi/mi-cmds.h (mi_cmd_exec_run, mi_cmd_exec_until)
6346         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6347         * mi/mi-main.c (mi_cmd_exec_run, mi_cmd_exec_until)
6348         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6349         (mi_cmd_execute): Set current_token even for commands
6350         routed via CLI.
6351
6352 2008-06-28  Ulrich Weigand  <uweigand@de.ibm.com>
6353
6354         * alphafbsd-tdep.c: Update for unwinder changes.
6355         * alpha-linux-tdep.c: Likewise.
6356         * alphanbsd-tdep.c: Likewise.
6357         * alphaobsd-tdep.c: Likewise.
6358         * avr-tdep.c: Likewise.
6359         * cris-tdep.c: Likewise.
6360         * frv-linux-tdep.c: Likewise.
6361         * frv-tdep.c: Likewise.
6362         * h8300-tdep.c: Likewise.
6363         * hppa-linux-tdep.c: Likewise.
6364         * iq2000-tdep.c: Likewise.
6365         * m32c-tdep.c: Likewise.
6366         * m32r-linux-tdep.c: Likewise.
6367         * m32r-tdep.c: Likewise.
6368         * m68hc11-tdep.c: Likewise.
6369         * mep-tdep.c: Likewise.
6370         * mn10300-tdep.c: Likewise.
6371         * mt-tdep.c: Likewise.
6372         * score-tdep.c: Likewise.
6373         * sh64-tdep.c: Likewise.
6374         * sh-tdep.c: Likewise.
6375         * sparc64fbsd-tdep.c: Likewise.
6376         * sparc64nbsd-tdep.c: Likewise.
6377         * sparc64obsd-tdep.c: Likewise.
6378         * v850-tdep.c: Likewise.
6379         * vaxobsd-tdep.c: Likewise.
6380         * vax-tdep.c: Likewise.
6381         * xstormy16-tdep.c: Likewise.
6382
6383 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6384
6385         * mi/mi-main.c (enum captured_mi_execute_command_actions)
6386         (captured_mi_execute_command_args): Remove.
6387         (captured_mi_execute_command): Cast the closure to mi_parse
6388         pointer, not to captured_mi_execute_command_args, and don't
6389         set the action field thereof.
6390         (mi_execute_command): Pass struct mi_parse, not
6391         captured_mi_execute_command_args to captured_mi_execute_command.
6392         (mi_execute_command): Remove (dead) code for suppressing
6393         printing prompt.
6394
6395 2008-06-28  Pedro Alves  <pedro@codesourcery.com>
6396
6397         * linux-nat.c (enum sigchld_state): New.
6398         (linux_nat_async_events_state): Renamed from
6399         linux_nat_async_events_enabled.
6400         (linux_nat_event_pipe_push, my_waitpid): Adjust.
6401         (sigchld_default_action): New.
6402         (lin_lwp_attach_lwp): Adjust.  Call linux_nat_async_events
6403         unconditionally.
6404         (linux_nat_create_inferior): Set events state to sigchld_default
6405         state.
6406         (linux_nat_resume): Adjust.
6407         (linux_nat_wait): Call linux_nat_async_events unconditionally.
6408         (sigchld_handler): Adjust.
6409         (linux_nat_async_mask): Don't set SIGCHLD actions here.
6410         (get_pending_events): Adjust.
6411         (linux_nat_async_events): Rewrite to handle enum sigchld_state
6412         instead of a boolean.
6413         (linux_nat_async): Adjust.
6414         (_initialize_linux_nat): Capture default SIGCHLD action into
6415         sigchld_default_action.
6416
6417 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6418
6419         * breakpoint.c (moribund_locations): New.
6420         (bpstat_stop_status): Process moribund locations.
6421         (update_global_location_list): Add removed
6422         locations to moribund_locations.
6423         (breakpoint_retire_moribund): New.
6424         * breakpoint.h (struct bp_location): New field
6425         events_till_retirement.
6426         (breakpoint_retire_moribund): Declare.
6427         * thread.c (thread_count): New.
6428         * infrun.c (handle_inferior_event): Call
6429         breakpoint_retire_moribund.
6430         * gdbthread.h (thread_count): Declare.
6431
6432 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6433
6434         * dfp.c (decimal_convert): Call match_endianness before and after
6435         conversion.
6436
6437 2008-06-27  Jonathan Larmour  <jifl@eCosCentric.com>
6438
6439         * remote.c (remote_insert_breakpoint): Ensure that if Z0
6440         unsupported and we fall back to memory_insert_breakpoint, we
6441         use the unmodified requested address.
6442
6443 2008-06-27  Joel Brobecker  <brobecker@adacore.com>
6444
6445         * dwarf2read.c (read_attribute_value): Issue a complaint when
6446         adjusting size attribute values of 0xffffffff as zero.
6447
6448 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6449
6450         * i386-tdep.c (i386_16_byte_align_p): New.
6451         (i386_push_dummy_call): Determine stack space required for
6452         arguments going forwards allowing for 16-byte alignment, then push
6453         arguments going forwards.
6454
6455 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6456
6457         * infrun.c (start_remote): Don't clear thread list here.
6458         * monitor.c (monitor_open): Include "gdbthread.h".  Clear thread
6459         list here.
6460         * remote.c (record_currthread): Upgrade the main thread and its
6461         entry in the thread list if this is the first time we hear about
6462         threads.
6463         (remote_thread_alive): Consider magic_null_ptid or a ptid without
6464         a tid member always alive.
6465         (remote_find_new_threads): Don't update the main thread here.
6466         (remote_start_remote): Clear thread list here.  Always add the
6467         main thread.
6468         (extended_remote_attach_1): Add the main thread here.
6469         (extended_remote_mourn_1): Re-add the main thread here.
6470         (extended_remote_create_inferior_1): Add a main thread.
6471
6472         * Makefile.in (monitor.o): Depend on $(gdbthread_h).
6473
6474 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6475
6476         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
6477
6478         * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
6479         globals.
6480         (general_thread, continue_thread): Change type to ptid_t.
6481         (record_currthread): Take a ptid_t parameter instead of an
6482         integer.
6483         (MAGIC_NULL_PID): Delete.
6484         (set_thread): Take a ptid_t parameter and adjust.
6485         (set_general_thread, set_continue_thread): New.
6486         (remote_thread_alive, remote_newthread_step)
6487         (remote_current_thread, remote_find_new_threads)
6488         (remote_threads_info, remote_start_remote, remote_vcont_resume)
6489         (remote_resume_1, remote_wait, extended_remote_create_inferior_1)
6490         (threadalive_test, remote_pid_to_str)
6491         (remote_get_thread_local_address): Adjust.
6492         (_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
6493         and any_thread_ptid.
6494
6495 2008-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
6496
6497         * configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
6498         * configure: Regenerated.
6499
6500 2008-06-26  Joel Brobecker  <brobecker@adacore.com>
6501
6502         * dwarf2read.c (read_attribute_value): Treat size attribute
6503         values of 0xffffffff as if the attribute value was zero.
6504
6505 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6506
6507         * linux-nat.c: Add description of overall logic.
6508
6509 2008-06-26  Daniel Jacobowitz  <dan@codesourcery.com>
6510
6511         * Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
6512         (gdb_stdint_h, gdb_stdint.h, stamp-int): Delete.  Remove
6513         all dependencies on $(gdb_stdint_h).
6514         (distclean): Do not delete gdb_stdint.h.
6515         * acinclude.m4: Do not use stdint.m4.
6516         * configure.ac: Set GNULIB_STDINT_H.  Remove tests for stdint.h,
6517         uintptr_t, and gdb_stdint.h.
6518         * defs.h: Include <stdint.h>.
6519         * gdb_thread_db.h: Assume stdint.h is already included.
6520         * breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
6521         rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
6522         include gdb_stdint.h.
6523         * configure, config.in: Regenerate.
6524
6525 2008-06-26  Joseph Myers  <joseph@codesourcery.com>
6526
6527         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
6528         decimal floating-point values in GPRs for soft-float.
6529         (do_ppc_sysv_return_value): Handle returning decimal
6530         floating-point values in GPRs for soft-float.
6531
6532 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6533
6534         * target.c (target_read_until_error): New.
6535         * target.h (target_read_until_error): Declare.
6536         * mi/mi-main.c (mi_cmd_data_read_memory): Use
6537         target_read_until_error.
6538
6539 2008-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
6540
6541         Fix a memory leak found by Hui Zhu <teawater@gmail.com>.
6542         * c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
6543         after the DECFLOAT detection to fix a memory leak.  Remove the
6544         redundant NUM initialization.  Protect the DECFLOAT detection memory
6545         access before the P block.  Restore the P memory content for the
6546         DECFLOAT detection.
6547
6548 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6549
6550         Kill the return value for all MI command functions.
6551         * mi/mi-cmds.h (enum mi_cmd_result): Remove.
6552         (mi_cmd_argv_ftype): Change return type to void.
6553
6554         * mi/mi-main.c: Adjust all function that implement
6555         MI commands to return nothing.
6556         (struct captured_mi_execute_command_actions):
6557         Remove the rc field.
6558         (mi_cmd_execute): Return nothing.
6559         (mi_execute_async_cli_command): Return nothing.
6560         (mi_cmd_exec_interrupt): Don't print ^done here.
6561         (mi_cmd_target_select): Don't print ^connected here.
6562         (captured_mi_execute_command): Don't check for MI_CMD_DONE.
6563         Special-case -target-select and output ^connected, not ^done.
6564
6565         * mi/mi-cmd-break.c: Adjust.
6566         * mi/mi-cmd-disas.c: Adjust.
6567         * mi/mi-cmd-env.c: Adjust.
6568         * mi/mi-cmd-file.c: Adjust.
6569         * mi/mi-cmd-stack.c: Adjust.
6570         * mi/mi-cmd-target.c: Adjust.
6571         * mi/mi-cmd-var.c: Adjust.
6572         * mi/mi-interp.c: Adjust.
6573         * mi/mi-symbol-cmds.c: Adjust.
6574
6575 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6576
6577         Emit ^running via observer.
6578         * mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
6579         ^running here.
6580         (mi_on_resume): Print ^running if not previously output.
6581         * mi/mi-main.c (running_result_record_printed): New.
6582         (captured_mi_execute_command): Reset
6583         running_result_record_printed.  Use running_result_record_printed
6584         to decide if we should skip ^done.
6585         (mi_execute_async_cli_command): Don't print ^running here.
6586         * mi/mi-main.h (current_token, running_result_record_printed):
6587         Declare.
6588
6589 2008-06-24  Michael Snyder  <msnyder@specifix.com>
6590
6591         * infrun.c (_initialize_infrun): White space and typo fix.
6592
6593 2008-06-23  Christopher Faylor  <me.gdb.changelog@cgf.cx>
6594
6595         * win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
6596         (do_initial_win32_stuff): Fix problem with inability to set breakpoints
6597         when first loading DLL with "dll" command.
6598
6599 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6600
6601         * gnu-nat.c (proc_string): Use capital T for "Thread".
6602
6603 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6604
6605         * win32-nat.c (win32_pid_to_str): Use capital T for "Thread".
6606
6607 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6608
6609         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6610         the target cannot run.
6611
6612 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6613
6614         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6615         we're attaching to a running process.
6616
6617 2008-06-18  Pierre Muller  <muller@ics.u-strasbg.fr>
6618
6619         * win32-nat.c (handle_load_dll): Give dll name and load address
6620         if debug_events is on.
6621         (handle_unload_dll): Likewise.
6622
6623 2008-06-14  Vladimir Prus  <vladimir@codesourcery.com>
6624
6625         Don't suppress *running when doing finish.
6626         * infcall.c (call_function_by_hand): Set both
6627         suppress_resume_observer and suppress_stop_observer.
6628         * infcmd.c (suppress_run_stop_observers): Split into...
6629         (suppress_resume_observer, suppress_stop_observer): ...those.
6630         (finish_command_continuation): Clear suppress_stop_observer.
6631         (finish_command): Set suppress_stop_observer.
6632         * inferior.h (suppress_run_stop_observers): Split into...
6633         (suppress_resume_observer, suppress_stop_observer): ...those.
6634         * infrun.c (normal_stop): Check for suppress_stop_observer.
6635         * thread.c (set_running): Check for suppress_resume_observer.
6636
6637 2008-06-12  Pedro Alves  <pedro_alves@portugalmail.pt>
6638             Pierre Muller  <muller@ics.u-strasbg.fr>
6639
6640         * gdbarch.sh (gdbarch_skip_main_prologue): New.
6641         * gdbarch.h, gdbarch.c: Regenerate.
6642         * i386-tdep.h (i386_skip_main_prologue): Declare.
6643         * i386-tdep.c (i386_skip_main_prologue): New.
6644         * i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
6645         i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
6646         * symtab.c (find_function_start_sal): When pc points at the "main"
6647         function, call gdbarch_skip_main_prologue.
6648
6649 2008-06-11  Daniel Jacobowitz  <dan@codesourcery.com>
6650
6651         * value.c (value_primitive_field): Fetch lazy register values.
6652
6653 2008-06-11  Pedro Alves  <pedro@codesourcery.com>
6654
6655         * NEWS: Mention support removal of undocumented S AA p PID stop
6656         reply packet.
6657
6658         * remote.c (remote_wait): Remove undocumented S AA p PID support.
6659
6660 2008-06-10  Stan Shebs  <stan@codesourcery.com>
6661
6662         * MAINTAINERS: Update my affiliation and address.
6663
6664 2008-06-10  Andreas Schwab  <schwab@suse.de>
6665
6666         * top.c (print_gdb_version): Don't print final newline.
6667
6668 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6669
6670         Implement *running.
6671         * Makefile.in: Update dependencies.
6672         * gdbthread.h (struct thread_info): New field
6673         running_.
6674         (set_running, is_running): New.
6675         * thread.c (set_running, is_running): New.
6676         * inferior.h (suppress_normal_stop_observer): Rename to...
6677         (suppress_run_stop_observers): ..this.
6678         * infcmd.c (suppress_normal_stop_observer): Rename to...
6679         (suppress_run_stop_observers): ..this.
6680         (finish_command_continuation, finish_command): Adjust.
6681         * infcall.c (call_function_by_hand): Adjust.
6682         * infrun.c (normal_stop): Call set_running.
6683         * target.c (target_resume): New.  Call set_running.
6684         * target.h (target_resume): Convert from macro to
6685         a function.
6686
6687         * mi/mi-interp.c (mi_on_resume): New.
6688         (mi_interpreter_init): Register mi_on_resume.
6689
6690 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6691
6692         Use observers to report stop events in MI.
6693         * mi/mi-interp.c (mi_on_normal_stop): New.
6694         (mi_interpreter_init): Register mi_on_normal_stop.
6695         (mi_interpreter_exec_continuation): Remove.
6696         (mi_cmd_interpreter_exec): Don't register the above.
6697         * mi/mi-main.c (captured_mi_execute_command): Don't care
6698         about sync_execution.
6699         (mi_execute_async_cli_command): Don't install continuation.  Don't
6700         print *stopped.
6701         (mi_exec_async_cli_cmd_continuation): Remove.
6702
6703 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6704
6705         Suppress normal stop observer when it's problematic.
6706         * inferior.h (suppress_normal_stop_observer): New.
6707         * infcall.c (call_function_by_hand): Disable stop events when
6708         doing function calls.
6709         * infmcd.c (suppress_normal_stop_observer): New.
6710         (finish_command_continuation): Call normal_stop observer
6711         explicitly.
6712         (finish_command): Disable stop events inside proceed.
6713         * infrun.c (normal_stop): Don't call normal stop observer if
6714         suppressed of if multi-step is in progress.
6715
6716 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6717
6718         Remove stale code.
6719         * infrun.c (finish_command): Don't pass cleanup
6720         to continuation.
6721         (finish_command_continuation): Don't grab cleanup from
6722         the passed data, as we don't use, and cannot, use it anyway.
6723
6724 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6725
6726         Introduce common cleanup for restoring integers.
6727         * defs.h (make_cleanup_restore_integer): New declaration.
6728         (struct cleanup): New field free_arg.
6729         (make_my_cleanup_2): New.
6730         * utils.c (restore_integer_closure, restore_integer)
6731         (make_cleanup_restore_integer): New.
6732         (make_my_cleanup): Initialize the free_arg field and
6733         renamed to make_my_cleanup_2.
6734         (do_my_cleanups): Call free_arg.
6735         (discard_cleanups): Call free_arg.
6736         * breakpoint.c (restore_always_inserted_mode): Remove.
6737         (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
6738
6739 2008-06-09  Doug Evans  <dje@google.com>
6740
6741         * remote.c (remote_wait): Include beginning of malformed packet
6742         in error output.
6743
6744 2008-06-09  Tom Tromey  <tromey@redhat.com>
6745
6746         * completer.c (complete_line): Don't special-case
6747         expression_completer.
6748         (expression_completer): Only pass last word to
6749         location_completer.
6750         * c-exp.y (yylex): Check 'token', not 'operator'.
6751
6752 2008-06-09  Daniel Jacobowitz  <dan@codesourcery.com>
6753
6754         * configure.ac (build_warnings): Add -Wno-format for mingw.
6755         * configure: Regenerated.
6756
6757 2008-06-07  Daniel Jacobowitz  <dan@codesourcery.com>
6758
6759         * NEWS: Make indentation consistent.  Move exec tracing entry out
6760         of remote packet list.
6761
6762 2008-06-06  Tom Tromey  <tromey@redhat.com>
6763
6764         * value.h (evaluate_subexpression_type, extract_field_op):
6765         Declare.
6766         * printcmd.c (_initialize_printcmd): Use expression_completer for
6767         'p', 'inspect', 'call'.
6768         * parser-defs.h (parse_field_expression): Declare.
6769         * parse.c: Include exceptions.h.
6770         (in_parse_field, expout_last_struct): New globals.
6771         (mark_struct_expression): New function.
6772         (prefixify_expression): Return int.
6773         (prefixify_subexp): Return int.  Use expout_last_struct.
6774         (parse_exp_1): Update.
6775         (parse_exp_in_context): Add 'out_subexp' argument.  Handle
6776         in_parse_field.
6777         (parse_field_expression): New function.
6778         * expression.h (parse_field_expression): Declare.
6779         (in_parse_field): Likewise.
6780         * eval.c (evaluate_subexpression_type): New function.
6781         (extract_field_op): Likewise.
6782         * completer.h (expression_completer): Declare.
6783         * completer.c (expression_completer): New function.
6784         (count_struct_fields, add_struct_fields): New functions.
6785         * c-exp.y (yyparse): Redefine.
6786         (COMPLETE): New token.
6787         (exp): New productions.
6788         (saw_name_at_eof, last_was_structop): New globals.
6789         (yylex): Return COMPLETE when needed.  Recognize in_parse_field.
6790         (c_parse): New function.
6791         * breakpoint.c (_initialize_breakpoint): Use expression_completer
6792         for watch, awatch, and rwatch.
6793         * Makefile.in (parse.o): Depend on exceptions_h.
6794
6795 2008-06-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
6796
6797         PR gdb/1147
6798         * gdb/valopts.c (find_overload_match): Handle references
6799         to pointers.
6800
6801 2008-06-06  Paul N. Hilfinger  <hilfinger@adacore.com>
6802
6803         * ada-lang.c (ada_value_assign): Correct big-endian case to take into
6804         account the bitsize of the 'from' operand.
6805
6806 2008-06-06  Pedro Alves  <pedro@codesourcery.com>
6807
6808         * annotate.h (annotate_thread_changed): Declare.
6809
6810 2008-06-06  Nick Roberts  <nickrob@snap.net.nz>
6811
6812         * annotate.c (annotate_thread_changed): New function.
6813         * thread.c (thread_command) : Use it.
6814         * infrun.c (normal_stop): Use it.
6815
6816 2008-06-05  Vladimir Prus  <vladimir@codesourcery.com>
6817             Nathan Sidwell  <nathan@codesourcery.com>
6818             Joseph Myers  <joseph@codesourcery.com>
6819
6820         * acinclude.m4: Include ../config/acx.m4.
6821         * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
6822         * configure, config.in: Regenerate.
6823         * main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
6824         address.
6825         * top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.
6826
6827 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6828
6829         Replace 'target async' by 'maintenance set remote-async' and
6830         'target remote' combination.
6831
6832         * remote.c (remote_async_wait): Merge into remote_wait, and
6833         remove.
6834         (remote_async_permitted, remote_async_permitted_set): New
6835         variables.
6836         (set_maintenance_remote_async_permitted)
6837         (show_maintenance_remote_async_permitted): New functions.
6838         (remote_async_ops, extended_async_remote_ops): Delete.
6839         (remote_async_open, extended_remote_async_open): Delete.
6840         (remote_open_1): Drop async_p parameter.  Update callers.  Replace
6841         async_p with remote_async_permitted checks.
6842         (extended_async_remote_attach): Delete.
6843         (remote_resume, remote_async_resume): Merge and leave remote_resume.
6844         (remote_async_terminal_inferior): Rename to...
6845         (remote_terminal_inferior): ... this, and add
6846         remote_async_termitted check.
6847         (remote_async_terminal_ours): Rename to...
6848         (remote_terminal_ours): ... this, and add remote_async_termitted
6849         check.
6850         (remote_wait, remote_async_wait): Merge and leave remote_wait
6851         only.
6852         (remote_kill, remote_async_kill): Merge and leave remote_kill
6853         only.
6854         (remote_async_mourn, extended_async_remote_mourn): Delete.
6855         (extended_remote_create_inferior_1): Drop async_p parameter.
6856         Update callers.  Always use extended_remote_ops.
6857         (extended_remote_async_create_inferior): Delete.
6858         (remote_return_zero): Delete.
6859         (init_remote_ops): Register remote_can_async_p, remote_async,
6860         remote_async_mask, remote_terminal_inferior and
6861         remote_terminal_ours.
6862         (remote_can_async_p, remote_is_async_p): Check for
6863         remote_async_permitted.
6864         (init_remote_async_ops, init_extended_async_remote_ops): Remove.
6865         (set_remote_cmd): Don't add async and extended-async targets.
6866         (_initialize_remote): Add set/show remote-async maintenance
6867         commands.
6868
6869 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6870
6871         * remote.c (kill_kludge): Delete.
6872         (remote_wait, remote_async_wait): Don't set it.
6873         (remote_kill, remote_async_kill): Don't do anything with it.
6874
6875 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6876
6877         * linux-thread-db.c (thread_db_wait): Don't trim event ptid.
6878
6879 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6880
6881         * bcache.c (bcache_data): Call deprecated_bcache_added function.
6882         (deprecated_bcache_added): New function name. Body of function
6883         bcache_data is used here with the addition of 'added' argument.
6884         * bcache.h (deprecated_bcache_added): New function.
6885         * symfile.c (add_psymbol_to_bcache): New helper function, takes part of
6886         work from add_psymbol_to_list - initialises partial symbol and stashes
6887         it in objfile's cache.
6888         (append_psymbol_to_list): New helper function, takes other part of
6889         work from add_psymbol_to_list - adds partial symbol to the given list.
6890         (add_psymbol_to_list): Call helper functions instead of doing work
6891         here. If adding to global list, do not duplicate partial symbols in the
6892         partial symtab.
6893
6894 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6895
6896         * breakpoint.c (print_exception_catchpoint): Put 'exception' back to
6897         'exception caught|thrown' message.
6898
6899 2008-06-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
6900
6901         * Makefile.in: Update dependencies.
6902         * dwarf2expr.c: New include "gdb_assert.h".
6903         (new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
6904         (dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
6905         (execute_stack_op): Error out on too large RECURSION_DEPTH.
6906         Increase/decrease RECURSION_DEPTH around the function.
6907
6908 2008-06-05  Daniel Jacobowitz  <dan@codesourcery.com>
6909
6910         * remote.c (get_offsets): Handle a single segment.
6911         * symfile.c (symfile_map_offsets_to_segments): Allow more bases
6912         than segments.
6913
6914 2008-06-03  Daniel Jacobowitz  <dan@codesourcery.com>
6915
6916         * solib-svr4.c (struct lm_info): Add lm_addr.
6917         (main_lm_addr): New.
6918         (svr4_default_sos): Set lm_addr.
6919         (svr4_current_sos): Set lm_addr and main_lm_addr.
6920         (svr4_fetch_objfile_link_map): Rewrite.
6921         (svr4_clear_solib): Clear main_lm_addr.
6922
6923 2008-06-03  Michael Snyder  <msnyder@redhat.com>
6924             Joseph Myers  <joseph@codesourcery.com>
6925
6926         * mips-tdep.c (mips_eabi_return_value): Replace stub that always
6927         returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
6928
6929 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
6930
6931         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.
6932
6933 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
6934
6935         * m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.
6936
6937 2008-06-01  Joel Brobecker  <brobecker@adacore.com>
6938
6939         * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
6940         treat pointers in data space as function descriptors if the
6941         target address is also in the data space.
6942
6943 2008-05-30  Joel Brobecker  <brobecker@adacore.com>
6944
6945         * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
6946         the trad-frame register value for the SP register.
6947
6948 2008-05-29  Mark Kettenis  <kettenis@gnu.org>
6949
6950         * sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.
6951
6952 2008-05-28  Joel Brobecker  <brobecker@adacore.com>
6953
6954         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
6955         that identifies function descriptors outside of the .opd section.
6956
6957 2008-05-28  Aleksandar Ristovski  <aristovski@qnx.com>
6958
6959         * breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
6960         temporary catchpoints.  In MI add missing fields 'reason', 'disp',
6961         'bkptno'.
6962         (print_mention_exception_catchpoint): Add 'Temporary' for temporary
6963         catchpoints.
6964         (handle_gnu_v3_exceptions): Use tempflag.
6965
6966 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
6967
6968         Refactor varobj_update interface.
6969         * varobj.c (varobj_update): Report changes as vector.  Also
6970         return not just a list of varobj, but a list of special structures
6971         that tell what exactly has changed.
6972         * varobj.h (enum varobj_update_error): Rename to
6973         varobj_scope_status.
6974         (struct varobj_update_result_t): New.
6975         (varobj_update): Adjust prototype.
6976         * mi/mi-cmd-var.c: Adjust for changes.
6977
6978 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
6979
6980         * varobj.c (varobj_update): Fix comment typo.
6981         Fix indentation.
6982
6983 2008-05-26  Joel Brobecker  <brobecker@adacore.com>
6984
6985         Set the symtab field of symbols read from ECOFF debugging entries.
6986         * mdebugread.c (add_symbol): Add new parameter symtab.
6987         (parse_symbol): Update calls to add_symbol throughout.
6988
6989 2008-05-27  Andreas Schwab  <schwab@suse.de>
6990
6991         * symtab.h (enum address_class): Remove LOC_REGPARM and
6992         LOC_COMPUTED_ARG.
6993         (struct symbol): Add is_argument.
6994         (SYMBOL_IS_ARGUMENT): Define.
6995
6996         * ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
6997         * buildsym.c (finish_block): Likewise.
6998         * stack.c (print_frame_args, print_block_frame_locals)
6999         (print_frame_arg_vars): Likewise.
7000         * symtab.c (lookup_block_symbol): Likewise.
7001         * tracepoint.c (add_local_symbols): Likewise.
7002         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7003
7004         * coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
7005         * dwarf2read.c (new_symbol): Likewise.
7006         * mdebugread.c (parse_symbol): Likewise.
7007         * stabsread.c (define_symbol): Likewise.
7008
7009         * ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
7010         and LOC_COMPUTED_ARG.
7011         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7012         * ax-gdb.c (gen_var_ref): Likewise.
7013         * eval.c (evaluate_subexp_for_address): Likewise.
7014         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7015         * m2-exp.y (yylex): Likewise.
7016         * printcmd.c (address_info): Likewise.
7017         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7018         * tracepoint.c (collect_symbol, scope_info): Likewise.
7019
7020 2008-05-24  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
7021
7022         * gdbarch.sh: Added new gdbarch struct
7023         core_regset_sections.
7024         * gdbarch.c: Refreshed.
7025         * gdbarch.h: Refreshed.
7026         * regset.h (core_regset_section): Declared.
7027         * linux-nat.c (linux_nat_do_thread_registers): Added
7028         support for the new gdbarch struct core_regset_sections.
7029         * utils.c (host_address_to_string): New function.
7030         * defs.h (host_address_to_string): New prototype.
7031         * i386-linux-tdep.c (i386_regset_rections): New register
7032         sections list for i386.
7033           (i386_linux_init_abi): Initialized new gdbarch struct
7034           core_regset_sections.
7035         * Makefile.in: Updated to reflect dependency changes.
7036         * ppc-linux-tdep.c (ppc_regset_sections): Register
7037         sections list for ppc.
7038           (ppc_linux_init_abi): Initialized new gdbarch struct
7039           core_regset_sections
7040
7041 2008-05-24  Andreas Schwab  <schwab@suse.de>
7042
7043         * linespec.c (decode_objc): Save current language around call to
7044         get_selected_block.
7045
7046 2008-05-23  Joel Brobecker  <brobecker@adacore.com>
7047
7048         * valprint.h (get_array_bounds): Renames get_array_low_bound.
7049         * valprint.c (get_array_bounds): Renames get_array_low_bound.
7050         Return the proper bound value if the array index type is an
7051         enumerated type. Compute the high bound if requested.
7052         (val_print_array_elements): Handle the case when the array
7053         element has a null size.
7054         * ada-valprint.c (print_optional_low_bound): Add handling
7055         for empty arrays or arrays of zero-size elements.
7056         (ada_val_print_array): New function, extracted out from
7057         ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
7058         handle empty arrays and arrays of zero-size elements.
7059         (ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
7060         code by call to ada_val_print_array.
7061         (ada_value_print): Remove handling of null array.  The handling
7062         was incomplete and is now better handled by ada_val_print_array.
7063
7064 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
7065
7066         * annotate.c (annotate_source, annotate_frame_begin): Replace
7067         deprecated_print_address_numeric with paddress.
7068         * cli/cli-cmds.c (list_command, edit_command): Likewise.
7069         * tui/tui-stack.c (tui_make_status_line): Likewise.
7070
7071         * defs.h (deprecated_print_address_numeric): Remove.
7072         * printcmd.c (deprecated_print_address_numeric): Remove.
7073         * maint.c (maint_print_section_info): Fix comment.
7074
7075 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
7076
7077         * valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
7078         print_binary_chars, print_char_chars): Add byte_order parameter and
7079         replace gdbarch_byte_order.
7080         (print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
7081         expressions and remove them.  Remove unused TWO_TO_FOURTH.
7082         (val_print_type_code_int): Introduce gdbarch_byte_order to get at the
7083         endianness.  Update call to print_hex_chars.
7084         * valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
7085         print_binary_chars, print_char_chars): Add byte_order parameter.
7086         * printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
7087         get at the endianness.  Update print_*_char calls to use byte_order.
7088
7089 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7090
7091         * symtab.h (struct symbol): Make "aux_value" member a void pointer
7092         instead of a union.
7093         (SYMBOL_LOCATION_BATON): Update.
7094
7095 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7096
7097         * symtab.h (enum address_class): Remove LOC_BASEREG and
7098         LOC_BASEREG_ARG.
7099         (struct symbol): Remove "basereg" member of "aux_value" union.
7100         (SYMBOL_BASEREG): Remove.
7101
7102         * ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
7103         or LOC_BASEREG_ARG.
7104         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7105         (ada_add_block_symbols): Likewise.
7106         * ax-gdb.c (gen_var_ref): Likewise.
7107         * buildsym.c (finish_block): Likewise.
7108         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7109         * m2-exp.y (yylex): Likewise.
7110         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7111         * printcmd.c (address_info): Likewise.
7112         * stack.c (print_frame_args, print_block_frame_locals): Likewise.
7113         (print_frame_arg_vars): Likewise.
7114         * symmisc.c (print_symbol): Likewise.
7115         * symtab.c (lookup_block_symbol): Likewise.
7116         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
7117         (scope_info): Likewise.
7118
7119 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7120
7121         * symtab.h (enum address_class): Remove LOC_LOCAL_ARG.
7122
7123         * ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
7124         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7125         (ada_add_block_symbols): Likewise.
7126         * ax-gdb.c (gen_var_ref): Likewise.
7127         * buildsyms.c (finish_block): Likewise.
7128         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7129         * m2-exp.y (yylex): Likewise.
7130         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7131         * printcmd.c (address_info): Likewise.
7132         * stack.c (print_frame_args, print_frame_arg_vars): Likewise.
7133         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7134         * symtab.c (lookup_block_symbol): Likewise.
7135         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
7136         (scope_info): Likewise.
7137
7138 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7139
7140         * symtab.h (enum address_class): Remove LOC_INDIRECT and
7141         LOC_HP_THREAD_LOCAL_STATIC.
7142
7143         * findvar.c (symbol_read_needs_frame, read_var_value): Do not
7144         handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
7145         (read_var_value): Likewise.
7146         * buildsym.c (finish_block): Likewise.
7147         * objfiles.c (objfile_relocate): Likewise.
7148         * printcmd.c (address_info): Likewise.
7149         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7150         * tracepoint.c (scope_info): Likewise.
7151
7152 2008-05-21 Markus Deuling  <deuling@de.ibm.com>
7153            Maxim Grigoriev  <maxim2405@gmail.com>
7154
7155         * xtensa-tdep.c (xtensa_read_register): Remove.
7156         (xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
7157         argument litbase to call0_frame_cache().
7158         (call0_track_op, call0_analyze_prologue)
7159         (call0_frame_cache): Use extra argument litbase.
7160
7161 2008-05-21  Joel Brobecker  <brobecker@adacore.com>
7162
7163         * infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
7164
7165 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
7166
7167         * frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
7168
7169 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
7170
7171         * alpha-mdebug-tdep.c: Include "trad-frame.h".
7172         (struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
7173         struct trad_frame_saved_reg *.
7174         (alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
7175         trad_frame_alloc_saved_regs.  Update accesses.  Record previous
7176         value of SP as being vfp.
7177         (alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
7178         * Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
7179
7180 2008-05-21  Markus Deuling  <deuling@de.ibm.com>
7181
7182         * score-tdep.c (score_print_insn): Get the current endianess from
7183         disassemble_info instead of gdbarch_byte_order.
7184
7185 2008-05-21  Pedro Alves  <pedro@codesourcery.com>
7186
7187         * frame.c (get_prev_frame_1): Build frame id before setting
7188         this_frame->prev_p, not after.
7189
7190 2008-05-21  Nick Roberts  <nickrob@snap.net.nz>
7191
7192         * annotate.c (annotate_new_thread): New function for new-thread
7193         annotation.
7194         * annotate.h: (annotate_new_thread): New extern.
7195         * thread.c (add_thread_with_info): Use it.
7196         * Makefile.in (thread.o): Add dependency on annotate.h.
7197
7198 2008-05-20  Joel Brobecker  <brobecker@adacore.com>
7199
7200         * win32-nat.c (win32_wait): Block the control-c event while
7201         waiting for a debug event.
7202
7203 2008-05-19  Pedro Alves  <pedro@codesourcery.com>
7204
7205         * symtab.h (lookup_symbol_in_language): Update comment.
7206         * symtab.c (lookup_symbol_aux_block): Update comment.
7207         * ada-lang.c (ada_lookup_symbol_list): Update comment.
7208
7209 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7210
7211         * symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
7212         (lookup_symbol): Likewise.
7213         * symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
7214         (lookup_symbol): Likewise.
7215         (search_symbols): Update.
7216
7217         * linespec.c (find_methods, collect_methods): Update.
7218         (add_matching_methods, add_constructors): Update.
7219         (decode_compound, decode_dollar, decode_variable): Update.
7220         (lookup_prefix_sym): Update.
7221
7222         (symbol_found): Remove SYM_SYMTAB parameter.
7223         Use SYMBOL_SYMTAB (sym) instead.
7224
7225         * gdbtypes.c (lookup_typename): Update.
7226         (lookup_struct, lookup_union, lookup_enum): Update.
7227         (lookup_template_type): Update.
7228         (check_typedef): Update.
7229         * language.c (lang_bool_type): Update.
7230         * mdebugread.c (parse_procedure): Update.
7231         * mi/mi-cmd-stack.c (list_args_or_locals): Update.
7232         * parse.c (write_dollar_variable): Update.
7233         * printcmd.c (address_info): Update.
7234         * source.c (select_source_symtab): Update.
7235         * stack.c (print_frame_args, print_frame_arg_vars): Update.
7236         * valops.c (find_function_in_inferior): Update.
7237         (value_struct_elt_for_reference): Update.
7238         * value.c (value_static_field, value_fn_field): Update.
7239
7240         * alpha-mdebug-tdep.c (find_proc_desc): Update.
7241         * arm-tdep.c (arm_skip_prologue): Update.
7242         * mt-tdep.c (mt_skip_prologue): Update.
7243         * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
7244
7245         * ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
7246         * ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
7247         (add_defn_to_vec): Likewise.
7248         (ada_add_block_symbols): Likewise.
7249         (lookup_cached_symbol, cache_symbol): Likewise.
7250         (standard_lookup): Update.
7251         (ada_lookup_symbol_list): Update.
7252
7253         * c-valprint.c (c_val_print): Update.
7254         * cp-support.c (cp_lookup_rtti_type): Update.
7255         * jv-lang.c (java_lookup_class, get_java_object_type): Update.
7256         * objc-lang.c (lookup_struct_typedef, find_imps): Update.
7257         * p-valprint.c (pascal_val_print): Update.
7258         * scm-lang.c (scm_lookup_name): Update.
7259
7260         * c-exp.y: Update.
7261         * f-exp.y: Update.
7262         * jv-exp.y: Update.
7263         * m2-exp.y: Update.
7264         * objc-exp.y: Update.
7265         * p-exp.y: Update.
7266
7267 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7268
7269         * language.h (struct language_defn): Remove SYMTAB parameter from
7270         la_lookup_symbol_nonlocal callback function pointer.
7271
7272         * ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7273         (ada_lookup_encoded_symbol): Likewise.
7274         * ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7275         Always call fixup_symbol_section.
7276         (ada_lookup_symbol): Remove SYMTAB parameter.
7277         (ada_lookup_symbol_nonlocal): Likewise.
7278         * ada-exp.y (write_object_renaming): Update.
7279         (find_primitive_type): Likewise.
7280
7281         * cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7282         (cp_lookup_symbol_namespace): Likewise.
7283         * cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
7284         (lookup_symbol_file): Likewise.
7285         (lookup_possible_namespace_symbol): Likewise.
7286         (cp_lookup_symbol_nonlocal): Likewise.
7287         (cp_lookup_symbol_namespace): Likewise.
7288         (cp_lookup_nested_type): Update.
7289
7290         * scm-valprint.c (scm_inferior_print): Update.
7291         * valops.c (value_maybe_namespace_elt): Update.
7292
7293         * solist.h (struct target_so_ops): Remove SYMTAB parameter from
7294         lookup_lib_global_symbol callback function pointer.
7295         (solib_global_lookup): Remove SYMTAB parameter.
7296         * solib.c (solib_global_lookup): Remove SYMTAB parameter.
7297         * solib-svr4.c (elf_lookup_lib_symbol): Likewise.
7298
7299         * symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7300         (lookup_symbol_static): Likewise.
7301         (lookup_symbol_global): Likewise.
7302         (lookup_symbol_aux_block): Likewise.
7303         (lookup_global_symbol_from_objfile): Likewise.
7304         * symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
7305         (lookup_symbol_aux_local): Likewise.
7306         (lookup_symbol_aux_block): Likewise.
7307         (lookup_symbol_aux_symtabs): Likewise.
7308         (lookup_symbol_aux_psymtabs): Likewise.
7309         (lookup_global_symbol_from_objfile): Likewise.
7310         (basic_lookup_symbol_nonlocal): Likewise.
7311         (lookup_symbol_static): Likewise.
7312         (lookup_symbol_global): Likewise.
7313
7314         (lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
7315
7316 2008-05-17  Pedro Alves  <pedro@codesourcery.com>
7317
7318         * remote.c (init_extended_remote_ops): Fix typo.
7319
7320 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7321
7322         * NEWS: Mention new DICOS x86 target configuration.
7323
7324 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7325             Ulrich Weigand  <uweigand@de.ibm.com>
7326
7327         * minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
7328         * symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
7329
7330         * symtab.c (fixup_section): Remove prototype.  Add ADDR parameter;
7331         use it instead of ginfo->value.address.  Look up minimal symbol by
7332         address and name.  Assume OBJFILE is non-NULL.
7333         (fixup_symbol_section): Ensure we always have an objfile to look
7334         into.  Extract and pass to fixup_section the symbol's address that
7335         will match the minimal symbol's address.
7336         (fixup_psymbol_section): Likewise.
7337
7338         (find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
7339         overlays and the addrmap returned the wrong section.
7340
7341         * dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
7342         calling fixup_symbol_section.
7343
7344 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7345
7346         * minsyms.c: Include "target.h".
7347         (find_solib_trampoline_target): Handle minimal symbols pointing
7348         to function descriptors as well.
7349         * Makefile.in (minsyms.o): Update dependencies.
7350
7351         * ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
7352         (ppc64_standard_linkage1): ... this.  Fix optional instructions.
7353         (PPC64_STANDARD_LINKAGE_LEN): Rename to ...
7354         (PPC64_STANDARD_LINKAGE1_LEN): ... this.
7355         (ppc64_standard_linkage2, ppc64_standard_linkage3): New.
7356         (PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
7357         (ppc64_standard_linkage_target): Rename to ...
7358         (ppc64_standard_linkage1_target): ... this.
7359         (ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
7360         (ppc64_skip_trampoline_code): Support three variants of standard
7361         linkage stubs.  Call find_solib_trampoline_target to handle
7362         glink stubs.
7363
7364 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7365
7366         * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
7367         ppc64_sysv_abi_adjust_breakpoint_address.
7368         * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7369         * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7370
7371 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7372
7373         * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
7374         (ppc_linux_init_abi): Install find_solib_trampoline_target instead
7375         of ppc_linux_skip_trampoline_code.
7376
7377 2008-05-15  Daniel Jacobowitz  <dan@codesourcery.com>
7378
7379         * gdbarch.sh: Delete dwarf_reg_to_regnum.
7380         * gdbarch.c, gdbarch.h: Regenerated.
7381         * amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
7382         hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
7383         s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
7384
7385 2008-05-15  Pedro Alves  <pedro@codesourcery.com>
7386
7387         * linux-nat.c (trap_ptid): Delete.
7388         (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
7389         Adjust.
7390         * linux-thread-db.c (thread_db_wait): Adjust.
7391
7392 2008-05-15  Joel Brobecker  <brobecker@adacore.com>
7393
7394         * linespec.c (decode_line_1): Fix a couple of comments.
7395
7396 2008-05-15  Alan Modra  <amodra@bigpond.net.au>
7397
7398         * dbxread.c: Formatting.
7399         (INTERNALIZE_SYMBOL): Init n_other.
7400         (set_namestring): Take pointer to nlist arg rather than struct
7401         copy.  Update all callers.
7402
7403 2008-05-15  Andreas Schwab  <schwab@suse.de>
7404
7405         * Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
7406         (dwarf2read.o): Add $(addrmap_h).
7407
7408 2008-05-14  Ulrich Weigand  <uweigand@de.ibm.com>
7409
7410         * ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
7411         (ppc64_linux_convert_from_func_ptr_addr): ... to this.  No longer try
7412         to handle ppc32 PLT entries.
7413         (ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
7414         only on ppc64.
7415
7416 2008-05-14  Daniel Jacobowitz  <dan@codesourcery.com>
7417
7418         * elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
7419         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
7420         lookup_minimal_symbol_by_pc_section.  Prefer trampolines if requested.
7421         (lookup_minimal_symbol_by_pc_section): Use
7422         lookup_minimal_symbol_by_pc_section_1.
7423         (lookup_solib_trampoline_symbol_by_pc): Likewise.
7424
7425 2008-05-13  Joel Brobecker  <brobecker@adacore.com>
7426
7427         * findcmd.c: Add #include "gdb_stdint.h".
7428         * Makefile.in (findcmd.o): Update dependencies.
7429
7430 2008-05-11  David S. Miller  <davem@davemloft.net>
7431
7432         * sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
7433         long double size override, Linux does use 128-bit now.
7434
7435         * sparc-linux-tdep.c (PSR_SYSCALL): Define.
7436         (sparc_linux_write_pc): New function.
7437         (sparc32_linux_init_abi): Register it.
7438         * sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
7439         (sparc64_linux_write_pc): New function.
7440         (sparc64_linux_init_abi): Register it.
7441
7442         * sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
7443         dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
7444
7445 2008-05-11  Ulrich Weigand  <uweigand@de.ibm.com>
7446
7447         * rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
7448         and info.tdep_info before calling gdbarch_init_osabi.
7449
7450 2008-05-09  Joel Brobecker  <brobecker@adacore.com>
7451
7452         * ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
7453         the type of the right hand side of the assignment to the type
7454         of the left hand side if the left hand side is a convenience
7455         variable.
7456
7457 2008-05-09  Ulrich Weigand  <uweigand@de.ibm.com>
7458
7459         * NEWS: Mention gdbserver bi-arch capability.
7460
7461 2008-05-09  Doug Evans  <dje@google.com>
7462
7463         New "find" command.
7464         * NEWS: Document find command and qSearch:memory packet.
7465         * Makefile.in (SFILES): Add findcmd.c.
7466         (COMMON_OBJS): Add findcmd.o.
7467         (findcmd.o): New rule.
7468         * findcmd.c: New file.
7469         * target.h (target_ops): New member to_search_memory.
7470         (simple_search_memory): Declare.
7471         (target_search_memory): Declare.
7472         * target.c (simple_search_memory): New fn.
7473         (target_search_memory): New fn.
7474         * remote.c (PACKET_qSearch_memory): New packet kind.
7475         (remote_search_memory): New fn.
7476         (init_remote_ops): Init to_search_memory.
7477         (init_extended_remote_ops): Ditto.
7478         (_initialize_remote): Add qSearch:memory packet config command.
7479
7480 2008-05-09  Eli Zaretskii  <eliz@gnu.org>
7481
7482         * thread.c (_initialize_thread): Don't use commas and periods in
7483         first line of doc string of "set/show print thread-events".
7484
7485 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7486
7487         * alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
7488         Update for unwinder changes.
7489
7490 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7491
7492         * frame.c (get_frame_base_address, get_frame_locals_address)
7493         (get_frame_args_address): Pass the correct frame when calling
7494         frame_base_find_by_frame.
7495
7496 2008-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7497
7498         * remote.c (extended_remote_attach_1): Call target_find_description.
7499
7500 2008-05-08  Daniel Jacobowitz  <dan@codesourcery.com>
7501
7502         * remote.c (extended_remote_create_inferior_1): Clean up
7503         before marking the target running.
7504
7505 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7506
7507         * hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
7508         changes.
7509
7510 2008-05-07  Joel Brobecker  <brobecker@adacore.com>
7511
7512         * sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
7513         sparc64-sol2-tdep.c: Update for unwinder changes.
7514
7515 2008-05-07  Daniel Jacobowitz  <dan@codesourcery.com>
7516
7517         * cp-support.c (mangled_name_to_comp): Initialize storage.
7518         (unqualified_name_from_comp): Likewise.
7519
7520 2008-05-07  Jie Zhang  <jie.zhang@analog.com>
7521
7522         * remote.c (remote_insert_breakpoint): Call get_remote_state
7523         after gdbarch_breakpoint_from_pc is called.
7524         (remote_insert_hw_breakpoint): Likewise.
7525
7526 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7527
7528         * valprint.c (val_print): Add new language parameter and use it
7529         instead of using the current_language. Update calls to val_print
7530         throughout.
7531         (common_val_print): Add new langauge parameter and pass it to
7532         val_print.
7533         * value.h (struct language_defn): Add opaque declaration.
7534         (val_print, common_val_print): Update declarations.
7535         * stack.c (print_frame_args): Update call to common_val_print
7536         using the appropriate language.
7537         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7538         * c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
7539         mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
7540         scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
7541         #include "language.h" if necessary.
7542         Update calls to val_print and common_val_print.
7543         * Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
7544         Update dependencies.
7545
7546 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7547
7548         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
7549         pointing inside a non-executable section as function descriptors.
7550
7551 2008-05-06  Pedro Alves  <pedro@codesourcery.com>
7552
7553         * inf-loop.c (inferior_event_handler): Run all continuations and
7554         print any language change before running the breakpoint commands.
7555
7556 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7557
7558         * frame-unwind.c (frame_unwind_got_bytes): New function.
7559         * frame-unwind.h (frame_unwind_got_bytes): Add declaration.
7560         * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
7561         for unwinder changes.
7562
7563 2008-05-05  Doug Evans  <dje@google.com>
7564
7565         * NEWS: Mention new /m modifier for disassemble command.
7566         * cli/cli-cmds.c (print_disassembly): New function.
7567         (disassemble_current_function): New function
7568         (disassemble_command): Recognize /m modifier, print mixed
7569         source+assembly.
7570         (init_cli_cmds): Update disassemble help text.
7571
7572 2008-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
7573
7574         * xtensa-tdep.c: Update for unwinder changes.
7575
7576 2008-05-05  Andreas Schwab  <schwab@suse.de>
7577
7578         Update m68k port for unwinder changes.
7579         * m68k-tdep.c (m68k_frame_cache): Expect this_frame.
7580         (m68k_frame_this_id, m68k_frame_prev_register): Update signature.
7581         (m68k_frame_unwind): Use default_frame_sniffer.
7582         (m68k_frame_sniffer): Remove.
7583         (m68k_frame_base_address): Expect this_frame.
7584         (m68k_dummy_id): Renamed from m68k_unwind_dummy_id.  Expect
7585         this_frame.
7586         (m68k_gdbarch_init): Use set_gdbarch_dummy_id,
7587         dwarf2_append_unwinders, and frame_unwind_append_unwinder.
7588         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
7589         parameter instead of pc value.
7590         (m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
7591         Expect this_frame.
7592         (m68k_linux_sigtramp_frame_this_id)
7593         (m68k_linux_sigtramp_frame_prev_register)
7594         (m68k_linux_sigtramp_frame_sniffer): Update signature.
7595         (m68k_linux_sigtramp_frame_unwind): Use
7596         m68k_linux_sigtramp_frame_sniffer.
7597         (m68k_linux_init_abi): Use frame_unwind_append_unwinder.
7598
7599         * m68klinux-nat.c (store_register): Fix typo.
7600
7601 2008-05-05  Pedro Alves  <pedro@codesourcery.com>
7602
7603         * infcmd.c (step_1): Put thread id on the stack to avoid possible
7604         NULL dereferencing.
7605
7606 2008-05-05  Luis Machado  <luisgpm@br.ibm.com>
7607
7608         * symfile.c (reread_symbols): Update objfile's entry point.
7609
7610 2008-05-05  Aleksandar Ristovski  <aristovski@qnx.com>
7611             Joel Brobecker  <brobecker@adacore.com>
7612
7613         * ada-lang.c: Update throughout to use symbol_matches_domain
7614         instead of matching the symbol domain explictly.
7615         * dwarf2read.c (add_partial_symbol): Do not add new psym for
7616         STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
7617         class as typedefs. See lookup_partial_symbol function.
7618         (new_symbol): Similar to add_partial_symbol, do not create
7619         symbol for the typedef. See lookup_block_symbol.
7620         * symtab.c (symbol_matches_domain): New function, takes care
7621         of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
7622         (lookup_partial_symbol): Use symbol_matches_domain to see if the
7623         found psym domain matches the given domain.
7624         (lookup_block_symbol): Likewise.
7625
7626 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7627
7628         * top.c (command_line_handler_continuation): Remove.
7629         (execute_command): Do not install the above.
7630
7631 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7632
7633         * inf-loop.c (inferior_event_handler): Call bpstat_do_action,
7634         and catch all exceptions from it.
7635         * top.c (command_line_handler_continuation): Don't
7636         call bpstat_do_action here.
7637
7638 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7639
7640         * dwarf2read.c (struct dwarf2_cu): Add type_hash.
7641         (struct die_info): Remove type.
7642         (read_type_die, read_typedef, read_base_type, read_subrange_type)
7643         (read_structure_type, read_enumeration_type, read_array_type)
7644         (read_tag_pointer_type, read_tag_ptr_to_member_type)
7645         (read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
7646         (read_tag_string_type, read_subroutine_type, read_set_type)
7647         (read_unspecified_type): Delete prototypes.  Remove check for
7648         already-loaded type.  Return the new type.
7649         (set_die_type): Return the new type.
7650         (reset_die_and_siblings_types): Delete.
7651         (load_comp_unit, load_full_comp_unit): Set type_hash.
7652         (process_queue): Remove call to reset_die_and_siblings_types.
7653         (process_die): Do not read most types here.  Use read_type_die
7654         for others.
7655         (read_func_scope, dwarf2_add_member_fn): Use read_type_die.
7656         (quirk_gcc_member_function_pointer): Return the new type.
7657         (process_structure_scope, process_enumeration_scope): Use
7658         get_die_type and read the DIE's type.
7659         (read_full_die): Do not initialize die->type.
7660         (tag_type_to_type): Use read_type_die.
7661         (read_type_die): Check for already defined types.  Return the
7662         type.
7663         (determine_prefix): Use get_die_type.
7664         (set_die_type): Return the type.
7665         (get_die_type): Take a CU argument.  Check for no type_hash.
7666
7667 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7668
7669         * dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
7670         locals.
7671
7672 2008-05-04  Pedro Alves  <pedro@codesourcery.com>
7673
7674         * breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
7675         and bp_longjmp_resume breakpoints.
7676         (breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
7677         meaningful.
7678         (create_longjmp_breakpoint): Don't create bp_longjmp_resume
7679         breakpoints.  Create bp_longjmp breakpoints as momentary
7680         breakpoints.
7681         (enable_longjmp_breakpoint): Delete.
7682         (set_longjmp_breakpoint): New.
7683         (disable_longjmp_breakpoint): Delete.
7684         (delete_longjmp_breakpoint): New.
7685         (set_longjmp_resume_breakpoint): Delete.
7686         (set_momentary_breakpoint_at_pc): New.
7687         (breakpoint_re_set_one): Don't delete bp_longjmp and
7688         bp_longjmp_resume breakpoints.
7689         (breakpoint_re_set): Don't create longjmp and longjmp-resume
7690         breakpoints.
7691
7692         * infrun.c (step_resume_breakpoint): Add comment.
7693         (struct execution_control_state): Delete handling_longjmp member.
7694         (init_execution_control_state). Don't clear handling_longjmp.
7695         (context_switch): Don't context switch handling_longjmp.
7696         (handle_inferior_event): If handling a bp_longjmp breakpoint,
7697         create a bp_longjmp_resume breakpoint, and set it as current
7698         step_resume_breakpoint, then step over the longjmp breakpoint.  If
7699         handling a bp_longjmp_resume breakpoint, don't delete the longjmp
7700         breakpoint, delete the longjmp-resume breakpoint, and stop
7701         stepping.
7702         (currently_stepping): Remove handling_longjmp from expression.
7703         (insert_step_resume_breakpoint_at_sal): Update comment.
7704         (insert_longjmp_resume_breakpoint): New.
7705
7706         * breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
7707         (enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
7708         declarations.
7709         (set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
7710         (set_longjmp_resume_breakpoint): Delete declaration.
7711
7712         * gdbthread.h (save_infrun_state): Remove handling_longjmp
7713         parameter.
7714         (load_infrun_state): Delete *handling_longjmp parameter.
7715         * thread.c (save_infrun_state): Remove handling_longjmp parameter.
7716         Update body.
7717         (load_infrun_state): Delete *handling_longjmp parameter.  Update
7718         body.
7719
7720         * infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
7721         (delete_longjmp_breakpoint_cleanup): New.
7722         (step_1): Call set_longjmp_breakpoint instead of
7723         enable_longjmp_breakpoint.  Use delete_longjmp_breakpoint_cleanup
7724         instead of disable_longjmp_breakpoint_cleanup when making cleanup.
7725         (step_1_continuation): Pass thread id in the continuation args to
7726         step_once.
7727         (step_once): Add thread parameter.  Pass thread id the the
7728         continuation.
7729
7730 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7731
7732         Set CU BASE_ADDRESS already from partial DIEs.
7733         * dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
7734         BASE_ADDRESS_TYPE.  Set these variables from DW_AT_LOW_PC and
7735         DW_AT_ENTRY_PC.  Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
7736         from these variables if it was still unset.
7737
7738         * Makefile.in: Update dependencies.
7739         * dwarf2read.c: Include "addrmap.h"
7740         (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
7741         (dwarf2_ranges_read): New prototype.
7742         (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
7743         Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
7744         HAS_RANGES_OFFSET, otherwise add there the contiguous range.
7745         (dwarf2_ranges_read): New parameter RANGES_PST, update the function
7746         comment for it.  Add the found ranges to RANGES_PST.  New variable
7747         BASEADDR, initialize it the common way.
7748         (dwarf2_get_pc_bounds): Update the caller for the new parameter.
7749         (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
7750         HAS_RANGES_OFFSET for the later processing.
7751         * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
7752         * symtab.c: Include "addrmap.h"
7753         (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
7754         Move the psymtab locator into ...
7755         (find_pc_sect_psymtab_closer): ... a new function.
7756
7757 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7758
7759         * arch-utils.c (gdbarch_update_p): Use default values for
7760         info.abfd and info.target_desc if they are NULL.
7761         (gdbarch_from_bfd): Remove assertion.
7762         (set_gdbarch_from_file): Call gdbarch_find_by_info directly,
7763         using the current target description.
7764         (gdbarch_info_fill): Do not use default values for info->abfd
7765         and info->target_desc.
7766
7767 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7768
7769         * symfile.c (reread_symbols): Reload EXEC_BFD on its change.
7770
7771 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7772
7773         * inferior.h (read_pc_pid, write_pc_pid): Remove.
7774         * regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.
7775
7776         * regcache.c (read_pc_pid): Remove, replace by ...
7777         (regcache_read_pc): ... this function.
7778         (write_pc_pid): Remove, replace by ...
7779         (regcache_write_pc): ... this function.
7780         (read_pc, write_pc): Update.
7781
7782         * infrun.c (displaced_step_prepare): Replace read_pc_pid and
7783         write_pc_pid by regcache_read_pc and regcache_write_pc.
7784         (displaced_step_fixup): Likewise.
7785         (resume): Likewise.  Use regcache arch instead of current_gdbarch.
7786         (prepare_to_proceed): Likewise.
7787         (proceed): Likewise.
7788         (adjust_pc_after_break): Likewise.
7789         (handle_inferior_event): Likewise.
7790
7791         * linux-nat.c (cancel_breakpoint): Likewise.
7792         * linux-thread-db.c (check_event): Likewise.
7793         * aix-thread.c (aix_thread_wait): Likewise.
7794         * tracepoint.c (trace_dump_command): Likewise.
7795
7796 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7797
7798         * dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
7799         SYMBOL_LOCATION_BATON.
7800
7801 2008-05-04  Vladimir Prus  <vladimir@codesourcery.com>
7802
7803         * target.h (struct target_ops): New field to_auxv_parse.
7804         * auxv.c (default_auxv_parse): New, renamed from previous
7805         target_auxv_parse.
7806         (target_auxv_parse): Try to call target method.  Fallback to
7807         default_auxv_parse if not found.
7808         * procfs.c (procfs_auxv_parse): New.
7809         (init_procfs_ops): On Solaris, in 64-bit mode, install
7810         procfs_auxv_parse.
7811
7812 2008-05-03  Adam Nemet  <anemet@caviumnetworks.com>
7813
7814         * symfile.c (add_symbol_file_command):  Use paddress rather than
7815         hex_string to print the address.
7816
7817 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7818
7819         * rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
7820         return the null frame ID to terminate the backtrace.
7821
7822 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7823
7824         * rs6000-tdep.c: Do not include "rs6000-tdep.h".
7825         (rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
7826         (SIG_FRAME_PC_OFFSET): Likewise.
7827         (SIG_FRAME_LR_OFFSET): Likewise.
7828         (SIG_FRAME_FP_OFFSET): Likewise.
7829         (rs6000_push_dummy_call): Likewise.
7830         (rs6000_return_value): Likewise.
7831         (rs6000_convert_from_func_ptr_addr): Likewise.
7832         (branch_dest, rs6000_software_single_step): Likewise.
7833         (deal_with_atomic_sequence): Rename to ...
7834         (ppc_deal_with_atomic_sequence): ... this.  Adapt all callers.
7835         Do not call branch_dest; inline required parts of that function.
7836         (rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
7837         with SYMBOL_LINKAGE_NAME.
7838         (struct reg, regsize): Delete.
7839         (read_memory_addr): Delete; inline into callers.
7840         (rs6000_skip_prologue): Move after skip_prologue.
7841         (skip_prologue): Remove prototype.
7842         (rs6000_gdbarch_init): Remove sysv_abi variable; perform all
7843         initialization as if this variable were true.  Do not install
7844         ppc64_sysv_abi_adjust_breakpoint_address.
7845
7846         * rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
7847         "gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
7848         and "breakpoint.h".
7849         (rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
7850         (SIG_FRAME_PC_OFFSET): Likewise.
7851         (SIG_FRAME_LR_OFFSET): Likewise.
7852         (SIG_FRAME_FP_OFFSET): Likewise.
7853         (rs6000_push_dummy_call): Likewise.
7854         (rs6000_return_value): Likewise.
7855         (rs6000_convert_from_func_ptr_addr): Likewise.
7856         (branch_dest, rs6000_software_single_step): Likewise.  Replace
7857         tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
7858         (rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
7859         rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
7860         Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
7861         Set tdep->lr_frame_offset.  Do not set tdep->text_segment_base.
7862
7863         * rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
7864         (AIX_TEXT_SEGMENT_BASE): New macro.
7865         * rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
7866         by AIX_TEXT_SEGMENT_BASE.
7867
7868         * ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
7869         (struct gdbarch_tdep): Remove text_segment_base member.
7870         * ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
7871         ppc64_sysv_abi_adjust_breakpoint_address.
7872
7873         * Makefile.in (rs6000-tdep.o): Update dependencies.
7874         (rs6000-aix-tdep.o): Likewise.
7875
7876 2008-05-03  Luis Machado  <luisgpm@br.ibm.com>
7877             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7878
7879         * cli/cli-decode.c (lookup_cmd_1): Fix indentation.
7880         * doublest.c (convert_typed_floating): Fix typo in comment.
7881         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
7882         * frame-unwind.h (frame_sniffer_ftype): Likewise.
7883         * frame.c (frame_unwind_address_in_block): Likewise.
7884         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
7885         * symtab.h (struct symbol): Likewise.
7886         * tramp-frame.h (struct trad_frame_cache): Likewise.
7887         * value.c (allocate_repeat_value): Likewise.
7888
7889 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7890
7891         * infrun.c (handle_inferior_event): Do not insert breakpoints at
7892         TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).
7893
7894 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
7895
7896         * parse.c (parse_exp_in_context): Don't override
7897         expression_context_pc if get_selected_block returned a valid
7898         block.
7899
7900 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
7901
7902         * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
7903         * arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
7904         * breakpoint.c (args_for_catchpoint_enable, current_exception_event):
7905         Delete.
7906         * c-typeprint.c (c_type_print_base): Delete handling of template
7907         instantiations.
7908         * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
7909         (METHOD_PTR_TO_VOFFSET): Delete.
7910         * defs.h (QUIT_FIXME): Delete.
7911         * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
7912         (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
7913         * gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
7914         ninstantiations, and instantiations.
7915         (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
7916         (TYPE_FN_FIELD_INLINED): Delete.
7917         * srec.h (SREC_BINARY): Delete.
7918         * symtab.c (symbol_init_demangled_name): Delete.
7919         * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
7920         (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
7921         (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
7922         (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
7923         (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
7924         (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
7925         * target.h (enum thread_control_capabilities): Delete tc_switch.
7926         (target_can_switch_threads): Delete.
7927
7928 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
7929
7930         * Makefile.in (objfiles.o): Update.
7931         * exec.c (exec_set_section_address): Support p->addr != 0.
7932         * objfiles.c (objfile_relocate): Update exec_ops section
7933         addresses.
7934         * symfile.c (place_section): Move exec_set_section_address call...
7935         (default_symfile_offsets): ...to here.
7936
7937 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7938
7939         * Makefile.in (ppc_linux_tdep_h): New macro.
7940         (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
7941         (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
7942         (powerpc_e500l_c): Likewise.
7943         (ppc-linux-nat.o): Update dependencies.
7944         (ppc-linux-tdep.o): Update dependencies.
7945         (rs6000-tdep.o): Update dependencies.
7946
7947         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
7948         (ppc_linux_svr4_fetch_link_map_offsets): Remove.
7949         (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
7950         (ppc_supply_reg, ppc_collect_reg): Add prototypes.
7951         (tdesc_powerpc_e500): Remove.
7952
7953         * rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
7954         and "features/rs6000/powerpc-altivec64.c".
7955         (ppc_supply_reg, ppc_collect_reg): Make global.
7956         (variants): Use tdesc_powerpc_32 for "powerpc" and
7957         tdesc_powerpc_altivec64 for "powerpc64".
7958         (_initialize_rs6000_tdep): Initialize AltiVec descriptions.
7959
7960         * ppc-linux-tdep.h: New file.
7961
7962         * ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
7963         Include "features/rs6000/powerpc-32l.c".
7964         Include "features/rs6000/powerpc-altivec32l.c".
7965         Include "features/rs6000/powerpc-64l.c".
7966         Include "features/rs6000/powerpc-altivec64l.c".
7967         Include "features/rs6000/powerpc-e500l.c".
7968         (ppc_linux_supply_gregset): New function.
7969         (ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
7970         (ppc32_linux_gregset): Use ppc_linux_supply_gregset.
7971         (ppc64_linux_gregset): Likewise.
7972         (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
7973         (ppc_linux_trap_reg_p): New function.
7974         (ppc_linux_write_pc): New function.
7975         (ppc_linux_core_read_description): New function.
7976         (ppc_linux_init_abi): Install ppc_linux_write_pc and
7977         ppc_linux_core_read_description.  Install orig_r3 and trap
7978         registers if present in the target description.
7979         (_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
7980
7981         * ppc-linux-nat.c: Include "ppc-linux-tdep.h".
7982         (PT_ORIG_R3, PT_TRAP): Define if necessary.
7983         (ppc_register_u_addr): Handle orig_r3 and trap registers.
7984         (fetch_ppc_registers): Likewise.
7985         (store_ppc_registers): Likewise.
7986         (store_register): Likewise.
7987         (ppc_linux_read_description): Check whether AltiVec is supported.
7988         Check whether inferior is 32-bit or 64-bit.  Return the appropriate
7989         Linux target description.
7990
7991         * features/Makefile (WHICH): Use rs6000/powerpc-32l and
7992         rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
7993         Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
7994         of rs6000/powerpc-64.  Use rs6000/powerpc-e500l instead of
7995         rs6000/powerpc-e500.  Update -expedite variables accordingly.
7996
7997         * features/rs6000/power-spe.xml: Use regnum 73 for "acc".
7998         * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
7999         * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
8000         * features/rs6000/powerpc-e500.c: Regenerate.
8001         * features/rs6000/powerpc-32.c: Regenerate.
8002         * features/rs6000/powerpc-64.c: Regenerate.
8003
8004         * features/rs6000/power-linux.xml: New file.
8005         * features/rs6000/power64-linux.xml: New file.
8006         * features/rs6000/powerpc-32l.xml: New file.
8007         * features/rs6000/powerpc-altivec32l.xml: New file.
8008         * features/rs6000/powerpc-64l.xml: New file.
8009         * features/rs6000/powerpc-altivec64l.xml: New file.
8010         * features/rs6000/powerpc-e500l.xml: New file.
8011         * features/rs6000/powerpc-32l.c: New (generated) file.
8012         * features/rs6000/powerpc-altivec32l.c: New (generated) file.
8013         * features/rs6000/powerpc-64l.c: New (generated) file.
8014         * features/rs6000/powerpc-altivec64l.c: New (generated) file.
8015         * features/rs6000/powerpc-e500l.xml: New (generated) file.
8016
8017         * regformats/reg-ppc.dat: Remove.
8018         * regformats/reg-ppc64.dat: Remove.
8019         * regformats/rs6000/powerpc-32.dat: Remove.
8020         * regformats/rs6000/powerpc-64.dat: Remove.
8021         * regformats/rs6000/powerpc-e500.dat: Remove.
8022         * regformats/rs6000/powerpc-32l.dat: New (generated) file.
8023         * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
8024         * regformats/rs6000/powerpc-64l.dat: New (generated) file.
8025         * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
8026         * regformats/rs6000/powerpc-e500l.dat: New (generated) file.
8027
8028 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
8029
8030         * thread.c (delete_thread): Call observer_notify_thread_exit.
8031         * mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
8032         thread_exit observer.
8033         (mi_thread_exit): New.
8034
8035 2008-05-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8036
8037         * breakpoint.c (create_exception_catchpoint): Remove prototype
8038         for already deleted function.
8039         * breakpoint.h (ep_is_exception_catchpoint): Likewise.
8040         * frame.h (show_stack_frame): Remove prototype.
8041         * stack.c (show_stack_frame): Remove empty, unused function.
8042         * source.c (symtab_to_fullname, print_source_lines): Small fix
8043         in comment.
8044         * value.c (show_values): Update comments to mention "show values"
8045         command instead of "info history".
8046
8047 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
8048
8049         * linespec.c: Include "target.h".
8050         (minsym_found): Handle minimal symbols pointing to function
8051         descriptors.  Use find_function_start_pc.
8052         * minsyms.c (msymbol_objfile): New function.
8053         * parse.c (write_exp_msymbol): Handle minimal symbols pointing
8054         to function descriptors.
8055         * symtab.c (fixup_section): Only use minimal symbol at the same
8056         address to determine section of a symbol.
8057         (find_function_start_pc): New function.
8058         (find_function_start_sal): Use it.
8059         * symtab.h (msymbol_objfile): Add prototype.
8060         (find_function_start_pc): Likewise.
8061         * value.c: Include "objfiles.h".
8062         (value_fn_field): Handle minimal symbols pointing to function
8063         descriptors.
8064         * Makefile.in (linespec.o): Update dependencies.
8065         (value.o): Likewise.
8066
8067 2008-05-02  Joel Brobecker  <brobecker@adacore.com>
8068
8069         * ada-lang.c (unwrap_value): Handle the case where the "F" field
8070         inside a PAD type is a bitfield.
8071
8072 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
8073
8074         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
8075         TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
8076         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
8077         Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
8078         Allow typedefs when checking for function pointer arguments.
8079         Right-align small structs passed on the stack.
8080         (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
8081         TYPE_CODE_CHAR the same as TYPE_CODE_INT.
8082         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
8083
8084 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8085
8086         * Makefile.in (arm-tdep.o): Update.
8087         * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
8088         (struct arm_per_objfile, arm_compare_mapping_symbols): New.
8089         (arm_pc_is_thumb): Use mapping symbols.
8090         (arm_objfile_data_cleanup, arm_record_special_symbol): New.
8091         (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
8092         (_initialize_arm_tdep): Initialize arm_objfile_data_key.
8093         * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
8094         * gdbarch.sh: Add record_special_symbol.
8095         * gdbarch.c, gdbarch.h: Regenerated.
8096         * objfiles.c (struct objfile_data): Add cleanup member.
8097         (register_objfile_data_with_cleanup): New function, from
8098         register_objfile_data.
8099         (register_objfile_data): Use it.
8100         (objfile_free_data): Call clear_objfile_data.
8101         (clear_objfile_data): Call cleanup functions.
8102         * objfiles.h (register_objfile_data_with_cleanup): Declare.
8103
8104 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8105
8106         * objfiles.c (init_entry_point_info): Handle shared libraries.
8107
8108 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8109
8110         * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
8111         lowest_pc.
8112
8113 2008-05-02  Jim Blandy  <jimb@codesourcery.com>
8114             Pedro Alves  <pedro@codesourcery.com>
8115
8116         Implement displaced stepping.
8117
8118         * gdbarch.sh (max_insn_length): New 'variable'.
8119         (displaced_step_copy, displaced_step_fixup)
8120         (displaced_step_free_closure, displaced_step_location): New
8121         functions.
8122         (struct displaced_step_closure): Add forward declaration.
8123         * gdbarch.c, gdbarch.h: Regenerated.
8124
8125         * arch-utils.c: #include "objfiles.h".
8126         (simple_displaced_step_copy_insn)
8127         (simple_displaced_step_free_closure)
8128         (displaced_step_at_entry_point): New functions.
8129         * arch-utils.h (simple_displaced_step_copy_insn)
8130         (simple_displaced_step_free_closure)
8131         (displaced_step_at_entry_point): New prototypes.
8132
8133         * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
8134         (I386_MAX_MATCHED_INSN_LEN): ... this.
8135         (i386_absolute_jmp_p, i386_absolute_call_p)
8136         (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
8137         (i386_displaced_step_fixup): New functions.
8138         (struct i386_insn, i386_match_insn): Update.
8139         (i386_gdbarch_init): Set gdbarch_max_insn_length.
8140         * i386-tdep.h (I386_MAX_INSN_LEN): New.
8141         (i386_displaced_step_fixup): New prototype.
8142         * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
8143         Register gdbarch_displaced_step_copy,
8144         gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
8145         and gdbarch_displaced_step_location functions.
8146
8147         * infrun.c (debug_displaced): New variable.
8148         (show_debug_displaced): New function.
8149         (struct displaced_step_request): New struct.
8150         (displaced_step_request_queue, displaced_step_ptid)
8151         (displaced_step_gdbarch, displaced_step_closure)
8152         (displaced_step_original, displaced_step_copy)
8153         (displaced_step_saved_copy, can_use_displaced_stepping): New
8154         variables.
8155         (show_can_use_displaced_stepping, use_displaced_stepping)
8156         (displaced_step_clear, cleanup_displaced_step_closure)
8157         (displaced_step_dump_bytes, displaced_step_prepare)
8158         (displaced_step_clear_cleanup, write_memory_ptid)
8159         (displaced_step_fixup): New functions.
8160         (resume): Call displaced_step_prepare.
8161         (proceed): Call read_pc once, and remember the value.  If using
8162         displaced stepping, don't remove breakpoints.
8163         (handle_inferior_event): Call displaced_step_fixup.  Add some
8164         debugging output.  When we try to step over a breakpoint, but get
8165         a signal to deliver to the thread instead, ensure the step-resume
8166         breakpoint is actually inserted.  If a thread hop is needed, and
8167         displaced stepping is enabled, don't remove breakpoints.
8168         (init_wait_for_inferior): Call displaced_step_clear.
8169         (_initialize_infrun): Add "set debug displaced" command.  Add
8170         "maint set can-use-displaced-stepping" command.  Clear
8171         displaced_step_ptid.
8172         * inferior.h (debug_displaced): Declare variable.
8173         (displaced_step_dump_bytes): Declare function.
8174
8175         * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
8176         dependencies.
8177
8178 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8179
8180         * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
8181         (arm_force_mode_string, arm_show_fallback_mode)
8182         (arm_show_force_mode): New.
8183         (arm_pc_is_thumb): Honor fallback-mode and force-mode.  Use
8184         arm_frame_is_thumb.
8185         (_initialize_arm_tdep): Add "set arm fallback-mode"
8186         and "set arm force-mode".
8187         * NEWS: Document new commands.
8188
8189 2008-05-02  Andrew Stubbs  <andrew.stubbs@st.com>
8190
8191         * main.h (batch_silent): Declare.
8192         * event-top.c: Include main.h.
8193         (gdb_setup_readline): Remove extern batch_silent declaration.
8194         * infrun.c (normal_stop): Don't print source location when running in
8195         --batch-silent mode.
8196         * Makefile.in (event-top.o): Add main.h dependency.
8197
8198 2008-05-02  Andreas Schwab  <schwab@suse.de>
8199
8200         * target.h (struct target_ops): Add
8201         to_watchpoint_addr_within_range.
8202         (target_watchpoint_addr_within_range): New function.
8203         * target.c (update_current_target): Inherit
8204         to_watchpoint_addr_within_range, defaulting to
8205         default_watchpoint_addr_within_range.
8206         (default_watchpoint_addr_within_range): New function.
8207         (debug_to_watchpoint_addr_within_range): New function.
8208         (setup_target_debug): Set to_watchpoint_addr_within_range.
8209         * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
8210         New function.
8211         (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
8212         * breakpoint.c (watchpoints_triggered): Use
8213         target_watchpoint_addr_within_range.
8214
8215 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8216
8217         * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
8218         (i[34567]86-*-dicos*, x86_64-*-dicos*):
8219         Set gdb_osabi to GDB_OSABI_DICOS.
8220
8221         * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
8222         * osabi.c (gdb_osabi_name): Add "DICOS".
8223
8224         * i386-dicos-tdep.c: New file.
8225
8226         * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
8227         (ALLDEPFILES): Add i386-dicos-tdep.c.
8228         (i386-dicos-tdep.o): New rule.
8229
8230 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8231
8232         * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
8233         and register the fork's PTID as a thread.
8234
8235 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8236
8237         PR gdb/1665
8238         * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
8239         assign its value to the breakpoint created.
8240         (create_breakpoints): Add breakpoint_ops argument and pass it
8241         to create_breakpoint call.
8242         (break_command_really): Add breakpoint_ops argument and pass/assign
8243         appropriately.
8244         (break_command_1): Pass NULL as ops argument.
8245         (set_breakpoint): Pass NULL as ops argument.
8246         (print_one_exception_catchpoint): Print <PENDING> if no loc available.
8247         (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
8248         catch and throw catchpoints.
8249
8250 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8251
8252         PR gdb/2343
8253         * corelow.c (core_open): Use gdbarch_target_signal_from_host to
8254         translate signal numeric value from the target to GDB's enum
8255         target_signal.
8256         * gdbarch.c, gdbarch.h: Regenerated.
8257         * gdbarch.sh: Added two new functions target_signal_from_host and
8258         target_signal_to_host.
8259         * target.h (default_target_signal_from_host,
8260         default_target_signal_to_host): New functions - declarations.
8261         * signals/signals.c (struct gdbarch): New declaration.
8262         (default_target_signal_to_host, default_target_signal_from_host): New
8263         functions.
8264
8265 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8266             Pedro Alves  <pedro@codesourcery.com>
8267
8268         Based on work by Jan Kratochvil <jan.kratochvil@redhat.com> and Jeff
8269         Johnston <jjohnstn@redhat.com>.
8270
8271         * NEWS: Mention attach to stopped process fix.
8272         * infcmd.c (detach_command, disconnect_command): Discard the thread
8273         list.
8274         * infrun.c (handle_inferior_event): Do not ignore non-SIGSTOP while
8275         attaching.  Use signal_stop_state.
8276         (signal_stop_state): Check stop_soon.
8277         * linux-nat.c (kill_lwp): Declare earlier.
8278         (pid_is_stopped, linux_nat_post_attach_wait): New.
8279         (lin_lwp_attach_lwp): Use linux_nat_post_attach_wait.  Update
8280         comments.
8281         (linux_nat_attach): Use linux_nat_post_attach_wait.
8282         (detach_callback, linux_nat_detach): Improve handling for signalled
8283         processes.
8284         (linux_nat_pid_to_str): Always print out the LWP ID if it differs
8285         from the process ID.
8286         * Makefile.in (infcmd.o): Update.
8287
8288 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8289
8290         * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
8291         * arm-tdep.c (arm_frame_is_thumb): New.
8292         (arm_pc_is_thumb): Clarify comment.
8293         (thumb_analyze_prologue): Remove PC special case.
8294         (thumb_scan_prologue): Take a block_addr argument.  Use it for
8295         find_pc_partial_function.  Remove unused variables.
8296         (arm_scan_prologue): Use arm_frame_is_thumb.  Use the block address
8297         for find_pc_partial_function.  Remove PC special case.
8298         (arm_prologue_prev_register): Add special handling for PC and CPSR.
8299         (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
8300         (arm_get_next_pc): Use arm_frame_is_thumb.
8301         (arm_write_pc): Use CPSR_T instead of 0x20.
8302         (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
8303         * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
8304         (CPSR_T): Define.
8305         * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
8306         DWARF2_FRAME_REG_FN.
8307         * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
8308         DWARF2_FRAME_REG_FN.
8309         (struct dwarf2_frame_state_reg): Add FN to loc union.
8310
8311 2008-05-01  Nick Roberts  <nickrob@snap.net.nz>
8312
8313         * exec.c (print_section_info): Add missing '\n'.
8314
8315 2008-05-01  Vladimir Prus  <vladimir@codesourcery.com>
8316
8317         * thread.c (add_thread): Move observer call to ...
8318         (add_thread_silent): ... here.
8319
8320 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8321
8322         * rs6000-tdep.c: Update for unwinder changes.
8323         * ppcobsd-tdep.c: Likewise.
8324
8325 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8326
8327         * s390-tdep.c: Update for unwinder changes.
8328
8329 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8330
8331         * spu-tdep.c: Update for unwinder changes.
8332
8333 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8334
8335         * hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
8336         ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
8337         sparc64-linux-tdep.c: Update for unwinder changes.
8338
8339 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8340
8341         * mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
8342         for unwinder changes.
8343         * mips-tdep.c: Likewise.
8344         (mips_stub_frame_cache): Unwind the ABI stack pointer, not the
8345         raw one.
8346
8347 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8348
8349         * arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
8350         unwinder changes.
8351
8352 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8353
8354         Update i386 and amd64 ports for unwinder changes.
8355
8356         * amd64-tdep.c (amd64_frame_cache): Expect this_frame.
8357         (amd64_frame_this_id, amd64_frame_prev_register): Update signature.
8358         (amd64_frame_unwind): Use default_frame_sniffer.
8359         (amd64_frame_sniffer): Delete.
8360         (amd64_sigtramp_frame_cache): Expect this_frame.
8361         (amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
8362         (amd64_sigtramp_frame_sniffer): Update signature.
8363         (amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
8364         (amd64_frame_base_address): Expect this_frame.
8365         (amd64_dummy_id): Renamed from amd64_unwind_dummy_id.  Expect
8366         this_frame.
8367         (amd64_init_abi): Use set_gdbarch_dummy_id and
8368         frame_unwind_append_unwinder.
8369         * i386-tdep.c (i386_frame_cache): Expect this_frame.
8370         (i386_frame_this_id, i386_frame_prev_register): Update signature.
8371         (i386_frame_unwind): Use default_frame_sniffer.
8372         (i386_frame_sniffer): Delete.
8373         (i386_sigtramp_frame_cache): Expect this_frame.
8374         (i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
8375         (i386_sigtramp_frame_sniffer): Update signature.
8376         (i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
8377         (i386_frame_base_address): Update signature.
8378         (i386_dummy_id): Rename from i386_unwind_dummy_id.  Expect this_frame.
8379         (i386_push_dummy_call): Update comment.
8380         (i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
8381         Expect this_frame.
8382         (i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
8383         and frame_unwind_append_unwinder.
8384         * amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
8385         amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
8386         i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
8387         i386nbsd-tdep.c: Update for unwinder changes.
8388
8389 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8390
8391         * trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
8392         (trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
8393         this_frame.
8394         (trad_frame_get_prev_register, trad_frame_get_register): Update signature.
8395         * trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
8396         (trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
8397         signature.
8398         * tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
8399         this_frame.
8400         (tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
8401         Update signature.
8402         * tramp-frame.h (struct tramp_frame): Update signature of init.
8403         * Makefile.in (trad-frame.o): Update.
8404
8405 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8406
8407         * dwarf2-frame.c (read_reg): Expect this_frame in the baton.
8408         (execute_stack_op): Put this_frame in the baton.
8409         (execute_cfa_program): Take this_frame.
8410         (struct dwarf2_frame_ops): Update comment for signal_frame_p.
8411         (dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
8412         (dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
8413         (dwarf2_frame_this_id): Adjust to work on this_frame.
8414         (dwarf2_signal_frame_this_id): Delete.
8415         (dwarf2_frame_prev_register): Update signature.  Use new frame
8416         unwind methods.
8417         (dwarf2_frame_sniffer): Update signature.  Expect this_frame.
8418         (dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
8419         dwarf2_frame_sniffer.
8420         (dwarf2_append_unwinders): New.
8421         (dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
8422         this_frame.
8423         * sparc-tdep.c (sparc32_dwarf2_struct_return_p)
8424         (sparc32_dwarf2_frame_init_reg): Expect this_frame.
8425         * cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
8426         * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
8427         * s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
8428         * sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
8429         * sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
8430         * dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
8431         (dwarf2_append_unwinders): Declare.
8432         (dwarf2_frame_base_sniffer): Update declaration.
8433         * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
8434         this_frame.
8435
8436 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8437
8438         Convert frame unwinders to use the current frame and
8439         "struct value".
8440
8441         * frame.c (frame_debug): Make global.
8442         (get_frame_id): Pass this frame to unwinder routines.
8443         (frame_pc_unwind): Remove unused unwind->prev_pc support.
8444         (do_frame_register_read): Do not discard the return value of
8445         frame_register_read.
8446         (frame_register_unwind): Remove debug messages.  Use
8447         frame_unwind_register_value.
8448         (frame_unwind_register_value, get_frame_register_value): New
8449         functions.
8450         (create_new_frame, get_frame_base_address, get_frame_locals_address)
8451         (get_frame_args_address, get_frame_type): Pass this frame to
8452         unwinder routines.
8453         (frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
8454         functions.
8455         * frame.h: Update comments.
8456         (frame_debug, frame_unwind_register_value, get_frame_register_value)
8457         (frame_prepare_for_sniffer): Declare.
8458         * frame-unwind.h: Update comments and parameter names.
8459         (default_frame_sniffer): Declare.
8460         (frame_prev_register_ftype): Return a struct value *.
8461         (struct frame_unwind): Remove prev_pc member.
8462         (frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
8463         (frame_unwind_append_unwinder, frame_unwind_got_optimized)
8464         (frame_unwind_got_register, frame_unwind_got_memory)
8465         (frame_unwind_got_constant, frame_unwind_got_address): Declare.
8466         * frame-base.h: Update comments and parameter names.
8467         * valops.c (value_fetch_lazy): Use get_frame_register_value.  Iterate
8468         if necessary.  Add debugging output.
8469         * sentinel-frame.c (sentinel_frame_prev_register)
8470         (sentinel_frame_this_id): Update for new signature.
8471         (sentinel_frame_prev_pc): Delete.
8472         (sentinel_frame_unwinder): Remove prev_pc.
8473         * ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
8474         prev_pc.
8475         * libunwind-frame.c (libunwind_frame_unwind): Likewise.
8476         * frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
8477         (frame_unwind_append_sniffer): Delete.
8478         (frame_unwind_append_unwinder): New function.
8479         (frame_unwind_find_by_frame): Take this frame.  Only use sniffers
8480         from unwinders.  Use frame_prepare_for_sniffer.
8481         (default_frame_sniffer, frame_unwind_got_optimized)
8482         (frame_unwind_got_register, frame_unwind_got_memory)
8483         (frame_unwind_got_constant, frame_unwind_got_address): New functions.
8484         * dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
8485         (dummy_frame_prev_register, dummy_frame_this_id): Update for new
8486         signature.
8487         * gdbarch.sh: Replace unwind_dummy_id with dummy_id.
8488         * gdbarch.c, gdbarch.c: Regenerated.
8489         * frame-base.c (default_frame_base_address)
8490         (default_frame_locals_address, default_frame_args_address): Update
8491         for new signature.
8492         (frame_base_find_by_frame): Pass this frame to unwinder routines.
8493         * infcall.c (call_function_by_hand): Update comments.
8494         * Makefile.in (frame-unwind.o): Update dependencies.
8495
8496 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8497
8498         * ada-lang.c (ada_value_primitive_packed_val): Only check
8499         value_lazy for memory lvals.
8500         * findvar.c (value_of_register_lazy): New function.
8501         (locate_var_value): Only check value_lazy for memory lvals.
8502         * valarith.c (value_subscripted_rvalue): Likewise.
8503         * valops.c (value_fetch_lazy): Handle both memory and register
8504         lvals.
8505         (search_struct_field, value_slice): Only check value_lazy for memory
8506         lvals.
8507         * value.c (struct value): Update comment for lazy.
8508         (value_primitive_field): Only check value_lazy for memory lvals.
8509         * value.h (value_lazy): Update comment.
8510         (value_of_register_lazy): Declare.
8511
8512 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8513
8514         * corefile.c (reopen_exec_file): Close any open files.
8515
8516 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8517
8518         * ia64-tdep.c (ia64_memory_remove_breakpoint): Set
8519         show_memory_breakpoints to 1 while reading the instruction bundle.
8520
8521 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8522
8523         * gdbarch.sh: Document the return_value method. Explain that
8524         the FUNCTYPE parameter might be NULL.
8525         * gdbarch.h: Regenerated.
8526         * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
8527         type when calling using_struct_return, as this is unnecessary
8528         on this target.
8529
8530 2008-04-28  Joel Brobecker  <brobecker@adacore.com>
8531
8532         * terminal.h (create_tty_session): Fix return type.
8533
8534 2008-04-26  Vladimir Prus  <vladimir@codesourcery.com>
8535
8536         * mi/mi-interp.c (mi_new_thread): Quote the thread id.
8537
8538 2008-04-26  Joel Brobecker  <brobecker@adacore.com>
8539
8540         * breakpoint.c (condition_command, commands_from_control_command)
8541         (break_command_really): Minor reformatting.
8542
8543 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8544
8545         * dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.
8546
8547 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8548
8549         * amd64-tdep.c (amd64_get_longjmp_target): New.
8550         (amd64_init_abi): Register amd64_get_longjmp_target as
8551         gdbarch_get_longjmp_target callback.
8552         * i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
8553
8554 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8555
8556         * breakpoint.h (enum bpstat_what_main_action): Delete
8557         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
8558
8559         * breakpoint.c (clrs): Delete.
8560         (bpstat_what): Update table.
8561
8562         * infrun.c (handle_inferior_event): Remove
8563         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
8564
8565 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8566
8567         * mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
8568         Adjust all prototypes using mi_cmd_args_ftype to use
8569         mi_cmd_argv_ftype.
8570         (struct mi_cmd): Remove the args_func field.
8571         * mi/mi-cmds.c: Don't provide value for the args_func field.
8572         * mi/mi-main.c (mi_execute_async_cli_command)
8573         (mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
8574         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
8575         (mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
8576         (mi_cmd_exec_continue, mi_cmd_exec_interrupt)
8577         (mi_cmd_target_download): Adjust.
8578         (mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
8579         (mi_cmd_execute): Do not check for args_func.
8580         (mi_execute_async_cli_command): Adjust.
8581         * mi/mi-parse.c: Don't check for args_func.
8582
8583 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8584
8585         * breakpoint.c (bpstat_check_location)
8586         (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
8587         New, extracted from bpstat_stop_status.
8588         (bpstat_stop_status): Use the above.
8589
8590 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8591
8592         * mi/mi-main.c (last_async_command): Rename to current_token.
8593         (previous_async_command): Remove.
8594         (mi_cmd_gdb_exit): Adjust.
8595         (mi_cmd_exec_interrupt): Don't dance with previous_async_command.
8596         (mi_cmd_target_select): Adjust.
8597         (mi_cmd_execute): Don't set previous_async_command.  Free token
8598         here even in async mode.
8599         (mi_execute_async_cli_command): Adjust.
8600         (mi_exec_async_cli_cmd_continuation): Adjust.  Do not free the
8601         token.
8602         (mi_load_progress): Adjust.
8603
8604 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8605
8606         * infcmd.c (step_1_continuation): Always disable longjmp
8607         breakpoint if we're not going to do another step.
8608
8609 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8610
8611         exec_cleanup murder.
8612         * breakpoint.c (until_break_command_continuation): Add
8613         the 'error' parameter.  Directly delete the breakoint as
8614         opposed to running cleanups.
8615         (until_break_command): Install continuation only
8616         after starting the target.  Don't use exec cleanups,
8617         use ordinary cleanups.  Discard cleanups is successfully
8618         started the target in async mode.
8619         (make_cleanup_delete_breakpoint): Remove.
8620         * breakpoint.h (make_cleanup_delete_breakpoint): Remove
8621         declaration.
8622         * defs.h (do_exec_cleanups, make_exec_cleanup): Remove
8623         declarations.
8624         (struct continations): Add the 'error' parameter to the
8625         continuation_hook field.
8626         (add_continuation, do_all_continuations)
8627         (add_intermediate_continuation)
8628         (do_all_intermediate_continuations): Add the 'error' parameter.
8629         * exceptions.c (throw_exception): Don't call do_exec_cleanups.
8630         * inf-loop.c (inferior_event_handler): Instead of calling
8631         discard_all_continuations, use do_all_continuations with 1 as
8632         'error' parameter.  Pass 0 as 'error' parameter in existing uses
8633         of discard_all_continuations.
8634         * infcmd.c (step_1): Do not use exec cleanup.  For async case, discard
8635         cleanups.
8636         (step_once): Install continuation only after resuming the target.
8637         (step_1_continuation): Disable longjmp breakpoint on error.
8638         (finish_command_continuation): Add the error parameter.  Delete
8639         the finish breakpoint directly, do not use cleanups.
8640         (finish_command): Do not use exec_cleanups. Always setup
8641         continuation.  For sync case, immediately run them.
8642         (attach_command_continuation): Add the error parameter.
8643         * infrun.c (fetch_inferior_event): Do not use exec cleanups to
8644         remove step_resume_breakpoint -- adjust delete it directly.
8645         * interps.c (interp_set): Adjust call to do_all_continations.
8646         * mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
8647         do exec cleanups.
8648         * mi/mi-main.c (mi_cmd_target_select): Do not do exec
8649         cleanups.
8650         (mi_cmd_execute): Do not use exec_cleanup.
8651         (mi_execute_async_cli_command): Simplify the string concatenation
8652         logic.  Do no use exec cleanup.
8653         (mi_exec_async_cli_cmd_continuation): New parameter error.
8654         Free last_async_command.
8655         * top.c (command_line_handler_continuation): New parameter error.
8656         * utils.c (exec_cleanup_chain, make_exec_cleanup)
8657         (do_exec_cleanups): Remove.
8658         (add_continuation, do_all_continations)
8659         (add_intermediate_continuation)
8660         (do_all_intermediate_continuations): New parameter error.
8661
8662 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8663
8664         * breakpoint.h (bp_location_p): New typedef.
8665         Register a vector of bp_location_p.
8666         * breakpoint.c (always_inserted_mode)
8667         (show_always_inserted_mode): New.
8668         (unlink_locations_from_global_list): Remove.
8669         (update_global_location_list)
8670         (update_global_location_list_nothrow): New.
8671         (update_watchpoint): Don't free locations.
8672         (should_insert_location): New.
8673         (insert_bp_location): Use should_insert_location.
8674         (insert_breakpoint_locations): Copied from
8675         insert_breakpoints.
8676         (insert_breakpoint): Use insert_breakpoint_locations.
8677         (bpstat_stop_status): Call update_global_location_list
8678         when disabling breakpoint.
8679         (allocate_bp_location): Don't add to bp_location_chain.
8680         (set_raw_breakpoint)
8681         (create_longjmp_breakpoint, enable_longjmp_breakpoint)
8682         (disable_longjmp_breakpoint, create_overlay_event_breakpoint)
8683         (enable_overlay_breakpoints, disable_overlay_breakpoints)
8684         (set_longjmp_resume_breakpoint)
8685         (enable_watchpoints_after_interactive_call_stop)
8686         (disable_watchpoints_before_interactive_call_start)
8687         (create_internal_breakpoint)
8688         (create_fork_vfork_event_catchpoint)
8689         (create_exec_event_catchpoint, set_momentary_breakpoint)
8690         (create_breakpoints, break_command_1, watch_command_1)
8691         (create_exception_catchpoint)
8692         (handle_gnu_v3_exceptions)
8693         (disable_breakpoint, breakpoint_re_set_one)
8694         (create_thread_event_breakpoint, create_solib_event_breakpoint)
8695         (create_ada_exception_breakpoint): : Don't call check_duplicates.
8696         Call update_global_location_list.
8697         (delete_breakpoint): Don't remove locations and don't
8698         try to reinsert them. Call update_global_location_list.
8699         (update_breakpoint_locations): Likewise.
8700         (restore_always_inserted_mode): New.
8701         (update_breakpoints_after_exec): Temporary disable
8702         always inserted mode.
8703         * Makefile.in: Update dependencies.
8704
8705         * infrun.c (proceed): Remove breakpoints while stepping
8706         over breakpoint.
8707         (handle_inferior_event): Don't remove or insert
8708         breakpoints.
8709         * linux-fork.c (checkpoint_command): Remove breakpoints
8710         before fork and insert after.
8711         (linux_fork_context): Remove breakpoints before switch
8712         and insert after.
8713         * target.c (target_disconnect, target_detach): Remove
8714         breakpoints from target.
8715
8716
8717 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8718
8719         * breakpoint.c (print_one_breakpoint_location): In MI
8720         mode, report the location string the breakpoint was
8721         originally created with.
8722
8723 2008-04-23  Maxim Grigoriev  <maxim2405@gmail.com>
8724
8725         * Makefile.in (xtensa-tdep.o): Update dependencies.
8726         * configure.tgt (xtensa*): Update dependencies.
8727         * xtensa-tdep.c (arreg_number): Renamed from areg_number.
8728         Local variable areg renamed to arreg.
8729         (areg_number): New function.
8730         (xtensa_pseudo_register_read, xtensa_pseudo_register_write)
8731         (xtensa_extract_return_value, xtensa_store_return_value): areg_number
8732         replaced by arreg_number.
8733         (xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
8734         (xtensa_alloc_frame_cache): Initialize cache->wd.ws.
8735         (xtensa_scan_prologue): New function.
8736         (xtensa_frame_cache): New local fp_regnum. Handle separately the case,
8737         when ENTRY instraction hasn't been executed yet. Get the frame pointer
8738         value based on prologue analysis. Fix the bugs preventing WS and
8739         AR4-AR7/A11 registers from getting right values for intermediate frames,
8740         whose registers have been already spilled.
8741         (xtensa_frame_prev_register): Fix WS register value. Use are_number
8742         and arreg_number appropriately.
8743         (xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
8744         svr4_ilp32_fetch_link_map_offsets.
8745
8746 2008-04-23  Andrew Stubbs  <andrew.stubbs@st.com>
8747
8748         * printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
8749         (printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
8750
8751 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
8752
8753         * acinclude.m4: Add override.m4.
8754         * configure: Regenerate.
8755
8756 2008-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
8757
8758         * ada-lang.c (get_selections): Variable PROMPT made non-const and
8759         initialized with a trailing space now.  Use PROMPT_ARG of
8760         COMMAND_LINE_INPUT instead of printing it ourselves.
8761
8762 2008-04-22  Joel Brobecker  <brobecker@adacore.com>
8763
8764         * NEWS: Document support for 64-bit core file.
8765
8766 2008-04-22  Corinna Vinschen  <vinschen@redhat.com>
8767
8768         * NEWS: Add information on calling convention and new SH CLI options.
8769
8770         * sh-tdep.c (sh_cc_gcc): New static string.
8771         (sh_cc_renesas): Ditto.
8772         (sh_cc_enum): New static string array.
8773         (sh_active_calling_convention): New static string pointer denoting
8774         active user chosen ABI.
8775         (sh_is_renesas_calling_convention): New function to return function
8776         specific ABI, or user choice if necessary.
8777         (sh_use_struct_convention): Rename first argument and turn around its
8778         meaning.  Check for renesas ABI and return accordingly.
8779         (sh_use_struct_convention_nofpu): New function.
8780         (sh_next_flt_argreg): Get function type as third parameter.  Check
8781         for renesas ABI and choose floating registers accordingly.
8782         (sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
8783         struct return slot accordingly.
8784         (sh_push_dummy_call_nofpu): Ditto.
8785         (sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
8786         Evaluate ABI and give to sh_use_struct_convention_nofpu.
8787         (sh_return_value_fpu):  Evaluate ABI and give to
8788         sh_use_struct_convention.
8789         (show_sh_command): New function.
8790         (set_sh_command): Ditto.
8791         (_initialize_sh_tdep): Initialize `set/show sh calling-convention
8792         CLI command.
8793
8794         * gdbarch.sh (return_value): Add func_type argument.
8795         * gdbarch.c: Regenerate.
8796         * gdbarch.h: Ditto.
8797         * eval.c (evaluate_subexp_standard): Rename local variable value_type to
8798         val_type so as not to collide with value_type function.  Call
8799         using_struct_return with additional function type argument.
8800         * infcall.c (call_function_by_hand): Call using_struct_return and
8801         gdbarch_return_value with additional function type argument.
8802         * infcmd.c (print_return_value): Take addition func_type argument.
8803         Call gdbarch_return_value with additional function type argument.
8804         (finish_command_continuation): Call print_return_value with additional
8805         function type argument.
8806         (finish_command): Ditto.
8807         * sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
8808         additional function type argument.
8809         * stack.c (return_command): Call using_struct_return and
8810         gdbarch_return_value with additional function type argument.
8811         * value.c (using_struct_return): Take additional function type argument.
8812         * value.h (using_struct_return): Accommodate declaration.
8813         * alpha-tdep.c (alpha_return_value): Add func_type argument.
8814         * amd64-tdep.c (amd64_return_value): Ditto.
8815         * arm-tdep.c (arm_return_value): Ditto.
8816         * avr-tdep.c (avr_return_value): Ditto.
8817         * cris-tdep.c (cris_return_value): Ditto.
8818         * frv-tdep.c (frv_return_value): Ditto.
8819         * h8300-tdep.c (h8300_return_value): Ditto.
8820         (h8300h_return_value): Ditto.
8821         * hppa-tdep.c (hppa32_return_value): Ditto.
8822         (hppa64_return_value): Ditto.
8823         * i386-tdep.c (i386_return_value): Ditto.
8824         * ia64-tdep.c (ia64_return_value): Ditto.
8825         * iq2000-tdep.c (iq2000_return_value): Ditto.
8826         * m32c-tdep.c (m32c_return_value): Ditto.
8827         * m32r-tdep.c (m32r_return_value): Ditto.
8828         * m68hc11-tdep.c (m68hc11_return_value): Ditto.
8829         * m68k-tdep.c (m68k_return_value): Ditto.
8830         (m68k_svr4_return_value): Ditto.
8831         * m88k-tdep.c  (m88k_return_value): Ditto.
8832         * mep-tdep.c (mep_return_value): Ditto.
8833         * mips-tdep.c (mips_eabi_return_value): Ditto.
8834         (mips_n32n64_return_value): Ditto.
8835         (mips_o32_return_value): Ditto.
8836         (mips_o64_return_value): Ditto.
8837         * mn10300-tdep.c (mn10300_return_value): Ditto.
8838         * mt-tdep.c (mt_return_value): Ditto.
8839         * ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
8840         * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
8841         (ppc_sysv_abi_broken_return_value): Ditto.
8842         (ppc64_sysv_abi_return_value): Ditto.
8843         * ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
8844         (ppc_sysv_abi_broken_return_value): Ditto.
8845         (ppc64_sysv_abi_return_value): Ditto.
8846         * ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
8847         * rs6000-tdep.c (rs6000_return_value): Ditto.
8848         * s390-tdep.c (s390_return_value): Ditto.
8849         * score-tdep.c (score_return_value): Ditto.
8850         * sh-tdep.c (sh_return_value_nofpu): Ditto.
8851         (sh_return_value_fpu): Ditto.
8852         * sh64-tdep.c (sh64_return_value): Ditto.
8853         * sparc-tdep.c (sparc32_return_value): Ditto.
8854         * sparc64-tdep.c (sparc64_return_value): Ditto.
8855         * spu-tdep.c (spu_return_value): Ditto.
8856         * v850-tdep.c (v850_return_value): Ditto.
8857         * vax-tdep.c (vax_return_value): Ditto.
8858         * xstormy16-tdep.c (xstormy16_return_value): Ditto.
8859         * xtensa-tdep.c (xtensa_return_value): Ditto.
8860
8861         * gdbtypes.h (struct type): Add calling_convention member.
8862         * dwarf2read.c (read_subroutine_type): Add calling convention read
8863         from DW_AT_calling_convention attribute to function type.
8864
8865 2008-04-22  Markus Deuling  <deuling@de.ibm.com>
8866
8867         * eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
8868         multi_f77_subscript to support values from registers.
8869         * valarith.c (value_subscripted_rvalue): Remove prototype and static.
8870         * value.h (value_subscripted_rvalue): Add prototype.
8871
8872         * f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
8873         Fix output.
8874         * f-valprint.c (f_val_print): Likewise.
8875
8876 2008-04-21  Craig Silverstein  <csilvers@google.com>
8877
8878         * dwarf2read.c (zlib_decompress_section): Define abfd in the
8879         !HAVE_ZLIB_H case.
8880
8881 2008-04-21  Pedro Alves  <pedro@codesourcery.com>
8882
8883         * symfile.c (syms_from_objfile): Don't warn if lowest loadable
8884         section is not a code section.
8885
8886 2008-04-19  Craig Silverstein  <csilvers@google.com>
8887
8888         * NEWS: Add information on compressed debug sections.
8889
8890 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8891
8892         * mi/mi-cmd-var.c (varobj_update_one): Print new
8893         value for variable objects that changed type.
8894
8895 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8896
8897         * varobj.c (varobj_invalidate): Don't touch floating
8898         varobjs.
8899
8900 2008-04-19  Mark Kettenis  <kettenis@gnu.org>
8901
8902         * symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
8903         (multiple_symbols_cancel): Remove extra const.
8904         * symtab.h: Likewise.
8905
8906 2008-04-19  Nick Roberts  <nickrob@snap.net.nz>
8907
8908         * interps.c (top_level_interpreter): Rename static variable...
8909         (top_level_interpreter_ptr): ...to this.
8910         (top_level_interpreter): New function.
8911
8912         * interps.h: New extern for top_level_interpreter.
8913
8914         * linespec.c: Include interps.h and mi/mi-cmds.h.
8915         (decode_line_2): When using MI, always set all breakpoints in menu.
8916
8917         * Makefile.in (linespec.o, mi-interp.o): Add dependencies.
8918
8919 2008-04-18  Craig Silverstein  <csilvers@google.com>
8920
8921         * configure.ac (AC_SEARCH_LIBS): Add check for zlib.
8922         * config.in, configure: Regenerate.
8923         * dwarf2read.c: Include zlib.h if present.
8924         Modified *_SECTION macros.
8925         (section_is_p): New.
8926         (dwarf2_locate_sections): Use section_is_p instead of strcmp
8927         (dwarf2_resize_section): New.
8928         to determine whether a given section has a given name.
8929         (zlib_decompress_section): New.
8930         (dwarf2_read_section): Read the compressed section if present
8931         in the binary.
8932         * MAINTAINERS: Added myself to section Write After Approval.
8933
8934 2008-04-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8935
8936         * defs.h (exec_set_section_offsets): Remove prototype.
8937         * exec.c (exec_set_section_offsets): Remove function.
8938
8939 2008-04-18  Joel Brobecker  <brobecker@adacore.com>
8940
8941         * stabsread.c (cleanup_undefined_types_1): Add instance flags check
8942         in the search for the matching symbol.
8943
8944 2008-04-17  Marc Khouzam  <marc.khouzam@ericsson.com>
8945
8946         * breakpoint.c (update_watchpoint): Always reparse
8947         condition.
8948
8949 2008-04-17  Joel Brobecker  <brobecker@adacore.com>
8950
8951         * breakpoint.c (print_one_breakpoint_location): Make sure to print
8952         the breakpoint address only once.
8953
8954 2008-04-17  Dennis Roberts  <dennis.roberts@sunquestinfo.com>
8955
8956         * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
8957         rather than a hard-coded architecture, for xcoff executables.
8958
8959 2008-04-17  Doug Evans  <dje@google.com>
8960
8961         * buildsym.c (watch_main_source_file_lossage): New fn.
8962         (end_symtab): Call it.
8963
8964         * source.c (find_and_open_source): Add some comments clarifying
8965         handling of FULLNAME argument.  Make static.  Remove pointless
8966         xstrdup/xfree.
8967
8968 2008-04-17  Pedro Alves  <pedro@codesourcery.com>
8969
8970         * inf-loop.c (inferior_event_handler): Also run the intermediate
8971         continuations in the INF_EXEC_COMPLETE case.
8972
8973 2008-04-16  Tom Tromey  <tromey@redhat.com>
8974
8975         * cli/cli-decode.h (CMD_ASYNC_OK): New define.
8976         (set_cmd_async_ok, get_cmd_async_ok): Declare.
8977         * cli/cli-decode.c (set_cmd_async_ok): New function.
8978         (get_cmd_async_ok): New function.
8979         * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
8980         "show" as async-ok.
8981         * top.c (execute_command): Use get_cmd_async_ok.
8982         * infcmd.c: Include cli/cli-decode.h.
8983         (_initialize_infcmd): Mark "interrupt" as async-ok.
8984         * Makefile.in (infcmd.o): Depend on cli_decode_h.
8985
8986 2008-04-16  Daniel Jacobowitz  <dan@codesourcery.com>
8987
8988         PR gdb/2445
8989         * exec.c: Correct "arch-utils.h" include.
8990
8991 2008-04-15  Aleksandar Ristovski  <aristovski@qnx.com>
8992
8993         PR gdb/2424
8994         * infrun.c (normal_stop) Move breakpoint_auto_delete further down
8995         to allow printing to 'see' real reason of stop. This fixes PR 2424.
8996         * breakpoint.c (bpdisp_texst): New function. The function takes over
8997         the role of bpstats static array in print_one_breakpoint_location.
8998         (print_it_typical): Print "Temporary breakpoint" instead
8999         of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
9000         protocols, print disp field.
9001         (print_one_breakpoint_location): Removed bpdisps static definition.
9002         Call new bpstat_text function to get value for 'disp' field.
9003         (mention): Print "Temporary breakpoint" instead of just "Breakpoint".
9004
9005 2008-04-15  Daniel Jacobowitz  <dan@codesourcery.com>
9006
9007         * gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
9008         gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
9009         by rerunning gnulib-tool with --aux-dir=gnulib/extra.
9010         * gnulib/Makefile.in: Regenerate.
9011
9012 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
9013
9014         * Makefile.in (GNULIB_H): New.  Trigger all-lib.
9015         (defs_h): Use $(GNULIB_H).
9016         (all-lib): Depend on gnulib/Makefile.
9017         (gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
9018         * config.in, gnulib/Makefile.in: Regenerated.
9019
9020 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
9021
9022         * Makefile.in (LIBGNU, INCGNU): Define.
9023         (INTERNAL_CFLAGS_BASE): Add INCGNU.
9024         (INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
9025         (CLEANDIRS): New.
9026         ($(LIBGNU), all-lib): New rules.
9027         (clean, distclean, do-maintainer-clean): Use CLEANDIRS.
9028         * configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
9029         Simplify AC_CONFIG_AUX_DIR.  Generate gnulib/Makefile.
9030         * gnulib: New directory, from gnulib-tool.
9031         * configure, aclocal.m4: Regenerated.
9032
9033 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
9034
9035         * linux-thread-db.c (have_threads_callback): Check thread->private.
9036
9037 2008-04-13  Nick Roberts  <nickrob@snap.net.nz>
9038             Vladimir Prus  <vladimir@codesourcery.com>
9039
9040         Fix @-varobjs.
9041         * varobj.c (value_of_root): Update the expression for
9042         floating varobjs.
9043         * mi/mi-cmd-var.c (varobj_update_one): If type has changed,
9044         report that.
9045
9046 2008-04-09  Marc Khouzam  <marc.khouzam@ericsson.com>
9047
9048         * mi/mi-cmd-var.c: Include "mi-getopt.h".
9049         (mi_parse_format): New.  Factored out from mi_cmd_var_set_format.
9050         (mi_cmd_var_set_format): Use new mi_parse_format.
9051         (mi_cmd_var_evaluate_expression): Support for -f option to specify
9052         format.
9053         * Makefile.in (mi-cmd-var.o): Update dependencies.
9054
9055         * varobj.h (varobj_get_formatted_value): Declare.
9056         * varobj.c (my_value_of_variable): Added format parameter.
9057         (cplus_value_of_variable): Likewise.
9058         (java_value_of_variable): Likewise.
9059         (c_value_of_variable): Likewise.  Evaluate expression based
9060         on format parameter.
9061         (struct language_specific): Add format parameter to function member
9062         *value_of_variable.
9063         (varobj_get_formatted_value): New.
9064         (varobj_get_value): Added format parameter to method call.
9065
9066 2008-04-08  Joel Brobecker  <brobecker@adacore.com>
9067
9068         * stabsread.c (cleanup_undefined_types_noname): Manually set the
9069         instance flags of the undefined type before calling replace_type.
9070
9071 2008-04-08  Vladimir Prus  <vladimir@codesourcery.com>
9072
9073         * target.h (enum strata): Remove the download_stratum.
9074
9075 2008-04-07  Doug Evans  <dje@google.com>
9076
9077         * buildsym.h (last_source_file): Add dwarf info to comment.
9078         (last_source_start_addr): Ditto.
9079
9080 2008-04-07  Pedro Alves  <pedro@codesourcery.com>
9081
9082         * alphanbsd-tdep.c: Include "target.h".
9083         * mn10300-tdep.c: Include "target.h".
9084         * Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.
9085
9086 2008-04-06  Vladimir Prus  <vladimir@codesourcery.com>
9087
9088         Fix breakpoint condition that use member variables.
9089         * valops.c (check_field): Remove.
9090         (check_field_in): Rename to check_field.
9091         (value_of_this): Use la_name_of_this.
9092         * value.h (check_field): Adjust prototype.
9093
9094         * language.h (la_value_of_this): Rename to la_name_of_this.
9095         * language.c (unknown_language_defn): Specify "this" for
9096         name_of_this.
9097         (auto_language_defn): Likewise.
9098         (local_language_defn): Likewise.
9099         * ada-lang.c (ada_language_defn): Adjust comment.
9100         * c-lang.c (c_language_defn): Adjust comment.
9101         (cplus_language_defn): Specify "this" for name_of_this.
9102         (asm_language_defn): Adjust comment.
9103         (minimal_language_defn): Adjust comment.
9104         * f-lang.c (f_language_defn): Specify NULL for name_of_this.
9105         * jv-lang.c (java_language_defn): Specify "this" for name_of_this.
9106         * m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
9107         * objc-lang.c (objc_language_defn): Specify "self" for
9108         name_of_this.
9109         * p-lang.c (pascal_language_defn): Specify "this" for
9110         name_of_this.
9111         * scm-lang.c (scm_language_defn): Specify NULL for name_of_this.
9112
9113         * symtab.c (lookup_symbol_aux): Lookup "this" in the
9114         proper scope, and check for field in type of "this", without
9115         trying to create a value.
9116
9117 2008-04-04  Pedro Alves  <pedro@codesourcery.com>
9118
9119         * mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
9120         (mi_error_message): Delete declaration.
9121         * mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
9122         returning MI_CMD_ERROR.
9123         * mi/mi-main.c (mi_error_message): Delete.
9124         (mi_cmd_exec_interrupt):
9125         (mi_cmd_thread_select, mi_cmd_thread_list_ids)
9126         (mi_cmd_thread_info): Call error instead of returning
9127         MI_CMD_ERROR.
9128         (mi_cmd_data_list_register_values): Call error instead of
9129         returning MI_CMD_ERROR.  Adapt to new get_register interface.
9130         (get_register): Change return typo to void.  Call error instead of
9131         returning MI_CMD_ERROR.
9132         (mi_cmd_data_write_register_values): Call error instead of
9133         returning MI_CMD_ERROR.
9134         (mi_cmd_list_features): Return MI_CMD_DONE.
9135         (captured_mi_execute_command): Remove MI_CMD_ERROR handling.
9136         (mi_execute_command): Always print exceptions with -error.
9137
9138 2008-04-04  Joel Brobecker  <brobecker@adacore.com>
9139
9140         * NEWS: Mention new commands set/show multiple-symbols.
9141
9142 2008-04-03  Joel Brobecker  <brobecker@adacore.com>
9143
9144         * symtab.c (multiple_symbols_ask, multiple_symbols_all)
9145         (multiple_symbols_cancel): New constants.
9146         (multiple_symbols_modes, multiple_symbols_mode): New static globals.
9147         (multiple_symbols_select_mode): New function.
9148         (_initialize_symtab): Add new set/show multiple-symbols commands.
9149         * symtab.h (multiple_symbols_ask, multiple_symbols_all)
9150         (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
9151         * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
9152         setting.
9153         * linespec.c (decode_line_2): Likewise.
9154
9155 2008-04-03  Doug Evans  <dje@sebabeach.org>
9156
9157         * symtab.h (enum free_code): Delete free_contents, unused.
9158         * symmisc.c (free_symtab_block): Delete.
9159         (free_symtab, case free_code): Delete.
9160
9161 2008-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
9162
9163         * valops.c (value_cast_structs): New function. Cast related
9164         STRUCT types up/down and return cast value. The body of this
9165         function comes mostly from value_cast_pointers.
9166         (value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
9167         to value_cast_structs. Now value_cast_pointers needs only create
9168         appropriate reference after using value_cast_structs for actual
9169         casting.
9170         (value_cast): Handle references.
9171
9172 2008-04-01  Marc Khouzam  <marc.khouzam@ericsson.com>
9173
9174         * MAINTAINERS: Added myself to section Write After Approval.
9175
9176 2008-03-30  Daniel Jacobowitz  <dan@codesourcery.com>
9177
9178         * ia64-tdep.c (examine_prologue): Correct array access.
9179
9180 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
9181
9182         * cp-support.c (first_component_command): Return if no arguments.
9183
9184 2008-03-28  Carlos O'Donell  <carlos@codesourcery.com>
9185
9186         * ser-mingw.c (ser_windows_open): Open requested name.
9187
9188 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
9189
9190         * MAINTAINERS: Added myself.
9191
9192 2008-03-28  Pedro Alves  <pedro@codesourcery.com>
9193
9194         * target.c (find_default_run_target): Allow a NULL `do_mesg'
9195         parameter.  If it is NULL, don't call error.
9196         (find_default_can_async_p, find_default_is_async_p): Pass NULL as
9197         `do_mesg' parameter to find_default_run_target.  If no target was
9198         found, return 0.
9199
9200 2008-03-28  Daniel Jacobowitz  <dan@codesourcery.com>
9201
9202         * mips-linux-tdep.c: Update N32/N64 signal frame comments.
9203         (N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
9204         (N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
9205         Delete.
9206         (mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.
9207
9208 2008-03-27  Joel Brobecker  <brobecker@adacore.com>
9209
9210         GDB 6.8 released.
9211
9212 2008-03-27  Ulrich Weigand  <uweigand@de.ibm.com>
9213
9214         * features/Makefile (%.dat): Set xmltarget to the base filename
9215         of the XML source, without subdirectory.
9216         * regformats/rs6000/powerpc-32.dat: Regenerate.
9217         * regformats/rs6000/powerpc-64.dat: Regenerate.
9218         * regformats/rs6000/powerpc-e500.dat: Regenerate.
9219
9220 2008-03-27  Markus Deuling  <deuling@de.ibm.com>
9221
9222         * xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
9223         objfile arch.
9224
9225 2008-03-27  Nick Roberts  <nickrob@snap.net.nz>
9226
9227         * mi/mi-main.c (enum captured_mi_execute_command_actions):
9228         Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.
9229
9230 2008-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
9231
9232         * objfiles.h (struct objfile): New GDBARCH member.
9233         (get_objfile_arch): Add prototype.
9234         * objfiles.c: Include "arch-utils.h".
9235         (allocate_objfile): Look up gdbarch associated with bfd.
9236         (get_objfile_arch): New function.
9237         * Makefile (objfiles.o): Update dependencies.
9238
9239         * dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
9240         by objfile arch.
9241         * dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
9242         by frame arch.
9243         (locexpr_describe_location): Replace current_gdbarch by
9244         objfile arch.
9245         * dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
9246         (dwarf2_add_field): Likewise.
9247         (read_tag_pointer_type): Likewise.
9248         (read_base_type): Likewise.
9249         (new_symbol): Likewise.
9250
9251         * coffread.c (decode_type): Add OBJFILE argument.  Update callers.
9252         (decode_base_type, decode_function_type): Likewise.
9253         (coff_read_struct_type, coff_read_enum_type): Likewise.
9254         (coff_symtab_read): Replace current_gdbarch by objfile arch.
9255         (decode_base_type): Likewise.
9256         (coff_read_enum_type): Likewise.
9257         (coff_read_struct_type): Replace current_objfile by OBJFILE argument.
9258         (coff_read_enum_type): Likewise.
9259
9260         * dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
9261         (end_psymtab): Likewise.
9262         (process_one_symbol): Likewise.
9263
9264         * mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
9265         (parse_procedure): Likewise.
9266         (parse_partial_symbols): Likewise.
9267
9268         * somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.
9269
9270         * stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
9271         Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
9272         built-in types.
9273         (read_range_type): Replace current_gdbarch by objfile arch.  Replace
9274         static range_index_type by built-in type.
9275         (read_one_struct_field): Replace current_gdbarch by objfile arch.
9276         (read_enum_type): Likewise.
9277
9278         * xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
9279         objfile arch.
9280
9281 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9282
9283         * varobj.h (varobj_floating_p): Declare.
9284         * varobj.c (varobj_floating_p): New.
9285         * mi/mi-cmd-var.c (mi_cmd_var_update): When passed
9286         '@' as the name, update all floating varobjs.
9287
9288 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9289
9290         * varobj.c (struct varobj_root): Rename use_selected_frame to
9291         floating, and clarify the meaning.
9292         (varobj_create, varobj_update,  new_root_variable): Adjust.
9293         (value_of_root): Don't use type_changed as in variable,
9294         adjust comment.
9295         (c_value_of_root): Adjust.
9296
9297 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9298
9299         * linux-nat.c (linux_nat_attach): Add the pid we attached to, to
9300         gdb's thread list.
9301         (linux_nat_wait): Add main lwp to gdb's thread list.
9302         * linux-thread-db.c (find_new_threads_callback): Also attach to
9303         already listed threads which thread_db didn't know about yet.
9304
9305 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9306
9307         * linux-nat.c (drain_queued_events): Fix comment typo.
9308         (linux_nat_attach): In async mode, don't rely on storing a pending
9309         status.  Instead place the wait status on the pipe.
9310         (linux_nat_resume): Remove unreacheable shortcut code in async
9311         mode.
9312         (stop_wait_callback): In async mode, don't store pending status.
9313         Instead, cancel breakpoints or resend the signal appropriatelly.
9314         (cancel_breakpoint): New, refactored from
9315         cancel_breakpoints_callback.
9316         (cancel_breakpoints_callback): Call cancel_breakpoint.
9317         (pipe_to_local_event_queue): Remove special token processing.
9318         (linux_nat_wait): Issue an internal error if a pending status is
9319         found in async mode.
9320
9321 2008-03-24  Daniel Jacobowitz  <dan@codesourcery.com>
9322
9323         * inflow.c (gdb_has_a_terminal): Guard access to our_process_group.
9324
9325 2008-03-24  Nick Roberts  <nickrob@snap.net.nz>
9326             Vladimir Prus  <vladimir@codesourcery.com>
9327
9328         * varobj.c  (struct varobj_root): New component thread_id.
9329         (varobj_get_thread_id, check_scope): New functions.
9330         (c_value_of_root): Use check_scope.  Switch to the
9331         proper thread if necessary.
9332
9333         * varobj.h (varobj_get_thread_id): New extern.
9334
9335         * mi/mi-cmd-var.c (print_varobj): Add thread-id field.
9336
9337 2008-03-23  Daniel Jacobowitz  <dan@codesourcery.com>
9338
9339         PR gdb/544
9340         * top.c: Revert 2008-03-21 changes.
9341
9342 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9343
9344         * thread.c (make_cleanup_restore_current_thread): Make it
9345         globally visible.
9346         * gdbthread.h (make_cleanup_restore_current_thread): Declare.
9347         * varobj.c (varobj_update): Don't save/restore frame.
9348         (c_value_of_root): Save/restore thread and frame here,
9349         using make_cleanup_restore_current_thread.
9350         * Makefile.in: Update dependecies.
9351
9352 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9353
9354         * varobj.c (struct varobj_root): Clarify
9355         comment on the frame field.
9356         (varobj_create): Don't set frame if we have no
9357         block.
9358
9359 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9360
9361         PR gdb/544
9362         Suggested by Jan Kratochvil:
9363         * top.c (gdb_rl_operate_and_get_next_completion): Call
9364         rl_redisplay_function.
9365         (gdb_rl_redisplay): New.
9366         (init_main): Set rl_redisplay_function.
9367
9368 2008-03-21  Thomas Mittelstaedt  <T.Mittelstaedt@cadenas.de>  (tiny change)
9369
9370         * aix-thread.c (pdc_read_regs): Fix compiler warning.
9371         (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
9372         (store_regs_kernel_thread): Likewise.
9373
9374 2008-03-21  Pedro Alves  <pedro@codesourcery.com>
9375
9376         Linux native async support.
9377
9378         * target.h (struct target_ops): Delete to_async_mask_value and add
9379         to_async_mask.
9380         (target_is_async_p, target_async): Formatting.
9381         (target_async_mask_value): Delete.
9382         (target_async_mask): Delete function declaration, and add new
9383         target macro with the same name.
9384
9385         * target.c (update_current_target): Replace to_async_mask_value by
9386         to_async_mask.  Default to_async_mask to return_one.
9387         (target_async_mask): Delete.
9388         (find_default_can_async_p, find_default_is_async_p): New.
9389         (init_dummy_target): register find_default_can_async_p and
9390         find_default_is_async_p on the dummy target.
9391
9392         * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
9393         (debug_linux_nat_async): New global.
9394         (show_debug_linux_nat_async): New function.
9395         (linux_nat_async_enabled, linux_nat_async_mask_value)
9396         (linux_nat_event_pipe, linux_nat_num_queued_events)
9397         (linux_nat_async_events_enabled): New globals.
9398         (struct waitpid_result): New struct.
9399         (waitpid_queue): New global.
9400         (queued_waitpid, push_waitpid, drain_queued_events): New.
9401         (my_waitpid): Call queued_waitpid.
9402         (linux_child_follow_fork): Disable async events during the call.
9403         (blocked_mask): Delete.
9404         (sync_sigchld_action, async_sigchld_action): New globals.
9405         (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD.  In
9406         async mode, block events during the call.
9407         (linux_nat_create_inferior): New.
9408         (linux_nat_attach): In sync mode, restore the mask states.  In
9409         async mode, wake the event loop immediatelly.
9410         (detach_callback): Drain all queued events of the lwp we're
9411         detaching from.
9412         (linux_nat_detach): Block async mode, and drain events of the main
9413         process.
9414         (linux_nat_resume): If in async mode, mask async events during the
9415         call.  If short circuiting, force event loop to wake up.  If
9416         resuming, set target_executing, and register target events in the
9417         event loop.
9418         (pipe_to_local_event_queue, local_event_queue_to_pipe): New.
9419         (linux_nat_wait): In async mode, block events during the call.
9420         Only enable/disable passing SIGINT to the inferior in sync mode.
9421         Get events from local waitpid queue.  If no interesting events was
9422         found, return to events loop.  Reregister target events in the
9423         event loop on exit.  In sync mode, no need to reblock SIGCHLD.
9424         (linux_nat_kill): Disable events on entry.
9425         (linux_nat_mourn_inferior): In sync mode, don't restore the masks
9426         here.  Detach async mode from the event loop if there are no more
9427         forks available, otherwise leave it on.
9428         (sigchld_handler): Assure this is called only in sync mode.
9429         (linux_async_permitted, linux_async_permitted_1): New globals.
9430         (set_maintenance_linux_async_permitted)
9431         (show_maintenance_linux_async_permitted): New functions.
9432         (linux_nat_is_async_p, linux_nat_can_async_p)
9433         (linux_nat_async_mask): New.
9434         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
9435         (get_pending_events, async_sigchld_handler): New.
9436         (linux_nat_async_events): New.
9437         (async_terminal_is_ours): New global.
9438         (linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
9439         (async_client_callback, async_client_context): New.
9440         (linux_nat_async_file_handler, linux_nat_async)
9441         (linux_nat_disable_async, linux_nat_enable_async): New.
9442         (linux_nat_add_target): Register linux_nat_create_inferior,
9443         linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
9444         linux_nat_async_mask, linux_nat_terminal_inferior and
9445         linux_nat_terminal_ours.
9446         (_initialize_linux_nat): Remove local action variable, and update
9447         code that used it to use sync_sigchld_action.  Add new
9448         "lin-lwp-async" debug set/show command.  Put the "lin-lwp" debug
9449         set/show command in the maintenance class.  Add new "linux-async"
9450         maintenance set/show command.  Block SIGCHLD by default.  Setup
9451         async_sichld_action, and sync_sigchld_action.  Install the default
9452         async mode.
9453         (lin_thread_get_thread_signals): Use a local sigset_t for blocking
9454         the cancel signals.
9455
9456         * linux-thread-db.c (re_check_for_thread_db): New.
9457         (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
9458         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
9459         (thread_db_async_mask): New.
9460         (init_thread_db_ops): Register thread_db_can_async_p,
9461         thread_db_is_async_p, thread_db_async and thread_db_async_mask.
9462
9463         * remote.c (remote_async_mask_value): New.
9464         (remote_return_zero): New.
9465         (init_remote_ops): Register remote_return_zero as callbacks of
9466         to_can_async_p and to_is_async_p.
9467         (remote_can_async_p, remote_is_async_p, remote_async): Update to
9468         use remote_async_mask_value.
9469         (remote_async_mask): New.
9470         (init_remote_async_ops): Remove to_async_mask_value setting and
9471         register remote_async_mask as to_async_mask callback in
9472         remote_async_ops.
9473
9474         * Makefile.in (linux-nat.o): Update.
9475
9476 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9477
9478         * gdbthread.h (add_thread_with_info): New.
9479         * linux-thread-db.c: Add some documentation.
9480         (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
9481         (struct private_thread_info): Remove th_valid and ti_valid.
9482         Replace ti with tid.
9483         (thread_get_info_callback): Do not add TID to the new ptid.  Do
9484         not cache th or ti.
9485         (thread_db_map_id2thr, lwp_from_thread): Delete functions.
9486         (thread_from_lwp): Assert that the LWP is set.  Do not add TID to the
9487         new PTID.
9488         (attach_thread): Handle an already-existing thread.  Use
9489         add_thread_with_info.  Cache the th and tid.
9490         (detach_thread): Verify that private was set.  Remove verbose
9491         argument and printing.  Update caller.
9492         (thread_db_detach): Do not adjust inferior_ptid.
9493         (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
9494         (check_event, find_new_threads_callback): Do not add TID to the new PTID.
9495         (thread_db_wait): Do not use lwp_from_thread.
9496         (thread_db_pid_to_str): Use the cached TID.
9497         (thread_db_extra_thread_info): Check that private is set.
9498         (same_ptid_callback): Delete.
9499         (thread_db_get_thread_local_address): Do not use it or check
9500         is_thread.  Check that private is set.  Assume that the thread
9501         handle is already cached.
9502         (init_thread_db_ops): Remove to_resume and to_kill.
9503         * thread.c (add_thread_with_info): New.
9504         (add_thread): Use it.
9505         * linux-nat.c (find_thread_from_lwp): Delete.
9506         (exit_lwp): Do not use it.  Check print_thread_events.  Print before
9507         deleting the thread.
9508         (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
9509         * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
9510         * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
9511         printf_unfiltered for thread exits.
9512         * procfs.c (procfs_wait): Likewise.
9513
9514 2008-03-21  Chris Demetriou  <cgd@google.com>
9515
9516         * symtab.c (rbreak_command): Quote symbol name before passing
9517         it to break_command.
9518
9519 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9520
9521         * eval.c (evaluate_subexp_for_address): Clarify error message.
9522         Use value_must_coerce_to_target.
9523         * infcall.c (value_arg_coerce): Call value_coerce_to_target.
9524         * valops.c (value_assign): Call value_coerce_to_target when
9525         assigning to anything but internalvars.  Leave GDB-side arrays
9526         as arrays when assigning to internalvars.
9527         (value_must_coerce_to_target, value_coerce_to_target): New.
9528         (value_coerce_array, value_addr): Call value_coerce_to_target.
9529         (value_array): Create the array in GDB's memory instead of
9530         the inferior's.
9531         * value.h (value_must_coerce_to_target, value_coerce_to_target):
9532         Declare.
9533
9534 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9535
9536         * top.c (quit_confirm): Warn that we will kill the program.
9537
9538 2008-03-19  Pedro Alves  <pedro@codesourcery.com>
9539
9540         * inflow.c (terminal_ours_1): Guard access to
9541         inferior_process_group with #ifdef PROCESS_GROUP_TYPE.
9542
9543 2008-03-18  Ulrich Weigand  <uweigand@de.ibm.com>
9544             Jim Blandy  <jimb@codesourcery.com>
9545             Daniel Jacobowitz  <drow@false.org>
9546
9547         * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
9548         (dwarf2_read_address): Update prototype.
9549
9550         * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
9551         (signed_address_type): Likewise.
9552         (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
9553         (execute_stack_op): Update calls to unsigned_address_type,
9554         signed_address_type and dwarf2_read_address.  Fix implementation
9555         of DW_OP_deref_size.
9556
9557         * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
9558         (dwarf2_per_cu_addr_size): Likewise.
9559         (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
9560         (struct dwarf2_loclist_baton): Likewise.
9561
9562         * dwarf2loc.c (find_location_expression): Update calls to
9563         dwarf2_read_address.  Use dwarf2_per_cu_objfile and
9564         dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
9565         (locexpr_describe_location): Likewise.
9566         (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
9567         Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
9568         (dwarf2_loc_desc_needs_frame): Add PER_CU parameter.  Set ctx->addr_size
9569         to dwarf2_per_cu_addr_size (per_cu).
9570         (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
9571         (loclist_read_variable): Likewise.
9572         (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.
9573
9574         * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
9575         instead of baton->objfile.
9576         (dwarf2_per_cu_obfile): New function.
9577         (dwarf2_per_cu_addr_size): Likewise.
9578
9579         * dwarf2-frame.c (struct comp_unit): Move higher.
9580         (struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
9581         (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
9582         (execute_cfa_program): Add FDE parameter.  Replace EH_FRAME_P
9583         parameter by using fde->eh_frame_p.  Use read_encoded_value
9584         to implement DW_CFA_set_loc.
9585         (struct dwarf2_frame_cache): Add ADDR_SIZE member.
9586         (dwarf2_frame_cache): Set cache->addr_size.  Update calls to
9587         execute_stack_op and execute_cfa_program.
9588         (dwarf2_frame_prev_register): Update calls to execute_stack_op.
9589         (size_of_encoded_value): Remove.
9590         (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
9591         Remove call to size_of_encoded_value.  Implement DW_EH_PE_funcrel.
9592         (add_cie): Set cie->unit backlink.
9593         (decode_frame_entry_1): Set cie->addr_size.  Update calls to
9594         read_encoded_value.
9595         (dwarf2_build_frame_info): Allocate UNIT on objfile obstack.
9596
9597 2008-03-17  Markus Deuling  <deuling@de.ibm.com>
9598
9599         * i386-tdep.c (i386_print_insn): Remove unnecessary call to
9600         gdbarch_bfd_arch_info.
9601
9602 2008-03-17  Joel Brobecker  <brobecker@adacore.com>
9603
9604         * aix-thread.c (pdc_read_regs): Minor reformatting.
9605
9606 2008-03-17  Vladimir Prus  <vladimir@codesourcery.com>
9607
9608         * thread.c (print_thread_info): Don't insist
9609         on having current thread if there are no
9610         threads at all.
9611
9612 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9613
9614         * infcmd.c (attach_command_post_wait)
9615         (attach_command_continuation): New.
9616         (attach_command): Support background async execution, and async
9617         execution in synchronous mode.
9618
9619 2008-03-17  Daniel Jacobowitz  <dan@codesourcery.com>
9620
9621         * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
9622         * symmisc.c (dump_symtab_1): Likewise.
9623         * wrapper.c (gdb_value_struct_elt): Likewise.
9624
9625 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9626
9627         * linux-nat.c (linux_nat_filter_event): Fix comment typo.
9628
9629 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9630
9631         * linux-nat.c (linux_nat_filter_event): New, refactored from
9632         linux_nat_wait.
9633         (linux_nat_wait): Call linux_nat_filter_event.
9634
9635 2008-03-17  Ulrich Weigand  <uweigand@de.ibm.com>
9636
9637         * top.c (execute_command): Fix uninitialized variable error.
9638
9639 2008-03-16  Nick Hudson  <nick.hudson@dsl.pipex.com>
9640
9641         * Makefile.in (amd64nbsd-nat.o): New dependency.
9642         * amd64nbsd-nat.c: Include "nbsd-nat.h".
9643         (_initialize_amd64nbsd_nat): Update target vector to use
9644         nbsd_pid_to_exec_file.
9645         * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
9646
9647 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9648
9649         Remove ignoring leading exec events code.
9650         * fork-child.c (startup_inferior): Do not set
9651         inferior_ignoring_leading_exec_events.
9652         * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
9653         (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
9654         * infrun.c (inferior_ignoring_leading_exec_events): Remove.
9655         (handle_inferior_event): Remove code for ignoring leading exec
9656         events.
9657         * target.c (update_current_target): Do not inherit, or default,
9658         to_reported_exec_events_per_exec_call.
9659         (debug_to_reported_exec_events_per_exec_call): Remove.
9660         (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
9661         * target.h (target_reported_exec_events_per_exec_call): Remove.
9662         (struct target): Remove the to_reported_exec_events_per_exec_call
9663         field.
9664
9665 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9666
9667         Implement -thread-info.
9668         * gdbthread.h (print_thread_info): Declare.
9669
9670         * thread.c (print_thread_info): New, extracted
9671         from info_threads_command and adjusted to
9672         work for CLI and MI.
9673         (info_threads_command): Use print_thread_info.
9674         * Makefile.in: Update dependencies.
9675
9676         * mi/mi-cmds.c (mi_cmds): Specify a handler
9677         for -thread-info.
9678         * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
9679         * mi/mi-main.c (mi_cmd_thread_info): New.
9680         (mi_cmd_list_features): Include 'thread-info'.
9681
9682 2008-03-14  Kevin Buettner  <kevinb@redhat.com>
9683
9684         * mips-tdep.c (mips32_scan_prologue): Use the ABI register size
9685         to decide whether to match instruction patterns using "sw" and "sd".
9686
9687 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9688
9689         * infcmd.c (jump_command): Postpone disabling stdin until after
9690         the possible query.
9691
9692 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9693
9694         * inflow.c (gdb_getpgrp): New.
9695         (gdb_has_a_terminal): Use get_getpgrp.
9696         (terminal_ours_1): If attach_flag is set, don't refetch
9697         inferior_process_group.
9698
9699 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9700
9701         * features/library-list.dtd: Allow "section" elements as children
9702         of "library".  Add "section" element and describe its attributes.
9703
9704         * solib-target.c (struct lm_info): Add section_bases member.
9705         (library_list_start_segment): Error out if seen a section element.
9706         (library_list_start_section): New.
9707         (library_list_end_library): New.
9708         (solib_target_free_library_list): Free section_bases.
9709         (section_attributes): New.
9710         (library_children): Make "segment" optional.  Add "section" child.
9711         (library_list_children): Register library_list_end_library.
9712         (solib_target_relocate_section_addresses): Handle section bases.
9713
9714         * NEWS: Mention new qXfer:libraries:read section offsets support.
9715
9716 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9717
9718         * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
9719         (make_exec_error_cleanup): Remove declarations.
9720         * utils.c (exec_error_cleanup_chain): Remove.
9721         (do_exec_error_cleanups, discard_exec_error_cleanups)
9722         (make_exec_error_cleanup): Remove.
9723         * event-loop.c (start_event_loop): Adjust call to
9724         async_enable_stdin.
9725         * event-top.c (async_enable_stdin): Remove the paramater dummy.
9726         (async_disable_stdin): Don't register async_enable_stdin via
9727         cleanup.
9728         * inf-loop.c (inferior_event_handler): Don't
9729         call do_exec_error_cleanups.  Call async_enable_stdin instead.
9730         * event-loop.c (start_event_loop): Adjust call to
9731         async_enable_stdin.
9732         * tui/tui-interp.c (tui_command_loop): Adjust call to
9733         async_enable_stdin.
9734
9735 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9736
9737         Async mode fixes.
9738         * Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
9739         * breakpoint.c (bpstat_do_actions): In async mode,
9740         don't jump to top expecting stop_bpstat to be already
9741         updated.
9742         * event-loop.c (start_event_loop): Call async_enable_stdin
9743         on exception.
9744         * event-top.c (async_enable_stdin): Do nothing if sync_execution
9745         is not set.
9746         (command_handler): Do not setup continuation here.
9747         (command_line_handler_continuation): Move to...
9748         * top.c (command_line_handler_continuation): ... here.
9749         (execute_command): In async mode, register continuation.
9750         Don't check frame's language in running in async mode.
9751         * exceptions.c (throw_exception): Don't do exec_error_cleanups.
9752         * inf-loop.c (complete_execution): Inline into...
9753         (inferior_event_handler): ... here.  Clear target_executing before
9754         doing any cleanups.  Don't try to show prompt if the target was
9755         resumed.
9756         * infcmd.c (signal_command): Add support for async mode.
9757         (finish_command): Only add continuation if the target was
9758         successfully resumed.
9759         * remote.c (init_async_opts): Register to_get_thread_local_address
9760         handler.
9761         * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
9762         with sync_execution.
9763         * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
9764         on exception.
9765
9766 2008-03-14  Daniel Jacobowitz  <dan@codesourcery.com>
9767
9768         * corefile.c (reopen_exec_file): Use exec_bfd_mtime.
9769         * exec.c (exec_bfd_mtime): Define.
9770         (exec_close): Clear it.
9771         (exec_file_attach): Set it.
9772         * gdbcore.h (exec_bfd_mtime): Declare.
9773         * source.c (find_source_lines): Do not use bfd_get_mtime.
9774
9775 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9776
9777         * top.c (simplified_command_loop): Remove.
9778
9779 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9780
9781         Remove unused remote.c hooks.
9782         * remote.c (deprecated_target_resume_hook)
9783         (deprecated_target_wait_loop_hook): Remove.
9784         (remote_resume): Do not call deprecated_target_resume_hook.
9785         (remote_wait): Do not call deprecated_target_wait_loop_hook.
9786         (remote_async_wait): Likewise.
9787
9788 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9789
9790         Implement MI notification for new threads.
9791         * doc/observer.texi (new_thread): Document.
9792         * observer.sh: Forward declare struct thread_info.
9793         * thread.c (add_thread): Notify observer.
9794
9795         * interps.h (interp_init_ftype): New parameter
9796         top_level.
9797         (interp_set): Likewise.
9798         (top_level_interpreter_data): Declare.
9799         * interps.c (interp_set): New parameter top_level.
9800         Pass it to interpreter's init function.  Remember
9801         top level interpreter.
9802         (interpreter_exec_cmd): Adjust.
9803         (top_level_interpreter_data): New.
9804         * main.c (captured_main): Pass 1 for top_level
9805         parameter of interp_set.
9806         * cli/cli-interp.c (cli_interpreter_init): New
9807         parameter top_level.
9808         * tui/tui-interp.c (tui_init): New parameter top_level.
9809
9810         * mi/mi-interp.c (mi_new_thread): New.
9811         (mi_interpreter_init): If top level, register
9812         observer for new threads.
9813
9814         * Makefile.in (mi-interp.o, thread.o): Update dependencies.
9815
9816 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9817
9818         * top.c (execute_command): Disable break and stop
9819         commands in async mode.
9820
9821 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9822
9823         revert:
9824         2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9825         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9826         Call target_stop in the INF_QUIT_REQ case.
9827         * Makefile.in (inf-loop.o): Update.
9828
9829 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9830
9831         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9832         Call target_stop in the INF_QUIT_REQ case.
9833         * Makefile.in (inf-loop.o): Update.
9834
9835 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9836
9837         * top.c (execute_command): Enable break, info and interrupt
9838         commands in async mode.
9839
9840 2008-03-13  Vladimir Prus  <vladimir@codesourcery.com>
9841             Daniel Jacobowitz  <dan@codesourcery.com>
9842
9843         * breakpoint.h (breakpoint_restore_shadows): New
9844         declaration.
9845         * breakpoint.c (breakpoint_restore_shadows): New.
9846         (read_memory_nobpt): Delete.
9847         * gdbcore.h (read_memory_nobpt): Delete declaration.
9848         * target.c (memory_xfer_partial): Call
9849         breakpoint_restore_shadows.
9850         (restore_show_memory_breakpoints)
9851         (make_show_memory_breakpoints_cleanup): New.
9852         (show_memory_breakpoints): New.
9853         * target.h (make_show_memory_breakpoints_cleanup): Declare.
9854         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
9855         Make sure we see memory breakpoints when checking if
9856         breakpoint is still there.
9857         * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
9858         hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
9859         m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
9860         sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
9861
9862 2008-03-12  Pedro Alves  <pedro@codesourcery.com>
9863
9864         * thread.c (add_thread): Use printf_unfiltered to print.
9865
9866 2008-03-12  Joel Brobecker  <brobecker@gnat.com>
9867
9868         * sol-thread.c: Replace use of TM_I386SOL2_H by an expression
9869         that is true only on x86-solaris and x86_64-solaris.
9870         * procfs.c: Likewise. Move procfs_find_LDT_entry up together
9871         with proc_get_LDT_entry.
9872
9873 2008-03-12  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9874
9875         * configure.ac (AC_CHECK_FUNCS): Add check for setsid.
9876         * config.in, configure: Regenerate.
9877         * fork-child.c (fork_inferior): Call create_tty_session.
9878         * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
9879         (create_tty_session): New function.
9880         * terminal.h: Declare create_tty_session.
9881
9882 2008-03-12  Alan Modra  <amodra@bigpond.net.au>
9883
9884         PR 5900
9885         * elfread.c (elf_symtab_read): Make shndx an unsigned int.
9886         * mipsread.c: Include elf/internal.h.
9887         (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
9888         to internal range.
9889
9890 2008-03-11  Markus Deuling  <deuling@de.ibm.com>
9891
9892         * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
9893         to get at the current architecture and at the target specific vector.
9894         Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
9895         remove define of I387_ST0_REGNUM.
9896
9897         * amd64-tdep.c (I387_ST0_REGNUM): Remove define.
9898
9899         (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
9900         get at the current architecture
9901         (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
9902         parameter.
9903
9904         * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
9905         I387_NUM_XMM_REGS and I387_MM0_REGNUM.
9906
9907         (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
9908         I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
9909         (I387_FSTAT_REGNUM): Add target specific vector as parameter.
9910
9911         (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
9912         at the target specific vector.
9913
9914         (i386_get_longjmp_target): Use get_frame_arch to get at the current
9915         architecture. Use gdbarch_tdep to get at the target specific vector.
9916
9917         (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
9918         update caller. Use gdbarch_tdep to get at the target specific vector.
9919
9920         (i386_register_to_value: Use get_frame_arch to get at the current
9921         architecture.
9922
9923         * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
9924         parameter.
9925
9926         * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
9927         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
9928         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
9929         FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.
9930
9931         (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
9932         undef's.
9933
9934         (i387_convert_register_p, i387_register_to_value,
9935         i387_value_to_register): Update call for i386_fp_regnum_p.
9936
9937         * i387-tdep.h: Remove comment.
9938         (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
9939         (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
9940         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
9941         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
9942         I387_MXCSR_REGNUM): Add target specific vector as parameter.
9943
9944 2008-03-10  Daniel Jacobowitz  <dan@codesourcery.com>
9945
9946         * Makefile.in (fork-child.o): Update.
9947         * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
9948         argument.  Gather all gdbserver features together.
9949         * fork-child.c (exec_wrapper): New variable.
9950         (fork_inferior): Use it.
9951         (startup_inferior): Skip an extra trap if using "set exec-wrapper".
9952         (unset_exec_wrapper_command, _initialize_fork_child): New.
9953
9954 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
9955
9956         * source.c (directory_command): Modify the determination of
9957         condition of terminal "from_tty".
9958
9959 2008-03-10  Matt Rice  <ratmice@gmail.com>
9960
9961         * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.
9962
9963 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
9964
9965         * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
9966         of the data passing to strtoulst function.
9967         (info_spu_signal_command): Likewise.
9968
9969 2008-03-08  Vladimir Prus  <vladimir@codesourcery.com>
9970
9971         * mi/mi-interp.c (mi_command_loop): Remove
9972         commented-out code.
9973
9974 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
9975
9976         * remote.c (extended_remote_attach_1): Make local variable pid an int
9977         instead of a pid_t.
9978
9979 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
9980
9981         * solib-svr4.c (svr4_same_1): New function, originally extracted
9982         from svr4_same and expanded to handle the sparc64 case.
9983         (svr4_same): Move up and reimplement using svr4_same_1.
9984         (enable_break): Use svr4_same_1 to do shared library name comparisons.
9985
9986 2008-03-07  Ramana Radhakrishnan  <ramana.r@gmail.com>
9987
9988         * MAINTAINERS: Move self to Paper trail.
9989
9990 2008-03-05  Daniel Jacobowitz  <dan@codesourcery.com>
9991
9992         * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
9993         * event-loop.c (call_async_signal_handler): New.
9994         * event-loop.h (call_async_signal_handler)
9995         (gdb_call_async_signal_handler): Declare.
9996         (mark_async_signal_handler): Add comments.
9997         * event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
9998         * mingw-hdep.c (sigint_event, sigint_handler): New.
9999         (gdb_select): Use them.  Wait for the readline signal handler
10000         to finish.
10001         (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
10002         * posix-hdep.c (gdb_call_async_signal_handler): New function.
10003         * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
10004         New.
10005         (remote_fileio_ctrl_c_signal_handler): Use
10006         gdb_call_async_signal_handler.
10007         (initialize_remote_fileio): Initialize sigint_fileio_token.
10008         * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
10009         not initialize tokens here.
10010         (handle_remote_sigint_twice): Likewise.  Reinstall
10011         handle_remote_sigint.
10012         (async_remote_interrupt_twice): Just call interrupt_query.
10013         (cleanup_sigint_signal_handler): Do not delete tokens.
10014         (remote_interrupt, remote_interrupt_twice): Use
10015         gdb_call_async_signal_handler.
10016         (interrupt_query): Reinstall the default signal handler.
10017         (_initialize_remote): Initialize tokens here.
10018
10019 2008-03-04  Joel Brobecker  <brobecker@adacore.com>
10020
10021         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
10022         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
10023         Change the type of the lr register to code_ptr.
10024         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
10025         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
10026         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
10027         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
10028         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
10029         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
10030         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.
10031
10032 2008-03-03  James E. Wilson  <wilson@tuliptree.org>
10033
10034         * MAINTAINERS: Update my email address.
10035
10036 2008-03-03  Keith Seitz  <keiths@redhat.com>
10037
10038         From Dave Murphy  <davem@devkitpro.org>:
10039         * configure.ac: Set tcl configdir to win under mingw.
10040         * configure: Regenerate.
10041
10042 2008-03-03  Daniel Jacobowitz  <dan@codesourcery.com>
10043
10044         * breakpoint.c (fetch_watchpoint_value): New function.
10045         (update_watchpoint): Set and clear val_valid.  Use
10046         fetch_watchpoint_value.  Handle unreadable values on the
10047         value chain.  Correct check for user-requested array watchpoints.
10048         (breakpoint_init_inferior): Clear val_valid.
10049         (watchpoint_value_print): New function.
10050         (print_it_typical): Use it.  Do not free or clear old_val.  Print
10051         watchpoints even if old_val == NULL.
10052         (watchpoint_check): Use fetch_watchpoint_value.  Check for values
10053         becoming readable or unreadable.
10054         (watch_command_1): Use fetch_watchpoint_value.  Set val_valid.
10055         (do_enable_watchpoint): Likewise.
10056         * breakpoint.h (struct breakpoint): Update comment for val.  Add
10057         val_valid.
10058         * NEWS: Mention watchpoints on inaccessible memory.
10059
10060 2008-02-29  Daniel Jacobowitz  <dan@codesourcery.com>
10061
10062         * Makefile.in (i386-nat.o): Update.
10063         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
10064         i386_use_watchpoints.
10065         * i386-linux-nat.c (_initialize_i386_linux_nat): Call
10066         i386_use_watchpoints.
10067         * i386-nat.c (i386_stopped_data_address): Take two arguments.
10068         (i386_stopped_by_watchpoint): Update call.
10069         (i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
10070         * config/i386/nm-i386.h: Conditionalize definitions on
10071         ! I386_WATCHPOINTS_IN_TARGET_VECTOR.
10072         (i386_use_watchpoints): Declare.
10073         (i386_stopped_data_address): Update.
10074         * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
10075         * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
10076
10077 2008-02-29  Joel Brobecker  <brobecker@adacore.com>
10078
10079         GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
10080         * version.in: Bump version to 6.8.50.20080229-cvs.
10081
10082 2008-02-28  Markus Deuling  <deuling@de.ibm.com>
10083
10084         * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
10085         properly.
10086
10087 2008-02-28  Tom Tromey  <tromey@redhat.com>
10088
10089         * infcmd.c (notice_args_read): Print result of get_inferior_args.
10090
10091 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
10092
10093         * infcmd.c (kill_if_already_running): Make static.  Use
10094         target_require_runnable.
10095         * target.c (target_require_runnable): New.
10096         * target.h (target_require_runnable): Declare.
10097
10098 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
10099
10100         * frame.c (reinit_frame_cache): Only annotate if frames were
10101         previously valid.
10102
10103 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
10104
10105         * regformats/reg-ppc.dat: Rename "ps" to "msr".
10106         * regformats/reg-ppc64.dat: Likewise.
10107
10108 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
10109
10110         * features/Makefile (%.dat): Emit xmltarget statement.
10111
10112         * regformats/regdat.sh: Support xmltarget and xmlarch statments.
10113         Generate code to set gdbserver_xmltarget in init_registers_${name}.
10114
10115         * regformats/arm-with-iwmmxt.dat: Regenerate.
10116         * regformats/mips64-linux.dat: Regenerate.
10117         * regformats/mips-linux.dat: Regenerate.
10118         * regformats/rs6000/powerpc-32.dat: Regenerate.
10119         * regformats/rs6000/powerpc-64.dat: Regenerate.
10120         * regformats/rs6000/powerpc-e500.dat: Regenerate.
10121
10122         * regformats/reg-arm.dat: Add xmlarch statement.
10123         * regformats/reg-i386.dat: Likewise.
10124         * regformats/reg-i386-linux.dat: Likewise.
10125         * regformats/reg-x86-64-linux.dat: Likewise.
10126         * regformats/reg-spu.dat: Likewise.
10127
10128 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
10129
10130         * remote.c (remote_wait, remote_async_wait): Stop if we receive
10131         an error.
10132
10133 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
10134
10135         * utils.c (debug_timestamp): New.
10136         (vfprintf_unfiltered): Print timestamps if requested.
10137         (show_debug_timestamp): New.
10138         (initialize_utils): Register "set debug timestamp".
10139         * NEWS: Mention "set debug timestamp".  Add GDB 6.8 section.
10140
10141 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
10142
10143         * breakpoint.c (skip_prologue_sal): New function.
10144         (resolve_sal_pc): Adjust SAL past prologue if the SAL was
10145         computed from a line number.
10146
10147 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
10148
10149         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml
10150         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
10151         Set PC register type to "code_ptr".
10152         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
10153         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
10154         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
10155         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
10156         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
10157         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
10158         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
10159         Regenerate.
10160
10161 2008-02-27  Ulrich Weigand  <uweigand@de.ibm.com>
10162
10163         * regformats/regdat.sh: Rename init_registers function in
10164         generated file to init_registers_${name}.
10165
10166         * regformats/reg-crisv32.dat: Set "name" to crisv32.
10167         * regformats/reg-ppc64.dat: Set "name" to ppc64.
10168         * regformats/reg-s390x.dat: Set "name" to s390x.
10169
10170 2008-02-26  Greg Law  <glaw@undo-software.com>
10171
10172         * regcache.c (registers_changed): Call reinit_frame_cache.
10173
10174 2008-02-26  Daniel Jacobowitz  <dan@codesourcery.com>
10175
10176         * configure.tgt (sh-*-linux*): Match sh*.  Add glibc-tdep.o.
10177         * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
10178         and svr4_fetch_objfile_link_map.
10179         * Makefile.in (sh-linux-tdep.o): Update.
10180
10181 2008-02-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10182
10183         * amd64-tdep.c (amd64_classify): Add support for decimal float
10184         types.
10185         * i386-tdep.c (i386_return_value): Make 128-bit decimal float
10186         use the struct return convention.
10187
10188 2008-02-26  Nick Roberts  <nickrob@snap.net.nz>
10189
10190         * breakpoint.c (print_one_breakpoint_location): Revert Enb field
10191         to old format.  Discard breakpoint address if shared library is
10192         unloaded.
10193         (breakpoint_1): Adjust formatting of table header accordingly.
10194
10195 2008-02-25  Vladimir Prus  <vladimir@codesourcery.com>
10196
10197        * remote.c (remote_get_threadlist): If the response
10198        is empty, don't try to parse it.
10199
10200 2008-02-23  Vladimir Prus  <vladimir@codesourcery.com>
10201
10202         Unbreak 'target async'.
10203         * serial.c (serial_async): Set the
10204         handler function before enabling async
10205         mode.
10206
10207 2008-02-22  Daniel Jacobowitz  <dan@codesourcery.com>
10208
10209         * solib-svr4.c (enable_break): Convert r_brk to a code address.
10210
10211 2008-02-21  Pedro Alves  <pedro@codesourcery.com>
10212
10213         * remote.c (extended_remote_attach_1): Set attach_flag.
10214         (extended_remote_create_inferior_1): Clear attach_flag.
10215
10216 2008-02-20  Daniel Jacobowitz  <dan@codesourcery.com>
10217
10218         * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
10219         r_brk_offset.
10220         (mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
10221         * solib-svr4.c (solib_svr4_r_brk): New.
10222         (open_symbol_file_object, svr4_current_sos): Always check the
10223         debug base.
10224         (svr4_fetch_objfile_link_map): Do not set debug_base.
10225         (enable_break): Use r_brk if it is set.
10226         (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
10227         (svr4_lp64_fetch_link_map_offsets): Likewise.
10228         * solib-svr4.h (struct link_map_offsets): Add r_brk_offset.
10229
10230 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10231             Mark Kettenis  <kettenis@gnu.org>
10232
10233         * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
10234         trad_frame_saved_reg.
10235         (trad-frame.h): New include.
10236
10237         (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
10238         instead of frame_obstack_zalloc.
10239         (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.
10240
10241         * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
10242
10243 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10244
10245         * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
10246         from disassemble_info instead of gdbarch_byte_order.
10247
10248         * mips-tdep.c (gdb_print_insn_mips): Likewise.
10249         * arm-tdep.c (gdb_print_insn_arm): Likewise.
10250
10251 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10252
10253         * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
10254         gdbarch as parameter.
10255
10256         * gdbarch.{c,h}: Regenerate.
10257
10258         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10259         parameter.
10260         * mem-break.c (default_memory_insert_breakpoint)
10261         (default_memory_remove_breakpoint): Likewise.
10262         * target.h (default_memory_remove_breakpoint)
10263         (default_memory_insert_breakpoint): Likewise.
10264
10265         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10266         parameter. Replace current_gdbarch by gdbarch.
10267         * m32r-tdep.c (m32r_memory_insert_breakpoint)
10268         (m32r_memory_remove_breakpoint): Likewise.
10269
10270 2008-02-19  Daniel Jacobowitz  <dan@codesourcery.com>
10271
10272         * MAINTAINERS: Add Vladimir Prus as MI maintainer.
10273
10274 2008-02-19  Joel Brobecker  <brobecker@adacore.com>
10275
10276         * NEWS: Add entry describing Add support improvements.
10277
10278 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10279
10280         * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
10281         M68K_FP0_REGNUM.
10282
10283 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10284
10285         * sentinel-frame.c (sentinel_frame_prev_register): Do not call
10286         register_offset_hack anymore.
10287
10288         * regcache.{c,h} (register_offset_hack): Remove.
10289
10290 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10291
10292         * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.
10293
10294         * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
10295         current_gdbarch by gdbarch.
10296         (hppa64_hpux_find_global_pointer): Likewise.
10297         * hppa-tdep.c (hppa_find_global_pointer): Likewise.
10298         (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
10299         find_global_pointer.
10300
10301         * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
10302         parameter.
10303         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.
10304
10305         * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
10306         of gdbarch_num_regs.
10307
10308         * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
10309         replace current_gdbarch by gdbarch.
10310         (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.
10311
10312 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10313
10314         * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
10315         and replace current_gdbarch by gdbarch.
10316
10317         (store_register): Update call for exec_one_dummy_insn.
10318         (fetch_register, store_register): Update call of regmap.
10319
10320         * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
10321         parameter and replace current_gdbarch by gdbarch.
10322
10323         (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
10324         the current architecture. Update call for getregs_supplies and
10325         getfpregs_supplies.
10326         (ppcnbsd_fetch_inferior_registers): Likewise.
10327
10328         * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
10329         replace current_gdbarch by gdbarch.
10330         (ppcobsd_fetch_registers, ppcobsd_store_registers): Use
10331         get_regcache_arch to get at the current architecture. Update call for
10332         getfpregs_supplies.
10333
10334 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10335
10336         * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
10337         variables.
10338
10339 2008-02-15  Markus Deuling  <deuling@de.ibm.com>
10340
10341         * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.
10342
10343 2008-02-14  Vladimir Prus  <vladimir@codesourcery.com>
10344
10345         * NEWS: Mention pending breakpints in MI.
10346
10347 2008-02-14  Markus Deuling  <deuling@de.ibm.com>
10348
10349         * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.
10350
10351 2008-02-13  Markus Deuling  <deuling@de.ibm.com>
10352
10353         Add script to build and test GDB using enable-targets=all.
10354
10355         * gdb_buildall.sh: New file.
10356
10357 2008-02-11  Maxim Grigoriev  <maxim2405@gmail.com>
10358
10359         * NEWS (New native configurations): Xtensa GNU/Linux.
10360         (New targets): Xtensa GNU/Linux.
10361         * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and
10362         xtensa-linux-tdep.o
10363         (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c
10364         (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies.
10365         * configure.tgt (xtensa*-*-linux*): New entry.
10366         * xtensa-config.c (xtensa_tdep): New variable.
10367         (xtensa_config_byte_order, xtensa_config_tdep): Removed.
10368         (rmap): Change format based on new macro XTREG.
10369         (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h.
10370         * xtensa-linux-nat.c: New.
10371         * xtensa-linux-tdep.c: New.
10372         * xtensa-xtregs.c: New.
10373         * xtensa-tdep.h (xtensa_elf_gregset_t): Update.
10374         (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE)
10375         (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros.
10376         (xtensa_register_t): New field coprocessor.
10377         (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected.
10378         * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed.
10379         (xtensa_pseudo_register_read, xtensa_pseudo_register_write):
10380         Update to handle privileged registers.
10381         (xtensa_supply_gregset) Remove exccause and excvaddr registers.
10382         (xtensa_push_dummy_call): Set windowstart register correctly.
10383         (call0_analyze_prologue): Initialize xtensa_default_isa.
10384         (xtensa_derive_tdep): New.
10385         (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and
10386         xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead.
10387         Call xtensa_derive_tdep().
10388         * config/xtensa/linux.mh: New.
10389         * regformats/reg-xtensa.dat: New.
10390
10391 2008-02-09  Aleksandar Ristovski  <aristovski@qnx.com>  (tiny change)
10392
10393         * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
10394         (filenames.h): New include.
10395         * Makefile.in (corelow.o): Add dependency for filenames.h.
10396
10397 2008-02-08  Doug Evans  <dje@google.com>
10398
10399         * source.c (find_and_open_source): Always rewrite absolute filenames.
10400
10401 2008-02-07  Doug Evans  <dje@google.com>
10402
10403         * breakpoint.c: #include "hashtab.h".
10404         (ambiguous_names_p): New fn.
10405         (update_breakpoint_locations): When restoring bp enable status, don't
10406         compare function names if any functions have same name.
10407         * Makefile.in (breakpoint.o): Add hashtab.h dependency.
10408
10409 2008-02-07  Joel Brobecker  <brobecker@adacore.com>
10410
10411         * ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
10412         instead of just a VEC*. Update use of SV.
10413         (ada_make_symbol_completion_list): Update symbol_completion_add calls.
10414
10415 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10416
10417         * NEWS: Put all new commands since gdb-6.7 together.
10418
10419 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10420
10421         * ada-lang.c: #include "vec.h".
10422         (struct string_vector, new_string_vector, string_vector_append):
10423         Delete.
10424         (char_ptr): New typedef.
10425         (DEF_VEC_P (char_ptr)): New VEC type.
10426         (symbol_completion_add): Update profile to take the new VEC type
10427         instead of the old string_vector structure. Update code accordingly.
10428         (ada_make_symbol_completion_list): Use the new VEC type instead of
10429         the old string_vector structure, and update the code accordingly.
10430         * Makefile.in (ada-lang.o): Add dependency on vec.h.
10431
10432 2008-02-06  Pierre Muller  <muller@ics.u-strasbg.fr>
10433
10434         * p-exp.y: Set current_type in missing places.
10435         (leftdiv_is_integer): New static variable.
10436         Typecast right operand of BINOP_DIV to long_double if both operands
10437         are integers.
10438
10439 2008-02-06  Maciej W. Rozycki  <macro@mips.com>
10440
10441         * remote-mips.c (set_breakpoint): Rename to...
10442         (mips_set_breakpoint): ... this.
10443         (clear_breakpoint): Rename to...
10444         (mips_clear_breakpoint): ... this.
10445         (common_breakpoint): Rename to...
10446         (mips_common_breakpoint): ... this.
10447         (check_lsi_error): Rename to...
10448         (mips_check_lsi_error): ... this.
10449
10450 2007-02-05  Joel Brobecker  <brobecker@adacore.com>
10451
10452         * language.h (struct language_defn): Add new field
10453         la_make_symbol_completion_list.
10454         * symtab.c (default_make_symbol_completion_list): Renames
10455         make_symbol_completion_list.
10456         (make_symbol_completion_list): New function.
10457         * symtab.h (default_make_symbol_completion_list): Add declaration.
10458         * langauge.c (unknown_language): Set la_make_symbol_completion_list.
10459         (auto_language, local_language): Likewise.
10460         * objc-lang.c (objc_language_defn): Likewise.
10461         * scm-lang.c (scm_language_defn): Likewise.
10462         * m2-lang.c (m2_language_defn): Likewise.
10463         * f-lang.c (f_language_defn): Likewise.
10464         * jv-lang.c (java_language_defn): Likewise.
10465         * p-lang.c (pascal_language_defn): Likewise.
10466         * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
10467         (minimal_language_defn): Likewise.
10468         * ada-lang.c (struct string_vector): New structure.
10469         (new_string_vector, string_vector_append, ada_unqualified_name)
10470         (add_angle_brackets, symbol_completion_match, symbol_completion_add)
10471         (ada_make_symbol_completion_list): New functions.
10472         (ada_language_defn): Set la_make_symbol_completion_list.
10473         * ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
10474         this function is static.
10475
10476 2008-02-05  Kevin Buettner  <kevinb@redhat.com>
10477
10478         * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
10479         to account for call site optimizations.
10480
10481 2008-02-05  Andrzej Zaborowski  <balrogg@gmail.com>
10482
10483         * tracepoint.c (read_actions): Handle end-of-text indicator
10484         in action list properly.  (Committed by Jim Blandy)
10485
10486 2008-02-05  Jim Blandy  <jimb@red-bean.com>
10487
10488         * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
10489         pseudoregister, not an internal error.
10490         Reported by: Andrzej Zaborowski
10491
10492 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10493
10494         * varobj.c (c_value_of_variable): Use xstrdup.
10495
10496 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10497
10498         Update stored rendition of varobj value when format changes.
10499         * varobj.c (varobj_set_display_format): Recomputed
10500         print_value.
10501         (c_value_of_variable): Return print_value.
10502
10503 2008-02-03  Doug Evans  <dje@google.com>
10504
10505         * eval.c (evaluate_subexp_standard): Fix type of result of mixed
10506         integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
10507         * valops.c (value_one): New function.
10508         * value.h (value_one): Declare.
10509
10510         Fix argument promotion for binary arithmetic ops for C.
10511         * valarith.c (unop_result_type): New fn.
10512         (binop_result_type): New fn.
10513         (value_binop): Move result type computation to binop_result_type.
10514         (value_pos, value_neg, value_complement): Move result type
10515         computation to unop_result_type.
10516
10517         PR 2384
10518         * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10519         Return basetype, fieldno if found.  All callers updated.
10520         Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
10521         objfile.
10522         * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10523         * symfile.h (fill_in_vptr_fieldno): Delete.
10524
10525 2008-02-02  Doug Evans  <dje@google.com>
10526
10527         * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.
10528
10529         * typeprint.c (*): Whitespace cleanup.
10530
10531 2008-02-02  Mark Kettenis  <kettenis@gnu.org>
10532             Luis Machado  <luisgpm@br.ibm.com>
10533             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10534
10535         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
10536         don't fit into registerson the stack the way GCC does.
10537
10538 2008-02-01  Joel Brobecker  <brobecker@adacore.com>
10539
10540         * symtab.c (symbol_set_names): Do not add an entry in the demangling
10541         hash table for Ada symbols. Just store the linkage name as is,
10542         and leave the demangled_name as NULL.
10543
10544 2007-02-01  Joel Brobecker  <brobecker@adacore.com>
10545
10546         * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
10547         in the global scope.
10548         (new_symbol): Likewise.
10549
10550 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10551
10552         * breakpoint.c (break_command_1): Return void.
10553         (break_command_really): Return void.  Rethrow
10554         exceptions instead of returning.
10555         (gdb_breakpoint): Remove the error_message parameter.
10556         Return void.  Rename to set_breakpoint.
10557         * gdb.h (gdb_breakpoint): Rename and move to...
10558         * breakpoint.h (set_breakpoint): ...here.
10559         * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
10560         event hooks even if exception is thrown.  Adjust to
10561         gdb_breakpoint interface changes.
10562
10563
10564 2008-02-01  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10565
10566         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
10567         float in both first and second word in the doubleword, to support
10568         old and new ABIs.
10569
10570 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10571
10572         Properly rethrow exception.  This fixes errors
10573         about non-existent functions for -break-insert.
10574         * breakpoint.c (break_command_really): Use throw_exception
10575         for rethrowing.  If rethrowing, don't print the exception.
10576
10577 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10578
10579         * NEWS: Mention Decimal Floating Point support.
10580
10581 2008-01-31  Joel Brobecker  <brobecker@adacore.com>
10582
10583         * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
10584         value type to builtin_type_void_func_ptr.
10585
10586 2008-01-31  Andreas Krebbel  <krebbel1@de.ibm.com>
10587
10588         * s390-tdep.c (is_float_singleton, is_float_like,
10589         alignment_of, s390_return_value): Make checks for
10590         TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.
10591
10592 2008-01-31  Luis Machado  <luisgpm@br.ibm.com>
10593             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10594
10595         * infcmd.c (default_print_registers_info): Also print hex
10596         raw contents for TYPE_CODE_DECFLOAT registers.
10597         * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
10598         * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
10599         (rs6000_register_name): Add support for DFP pseudo-registers.
10600         (rs6000_pseudo_register_type): Likewise.
10601         rs6000_pseudo_register_reggroup_p): Likewise.
10602         (ppc_pseudo_register_read): New function.
10603         (ppc_pseudo_register_write): Likewise.
10604         (rs6000_pseudo_register_read): Likewise.
10605         (rs6000_pseudo_register_write): Likewise.
10606         (e500_pseudo_register_read): Move checks to
10607         rs6000_pseudo_register_read.
10608         (e500_pseudo_register_write): Move checks to
10609         rs6000_pseudo_register_write.
10610         (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum.  Install
10611         rs6000_pseudo_register_read and rs6000_pseudo_register_write
10612         in gdbarch if SPE or DFP is available.  Adjust gdbarch's
10613         num_pseudo_regs to account for DFP pseudo regs.
10614
10615 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10616
10617         * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
10618         * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
10619         (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
10620         rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
10621         e500_pseudo_register_read, e500_pseudo_register_write): Use
10622         IS_SPE_PSEUDOREG macro.
10623         (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
10624         (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
10625         Remove initialization of tdep->ppc_ev31_regnum.
10626
10627 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
10628
10629         * printcmd.c (print_formatted): Handle references as for unformatted
10630         prints.
10631
10632 2008-01-30  Joel Brobecker  <brobecker@adacore.com>
10633
10634         * eval.c (evaluate_subexp_standard): Add handling of user
10635         registers when in EVAL_AVOID_SIDE_EFFECTS mode.
10636
10637 2008-01-30  Pierre Muller  <muller@ics.u-strasbg.fr>
10638
10639         * eval.c (evaluate_subexp_standard): Support
10640         BINOP_INTDIV opcode.
10641
10642 2008-01-30  Paul N. Hilfinger  <hilfinger@adacore.com>
10643
10644         * valarith.c (value_binop): Add floating-point BINOP_MIN and
10645         BINOP_MAX cases.
10646         For BINOP_EXP, use length and signedness of left operand only for
10647         result, as for shifts.
10648         For integral operands to BINOP_EXP, use new integer_pow and
10649         uinteger_pow functions so as to get full range of results.
10650         (integer_pow): New function.
10651         (uinteger_pow): New function.
10652
10653 2008-01-30  Vladimir Prus  <vladimir@codesourcery.com>
10654
10655         Use vector for varobj_list_children interface.
10656         * gdb/varobj.c (varobj_list_children): Return vector
10657         of varobjs.
10658         * gdb/varobj.h (varobj_list_children): Adjust
10659         prototype.
10660         (varobj_p): Declare.  Declare vector thereof.
10661         * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
10662         for varobj_list_children change.
10663         * Makefile.in (varobj_h): Update dependencies.
10664
10665 2008-01-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10666
10667         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
10668         TYPE_CODE_DECFLOAT arguments.
10669         (ppc64_sysv_abi_push_dummy_call) Likewise.
10670         (get_decimal_float_return_value): New function.
10671         (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
10672         values by calling get_decimal_float_return_value.
10673         (ppc64_sysv_abi_return_value): Likewise.
10674
10675 2008-01-30  Nick Roberts  <nickrob@snap.net.nz>
10676
10677         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file):  Add field
10678         for preprocessor macro information.  Formatting changes.
10679
10680 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10681
10682         * remote.c (struct remote_state): Add cached_wait_status.
10683         (remote_exec_file): New variable.
10684         (PACKET_vAttach, PACKET_vRun): New constants.
10685         (extended_remote_restart): Do not query for status.
10686         (struct start_remote_args): New.
10687         (remote_start_remote): Take it as a second argument.  Check
10688         whether the target is running.  Issue an error for non-running
10689         non-extended targets.  Cache the wait status.  Set inferior_ptid
10690         here.
10691         (remote_open_1): Prompt to disconnect non-running targets.  Make
10692         sure the target is marked running.  Do not set inferior_ptid here.
10693         Update call to remote_start_remote.  Do not call remote_check_symbols
10694         if the target is not running.
10695         (remote_detach_1): Rename from remote_detach.  Take an EXTENDED
10696         argument.  Handle a non-running target.
10697         (remote_detach): Use it.
10698         (extended_remote_detach): New.
10699         (remote_disconnect): Fix typo.  Use remoute_mourn_1.
10700         (extended_remote_attach_1, extended_remote_attach)
10701         (extended_async_remote_attach): New.
10702         (remote_vcont_resume): Remove unused variable.
10703         (remote_wait, remote_async_wait): Use any cached wait status.
10704         (putpkt_binary, getpkt): Clear any cached wait status.
10705         (extended_remoute_mourn_1): New.
10706         (extended_remote_mourn): Use it.
10707         (extended_async_remote_mourn, extended_remote_run): New.
10708         (extended_remote_create_inferior_1): New.
10709         (extended_remote_create_inferior): Use it.
10710         (extended_remote_async_create_inferior): Likewise.
10711         (remote_xfer_partial): Skip for non-executing targets.
10712         (init_extended_remote_ops): Set to_detach and to_attach.
10713         (init_extended_async_remote_ops): Likewise.  Use
10714         extended_async_remote_mourn.
10715         (_initialize_remote): Register vAttach, vRun, and
10716         set remote exec-file.
10717         * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.
10718
10719 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10720
10721         * Makefile.in (symfile.o): Update.
10722         * NEWS: Mention exec tracing support.
10723         * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
10724         exec events.
10725         * infcmd.c (kill_if_already_running, detach_command)
10726         (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
10727         * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
10728         (follow_exec): Do not check may_follow_exec.  Do not mourn and push
10729         targets.  Apply the sysroot path to the loaded executable.  Use
10730         no_shared_libraries.
10731         * linux-nat.c (linux_child_follow_fork): Print fork following
10732         messages if verbose.
10733         (kill_wait_callback): Kill again before waiting a second time.
10734         * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
10735         no_shared_libraries.
10736
10737 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10738
10739         * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.
10740
10741 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10742
10743         * nto-tdep.h: Remove #include "defs.h".
10744         * nto-tdep.c: Add #include "defs.h".
10745         * Makefile.in (nto_tdep_h): Update dependencies.
10746         (nto-tdep.o): Likewise.
10747
10748 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10749
10750         * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
10751         and use it.
10752         (proceed, start_remote): Update call to wait_for_inferior.
10753         * inferior.h (wait_for_inferior): Update declaration.
10754         * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
10755         solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
10756         * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
10757         TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.
10758
10759 2008-01-29  Aleksandar Ristovski  <aristovski@qnx.com>
10760
10761         * varobj (adjust_value_for_child_access): Added checking for
10762         returned value from gdb_value_ind.
10763         (c_describe_child): Likewise.
10764         (cplus_describe_child): Fixed a typo.
10765
10766 2008-01-29  Jim Blandy  <jimb@red-bean.com>
10767
10768         * MAINTAINERS: Update my info.
10769
10770 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10771
10772         Use multiple locations for hardware watchpoints.
10773         This eliminates the need to traverse value chain, doing
10774         various checks, in three different places.
10775
10776         * breakpoint.h (struct bp_location): New fields
10777         lengths and watchpoint_type.
10778         (struct breakpoint): Remove the val_chain field.
10779         * breakpoint.c (is_hardware_watchpoint): New.
10780         (free_valchain): Remove.
10781         (update_watchpoint): New.
10782         (insert_bp_location): For hardware watchpoint, just
10783         directly insert it.
10784         (insert_breakpoints): Call update_watchpoint_locations
10785         on all watchpoints.  If we have failed to insert
10786         any location of a hardware watchpoint, remove all inserted
10787         locations.
10788         (remove_breakpoint): For hardware watchpoints, directly
10789         remove location.
10790         (watchpoints_triggered): Iterate over locations.
10791         (bpstat_stop_status): Use only first location of
10792         a resource watchpoint.
10793         (delete_breakpoint): Don't call free_valchain.
10794         (print_one_breakpoint): Don't print all
10795         locations for watchpoints.
10796         (breakpoint_re_set_one): Use update_watchpoint for
10797         watchpoints.
10798
10799 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10800
10801         Don't reset watchpoint block on solib load.
10802
10803         * breakpoint.c (insert_bp_location): For watchpoints,
10804         recompute condition.
10805         (breakpoint_re_set_one): Instead of recomputing value
10806         and condition for watchpoints, just reset value and
10807         let insert_breakpoints/insert_bp_location recompute it.
10808         Don't do anything about disabled watchpoint.
10809
10810 2008-01-29  Pierre Muller  <muller@ics.u-strasbg.fr>
10811
10812         * valarith.c (value_binop): Handle unsigned integer
10813         division by zero.
10814
10815 2008-01-28  Kevin Buettner  <kevinb@redhat.com>
10816
10817         * mn10300-tdep.c (mn10300_analyze_prologue): Check for an
10818         instruction pattern that appears frequently in position
10819         independent code.  Fix bug in code which looks for "fmov" and
10820         backtracks if no "fmov" is found.
10821
10822 2008-01-28  Doug Evans  <dje@google.com>
10823
10824         * dbxread.c (read_dbx_symtab): Fix indentation.
10825         Reformat comments to 80 columns.
10826         Move local var def closer to only use.
10827
10828 2008-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
10829
10830         * fork-child.c (SHELL_FILE): Remove #ifndef.
10831         (fork_inferior): Remove SHELL_COMMAND_CONCAT.
10832
10833 2008-01-25  Pierre Muller  <muller@ics.u-strasbg.fr>
10834
10835         * i386-tdep.c (i386_skip_noop): New function.
10836         (i386_analyze_prologue): Call i386_skip_noop function.
10837
10838 2008-01-24  Michael Snyder  <msnyder@specifix.com>
10839
10840         * procfs.c (procfs_xfer_partial): Comment, cut/paste error.
10841         * win32-nat.c (win32_xfer_partial): Ditto.
10842         * target.c (default_xfer_partial): Minor whitespace adjustment.
10843
10844 2008-01-24  Pedro Alves  <pedro@codesourcery.com>
10845
10846         * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
10847         strip bit 1 even if pc doesn't point to thumb code.
10848
10849 2008-01-23  Daniel Jacobowitz  <dan@codesourcery.com>
10850
10851         * remote.c (remote_wait): Handle SIGINT between packets.
10852         (remote_async_wait): Likewise.
10853
10854 2008-01-23  Vladimir Prus  <vladimir@codesourcery.com>
10855             Chris Demetriou  <cgd@google.com>
10856
10857         * thread.c (add_thread_silent): Renamed
10858         from add_thread.
10859         (print_thread_events): New variable definition.
10860         (show_print_thread_events): New function.
10861         (_initialize_thread): Add "set print thread-events" and
10862         "show print thread-events" commands.
10863         (add_thread): Announce new thread.
10864         * gdbthread.h (add_thread_silent): Declare.
10865         (print_thread_events): New variable declaration.
10866         * inf-ttrace.c (inf_ttrace_wait): Don't
10867         inform about new thread, as add_thread is always
10868         called too, and will take care of that.
10869         * infrun.c (handle_inferior_event): Likewise.
10870         * procfs.c (procfs_wait): Likewise.
10871         * remote.c (remote_currthread): Likewise.
10872         * sol-thread.c (sol_thread_wait): Likewise.
10873         * win32-nat.c (get_win32_debug_event): Likewise.
10874         * linux-thread-db.c (attach_thread): Likewise.
10875         Remove the verbose parameter.
10876         (check_event): Make detach_thread be verbose
10877         only if print_thread_events is set.
10878         * linux-nat.c (lin_lwp_attach_lwp): Don't inform
10879         about new thread.  This is called only from
10880         linux-thread-db.c:attach_thread, which will take care.
10881         Remove the verbose parameter.
10882         * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.
10883
10884 2008-01-23  Nick Roberts  <nickrob@snap.net.nz>
10885
10886         * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.
10887
10888 2008-01-22  Vladimir Prus  <vladimir@codesourcery.com>
10889
10890         * breakpoint.c (break_command_really): New parameter
10891         ignore_count.
10892         (break_command_1): Pass 0 as
10893         ignore_count to break_command_really.
10894         (gdb_breakpoint): Pass ignore_count to
10895         break_command_really.
10896
10897 2008-01-21  Kevin Buettner  <kevinb@redhat.com>
10898
10899         * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
10900         sigcontext struct via pointer.
10901         (struct sigframe comment): Update to show new field `psc'.
10902
10903 2008-01-21  Vladimir Prus  <vladimir@codesourcery.com>
10904
10905         * infrun.c (handle_inferior_event): If
10906         we failed to remove breakpoints, error,
10907         don't try to increment PC by hand.
10908
10909 2008-01-18  Nick Hudson  <nick.hudson@dsl.pipex.com>
10910
10911         Add NetBSD/hppa target and host support.
10912
10913         * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
10914         (hppabsd_gregset): Move to ...
10915         (hppabsd_regset_from_core_section): Rename
10916         hppaobsd_regset_from_core_section and move to ...
10917         (hppabsd_find_global_pointer): Update comment.
10918         (hppabsd_init_abi): Make global. Do not register
10919         hppabsd_regset_from_core_section.
10920         (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
10921         move to ...
10922         (_initialize_hppabsd_tdep): Move to ...
10923         * hppaobsd-tdep.c: ... here. New file.
10924         * hppnbsd-tdep.c: New file.
10925         * hppnbsd-nat.c: New file.
10926         * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
10927         (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
10928         (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
10929         (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
10930         * configure.host (hppa*-*-netbsd*): New entry.
10931         * configure.tgt (hppa*-*-netbsd*): New entry.
10932         (hppa*-*-openbsd*): Update.
10933         * NEWS (New native configuration): Mention NetBSD/hppa.
10934         (New targets): Mention NetBSD/hppa.
10935
10936 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
10937
10938         * gdbarch.sh (function_list): Add new property bits_big_endian to
10939         gdbarch structure.
10940         * gdbarch.{c,h}: Regenerate.
10941
10942         * value.c (struct value): Replace BITS_BIG_ENDIAN by
10943         gdbarch_bits_big_endian (comment).
10944         (unpack_field_as_long, modify_field): Likewise.
10945         * value.h: Likewise (comment).
10946         * valops.c (value_slice): Likewise.
10947         * valarith.c (value_subscript, value_bit_index): Likewise.
10948         * gdbtypes.h (field): Likewise (comment).
10949         * eval.c (evaluate_subexp_standard): Likewise.
10950         * dwarf2read.c (dwarf2_add_field): Likewise.
10951         * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
10952         (move_bits, ada_value_assign, value_assign_to_component): Likewise.
10953
10954         * defs.h (BITS_BIG_ENDIAN): Remove.
10955
10956 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
10957
10958         * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
10959         function calls.
10960         * m2-exp.y (yylex): Likewise.
10961         * objc-exp.y (yylex): Likewise.
10962
10963         * defs.h (DEPRECATED_STREQN): Remove.
10964
10965 2008-01-17  H.J. Lu  <hjl.tools@gmail.com>
10966
10967         * MAINTAINERS: Update my email address.
10968
10969 2008-01-17  Jim Blandy  <jimb@codesourcery.com>
10970
10971         * README: Mention gdbserver/README.
10972
10973 2008-01-17  Pierre Muller  <muller@ics.u-strasbg.fr>
10974
10975         * valarith.c (value_binop): Handle BINOP_INTDIV
10976         for unsigned and signed integers.
10977
10978 2008-01-17  Ulrich Weigand  <uweigand@de.ibm.com>
10979
10980         * s390-tdep.c (s390_gdbarch_init): Set default long double
10981         type to 128-bit IEEE quad.
10982
10983 2008-01-17  Joel Brobecker  <brobecker@adacore.com>
10984
10985         * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
10986
10987 2008-01-16  Mark Kettenis  <kettenis@gnu.org>
10988
10989         * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.
10990
10991         * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
10992         * value.c: All callers changed.
10993
10994 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10995
10996         * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
10997         DEPRECATED_STREQ by its expression.
10998         * coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
10999         * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
11000         (scan_xcoff_symtab): Likewise.
11001         * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
11002         * f-lang.c (find_common_for_function): Likewise.
11003         * objc-exp.y (parse_number): Likewise.
11004
11005         * defs.h (DEPRECATED_STREQ): Remove.
11006
11007 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11008
11009         * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
11010         * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
11011         get_frame_arch to get at the current_architecture. Update AM33_MODE
11012         call.
11013         (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
11014         (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
11015         architecture.
11016         (set_reg_offsets, mn10300_analyze_prologue): Fix indentation.
11017
11018 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11019
11020         * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
11021         parameter.
11022         * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.
11023
11024         (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
11025         current_gdbarch by gdbarch. Update caller.
11026
11027         * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
11028         (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
11029         the current architecture. Update calls of
11030         amd64_native_gregset_supplies_p.
11031         * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
11032         (amd64bsd_store_inferior_registers): Likewise.
11033
11034 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11035
11036         * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
11037         Replace current_gdbarch by gdbarch. Update caller.
11038
11039 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
11040
11041         * dbxread.c (repeated_header_complaint, dbx_symfile_init)
11042         (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
11043         (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
11044         (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
11045         (stabsect_build_psymtabs): Fix indentation.
11046
11047 2008-01-15  Michael Snyder  <msnyder@specifix.com>
11048
11049         * corelow.c (core_xfer_partial): Comment, cut/paste error.
11050
11051 2008-01-14  Pierre Muller  <muller@ics.u-strasbg.fr>
11052
11053         * win32-nat.c (win32_create_inferior): Restore code calling
11054         CloseHandle on ProcessInformation structure.
11055
11056 2008-01-13  Nick Hudson  <nick.hudson@dsl.pipex.com>
11057
11058         * configure.ac: Check for void * as 3 argument of ptrace.
11059         * configure: regenerate.
11060
11061 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11062
11063         * alpha-tdep.c (alpha_heuristic_proc_start)
11064         (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
11065         current_gdbarch by gdbarch.
11066
11067         (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
11068         current architecture by frame_info. Update alpha_heuristic_proc_start
11069         call.
11070
11071         (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
11072         get_frame_arch to get at the current architecture by frame_info. Update
11073         alpha_sigtramp_register_address call.
11074
11075         * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
11076         current_gdbarch by gdbarch. Update caller.
11077         (convert_to_extended, convert_from_extended): Add endianess parameter
11078         for comparison. Update caller.
11079         (arm_extract_return_value, arm_store_return_value): Use
11080         get_regcache_arch to get at the current architecture.
11081
11082         * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
11083         current_gdbarch by gdbarch. Update caller.
11084         (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
11085         gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.
11086
11087         * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
11088         gdbarch as parameter. Update caller.
11089         (h8300_init_frame_cache): Add gdbarch as parameter. Replace
11090         current_gdbarch by gdbarch. Update caller.
11091
11092         * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
11093         update caller. Replace current_gdbarch by gdbarch.
11094
11095         * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
11096         the current architecture. Replace current_gdbarch by gdbarch.
11097         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
11098         (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
11099         expression. Add gdbarch as parameter and replace current_gdbarch with
11100         it. Update caller.
11101         (M6811_TDEP): Remove.
11102         (m68hc11_frame_prev_register): Use get_frame_arch to get at the current
11103         architecture.
11104         (m68hc11_scan_prologue): Add gdbarch as parameter. Replace
11105         current_gdbarch by gdbarch. Update caller.
11106
11107         * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
11108         update caller.
11109         (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
11110         by gdbarch.
11111
11112         * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
11113         caller. Relace current_gdbarch by gdbarch.
11114         (altivec_register_p, spe_register_p): Likewise.
11115         * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
11116         parameter.
11117         * ppc-linux-nat.c (fetch_register, store_register): Update caller of
11118         altivec_register_p and spe_register_p.
11119
11120         * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
11121         caller. Replace current_gdbarch by gdbarch.
11122         (score_analyze_prologue): use get_frame_arch to get at the current
11123         architecture.
11124
11125         * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
11126         * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
11127         current_gdbarch by gdbarch. Update caller.
11128         (sparc_frame_cache): Use get_frame_arch to get at the current
11129         architecture.
11130         * sparce64-tdep.c (sparc64_skip_prologue): Update call of
11131         sparc_analyze_prologue.
11132
11133         * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
11134         parameter.
11135
11136 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11137
11138         * exec.c: #include "arch-utils.h"
11139          (print_section_info): Use gdbarch_from_bfd to get at the
11140         current architecture. Replace current_gdbarch. Fix indention. Replace
11141         deprecated_print_address_numeric by paddress.
11142         * Makefile.in (exec.o) Add dependency to arch-utils.h.
11143
11144         * valprint.c (val_print_string): Replace
11145         deprecated_print_address_numeric.
11146         * tracepoint.c (trace_mention, scope_info): Likewise.
11147         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
11148         (print_symbol, print_partial_symbols, maintenance_info_psymtabs)
11149         (maintenance_check_symtabs): Likewise.
11150         * symfile.c (list_overlays_command): Likewise.
11151         * stack.c (frame_info, print_block_frame_labels): Likewise.
11152         * printcmd.c (print_address, print_address_demangle)
11153         (address_info): Likewise.
11154         * corefile.c (memory_error): Likewise.
11155         * infcmd.c (jump_command): Likewise.
11156         * breakpoint.c (insert_bp_location, describe_other_breakpoints)
11157         (mention, delete_breakpoint): Likewise.
11158         * c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
11159         * dwarf2read.c (dump_die): Likewise.
11160         * ada-valprint.c (ada_val_print_1): Likewise.
11161         * f-valprint.c (f_val_print): Likewise.
11162         * linux-fork.c (info_forks_command): Likewise.
11163         * m32r-com.c (m32r_load_section, m32r_load)
11164         (m32r_upload_command): Likewise.
11165
11166         * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
11167
11168 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11169
11170         * gdbarch.sh (skip_prologue): Add gdbarch
11171         as parameter.
11172         * gdbarch.{c,h}: Regenerate.
11173
11174         * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
11175         * amd64-tdep.c (amd64_skip_prologue): Likewise.
11176         * avr-tdep.c (avr_skip_prologue): Likewise.
11177         * cris-tdep.c (cris_skip_prologue): Likewise.
11178         * frv-tdep.c (frv_skip_prologue): Likewise.
11179         * h8300-tdep.c (h8300_skip_prologue): Likewise.
11180         * hppa-tdep.c (hppa_skip_prologue): Likewise.
11181         * i386-tdep.c (i386_skip_prologue): Likewise.
11182         * ia64-tdep.c (ia64_skip_prologue): Likewise.
11183         * iq2000-tdep.c (iq2000_skip_prologue): Likewise.
11184         * m32r-tdep.c (m32r_skip_prologue): Likewise.
11185         * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
11186         * m68k-tdep.c (m68k_skip_prologue): Likewise.
11187         * m88k-tdep.c (m88k_skip_prologue): Likewise.
11188         * mep-tdep.c (mep_skip_prologue): Likewise.
11189         * mips-tdep.c (mips_skip_prologue): Likewise.
11190         * mn10300-tdep.c (mn10300_skip_prologue): Likewise.
11191         * mt-tdep.c (mt_skip_prologue): Likewise.
11192         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
11193         * score-tdep.c (score_skip_prologue): Likewise.
11194         * sh64-tdep.c (sh64_skip_prologue): Likewise.
11195         * sh-tdep.c (sh_skip_prologue): Likewise.
11196         * sparc64-tdep.c (sparc64_skip_prologue): Likewise.
11197         * sparc-tdep.c (sparc32_skip_prologue): Likewise.
11198         * spu-tdep.c (spu_skip_prologue): Likewise.
11199         * v850-tdep.c (v850_skip_prologue): Likewise.
11200         * vax-tdep.c (vax_skip_prologue): Likewise.
11201         * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
11202         * xtensa-tdep.c (xtensa_skip_prologue): Likewise.
11203
11204         * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
11205         current_gdbarch by gdbarch.
11206         * m32c-tdep.c (m32c_skip_prologue): Likewise.
11207         * s390-tdep.c (s390_skip_prologue): Likewise.
11208
11209 2008-01-10  Doug Evans  <dje@google.com>
11210
11211         * defs.h (struct continuation_arg): Fix typo in comment.
11212         * target.c (target_translate_tls_address): Fix comment spelling error.
11213
11214 2008-01-09  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11215
11216         * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
11217         (DOUBLEST_SCAN_FORMAT): Likewise.
11218         * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
11219         * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
11220         * c-exp.y (parse_number): Likewise.
11221         * jv-exp.y (parse_number): Likewise.
11222         * objc-exp.y (parse_number): Likewise.
11223         * p-exp.y (parse_number): Likewise.
11224
11225 2008-01-09  Joel Brobecker  <brobecker@adacore.com>
11226
11227         * gdbtypes.c (create_array_type): Add handling of null Ada arrays.
11228         (check_typedef): Likewise.
11229
11230 2008-01-09  Luis Machado  <luisgpm@br.ibm.com>
11231
11232         * printcmd.c (printf_command): Add seen_big_h, seen_big_d and
11233         seen_double_big_d, treat the new H, D, and DD modifiers as length
11234         modifiers.
11235
11236 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11237
11238         * dwarf2read.c (read_enumeration_type): Add comment.
11239
11240 2008-01-08  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11241
11242         * config.in: Regenerate.
11243
11244 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11245
11246         * ada-lang.c (ada_convert_actual): Renames convert_actual.
11247         Make non-static.
11248         (ada_convert_actuals): Delete.
11249         * ada-lang.h (ada_convert_actual): Add declaration.
11250         (ada_convert_actuals): Remove declaration.
11251         * infcall.c: #include "ada-lang.h".
11252         (value_arg_coerce): Add new parameter sp.  Update function
11253         documetnation.  Add handling of Ada function call parameters.
11254         * Makefile.in (infcall.o): Update dependencies.
11255
11256 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
11257
11258         * ada-lang.c (ensure_lval): Fix value lval kind.
11259         (convert_actual): Add handling for arguments passed by reference.
11260
11261 2008-01-08  Doug Evans  <dje@google.com>
11262
11263         * dbxread.c (read_dbx_symtab): Fix indentation.
11264
11265 2008-01-07  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11266
11267         * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
11268         (valarith.o): Depend on dfp.h.
11269         (valops.o): Likewise.
11270         * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
11271         (set_decnumber_context): New function.
11272         (decimal_check_errors): Likewise.
11273         (decimal_from_number): Likewise.
11274         (decimal_to_number): Likewise.
11275         (decimal_from_string): Use set_decnumber_context and
11276         decimal_check_errors.
11277         (decimal_from_integral): New function.
11278         (decimal_from_floating): Likewise.
11279         (decimal_to_double): Likewise.
11280         (promote_decimal): Likewise.
11281         (decimal_binop): Likewise.
11282         (decimal_is_zero): Likewise.
11283         (decimal_compare): Likewise.
11284         (decimal_convert): Likewise.
11285         * dfp.h (decimal_from_integral): New prototype.
11286         (decimal_from_floating): Likewise.
11287         (decimal_to_double): Likewise.
11288         (decimal_binop): Likewise.
11289         (decimal_is_zero): Likewise.
11290         (decimal_compare): Likewise.
11291         (decimal_convert): Likewise.
11292         * eval.c (evaluate_subexp_standard): Remove expect_type argument from
11293         call to value_from_decfloat.
11294         * valarith.c: Include dfp.h.
11295         (value_args_as_decimal): New function.
11296         (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
11297         (value_logical_not): Likewise.
11298         (value_equal): Likewise.
11299         (value_less): Likewise.
11300         (value_pos): Likewise.
11301         (value_neg): Formatting fix.
11302         * valops.c: Include dfp.h.
11303         (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
11304         * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
11305         (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
11306         (value_from_decfloat): Remove expect_type argument.
11307         * value.h (value_from_decfloat): Update prototype.
11308
11309 2008-01-07  Vladimir Prus  <vladimir@codesourcery.com>
11310
11311         Ignore change in name of dynamic linker during
11312         execution on Solaris.  This also unbreaks pending breakpoints.
11313
11314         * solist.h (struct target_so_ops): New field same.
11315         * solib-svr4.c (svr4_same): New.
11316         (_initialize_svr4_solib): Register svr4_same.
11317         * solib.c (update_solib_list): Use ops->same, if available.
11318
11319 2008-01-06  Christopher Faylor  <me+cygwin@cgf.cx>
11320
11321         * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
11322         when using MS-DOS paths.
11323
11324 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11325
11326         * NEWS: Mention --pid and --core command line behaviour changes.
11327
11328 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11329
11330         * main.c (captured_main): Remove 'count' varible and the
11331         ALIGN_STACK_ON_ENTRY block that used it.  Error out if --core and
11332         --pid options were issued simultaneously.  If an explicit pid
11333         option was passed, don't fallback to core file.  Detect extra
11334         arguments better in the presence of explicit pid or core
11335         arguments.
11336
11337 2008-01-05  Joel Brobecker  <brobecker@adacore.com>
11338
11339         * ada-lang.c (ada_which_variant_applies): Correctly compute
11340         the value of the discriminant when the variant record is packed.
11341
11342 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11343
11344         * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
11345         that are used to differentiate homonyms.
11346
11347 2008-01-04  Jerome Guitton  <guitton@adacore.com>
11348
11349         * ada-lang.c (decode_packed_array_type): Avoid a seg fault
11350         when the type is an anonymous pointer type.
11351         (ada_check_typedef): Avoid a seg fault when the type is null.
11352         * ada-typeprint.c (print_array_type): Add support for pointer
11353         to packed arrays.
11354
11355 2008-01-04  Paul N. Hilfinger  <hilfinger@adacore.com>
11356
11357         * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.
11358
11359 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11360
11361         * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
11362         EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.
11363
11364 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11365
11366         * ada-exp.y (chop_separator): New function.
11367         (write_selectors): Rewrite to re-use chop_separator.
11368         (ada_nget_field_index, get_symbol_field_type): New functions.
11369         (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
11370         expressions.
11371
11372 2008-01-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11373
11374         * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
11375         of SYMBOL_VALUE when working with function symbols.
11376
11377 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11378
11379         * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
11380         expressions.  These expressions do not need to be rewriten.
11381
11382 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11383
11384         * dwarf2read.c (read_enumeration_type): Flag type as stub if
11385         the given die is a declaration.
11386
11387 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11388
11389         * ada-lang.c (ada_array_bound_from_type): Make non-static.
11390         Handle properly the case when the index type is an enumerated type.
11391         Do not return the subtype of the bounds type, just return the
11392         bounds type directly - this is not needed and is more consistent
11393         with what we do for arrays when no XA parallel type exists.
11394
11395 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11396
11397         * ada-lang.c (static_unwrap_type): Add forward declaration.
11398         (template_to_static_fixed_type): Fields of dynamic types sometimes
11399         also need to be unwrapped. Take this into account.
11400         (ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
11401         (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
11402         * ada-typeprint.c (ada_print_type): Get the typename from
11403         the original type, not the base type.
11404
11405 2008-01-03  Jerome Guitton  <guitton@adacore.com>
11406
11407         * ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
11408         (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
11409         Update calls to ada_to_fixed_type.
11410         (ada_template_to_fixed_record_type_1): Ditto, but without looking
11411         for the tag.
11412         (ada_to_fixed_type): Add check_tag parameter; do not look for
11413         tag if null.  When looking for a tag, use a fixed record type.
11414         * ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
11415         * ada-valprint.c (printable_val_type, ada_value_print): Update
11416         calls to ada_to_fixed_type.
11417
11418 2008-01-03  Luis Machado  <luisgpm@br.ibm.com>
11419
11420         * doublest.c (convert_floatformat_to_doublest): Call
11421         floatformat_to_doublest instead of floatformat_to_double and use
11422         DOUBLEST variables.
11423         (convert_doublest_to_floatformat): Call floatformat_from_doublest
11424         instead of floatformat_from_double and use DOUBLEST variables.
11425
11426 2008-01-03  Nick Hudson  <nick.hudson@dsl.pipex.com>
11427
11428         * MAINTAINERS (Write After Approval): Add self.
11429
11430 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11431
11432         * symfile.c (set_initial_language): Make non-static.
11433         * symfile.h (set_initial_language): Add declaration.
11434         * language.c: #include "symfile.h".
11435         (set_language): Call set_initial_language if the frame language
11436         could not be determined.
11437
11438 2008-01-03  Paul N. Hilfinger  <hilfinger@adacore.com>
11439
11440         * eval.c (evaluate_subexp_for_address): Provide frame address to
11441         locate_var_value only if it will be needed.
11442
11443 2008-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
11444
11445         * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.
11446
11447 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11448
11449         * ada-lang.c (ada_evaluate_subexp): Modify the value returned
11450         when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
11451         This is needed to make sure that any other treatment applied
11452         to the resulting value does not fail for spurious reason,
11453         such as trying to take the address of this value.
11454
11455 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11456
11457         * ada-lang.c (ada_value_equal): Dereference reference types when
11458         comparing arrays.
11459
11460 2008-01-01  Daniel Jacobowitz  <dan@codesourcery.com>
11461
11462         Updated copyright notices for most files.
11463
11464 2008-01-01  Christopher Faylor  <me+gdb@cgf.cx>
11465
11466         * win32-nat.c (psapi_module_handle): Remove static.
11467         (get_module_name): Rename from psapi_get_dll_name.  Revamp slightly to
11468         return first module found if base_address is zero.  Don't initialize
11469         psapi function pointers here.  Convert to cygwin paths when
11470         appropriate.
11471         (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
11472         executable name.  Use get_module_name when that fails or when
11473         !__CYGWIN__.
11474         (_initialize_psapi): New function.  Initialize psapi stuff before it is
11475         needed or issue a warning if it is not found.  Move psapi_module_handle
11476         here.
11477
11478 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11479
11480         * ada-lang.c (ada_remove_trailing_digits): New function.
11481         (ada_remove_po_subprogram_suffix): New function.
11482         (ada_decode): Improve. Move the description of the algorithm
11483         directly inside the code, instead of in the function global
11484         description.
11485
11486 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11487
11488         * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
11489         and always print the dereferenced value.
11490
11491 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11492
11493         * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
11494         of the case where the first argument is a reference.
11495         (ada_evaluate_subexp, case BINOP_ADD): Likewise.
11496
11497 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11498
11499         Implement support for Ada interface types.
11500
11501         * ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
11502         (ada_is_ignored_field): Ignore fields that are a dispatch table
11503         of a tagged type.
11504
11505 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11506
11507         * top.c (print_gdb_version): Update copyright year.
11508
11509 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11510
11511         * ChangeLog-2007: New ChangeLog rotation.
11512         * ChangeLog: Reset for 2008.
11513         * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
11514         ChangeLog-2007.
11515
11516 For older changes see ChangeLog-2007.
11517 \f
11518 Local Variables:
11519 mode: change-log
11520 left-margin: 8
11521 fill-column: 74
11522 version-control: never
11523 coding: utf-8
11524 End: