* remote.c (remote_parse_stop_reply): Use REG only after its NULL check.
[external/binutils.git] / gdb / ChangeLog
1 2008-12-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
2
3         * remote.c (remote_parse_stop_reply): Use REG only after its NULL check.
4
5 2008-12-08  Joel Brobecker  <brobecker@adacore.com>
6
7         * python/python-value.c (values_in_python): Add specific initialization
8         to NULL to work-around a MacOS linker bug.
9
10 2008-12-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
11
12         Fix loc_type of `bp_location's created by update_watchpoint.
13         * breakpoint.c (allocate_bp_location): Remove the bp_type parameter.
14         Replace bp_type by bpt->type.  Update prototype.  All callers updated.
15         (add_location_to_breakpoint):  Remove the bp_type parameter.
16         Replace bp_type by b->type.  All callers updated.
17         (set_breakpoint_location_function): Replace bptype by b->type.
18
19 2008-12-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
20
21         * breakpoint.c (update_global_location_list): Fix the comment.
22
23 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
24
25         * infcmd.c (step_1, step_once): Look up the stepping range based
26         on the current frame's PC, not on stop_pc.
27
28 2008-12-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
29
30         Fix compilation on 32-bit host configurations.
31         * ia64-tdep.c (ia64_breakpoint_from_pc): Suffix a constant by `LL'.
32
33 2008-12-05  Tristan Gingold  <gingold@adacore.com>
34
35         * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn): New function.
36         (amd64_darwin_sstep_at_sigreturn): New function.
37         (darwin_set_sstep): The sigreturn is a special case: the trace flag
38         must be set in the mcontext structure.
39
40 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
41
42         * infcmd.c (step_once): Remove dead code.
43
44 2008-12-04  Doug Evans  <dje@google.com>
45
46         * infcall.c (call_function_by_hand): Clean up use of local dummy_addr.
47
48 2008-12-02  Doug Evans  <dje@google.com>
49
50         * infrun.c (handle_inferior_event): Remove redundant resetting of
51         stepping_past_singlestep_breakpoint.
52
53 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
54
55         * target.h (target_get_osdata): Describe.
56         * osdata.h (make_cleanup_osdata_free): Declare.
57         * osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is
58         not defined.
59         (osdata_free_cleanup): New.
60         (make_cleanup_osdata_free): New.
61         (get_osdata): Fix leak.
62         (info_osdata_command): Use make_cleanup_osdata_free.
63         (info_processes_command): Delete.
64         (_initialize_osdata): Drop undocumented "info processes" alias.
65         * mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.
66
67 2008-12-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
68
69         Fix resolving external references to TLS variables.
70         * findvar.c: Include `objfiles.h'.
71         (read_var_value <LOC_UNRESOLVED>): New variable `obj_section'.  Handle
72         SEC_THREAD_LOCAL variables.
73         * printcmd.c (address_info <LOC_UNRESOLVED>): Handle SEC_THREAD_LOCAL
74         variables.
75
76 2008-12-02  Doug Evans  <dje@google.com>
77
78         * infrun.c (handle_inferior_event): Delete unused local tp.
79
80 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
81             Vladimir Prus  <vladimir@codesourcery.com>
82
83         Implement -list-thread-groups --available
84
85         * Makefile.in (XMLFILES): Add osdata.dtd.
86         (SFILES): Add osdata.c.
87         (COMMON_OBS): Add osdata.o.
88         * linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h.
89         (linux_nat_xfer_osdata): New function.
90         (linux_xfer_partial): Handle TARGET_OBJECT_OSDATA.
91         * osdata.c: New file.
92         * osdata.h: New file.
93         * remote.c (PACKET_qXfer_osdata): New packet enum.
94         (remote_protocol_features): Add "qXfer:osdata:read".
95         (remote_read_qxfer): Handle TARGET_OBJECT_OSDATA.
96         (extended_remote_can_run): New.
97         (init_extended_remote_ops): Set to_can_run to
98         extended_remote_can_run.
99         (_initialize_remote): Add packet config command for
100         "qXfer:osdata:read".
101         * xml-support.c (obstack_xml_printf): New function.
102         * xml-support.h (obstack_xml_printf): Declare.
103         * target.c (target_get_osdata): New function.
104         * target.h (enum target_object): Add TARGET_OBJECT_OSDATA.
105         (target_os_data): Declare.
106         * features/osdata.dtd: New file.
107         * mi/mi-main.c (mi_list_thread_groups): Handle the --available
108         option.
109
110 2008-12-01  Doug Evans  <dje@google.com>
111
112         * infrun.c (proceed): Delete unused local stop_signal.
113
114 2008-11-27  Tristan Gingold  <gingold@adacore.com>
115
116         * NEWS: Add entry for new native configuration: Darwin.
117         * configure.host: Add Darwin host.
118         * configure.tgt: Add Darwin target.
119         * defs.h (enum gdb_osabi): Add GDB_OSABI_DARWIN.
120         * osabi.c (gdb_osabi_names): Add name for Darwin abi.
121         * i386-darwin-nat.c: New file.
122         * i386-darwin-tdep.c: New file.
123         * machoread.c: New file.
124         * darwin-nat-info.c: New file.
125         * darwin-nat.c: New file.
126         * darwin-nat.h: New file.
127         * darwin.defs: New file.
128         * config/i386/darwin.mh: New file.
129
130 2008-11-26  Tristan Gingold  <gingold@adacore.com>
131
132         * MAINTAINERS: Add myself for write after approval privileges.
133
134 2008-11-26  Jerome Guitton  <guitton@adacore.com>
135
136         * value.h (allocate_value_lazy): New function declaration.
137         (value_free): Remove macro, make it a function.
138         * value.c (value): Move actual content outside of the memory space
139         of the struct; add a pointer to this actual content.
140         (allocate_value_lazy, allocate_value_contents): New function.
141         (allocate_value): Reimplement using these two new functions.
142         (value_contents_raw, value_contents_all_raw): If no memory
143         has been allocated yet for the actual content, allocate it.
144         (value_contents_all): Resync with struct value's changes.
145         (value_free): New function.
146         (value_copy, value_primitive_field): Use new function
147         allocate_value_lazy to allocate lazy values.
148         (value_change_enclosing_type): Resync with struct value's changes.
149         As the value is not reallocated, remove the special handling for
150         the value chain (now obsolete).
151         * valops.c (value_at_lazy): Use new function allocate_value_lazy.
152         (value_fetch_lazy): Allocate value content. Use allocate_value_lazy
153         to allocate lazy values.
154         (value_slice): Use allocate_value_lazy to allocate lazy values.
155
156 2008-11-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
157
158         Fix automatic restoration of breakpoints memory for ia64.
159         * ia64-tdep.c: New #if check on BREAKPOINT_MAX vs. BUNDLE_LEN.  
160         (ia64_memory_insert_breakpoint): New comment part for SHADOW_CONTENTS
161         content.  Remove variable instr.  New variable cleanup.  Disable
162         automatic breakpoints restoration.  PLACED_SIZE and SHADOW_LEN are now
163         set larger, to BUNDLE_LEN - 2.  Variable `bundle' type update.  Return
164         error if even just final target_write_memory has failed.
165         (ia64_memory_remove_breakpoint): Rename variables bundle to bundle_mem
166         and instr to instr_saved.  New variables bundle_saved and
167         instr_breakpoint.  Comment new reasons why we need to disable automatic
168         restoration of breakpoints.  Assert PLACED_SIZE and SHADOW_LEN.  New
169         check of the original memory content.  Return error if even just final
170         target_write_memory has failed.
171         (ia64_breakpoint_from_pc): Implement the emulation of permanent
172         breakpoints compatible with current bp_loc_is_permanent.
173         (template_encoding_table): Make it `const'.
174         * breakpoint.c (bp_loc_is_permanent): Support unsupported software
175         breakpoints.  New variables `cleanup' and `retval'.
176
177 2008-11-24  Tom Tromey  <tromey@redhat.com>
178
179         * ada-lang.c (value_from_contents_and_address): Move...
180         * value.c: ... here.
181         * ada-lang.h (value_from_contents_and_address): Move
182         declaration...
183         * value.h: ... here.
184
185 2008-11-24  Paul Pluzhnikov  <ppluzhnikov@google.com>
186
187         * valprint.c (val_print_array_elements): Pass correct
188         element address to val_print.
189         
190 2008-11-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
191
192         Fix access of an already freed memory.
193         * parse.c (parse_field_expression): Call xstrdup on `*name'.
194         * completer.c (expression_completer): Free fieldname.
195
196 2008-11-24  Daniel Jacobowitz  <dan@codesourcery.com>
197
198         PR gdb/2474
199         * remote.c (remote_read_description_p): New function.
200         (remote_start_remote): Try to fetch the target description
201         before adding shared libraries.  Try again later if the
202         target is running but stopped.
203         (remote_open_1): Mark extended targets as exited by default.
204         (remote_read_description): Check target_has_execution.
205
206 2008-11-24  Jerome Guitton  <guitton@adacore.com>
207
208         * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Use
209         the frame address in block instead of the return address to
210         locate the mdebug PDR of the frame.
211
212 2008-11-21  Joel Brobecker  <brobecker@adacore.com>
213
214         Remove the unused BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
215
216         * breakpoint.h (enum bpstat_what_main_action): Remove
217         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
218         * breakpoint.c (bpstat_what): Delete catch_shlib_event from enum class.
219         Remove the BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK column from
220         variable table.
221         * infrun.c (wait_for_inferior): Remove handling of
222         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
223
224 2008-11-21  Tom Tromey  <tromey@redhat.com>
225
226         * configure: Rebuild.
227         * configure.ac: Merge calls to AC_CHECK_FUNCS, AC_CHECK_HEADERS,
228         AC_CHECK_DECLS, and AC_CHECK_MEMBERS.
229
230 2008-11-21  Tom Tromey  <tromey@redhat.com>
231
232         * python/python-internal.h (PyGILState_Ensure): New define.
233         (PyGILState_Release): Likewise.
234         (PyEval_InitThreads): Likewise.
235         (PyThreadState_Swap): Likewise.
236         (PyEval_InitThreads): Likewise.
237         * python/python.c (_initialize_python): Initialize threads.
238         Release GIL.
239         (eval_python_from_control_command): Acquire GIL.
240         (python_command): Likewise.
241         * python/python-internal.h (make_cleanup_py_restore_gil):
242         Declare.
243         * python/python-utils.c (py_gil_restore): New function.
244         (make_cleanup_py_restore_gil): Likewise.
245
246 2008-11-20  Doug Evans  <dje@google.com>
247
248         * frame.c (frame_debug_got_null_frame): Remove file arg.
249         All callers updated.
250
251 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
252
253         * infrun.c (resume): If following a fork, also reset regcache,
254         gdbarch and pc.
255
256 2008-11-20  Doug Evans  <dje@google.com>
257
258         * printcmd.c (sym_info): Don't print the offset if it's zero.
259
260 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
261
262         * infrun.c (resume): If following a fork, reread the current
263         thread.  Avoid dereferencing a possibly dangling pointer.
264
265 2008-11-19  Doug Evans  <dje@google.com>
266
267         * inferior.h (proceed_to_finish): Delete, unused.
268         (stop_registers): Tweak comment.
269         * infrun.c (stop_registers): Tweak comment.
270
271 2008-11-19  Kevin Buettner  <kevinb@redhat.com>
272
273         * frv-tdep.c (frv_skip_main_prologue): New function.
274         (frv_gdbarch_init): Register frv_skip_main_prologue.
275         * solib-frv.c (fetch_loadmap): Return early when no segments are
276         found.
277         (frv_relocate_main_executable): Return early when both interpreter
278         and executable loadmap addresses are zero.
279
280 2008-11-19  Bob Wilson  <bob.wilson@acm.org>
281         
282         * xtensa-config.c (rmap): Remove entries for ar32 through ar63.  Add
283         threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7,
284         excsave5, excsave6, excsave7, cpenable, and vecbase registers.
285         (xtensa_submask0, xtensa_submask1, xtensa_submask2)
286         (xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6)
287         (xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10)
288         (xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14)
289         (xtensa_submask15): Adjust register numbers.
290         * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
291         (xtensa_regmap_table): Add entry for scompare1.
292         * regformats/reg-xtensa.dat: Remove ar32 through ar63.  Add threadptr
293         and scompare1.
294         
295 2008-11-19  Pedro Alves  <pedro@codesourcery.com>
296
297         * remote.c (escape_buffer): New.
298         (putpkt_binary, read_frame, getpkt_or_notif_sane_1): Use it.  Make
299         sure debug output printing a packet buffer goes through a single
300         fprintf_unfiltered call.
301         * utils.c (vfprintf_unfiltered): If outputting timestamps, end
302         output with a newline if it wasn't going to already.
303
304 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
305
306         * maint.c (maintenance_translate_address): Fix a buglet.
307         
308 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
309
310         * features/Makefile (rs6000/powerpc-isa205-32l-expedite,
311         rs6000/powerpc-isa205-altivec32l-expedite,
312         powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite,
313         rs6000/powerpc-isa205-altivec64l-expedite,
314         powerpc-isa205-vsx64l-expedite): New variables.
315         * regformats/rs6000/powerpc-isa205-32l.dat: Generate.
316         * regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate.
317         * regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate.
318         * regformats/rs6000/powerpc-isa205-64l.dat: Generate.
319         * regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate.
320         * regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate.
321
322 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
323
324         * ppc-linux-nat.c (ppc_register_u_addr): Add special case to return
325         offset for full 64-bit slot of FPSCR when in 32-bits.
326         (ppc_linux_read_description): Return target description with 64-bit
327         FPSCR when inferior is running on an ISA 2.05 or later processor.
328         * ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Call
329         initialize_tdec_powerpc_isa205_32l,
330         initialize_tdec_powerpc_isa205_altivec32l,
331         initialize_tdec_powerpc_isa205_vsx32l,
332         initialize_tdec_powerpc_isa205_64l,
333         initialize_tdec_powerpc_isa205_altivec64l and
334         initialize_tdec_powerpc_isa205_vsx64l.
335         * ppc-linux-tdep.h: Add external declaration for
336         tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l,
337         tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_64l,
338         tdesc_powerpc_isa205_altivec64l and tdesc_powerpc_isa205_vsx64l.
339         * features/rs600/powerpc-fpu-isa205.xml: New file.
340         * features/rs600/powerpc-isa205-32l.xml: New file.
341         * features/rs600/powerpc-isa205-64l.xml: New file.
342         * features/rs600/powerpc-isa205-altivec32l.xml: New file.
343         * features/rs600/powerpc-isa205-altivec64l.xml: New file.
344         * features/rs600/powerpc-isa205-vsx32l.xml: New file.
345         * features/rs600/powerpc-isa205-vsx64l.xml: New file.
346         * features/rs600/powerpc-isa205-32l.c: Generate.
347         * features/rs600/powerpc-isa205-64l.c: Generate.
348         * features/rs600/powerpc-isa205-altivec32l.c: Generate.
349         * features/rs600/powerpc-isa205-altivec64l.c: Generate.
350         * features/rs600/powerpc-isa205-vsx32l.c: Generate.
351         * features/rs600/powerpc-isa205-vsx64l.c: Generate.
352
353 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
354
355         * objfiles.h: New MULTI_OBJFILE_P macro.
356         * printcmd.c (sym_info): Print object name.
357         * maint.c (maintenance_translate_address): Likewise.
358         
359 2008-11-18  Joel Brobecker  <brobecker@adacore.com>
360
361         * NEWS: Document the removal of "catch load" and "catch unload".
362
363 2008-11-17  Doug Evans  <dje@google.com>
364
365         * infcall.c (call_function_by_hand): Fix punctuation and capitalization
366         on error messages.
367
368 2008-11-17  Ulrich Weigand  <uweigand@de.ibm.com>
369
370         PR gdb/2250
371         * infrun.c (clear_proceed_status_thread): New function.
372         (clear_proceed_status_callback): New function.
373         (clear_proceed_status): In all-stop mode, clear per-thread
374         proceed status of *all* threads, not only the current.
375         (handle_inferior_event): In all-stop mode, if we're stepping
376         one thread, but got some inferior event in another thread
377         that does not cause GDB to break to the user interface,
378         ensure the interrupted stepping operation continues in the
379         original thread.
380         (currently_stepping): Move thread-related tests to ...
381         (currently_stepping_thread): ... this new function.
382         (currently_stepping_callback): New function.
383
384 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
385
386         Implement =thread-selected notification.
387
388         * mi/mi-common.h (struct mi_interp): New, moved from ...
389         * mi/mi-interp.c: ...here.
390         * mi/mi-main.c (mi_execute_command): If the thread changed
391         as result of command, report that.
392
393 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
394
395         Implement continue/interrupt of thread groups.
396
397         * mi/mi-main.c (proceed_thread_callback): New.
398         (mi_cmd_exec_continue): If --thread-group is specified, resume all
399         threads in that group.
400         (interrupt_thread_callback): New.
401         (mi_cmd_exec_interrupt): If --thread-group is specified, interrupt
402         all threads in that group.
403
404 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
405
406         Implement '-target-detach pid'.
407
408         * infcmd.c (detach_command): Make nonstatic.
409         * inferior.h (detach_command): Declare.
410         * mi/mi-cmds.c (mi_cmds): Don't route -target-detach via CLI.
411         * mi/mi-cmds.h (mi_cmd_target_detach): Declare.
412         * mi/mi-main.c (find_thread_of_process, mi_cmd_target_detach): New.
413
414 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
415
416         Include group-id in thread-created notification.
417
418         * mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include
419         group id in the output.
420
421 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
422
423         Notification for attach/detach.
424
425         * inferior.c: Call the process observers.
426         * mi/mi-interp.c (mi_new_inferior, mi_inferior_exit): New.
427         (mi_interpreter_init): Register the above.
428
429 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
430
431         Implement -list-thread-groups.
432
433         * thread.c (print_thread_info): New parameter pid, to print
434         threads of specific process.
435         * gdbthread.h (print_thread_info): New parameter pid.
436         * mi/mi-cmds.c (mi_cmds): Register -list-thread-groups.
437         * mi/mi-cmds.h (mi_cmd_list_thread_groups): New.
438         * mi/mi-main.c (mi_cmd_thread_info): Adjust.
439         (print_one_process, mi_cmd_list_thread_groups): New.
440
441 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
442
443         Remove some unused macros related to the old load/unload catchpoints.
444
445         * breakpoint.c (SOLIB_LOADED_LIBRARY_PATHNAME)
446         (SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_CREATE_CATCH_LOAD_HOOK)
447         (SOLIB_CREATE_CATCH_UNLOAD_HOOK): Delete. No longer used.
448
449 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
450
451         Remove support for catch load and catch unload commands.
452
453         * breakpoint.h (enum bptype): Remove bp_catch_load and bp_catch_unload.
454         (struct breakpoint): Remove fields dll_pathname and
455         triggered_dll_pathname.
456         (bpstat_get_triggered_catchpoints, ep_is_shlib_catchpoint): Delete.
457         * breakpoint.c (ep_is_catchpoint): Remove handling of
458         bp_catch_load and bp_catch_unload.
459         (print_it_typical, bpstat_check_location, bpstat_what)
460         (print_one_breakpoint_location, print_one_breakpoint_location)
461         (user_settable_breakpoint, allocate_bp_location)
462         (set_raw_breakpoint_without_location, mention, delete_breakpoint,
463         (breakpoint_re_set_one, disable_command, enable_command): Likewise.
464         (ep_is_shlib_catchpoint, bpstat_get_triggered_catchpoints)
465         (catch_load_command_1, catch_unload_command_1): Delete.
466         (_initialize_breakpoint): Remove the "catch load" and "catch unload"
467         command creation.
468         * infrun.c (handle_inferior_event): Remove the handling of
469         load/unload catchpoint events.
470
471 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
472
473         From  Jerome Guitton  <guitton@adacore.com>
474         * dwarf2read.c (dwarf2_debug_line_missing_end_sequence_complaint):
475         New function.
476         (dwarf_decode_lines): Detect null file numbers. Detect the end of
477         the line program sequence when no end sequence is emitted.
478
479 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
480
481         * ada-lang.c (ada_evaluate_subexp): Improve handling of integer
482         type dereferencing.
483
484 2008-11-15  Daniel Jacobowitz  <dan@codesourcery.com>
485
486         * NEWS: Mention sparc64-linux-gnu gdbserver support.
487
488 2008-11-14  Daniel Gutson  <dgutson@codesourcery.com>
489
490         * configure.tgt (sparc64-*-linux*): Added gdbserver support.
491         * regformats/reg-sparc64.dat: New file.
492
493 2008-11-14  Tom Tromey  <tromey@redhat.com>
494
495         PR mi/2549:
496         * mi/mi-main.c (get_register): Use get_formatted_print_options.
497
498 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
499
500         * printcmd.c: define PRINTF_HAS_LONG_LONG only if not yet defined.
501
502 2008-11-13  Ulrich Weigand  <uweigand@de.ibm.com>
503
504         * auxv.c (fprint_target_auxv): Handle AT_BASE_PLATFORM and
505         AT_EXECFN.  Re-sort AT_SECURE.
506
507 2008-11-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
508
509         * monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'.
510
511 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
512
513         * ia64-tdep.c: Remove commented out #define.
514
515 2008-11-12  Joel Brobecker  <brobecker@adacore.com>
516
517         From Joel Sherrill  <joel.sherrill@oarcorp.com>
518         * remote-sim.c (gdbsim_mourn_inferior): Use "target" parameter
519         instead of the "gdbsim_ops" global.
520
521 2008-11-11  Doug Evans  <dje@google.com>
522
523         * infcall.c (call_function_by_hand): Handle inferior exit.
524
525 2008-11-11  Thiago Jung Bauermann  <bauerman@br.ibm.com>
526
527         * remote-sim.c (gdbsim_create_inferior, gdbsim_mourn_inferior): Add
528         missing struct target_ops argument.
529
530 2008-11-11  Joel Sherrill <joel.sherrilL@oarcorp.com>
531
532         * MAINTAINERS: Add myself for write after approval privileges.
533
534 2008-11-10  Tom Tromey  <tromey@redhat.com>
535
536         * gdbtypes.c (copy_type_recursive): Clear new fields.
537
538 2008-11-10  Tom Tromey  <tromey@redhat.com>
539
540         * cli/cli-cmds.c (source_script): Clean up full_pathname.  Run
541         cleanups on early return.
542
543 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
544
545         Kill pthread_ops_hack
546
547         * target.h (struct target_ops): Make to_attach, to_detach,
548         to_create_inferior and to_mourn_inferior accept a pointer
549         to struct target_ops.
550         (target_attach, target_create_inferior, target_create_inferior):
551         Convert from macros to function.  Find the right target to
552         invoke a method of.
553         (find_default_attach, find_default_create_inferior): New parameter
554         ops.
555         * corefile.c (core_file_command): Pass target to to_detach.
556         * corelow.c (core_detach): Add 'ops' parameter.
557         * fork-child.c (fork_inferior): Return the pid.  Allow
558         init_trace_fun to be NULL.
559         * inf-ptrace (ptrace_ops_hack): Remove.
560         (inf_ptrace_him): Remove, moving all logic into....
561         (inf_ptrace_create_inferior): ... here.  Push the target
562         passed as parameter.
563         (inf_ptrace_mourn_inferior, inf_ptrace_attach, inf_ptrace_detach):
564         Push/pop target passed as parameter, no ptrace_ops_hack.
565         (inf_ptrace_target): Don't remember result.
566         * inferior.h (fork_inferior): Adjust prototype.
567         * linux-nat.c (linux_nat_create_inferior, linux_nat_attach)
568         (linux_nat_detach, linux_nat_mourn_inferior): New parameter ops.
569         Pass it to linux_ops target.
570         * linux-thread-db.c (thread_db_detach, thread_db_mourn_inferior):
571         New parameter ops. Pass it to the target beneath.
572         * remote.c (remote_mourn, extended_remote_mourn, remote_detach)
573         (extended_remote_create_inferior): New parameter ops. Pass it
574         further.
575         * target.c (debug_to_attach, debug_to_detach)
576         (debug_to_mourn_inferior): New parameter ops.
577         (target_create_inferior): New.
578         (update_current_target): Do not inherit to_attach, to_detach,
579         to_create_inferiour, to_mourn_inferior.  Do not default
580         to_detach and to_mourn_inferior.
581         (target_detach): Find the right target to use.
582         (target_mourn_inferior): New.
583         (find_default_attach, find_default_create_inferior): New parameter
584         ops.  Pass the found target when calling its method.
585         (init_dummy_target): Provide fallback definition of to_detach.
586         (target_attach): New.
587         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
588         (debug_to_mourn_inferiour): New parameter ops.
589         * aix-thread.c: Adjust.
590         * bsd-uthread.c: Adjust.
591         * gnu-nat.c: Adjust.
592         * go32-nat.c: Adjust.
593         * hpux-thread.c: Adjust.
594         * inf-ttrace.c: Ajust.
595         * monitor.c: Adjust.
596         * nto-procfs.c: Adjust.
597         * procfs.c: Adjust.
598         * remote-m32r-sdi.c: Adjust.
599         * remote-mips.c: Adjust.
600         * remote-sim.c: Adjust.
601         * rs6000-nat.c: Adjust.
602         * sol-thread.c: Adjust.
603         * win32-nat.c: Adjust.
604         * dec-thread.c: Adjust.
605
606 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
607
608         * thread.c (print_thread_info): Eliminate now useless checks
609         for exited threads.
610
611 2008-11-06  Pedro Alves  <pedro@codesourcery.com>
612
613         * i386-dicos-tdep.c (i386_dicos_init_abi): Set decr_pc_after_break
614         to 0.
615
616 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
617
618         * remote.c (notice_new_inferiors): Add a new inferior only when
619         we're going to add a new thread.
620
621 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
622
623         * defs.h (add_inferior_continuation)
624         (do_all_inferior_continuations)
625         (discard_all_inferior_continuations): Declare.
626         * utils.c (add_inferior_continuation)
627         (do_all_inferior_continuations)
628         (discard_all_inferior_continuations): New.
629         * inferior.h (struct inferior) <continuations>: New field.
630         * inferior.c (free_inferior): Discard all the inferior
631         continuations.
632         * inf-loop.c (inferior_event_handler): Do all current inferior
633         continuations.
634         * infcmd.c (attach_command): Register an inferior continuation
635         instead of a thread continuation.
636         * infrun.c (handle_inferior_event): If stop_soon is
637         STOP_QUIETLY_NO_SIGSTOP, also expect a TARGET_SIGNAL_0.
638
639 2008-11-04  Pedro Alves  <pedro@codesourcery.com>
640
641         * inf-loop.c (inferior_event_handler): On INF_ERROR and
642         INF_REG_EVENT throwing, don't call target_async or pop_target.
643         Call pop_all_targets_above.
644         * remote.c (remote_close): Call remote_terminal_ours.  Don't call
645         signal or target_async.
646
647 2008-11-04  Daniel Jacobowitz  <dan@codesourcery.com>
648
649         * eval.c (evaluate_subexp_standard): Assert that there is at
650         least one array dimension.
651
652 2008-11-03  Vladimir Prus  <vladimir@codesourcery.com>
653
654         Make attach_command exception-safe
655         * infcmd.c (attach_command): Call async_enable_stdin
656         if exception is thrown.
657
658 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
659
660         * gdbarch.sh (has_global_solist): Mention global breakpoints.
661         * gdbarch.h: Regenerate.
662
663 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
664
665         * remote.c (remote_start_remote): If the solib list is global,
666         fetch libraries and insert breakpoints after connecting.
667         * infcmd.c (post_create_inferior): If the solist is shared between
668         inferiors, no need to refetch it on every new inferior.
669         (detach_command): If the shared library list is shared between
670         inferiors, then don't clear it on every inferior detach.
671         * gdbarch.sh (has_global_solist): New.
672         * i386-dicos-tdep.c (i386_dicos_init_abi): Set
673         gdbarch_has_global_solist.
674         * target.c (target_pre_inferior): If the shared library list is
675         shared between inferiors, then don't clear it here, neither
676         invalidate the memory regions or clear the target description.
677         (target_detach): If the shared library list is shared between
678         inferiors, then don't remove breakpoints from the target here.
679         (target_disconnect): Comment.
680         * solib.c (update_solib_list): Check for null_ptid.
681         * breakpoint.c (insert_breakpoints, update_global_location_list):
682         If the shared library list is shared between inferiors, insert
683         breakpoints even if there's no execution.
684         (breakpoint_init_inferior): If the shared library list is shared
685         between inferiors, don't delete breakpoints or mark them
686         uninserted here.
687
688         * gdbarch.c, gdbarch.h: Regenerate.
689
690 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
691
692         * inferior.h (inferior_ignoring_leading_exec_events): Delete
693         declaration.
694
695 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
696
697         * inferior.h (write_inferior_status_register): Delete.
698         * infrun.c (write_inferior_status_register): Delete.
699
700 2008-10-30  Tom Tromey  <tromey@redhat.com>
701
702         * value.c (coerce_array): Use check_typedef.
703
704 2008-10-30  Tom Tromey  <tromey@redhat.com>
705
706         * cli/cli-logging.c (handle_redirections): Make a cleanup.
707         * reggroups.c (maintenance_print_reggroups): Make a cleanup.
708         * regcache.c (regcache_print): Make a cleanup.
709         * maint.c (maintenance_print_architecture): Make a cleanup.
710         * dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.
711
712 2008-10-30  Tom Tromey  <tromey@redhat.com>
713
714         * utils.c (make_cleanup_close): Use make_cleanup_dtor.
715         (do_close_cleanup): Don't free 'fd'.
716
717 2008-10-30  Tom Tromey  <tromey@redhat.com>
718
719         * source.c (symtab_to_fullname): Test 'r >= 0'.
720         (psymtab_to_fullname): Likewise.
721         (get_filename_and_charpos): Make a cleanup.
722         (forward_search_command): Likewise.
723         (reverse_search_command): Likewise.
724         * exec.c (exec_file_attach): Close scratch_chan on failure.
725         * nto-procfs.c (procfs_open): Make a cleanup.
726         (procfs_pidlist): Likewise.
727         (do_closedir_cleanup): New function.
728
729 2008-10-30  Andreas Schwab  <schwab@suse.de>
730
731         * infcmd.c (construct_inferior_arguments): Handle newlines
732         specially.
733
734 2008-10-30  Joel Brobecker  <brobecker@adacore.com>
735
736         * breakpoint.h (enum bptype): Delete bp_catch_exec.
737         * breakpoint.c (insert_catchpoint): Remove handling for
738         bp_catch_exec breakpoint kinds.
739         (insert_bp_location, update_breakpoints_after_exec, remove_breakpoint)
740         (ep_is_catchpoint, print_it_typical, bpstat_check_location),
741         (bpstat_check_location, bpstat_what, print_one_breakpoint_location)
742         (print_one_breakpoint_location, user_settable_breakpoint)
743         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
744         (allocate_bp_location, mention, breakpoint_re_set_one)
745         (disable_command, enable_command): Likewise.
746         (create_exec_event_catchpoint): Delete.
747         (insert_catch_exec, remove_catch_exec, breakpoint_hit_catch_exec)
748         (print_it_catch_exec, print_one_catch_exec, print_mention_catch_exec):
749         New functions.
750         (catch_exec_breakpoint_ops): New static global.
751         (catch_exec_command_1): Use create_catchpoint instead of
752         create_exec_event_catchpoint to create the exec catchpoint.
753
754 2008-10-28  Tom Tromey  <tromey@redhat.com>
755
756         * Makefile.in (SUBDIR_CLI_OBS): Don't mention cli-utils.o.
757         (SUBDIR_CLI_DEPS): Don't mention cli-utils.c.
758         (HFILES_NO_SRCDIR): Don't mention cli-utils.h.
759         (cli-utils.o): Remove.
760         * cli/cli-utils.c: Remove.
761         * cli/cli-utils.h: Remove.
762
763 2008-10-28  Tom Tromey  <tromey@redhat.com>
764
765         * varobj.c (value_get_print_value): Include valprint.h.
766         (value_get_print_value): Use get_formatted_print_options.
767         * value.h (struct value_print_options): Declare.
768         (value_print, val_print, common_val_print, val_print_string):
769         Update.
770         * value.c: Include valprint.h.
771         (show_values): Use get_user_print_options.
772         (show_convenience): Likewise.
773         * valprint.h (prettyprint_arrays, prettyprint_structs): Don't
774         declare.
775         (struct value_print_options): New type.
776         (vtblprint, unionprint, addressprint, objectprint, print_max,
777         inspect_it, repeat_count_threshold, output_format,
778         stop_print_at_null): Don't declare.
779         (user_print_options, get_user_print_options,
780         get_raw_print_options, get_formatted_print_options): Declare.
781         (print_array_indexes_p): Don't declare.
782         (maybe_print_array_index, val_print_array_elements): Update.
783         * valprint.c (print_max): Remove.
784         (user_print_options): New global.
785         (get_user_print_options, get_raw_print_options,
786         get_formatted_print_options): New functions.
787         (print_array_indexes, repeat_count_threshold, stop_print_at_null,
788         prettyprint_structs, prettyprint_arrays, unionprint,
789         addressprint): Remove.
790         (val_print): Remove format, deref_ref, pretty arguments; add
791         options.  Update.
792         (common_val_print): Likewise.
793         (print_array_indexes_p): Remove.
794         (maybe_print_array_index): Remove format, pretty arguments; add
795         options.  Update.
796         (val_print_array_elements): Remove format, deref_ref, pretty
797         arguments; add options.  Update.
798         (val_print_string): Add options argument.  Update.
799         (_initialize_valprint): Use user_print_options.
800         (output_format): Remove.
801         (set_output_radix_1): Use user_print_options.
802         * typeprint.c: Include valprint.h.
803         (objectprint): Don't declare.
804         (whatis_exp): Use get_user_print_options.
805         * tui/tui-regs.c: Include valprint.h.
806         (tui_register_format): Use get_formatted_print_options.
807         * tracepoint.c: Include valprint.h.
808         (addressprint): Don't declare.
809         (trace_mention): Use get_user_print_options.
810         (tracepoints_info): Likewise.
811         * stack.c (print_frame_args): Use get_raw_print_options.
812         (print_frame_info): Use get_user_print_options.
813         (print_frame): Likewise.
814         * sh64-tdep.c: Include valprint.h
815         (sh64_do_register): Use get_formatted_print_options.
816         * scm-valprint.c (scm_inferior_print): Remove format, deref_ref,
817         pretty arguments; add options.
818         (scm_scmlist_print): Likewise.  Update.
819         (scm_scmval_print): Likewise.
820         (scm_val_print): Likewise.
821         (scm_value_print): Remove format, pretty arguments; add options.
822         Update.
823         * scm-lang.h (scm_value_print, scm_val_print, scm_scmval_print):
824         Update.
825         * scm-lang.c (scm_printstr): Add options argument.
826         * python/python-value.c: Include valprint.h.
827         (valpy_str): Use get_user_print_options.
828         * printcmd.c: Include valprint.h.
829         (addressprint): Don't declare.
830         (inspect_it): Remove.
831         (print_formatted): Remove format option; add options.  Update.
832         (print_scalar_formatted): Likewise.
833         (print_address_demangle): Use get_user_print_options.
834         (do_examine): Use get_formatted_print_options.
835         (print_command_1): Likewise.
836         (output_command): Use get_formatted_print_options.
837         (do_one_display): Likewise.
838         (print_variable_value): Use get_user_print_options.
839         * p-valprint.c (pascal_val_print): Remove format, deref_ref,
840         pretty arguments; add options.  Update.
841         (pascal_value_print): Remove format, pretty arguments; add
842         options.  Update.
843         (vtblprint, objectprint): Don't declare.
844         (pascal_static_field_print): Remove.
845         (pascal_object_print_value_fields): Remove format, pretty
846         arguments; add options.  Update.
847         (pascal_object_print_static_field): Likewise.
848         (_initialize_pascal_valprint): Use user_print_options.  Update.
849         * p-lang.h (pascal_val_print, pascal_value_print,
850         pascal_printstr, pascal_object_print_value_fields): Update.
851         (vtblprint, static_field_print): Don't declare.
852         * p-lang.c (pascal_printstr): Add options argument.  Update.
853         * objc-lang.c (objc_printstr): Add options argument.  Update.
854         * mt-tdep.c: Include valprint.h.
855         (mt_registers_info): Use get_raw_print_options.
856         * mips-tdep.c: Include valprint.h.
857         (mips_print_fp_register): Use get_formatted_print_options.
858         (mips_print_register): Likewise.
859         * mi/mi-main.c: Include valprint.h.
860         (get_register): Use get_user_print_options.
861         (mi_cmd_data_evaluate_expression): Likewise.
862         (mi_cmd_data_read_memory): Use get_formatted_print_options.
863         * mi/mi-cmd-stack.c: Include valprint.h.
864         (list_args_or_locals): Use get_raw_print_options.
865         * m2-valprint.c (print_function_pointer_address): Add addressprint
866         argument.
867         (m2_print_long_set): Remove format, pretty arguments.
868         (m2_print_unbounded_array): Remove format, deref_ref, pretty
869         arguments; add options.  Update.
870         (print_unpacked_pointer): Remove format argument; add options.
871         Now static.  Update.
872         (print_variable_at_address): Remove format, deref_ref, pretty
873         arguments; add options.  Update.
874         (m2_print_array_contents): Likewise.
875         (m2_val_print): Likewise.
876         * m2-lang.h (m2_val_print): Update.
877         * m2-lang.c (m2_printstr): Add options argument. Update.
878         * language.h (struct value_print_options): Declare.
879         (struct language_defn) <la_printstr>: Add options argument.
880         <la_val_print>: Remove format, deref_ref, pretty argument; add
881         options.
882         <la_value_print>: Remove format, pretty arguments; add options.
883         <la_print_array_index>: Likewise.
884         (LA_VAL_PRINT, LA_VALUE_PRINT, LA_PRINT_STRING,
885         LA_PRINT_ARRAY_INDEX): Update.
886         (default_print_array_index): Update.
887         * language.c (default_print_array_index): Remove format, pretty
888         arguments; add options.  Update.
889         (unk_lang_printstr): Add options argument.
890         (unk_lang_val_print): Remove format, deref_ref, pretty arguments;
891         add options.
892         (unk_lang_value_print): Remove format, pretty arguments; add
893         options.
894         * jv-valprint.c (java_value_print): Remove format, pretty
895         arguments; add options.  Update.
896         (java_print_value_fields): Likewise.
897         (java_val_print): Remove format, deref_ref, pretty arguments; add
898         options.  Update.
899         * jv-lang.h (java_val_print, java_value_print): Declare.
900         * infcmd.c: Include valprint.h.
901         (print_return_value): Use get_raw_print_options.
902         (default_print_registers_info): Use get_user_print_options,
903         get_formatted_print_options.
904         (registers_info): Use get_formatted_print_options.
905         * gdbtypes.h (struct value_print_options): Declare.
906         (print_scalar_formatted): Update.
907         * f-valprint.c (f77_print_array_1): Remove format, deref_ref,
908         pretty arguments; add options.  Update.
909         (f77_print_array): Likewise.
910         (f_val_print): Likewise.
911         * f-lang.h (f_val_print): Update.
912         * f-lang.c (f_printstr): Add options argument.  Update.
913         (c_value_print): Update declaration.
914         * expprint.c: Include valprint.h.
915         (print_subexp_standard): Use get_raw_print_options,
916         get_user_print_options.
917         * eval.c: Include valprint.h.
918         (objectprint): Don't declare.
919         (evaluate_subexp_standard): Use get_user_print_options.
920         * cp-valprint.c (vtblprint, objectprint, static_field_print):
921         Remove.
922         (cp_print_value_fields): Remove format, pretty arguments; add
923         options.  Update.
924         (cp_print_value): Likewise.
925         (cp_print_static_field): Likewise.
926         (_initialize_cp_valprint): Use user_print_options.  Update.
927         * c-valprint.c (print_function_pointer_address): Add addressprint
928         argument.
929         (c_val_print): Remove format, deref_ref, pretty arguments; add
930         options.  Update.
931         (c_value_print): Add options argument.  Update.
932         * c-lang.h (c_val_print, c_value_print, c_printstr): Update.
933         (vtblprint, static_field_print): Don't declare.
934         (cp_print_value_fields): Update.
935         * c-lang.c (c_printstr): Add options argument.  Update.
936         * breakpoint.c: Include valprint.h.
937         (addressprint): Don't declare.
938         (watchpoint_value_print): Use get_user_print_options.
939         (print_one_breakpoint_location): Likewise.
940         (breakpoint_1, print_it_catch_fork, print_it_catch_vfork, mention,
941         print_exception_catchpoint): Likewise.
942         * auxv.c (fprint_target_auxv): Don't declare addressprint.  Use
943         get_user_print_options.
944         * ada-valprint.c (struct ada_val_print_args): Remove format,
945         deref_ref, and pretty; add options.
946         (print_optional_low_bound): Add options argument.
947         (val_print_packed_array_elements): Remove format and pretty
948         arguments; add options.  Update.
949         (printstr): Add options argument.  Update.
950         (ada_printstr): Likewise.
951         (ada_val_print): Remove format, deref_ref, pretty arguments; add
952         options argument.  Update.
953         (ada_val_print_stub): Update.
954         (ada_val_print_array): Remove format, deref_ref, pretty arguments;
955         add options.  Update.
956         (ada_val_print_1): Likewise.
957         (print_variant_part): Likewise.
958         (ada_value_print): Remove format, pretty arguments; add options.
959         Update.
960         (print_record): Likewise.
961         (print_field_values): Likewise.
962         * ada-lang.h (ada_val_print, ada_value_print, ada_printstr):
963         Update.
964         * ada-lang.c (ada_print_array_index): Add options argument; remove
965         format and pretty arguments.
966         (print_one_exception): Use get_user_print_options.
967
968 2008-10-28  Tom Tromey  <tromey@redhat.com>
969
970         * cli/cli-script.c (do_fclose_cleanup): Remove.
971         (script_from_file): Use make_cleanup_fclose.
972         * xml-tdesc.c (do_cleanup_fclose): Remove.
973         (fetch_xml_from_file): Use make_cleanup_fclose.
974         * tracepoint.c (tracepoint_save_command): Use
975         make_cleanup_fclose.  Always free pathname.
976         * source.c (print_source_lines_base): Use make_cleanup_fclose.
977         * remote.c (fclose_cleanup): Remove.
978         (remote_file_put): Use make_cleanup_fclose.
979         (remote_file_get): Likewise.
980         * linux-nat.c (linux_nat_find_memory_regions): Use
981         make_cleanup_fclose.
982         (linux_nat_info_proc_cmd): Likewise.
983         (linux_proc_pending_signals): Likewise.
984         * fbsd-nat.c (fbsd_find_memory_regions): Use make_cleanup_fclose.
985         Free file name.
986         * cli/cli-dump.c (do_fclose_cleanup): Remove.
987         (make_cleanup_fclose): Remove.
988         * defs.h (make_cleanup_fclose): Declare.
989         * utils.c (do_fclose_cleanup): New function.
990         (make_cleanup_fclose): Likewise.
991
992 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
993
994         * inflow.c (kill_command): If the target claims there is still
995         execution, don't clear the thread list.
996
997 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
998
999         * cp-name-parser.y: Include defs.h instead of config.h.
1000         (parse_escape): Rename to ...
1001         (cp_parse_escape): ... this.
1002         (yylex): Update.
1003         (xfree) [TEST_CPNAMES]: New.
1004
1005 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1006
1007         * CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
1008         2.13 and configure.in.
1009
1010 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1011
1012         * target.h (struct target_ops) <to_supports_multi_process>: New
1013         field.
1014         (target_supports_multi_process): New define.
1015         * target.c (update_current_target): Inherit and de_fault
1016         to_supports_multi_process.
1017         * infcmd.c (attach_command): Allow attaching to multiple processes
1018         if the target supports it.
1019         (detach_command): If the target claims there is still execution,
1020         don't clear the thread list.
1021         * remote.c (remote_supports_multi_process): New.
1022         (init_remote_ops): Register remote_supports_multi_process.
1023
1024 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1025
1026         * Makefile.in (.y.c, .l.c): sed free to xfree.
1027
1028 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1029
1030         * Makefile.in (INSTALLED_LIBS, CLIBS): Remove reference to
1031         $(TM_CLIBS).
1032         (CDEPS): Remove reference to $(TM_CDEPS).
1033
1034 2008-10-26  Michael Snyder  <msnyder@vmware.com>
1035
1036         * infrun.c (handle_inferior_event): Handle dynamic symbol
1037         resolution in reverse.
1038
1039 2008-10-25  Joel Brobecker  <brobecker@adacore.com>
1040
1041         * infrun.c: Minor comment reformatting.
1042
1043 2008-10-25  Pedro Alves  <pedro@codesourcery.com>
1044
1045         * ada-exp.y (write_object_renaming): Use malloc instead of
1046         xmalloc.
1047         * p-exp.y (pop_current_type): Use free instead of xfree.
1048
1049 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1050
1051         * fork-child.c (startup_inferior): Only set threads not-executing
1052         after getting all the pending execs.  On TARGET_WAITKIND_IGNORE,
1053         keep waiting, don't resume.  On all other cases but
1054         TARGET_WAITKIND_SIGNALLED and TARGET_WAITKIND_EXITED, switch to
1055         the event ptid.
1056
1057 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1058
1059         Remote non-stop mode support.
1060
1061         * remote.c (pending_stop_reply): New.
1062         (struct remote_state) <non_stop_aware, support_vCont_t>: New
1063         fields.
1064         (remote_async_inferior_event_token)
1065         (remote_async_get_pending_events_token): New.
1066         (notice_new_inferiors): New, abstracted out from record_currthread.
1067         (record_currthread): Call it.
1068         (remote_threads_info): Default threads to running in non-stop
1069         mode.  In non-stop mode, only qfThreadInfo is supported.
1070         (remote_close): Discard all pending stop_replies.  Close the event
1071         sources.
1072         (set_stop_requested_callback): New.
1073         (remote_start_remote): Implement non-stop mode startup.  In
1074         all-stop, don't clear the thread list here.
1075         (remote_non_stop_feature): New.
1076         (remote_protocol_features): Add a "QNonStop" feature.
1077         (remote_open_1): Clear cached_wait_status and non_stop_aware.
1078         Clear the thread list here.
1079         (remote_detach_1): Discard pending stop replies of the process we
1080         detached from.
1081         (extended_remote_attach_1): Implement non-stop mode.
1082         (remote_vcont_probe): Recognize `vCont;t'.
1083         (remote_vcont_resume): Implement non-stop mode.
1084         (remote_resume): Don't set waiting_for_stop_reply in non-stop
1085         mode.
1086         (remote_stop_ns): New.
1087         (remote_stop): Rename to ...
1088         (remote_stop_as): ... this.  If we have a cached wait status,
1089         don't bother interrupting the remote.
1090         (remote_stop): Reimplement as wrapper around remote_stop_as and
1091         remote_stop_ns.
1092         (interrupt_query): Don't query in async mode.
1093         (struct cached_reg, cahed_reg_t): New.
1094         (struct stop_reply): New.
1095         (stop_reply_queue): New.
1096         (stop_reply_xmalloc, stop_reply_xfree)
1097         (discard_pending_stop_replies, do_stop_reply_xfree)
1098         (queued_stop_reply, push_stop_reply, peek_stop_reply)
1099         (remote_parse_stop_reply, remote_get_pending_stop_replies)
1100         (process_stop_reply): New.
1101         (remote_wait_ns): New.
1102         (remote_wait_as): Use remote_parse_stop_reply.  Invalidate the
1103         notion of current general thread is a process exit was reported.
1104         (remote_wait): Call remote_wait_ns in non-stop mode.
1105         (handle_notification): New.
1106         (putpkt_binary): Handle notifications.  Don't care for
1107         waiting_for_stop_reply in non-stop mode.
1108         (getpkt_sane): Rename to ...
1109         (getpkt_or_notif_sane_1): ... this.  Add `expecting_notif'
1110         argument.  Handle it.  Handle notifications.
1111         (getpkt_sane): Reimplement as wrapper around getpkt_or_notif_sane_1.
1112         (getpkt_or_notif_sane): New.
1113         (select_new_thread_callback): Check for exited state instead of
1114         comparing the ptid against minus_one_ptid.
1115         (extended_remote_create_inferior_1): Query the remote about the
1116         current thread.
1117         (remote_supports_non_stop): New.
1118         (init_remote_ops): Register it.
1119         (remote_async_inferior_event_handler): New.
1120         (remote_async_get_pending_events_handler): New.
1121
1122         * infcmd.c (proceed_thread_callback): Comment.
1123         (proceed_after_attach_callback, proceed_after_attach): New.
1124         (attach_command_post_wait): In background attach, resume all
1125         threads, but only if they are unsignalled, and not explicitly
1126         stopped.  In foreground attach, in non-stop mode, make sure to
1127         stop all threads of the just attached to process.
1128         (attach_command): In non-stop mode: If doing a background attach,
1129         stop at least one thread.  If a foreground attach, stop all
1130         threads.
1131
1132 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1133
1134         * event-loop.h: Mention async_event_handlers.
1135         (async_event_handler): Forward declare.
1136         (async_event_handler_func): New typedef.
1137         (create_async_event_handler, delete_async_event_handler)
1138         (mark_async_event_handler): Declare.
1139         * event-loop.c (event_data): New.
1140         (event_handler_func): Take an event_data instead of an integer.
1141         (struct gdb_event): Replace the integer file descriptor by a
1142         generic event_data.
1143         (async_event_handler): New.
1144         (async_handler_ready): Delete.
1145         (async_event_handler_list): New.
1146         (create_event): New.
1147         (create_file_event): Use it.
1148         (process_event): Adjust.
1149         (gdb_do_one_event): Poll from the event sources in round-robin
1150         fashion across calls.  Be sure to consult all sources before
1151         blocking.
1152         (handle_file_event): Take an event_data instead of an integer.
1153         Adjust.
1154         (gdb_wait_for_event): Add `block' argument.  Handle it.
1155         (mark_async_signal_handler): Remove unneeded cast.
1156         (invoke_async_signal_handler): Rename to ...
1157         (invoke_async_signal_handlres): ... this.  Return true if any was
1158         handled.
1159         (check_async_ready): Delete
1160         (create_async_event_handler): New.
1161         (mark_async_event_handler): New.
1162         (struct async_event_handler_data): New.
1163         (invoke_async_event_handler): New.
1164         (check_async_event_handlers): New.
1165         (delete_async_event_handler): New.
1166         (handle_timer_event): Adjust.
1167
1168 2008-10-24  Doug Evans  <dje@google.com>
1169
1170         * dwarf2read.c (typename_concat): Don't segv if prefix or suffix
1171         is NULL.  Simplify obs == NULL case.
1172
1173 2008-10-24  Hui Zhu  <teawater@gmail.com>
1174             Pedro Alves  <pedro@codesourcery.com>
1175
1176         * infrun.c (can_use_displaced_stepping): Change type to
1177         const char pointer.
1178         (can_use_displaced_stepping_auto): New string.
1179         (can_use_displaced_stepping_on): New string.
1180         (can_use_displaced_stepping_off): New string.
1181         (can_use_displaced_stepping_enum): New array.
1182         (show_can_use_displaced_stepping): In auto mode, also show
1183         the current effect of the option.
1184         (use_displaced_stepping): Return non-zero if displaced
1185         stepping is auto, and can be used with GDBARCH, and in
1186         non-stop mode.  Return non-zero if displaced stepping is on,
1187         and can be used with GDBARCH.  Return zero otherwise.
1188         (_initialize_infrun): Make the "set displaced-stepping"
1189         command an enum command.  Change its class to class_run.
1190         Place it in the top level set list.  Extend help to describe
1191         the auto mode.
1192
1193 2008-10-23  Pedro Alves  <pedro@codesourcery.com>
1194
1195         * defs.h: Mention ptid_is_pid.
1196         * inferior.h (ptid_is_pid): Declare.
1197         * gdbthread.h (struct thread_info) <stop_requested>: New field.
1198         (set_stop_requested): Declare.
1199         * infcmd.c (interrupt_target_1): Call set_stop_requested.
1200         * infrun.c (clear_proceed_status): Clear stop_requested.
1201         (infrun_thread_stop_requested_callback,
1202         infrun_thread_stop_requested): New.
1203         (handle_inferior_event): If a TARGET_SIGNAL_TRAP is reported on a
1204         thread that had an explicit stop request, pretend we got a
1205         TARGET_SIGNAL_0.  Always stop if the thread had an explicit stop
1206         request.
1207         (print_stop_reason): In the SIGNAL_RECEIVED case, if we're not
1208         outputting to MI, and we got a TARGET_SIGNAL_0, print "# Stopped",
1209         instead of mentioning signal 0.
1210         (ptid_is_pid): New.
1211         * thread.c (set_stop_requested): New.
1212
1213         * linux-nat.c (queued_waitpid): Rename to ...
1214         (queued_waitpid_1): ... this.  Add `peek' argument.  Handle it.
1215         (queued_waitpid): New, as wrapper to queued_waitpid_1.
1216         (push_waitpid): Push the SIGTRAP to the local event queue, to the
1217         kernel's.
1218         (send_sigint_callback): Delete.
1219         (linux_nat_stop_lwp): New.
1220         (linux_nat_stop): Use it.
1221
1222 2008-10-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
1223
1224         * python/python-value (valpy_getitem): Fix heap corruption.
1225         
1226 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1227
1228         * nto-procfs.c (do_attach): Form proper ptid including pid and tid.
1229         (procfs_create_inferior): Fetch list of threads.
1230
1231 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1232
1233         * nto-procfs.c (procfs_files_info): Fix a typo.
1234         (procfs_create_inferior): Make attach_flag per-inferior.
1235
1236 2008-10-23  Tom Tromey  <tromey@redhat.com>
1237
1238         * python/python-value.c (value_to_value_object): Initialize
1239         owned_by_gdb field.
1240         (valpy_new): Likewise.
1241         
1242 2008-10-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1243             Joel Brobecker  <brobecker@adacore.com>
1244
1245         * ada-tasks.c (task_states, long_task_states): Use constant N_()
1246         initializer.  Define the strings as const.
1247         (short_task_info, info_task): Translate the strings above.
1248
1249 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1250
1251         * NEWS: Add entry for new feature (Ada tasking support).
1252
1253 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1254
1255         * configure.ac: On alpha-osf, error out if enable_tui is set to
1256         "yes", and set enable_tui to "no" if previously set to "auto".
1257         Check for waddstr only if TUI support was requested. Move the
1258         part of the configure script that updates various Makefile
1259         variables up, together with the check for waddstr.
1260         * configure: Regenerate.
1261
1262 2008-10-22  Joel brobecker  <brobecker@adacore.com>
1263
1264         * gdbtypes.c (copy_type): New function.
1265         * gdbtypes.h (copy_type): Add declaration.
1266         * ada-lang.c (ada_to_fixed_type_1): If there is a parallel XVZ
1267         variable, then use it.
1268
1269 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1270
1271         * target.h (struct target_ops): Add new field to_get_ada_task_ptid.
1272         (target_get_ada_task_ptid): New macro.
1273         * target.c (default_get_ada_task_ptid): New function.
1274         (update_current_target): Inherit field default_get_ada_task_ptid.
1275         (update_current_target): Make default_get_ada_task_ptid the default
1276         value for field to_get_ada_task_ptid.
1277         * ada-lang.h (struct task_control_block): Delete. Never used.
1278         (struct task_ptid, task_ptid_t, struct task_entry, task_list):
1279         Likewise.
1280         (struct ada_task_info): New.
1281         (ada_task_is_alive, ada_find_printable_frame)
1282         (ada_task_list_iterator_ftype, iterate_over_live_ada_tasks): Add
1283         declarations.
1284         (ada_build_task_list): Update prototype.
1285         (init_task_list, ada_is_exception_breakpoint): Remove prototypes.
1286         * ada-lang.c (ada_find_printable_frame): Make non-static.
1287         * ada-tasks.c: New file.
1288         * Makefile.in (SFILES): Add ada-tasks.c.
1289         (COMMON_OBS): Add ada-tasks.o.
1290         * linux-thread-db.c (thread_db_find_thread_from_tid)
1291         (thread_db_get_ada_task_ptid): New functions.
1292         (init_thread_db_ops): Set thread_db_ops.to_get_ada_task_ptid.
1293
1294 2008-10-22  Tom Tromey  <tromey@redhat.com>
1295
1296         PR gdb/2506:
1297         * c-exp.y (string_exp): New production.
1298         (exp): Use it.
1299
1300 2008-10-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1301
1302         * mips-tdep.c (mips_n32n64_fp_arg_chunk_p): Update TYPE_FIELD_STATIC
1303         removed before.
1304
1305 2008-10-20  Joel Brobecker  <brobecker@adacore.com>
1306
1307         * NEWS: Add entry mentioning thread-support on Tru64
1308
1309 2008-10-19  Joel Brobecker  <brobecker@adacore.com>
1310
1311         * dec-thread.c: New file.
1312         * config/alpha/alpha-osf3.mh (NATDEPFILES): Add dec-thread.o.
1313         (NAT_CLIBS): Define.
1314
1315 2008-10-19  Hui Zhu  <teawater@gmail.com>
1316
1317         * infrun.c (handle_inferior_event): Set "stop_pc" when
1318         TARGET_WAITKIND_NO_HISTORY.
1319
1320 2008-10-19  Pedro Alves  <pedro@codesourcery.com>
1321
1322         * python/python-value.c (value_object_methods)
1323         (value_object_as_number, value_object_as_mapping): Move to bottom
1324         of file.
1325         (valpy_dealloc, valpy_new, valpy_length, valpy_getitem)
1326         (valpy_setitem, valpy_str, valpy_add, valpy_subtract)
1327         (valpy_multiply, valpy_divide, valpy_remainder, valpy_power)
1328         (valpy_negative, valpy_positive, valpy_absolute, valpy_nonzero)
1329         (valpy_richcompare, valpy_dereference): Don't forward-declare.
1330         (valpy_length) [HAVE_LIBPYTHON2_4]: Change return type to `int'.
1331
1332 2008-10-18  Pedro Alves  <pedro@codesourcery.com>
1333
1334         * infrun.c (adjust_pc_after_break): Do nothing if executing in
1335         reverse.
1336
1337 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1338
1339         * infcmd.c (GO_USAGE): Delete.
1340         (go_command): Adjust.
1341
1342 2008-10-17  Michael Snyder  <msnyder@vmware.com>
1343         Target interface for reverse debugging.
1344         * target.h (enum target_waitkind): 
1345         Add new wait event, TARGET_WAITKIND_NO_HISTORY.
1346         (struct target_ops): New method to_can_execute_reverse.
1347         (target_can_execute_reverse): New macro.
1348         * target.c (update_current_target): Inherit to_can_execute_reverse.
1349
1350         Remote interface for reverse debugging.
1351         * remote.c (remote_can_execute_reverse): New target method.
1352         (remote_resume): Check for reverse exec direction, and send 
1353         appropriate command to target.
1354         (remote_wait_as): Check target response for NO_HISTORY status.
1355         Also check for empty reply (target doesn't understand "bs" or "bc).
1356         (remote_vcont_resume): Jump out if attempting reverse execution.
1357
1358         Event handling interface for reverse debugging.
1359         * infrun.c (execution_direction): New state variable.
1360         (enum inferior_stop_reason): Add NO_HISTORY reason.
1361         (handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY.
1362         Handle stepping over a function call in reverse.
1363         Handle stepping thru a line range in reverse.
1364         Handle setting a step-resume breakpoint in reverse.
1365         Handle stepping into a function in reverse.
1366         Handle stepping between line ranges in reverse.
1367         (print_stop_reason): Print reason for NO_HISTORY.
1368         (step_into_function): Rename to handle_step_into_function.
1369         (handle_step_into_function_backward): New function.
1370         (set_exec_direction_func, show_exec_direction_func): New funcs.
1371         (proceed): No need to singlestep over a breakpoint
1372         when resuming in reverse.
1373         
1374         * inferior.h (enum exec_direction_kind): New enum.
1375         (execution_direction): Export new execution state variable.
1376
1377         * breakpoint.c (make_breakpoint_silent): New function.
1378         * breakpoint.h (make_breakpoint_silent): Export.
1379         * infcmd.c (finish_command): Check for reverse exec direction.
1380         (finish_backward): New function, handle finish cmd in reverse.
1381
1382         User interface for reverse execution.
1383         * Makefile.in (reverse.c): New file.
1384         * reverse.c: New file.  User interface for reverse execution.
1385
1386 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1387
1388         * remote.c (record_currthread): Add inferior before child threads.
1389         (remote_threads_info): Check for exited threads.  Mention
1390         notification order.
1391
1392 2008-10-16  Joel Brobecker  <brobecker@adacore.com>
1393
1394         * breakpoint.h (enum bptype): New enum bp_catchpoint.
1395         Delete bp_catch_fork and bp_catch_vfork.
1396         (struct breakpoint_ops): Add new methods "insert", "remove"
1397         and "breakpoint_hit".
1398         * breakpoint.c (create_fork_vfork_event_catchpoint)
1399         (create_fork_event_catchpoint, create_vfork_event_catchpoint): Remove.
1400         (insert_catchpoint): Remove handling of bp_catch_fork and
1401         bp_catch_vfork catchpoints, and handle them as bp_catchpoint
1402         catchpoints instead.
1403         (insert_bp_location, update_breakpoints_after_exec)
1404         (remove_breakpoint, bpstat_check_location, bpstat_what)
1405         (allocate_bp_location): Likewise.
1406         (print_it_typical, print_one_breakpoint_location, mention): Remove
1407         handling of bp_catch_fork and bp_catch_vfork breakpoints.
1408         (ep_is_catchpoint, user_settable_breakpoint)
1409         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
1410         (breakpoint_re_set_one, disable_command, enable_command):
1411         Remove use of bp_catch_fork and bp_catch_vfork.  Add handling of
1412         bp_catchpoint breakpoints.
1413         (insert_catch_fork, remove_catch_fork, breakpoint_hit_catch_fork)
1414         (print_it_catch_fork, print_one_catch_fork, print_mention_catch_fork):
1415         New functions.
1416         (catch_fork_breakpoint_ops): New static constant.
1417         (insert_catch_vfork, remove_catch_vfork, breakpoint_hit_catch_vfork)
1418         (print_it_catch_vfork, print_one_catch_vfork)
1419         (print_mention_catch_vfork): New functions.
1420         (catch_vfork_breakpoint_ops): New static constant.
1421         (create_catchpoint, create_fork_vfork_event_catchpoint): New functions.
1422         (catch_fork_command_1): Use create_fork_vfork_event_catchpoint
1423         to create the fork and vfork catchpoints.
1424         (gnu_v3_exception_catchpoint_ops): Set new breakpoint_ops fields.
1425         * ada-lang.c (catch_exception_breakpoint_ops): Set new breakpoint_ops
1426         fields.
1427         (catch_exception_unhandled_breakpoint_ops): Likewise.
1428         (catch_assert_breakpoint_ops): Likewise.
1429
1430 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1431
1432         * remote.c (set_general_process): New.
1433         (remote_check_symbols): Use it.
1434
1435 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1436
1437         * remote.c (push_remote_target): Delete.
1438         * target.h (push_remote_target): Delete declaration.
1439
1440 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1441
1442         * remote.c (remote_close): Unregister remote_desc from the event
1443         loop.  Always restore the SIGINT handler.  Discard all inferiors
1444         here.
1445         (remote_detach_1, remote_disconnect): Don't unregister the file
1446         descriptor from the event loop here.
1447         (interrupt_query, readchar, getpkt_sane): Pop the target instead
1448         of morning the current inferior.
1449         (remote_kill): Don't unregister the file descriptor from the event
1450         loop here.
1451         (remote_mourn_1): Don't discard inferiors here.
1452
1453 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1454
1455         * breakpoint.c (breakpoint_init_inferior): Clean up the moribund
1456         locations list.
1457         (moribund_breakpoint_here_p): Record the moribund
1458         location in the moribund_locations vector.
1459         * breakpoint.h (moribund_breakpoint_here_p): Declare.
1460         (displaced_step_fixup): Check if the breakpoint the thread was
1461         trying to step over has been removed since having been placed in
1462         the displaced stepping queue.
1463         (adjust_pc_after_break): In non-stop mode, check for a moribund
1464         breakpoint at the stop pc.
1465         (handle_inferior_event): Don't retire moribund breakpoints on
1466         TARGET_WAITKIND_IGNORE.
1467
1468 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1469
1470         * infrun.c (displaced_step_prepare): Switch thread temporarily
1471         while we're here.
1472         (displaced_step_fixup): Make sure target_resume sees ptid as
1473         inferior_ptid.  Add debug output.
1474
1475 2008-10-14  Pedro Alves  <pedro@codesourcery.com>
1476
1477         Remove dead code.
1478
1479         * breakpoint.c (show_breakpoint_hit_counts): Delete.
1480         (print_one_breakpoint_location): Adjust.
1481         (breakpoint_clear_ignore_counts): Delete.
1482         * breakpoint.h (breakpoint_clear_ignore_counts): Remove
1483         declaration.
1484         * target.c (generic_mourn_inferior): Don't clear ignore
1485         counts (never reached).
1486
1487 2008-10-10  Doug Evans  <dje@google.com>
1488
1489         * dwarf2read.c (comp_unit_head): Use unsigned int consistently
1490         for dwarf section offsets and sizes.
1491         (dwarf2_cu): Ditto.
1492         (dwarf2_per_cu_data): Ditto.
1493         (create_all_comp_units): Change offset to unsigned int.
1494         (load_full_comp_unit,find_partial_die_in_comp_unit,find_partial_die,
1495         dwarf2_find_containing_comp_unit,dwarf2_find_comp_unit): Ditto.
1496
1497         * dwarf2read.c (read_initial_length): Delete cu_header arg.
1498         All callers updated.
1499         (read_checked_initial_length_and_offset): New function.
1500         (read_offset_1): New function.
1501         (read_offset): Call it.
1502         (dwarf_decode_line_header): Call read_checked_initial_length_and_offset
1503         instead of read_initial_length.  Call read_offset_1 instead of
1504         read_offset.
1505
1506         * dwarf2read.c (dwarf2_get_ref_die_offset): Remove unused arg `cu'.
1507         All callers updated.
1508
1509         * dwarf2read.c (dwarf_attr_name): Unconditionally support all
1510         DW_AT_MIPS_* except DW_AT_MIPS_fde which collides with
1511         DW_AT_HP_block_index.
1512
1513 2008-10-10  Pedro Alves  <pedro@codesourcery.com>
1514
1515         * remote.c (remote_start_remote): Always tell the stub if we're in
1516         extended-remote.
1517
1518 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1519
1520         * remote.c (remote_wait): Rename to...
1521         (remote_wait_as): ... this.  Don't loop here.  If the remote
1522         didn't stop, return TARGET_WAITKIND_IGNORE.
1523         (remote_wait): New, reimplemented on top of remote_wait_as.
1524
1525 2008-10-09  Thomas Schwinge  <tschwinge@gnu.org>
1526
1527         * Makefile.in (gnu-nat.o): Revert the 2008-09-10 change, as the problem
1528         is fixed upstream.
1529
1530         * reply_mig_hack.awk: Use the `BAD_TYPECHECK' macro.
1531
1532         * MAINTAINERS (Write After Approval): Add myself.
1533
1534 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1535
1536         Make it compile without warnings.
1537
1538         * procfs.c (create_procinfo): Initialize `parent'.
1539         (dead_procinfo): Pass a constant string as format to error.
1540         (procfs_address_to_host_pointer): Add cast to gdb_type *.
1541         (procfs_find_LDT_entry): Adjust format string to long int
1542         ptid.tid.
1543         (procfs_xfer_partial): Adjust prototype.  Add gdb_byte* cast.
1544         (procfs_xfer_memory): Adjust prototype.
1545         (info_mappings_callback, info_proc_mappings): Adjust to not pass a
1546         variable as printf_filtered format.
1547         (procfs_make_note_section): Change type of auxv local to gdb_byte.
1548         * Makefile.in: Remove special rule.
1549
1550 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1551             Daniel Jacobowitz  <dan@codesourcery.com>
1552
1553         * remote.c (remote_open_1): Move acknowledging any pending ack,
1554         querying supported features, activating noack mode, finding the
1555         target description, enabling extended remote, and checking remote
1556         symbols from here ...
1557         (remote_start_remote): ... to here.
1558         (remote_open_1): Don't pop the target if it is already gone.
1559         * target.c (unpush_target): Check for the dummy target.
1560
1561 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1562
1563         * ser-mingw.c: Include "command.h".
1564         (pipe_windows_open): Declare locals at the beginning of the scope.
1565
1566 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1567
1568         * remote.c (struct remote_state) <waiting_for_stop_reply>: New
1569         field.
1570         (remote_open_1): Clear waiting_for_stop_reply.
1571         (remote_resume): Set waiting_for_stop_reply.
1572         (remote_wait): Clear or set waiting_for_stop_reply accordingly.
1573         (putpkt_binary): If we're in async mode and waiting for a stop
1574         reply, bail out with an error.
1575         (extended_remote_mourn_1): Clear waiting_for_stop_reply.
1576
1577 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1578
1579         * remote.c (remote_get_thread_info): If the remote doesn't support
1580         the query, bail out.
1581
1582 2008-10-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
1583
1584         Convert static_kind into loc_kind enum.
1585         * gdbtypes.h (enum field_loc_kind): New.
1586         (union field_location): New field dwarf_block.
1587         (struct field): Rename static_kind as loc_kind.
1588         (FIELD_STATIC_KIND): Rename to ...
1589         (FIELD_LOC_KIND): ... here.
1590         (TYPE_FIELD_STATIC_KIND): Rename to ...
1591         (TYPE_FIELD_LOC_KIND): ... here and use there now new FIELD_LOC_KIND.
1592         (TYPE_FIELD_STATIC_HAS_ADDR): Remove.
1593         (TYPE_FIELD_STATIC): Remove.
1594         (TYPE_FIELD_BITPOS): Reformat.
1595         (SET_FIELD_BITPOS): New.
1596         (FIELD_PHYSADDR): Rename to ...
1597         (FIELD_STATIC_PHYSADDR): ... here.
1598         (TYPE_FIELD_STATIC_PHYSADDR): Follow the FIELD_PHYSADDR rename.
1599         (SET_FIELD_PHYSADDR): Use new FIELD_LOC_KIND.
1600         (FIELD_PHYSNAME): Rename to ...
1601         (FIELD_STATIC_PHYSNAME): ... here.
1602         (TYPE_FIELD_STATIC_PHYSNAME): Follow the FIELD_PHYSNAME rename.
1603         (SET_FIELD_PHYSNAME): Use new FIELD_LOC_KIND.
1604         (FIELD_DWARF_BLOCK, TYPE_FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK): New.
1605         (field_is_static): New declaration.
1606         * gdbtypes.c (field_is_static): New function.
1607         (copy_type_recursive): Update throughout.
1608         * amd64-tdep.c, c-typeprint.c, coffread.c, cp-valprint.c, dwarf2read.c,
1609         eval.c, jv-typeprint.c, jv-valprint.c, mdebugread.c, p-typeprint.c,
1610         p-valprint.c, valops.c, value.c, varobj.c: Update throughout.
1611
1612 2008-10-07  Thomas Schwinge  <tschwinge@gnu.org>
1613             Pedro Alves  <pedro@codesourcery.com>
1614
1615         * gnu-nat.h: Rename `current_inferior' to `gnu_current_inf' to
1616         avoid a name collision.
1617         * gnu-nat.c: Likewise.
1618         * i386gnu-nat.c: Likewise.
1619
1620 2008-10-07  Joel Brobecker  <brobecker@adacore.com>
1621
1622         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Add handling
1623         of arguments that are references.
1624
1625 2008-10-06  Doug Evans  <dje@google.com>
1626
1627         * dwarf2read.c (dwarf2_die_debug): New static global.
1628         (dump_die_shallow): Renamed from dump_die, New args f, indent.
1629         Print to specified file, indented by the specified amount.
1630         (dump_die_for_error): New fn.  Point all existing callers of
1631         dump_die here.
1632         (dump_die_die_1,dump_die): New fns, replaces ...
1633         (dump_die_list): ... deleted.
1634         (read_die_and_children_1): Old contents of read_die_and_children
1635         moved here.
1636         (read_die_and_children): Rewrite.
1637         (read_die_and_siblings): Call read_die_and_children_1 instead of
1638         read_die_and_children.
1639         (_initialize_dwarf2_read): New option "debug dwarf2-die".
1640         * gdbinit.in (pdie): New macro.
1641
1642         * dwarf2read.c (offset_in_cu_p): New function.
1643         (find_partial_die,follow_die_ref): Use it.
1644
1645         * symmisc.c (maintenance_info_symtabs): Watch for ^c.
1646         (maintenance_info_psymtabs): Ditto.
1647
1648 2008-10-05  Michael Snyder  <msnyder@vmware.com>
1649
1650         * infrun.c (handle_inferior_event): Fix typo in comment.
1651
1652 2008-10-04  Vladimir Prus  <vladimir@codesourcery.com>
1653
1654         * mi/mi-interp.c (mi_on_resume): Flush raw_stdout.
1655
1656 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1657
1658         PR gdb/2384:
1659         * gdbtypes.c (get_vptr_fieldno): baseclass and basetype may have
1660         different lifetimes.
1661         
1662 2008-10-03  Joel Brobecker  <brobecker@adacore.com>
1663
1664         * solib-osf.c: Include "solib.h".
1665
1666 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1667         
1668         * utils.c, defs.h (gdb_buildargv): New fn. Wrap buildargv
1669         and check for out-of-memory condition.
1670         * exec.c (exec_file_command): Call it.
1671         * infrun.c (handle_command, xdb_handle_command): Likewise.
1672         * interps.c (interpreter_exec_cmd): Likewise.
1673         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
1674         * procfs.c (info_proc_cmd): Likewise.
1675         * remote-mips.c (common_open): Likewise.
1676         * remote-sim.c (gdbsim_kill, gdbsim_create_inferior)
1677         (gdbsim_open): Likewise.
1678         * remote.c (extended_remote_run, remote_put_command)
1679         (remote_get_command, remote_delete_command): Likewise.
1680         * ser-mingw.c (pipe_windows_open): Likesise.
1681         * source.c (add_path, show_substitute_path_command)
1682         (unset_substitute_path_command, set_substitute_path_command):
1683         Likewise.
1684         * stack.c (backtrace_command): Likewise.
1685         * symfile.c (symbol_file_command, generic_load)
1686         (add_symbol_file_command): Likesise.
1687         * symmisc.c (maintenance_print_symbols, maintenance_print_psymbols)
1688         (maintenance_print_msymbols): Likewise.
1689
1690 2008-10-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1691
1692         Replace TYPE_ARRAY_{UPPER,LOWER}_BOUND_TYPE by a bit if {un,}defined.
1693         * c-typeprint.c (c_type_print_varspec_suffix), m2-typeprint.c
1694         (m2_array), p-typeprint.c (pascal_type_print_varspec_prefix),
1695         valops.c (value_cast), varobj.c (c_number_of_children): Replace
1696         TYPE_ARRAY_UPPER_BOUND_TYPE compared to BOUND_CANNOT_BE_DETERMINED by
1697         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1698         * parse.c (follow_types): Use TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1699         * f-valprint.c (f77_get_dynamic_upperbound): Replace with ...
1700         (f77_get_upperbound): ... this function handling now only
1701         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1702         (f77_get_dynamic_lowerbound): Replace with ...
1703         (f77_get_lowerbound): ... this function handling now only
1704         TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED.
1705         (f77_get_dynamic_length_of_aggregate, f77_create_arrayprint_offset_tbl):
1706         Update their callers.
1707         * eval.c (evaluate_subexp_standard): Update their callers.
1708         * f-lang.h (f77_get_dynamic_upperbound, f77_get_upperbound)
1709         (f77_get_dynamic_lowerbound, f77_get_lowerbound): Update their
1710         prototypes.
1711         (BOUND_FETCH_OK, BOUND_FETCH_ERROR): Remove.
1712         * f-typeprint.c (f_type_print_varspec_suffix, f_type_print_base): Remove
1713         the lower_bound_was_default variable.  Update the
1714         f77_get_dynamic_upperbound, f77_get_upperbound and
1715         TYPE_ARRAY_UPPER_BOUND_TYPE calls.
1716         * gdbtypes.c (print_bound_type): Remove the function.
1717         (recursive_dump_type): Remove its calls printing UPPER_BOUND_TYPE and
1718         LOWER_BOUND_TYPE.
1719         * gdbtypes.h (enum array_bound_type): Remove.
1720         (struct main_type): Remove the fields upper_bound_type and
1721         lower_bound_type.  Comment the new overload of the field artificial.
1722         (TYPE_ARRAY_UPPER_BOUND_TYPE): Replace by ...
1723         (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED): ... this macro.
1724         (TYPE_ARRAY_LOWER_BOUND_TYPE): Replace by ...
1725         (TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): ... this macro.
1726
1727 2008-10-02  Tom Tromey  <tromey@redhat.com>
1728
1729         * Makefile.in (HFILES_NO_SRCDIR): Remove gdb-events.h, gstdint.h.
1730
1731 2008-10-02  Daniel Jacobowitz  <dan@codesourcery.com>
1732
1733         * mips-linux-tdep.c (mips_linux_in_dynsym_resolve_code): Update
1734         comments.
1735         (mips_linux_skip_resolver): Also use glibc_skip_solib_resolver.
1736         (mips_linux_init_abi): Do not override skip_trampoline_code.
1737         * configure.tgt (mips*-*-linux*): Add glibc-tdep.o.
1738         * mips-tdep.c (mips32_scan_prologue): Stop scanning at branches.
1739         (mips_stub_frame_sniffer): Use the stub frame sniffer for PIC stubs.
1740         (mips_skip_mips16_trampoline_code): Rename from
1741         mips_skip_trampoline_code.
1742         (mips_skip_pic_trampoline_code, mips_skip_trampoline_code): New.
1743         * infrun.c (handle_inferior_event): Do not pass zero to
1744         in_solib_dynsym_resolve_code.
1745
1746 2008-10-02  Pierre Muller  <muller@ics.u-strasbg.fr>
1747             Pedro Alves  <pedro@codesourcery.com>
1748
1749         * win32-nat.c (do_initial_win32_stuff): Set inferior_ptid.
1750
1751
1752 2008-10-01  Tom Tromey  <tromey@redhat.com>
1753
1754         * symtab.c (search_symbols): Update.
1755         * symtab.h (domain_enum_tag) <METHODS_DOMAIN>: Remove.
1756
1757 2008-10-01  Tom Tromey  <tromey@redhat.com>
1758
1759         * symfile.c (syms_from_objfile): Update.
1760         (reread_symbols): Update.
1761         * objfiles.h (OBJF_SYMS): Remove.
1762         (OBJF_REORDERED): Renumber.
1763         (OBJF_SHARED): Likewise.
1764         (OBJF_READNOW): Likewise.
1765         (OBJF_USERLOADED): Likewise.
1766
1767 2008-10-01  Tom Tromey  <tromey@redhat.com>
1768
1769         * symtab.c (find_pc_sect_psymtab): Use MSYMBOL_TYPE.
1770         (find_pc_sect_symtab): Likewise.
1771         * symmisc.c (dump_msymbols): Use MSYMBOL_TYPE.
1772         * solib-som.c (som_solib_desire_dynamic_linker_symbols): Use
1773         MSYMBOL_TYPE, not SYMBOL_TYPE.
1774         * parse.c (write_exp_msymbol): Use MSYMBOL_TYPE.
1775         * objc-lang.c (find_methods): Use MSYMBOL_TYPE.
1776         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Use
1777         MSYMBOL_TYPE.
1778         * m2-exp.y (yylex): Use SYMBOL_CLASS.
1779
1780 2008-10-01  Tom Tromey  <tromey@redhat.com>
1781
1782         * xcoffread.c (RECORD_MINIMAL_SYMBOL): Update.
1783         (scan_xcoff_symtab): Update.
1784         * mdebugread.c (record_minimal_symbol): Update.
1785         (parse_partial_symbols): Update.
1786         * elfread.c (record_minimal_symbol): Update.
1787         * dbxread.c (record_minimal_symbol): Update.
1788         * coffread.c (record_minimal_symbol): Update.
1789         * sh64-tdep.c (MSYMBOL_IS_SPECIAL): Redefine.
1790         (sh64_elf_make_msymbol_special): Update.
1791         * mips-tdep.c (mips_elf_make_msymbol_special): Use
1792         MSYMBOL_TARGET_FLAG_1.
1793         (mips_elf_make_msymbol_special): Likewise.
1794         (msymbol_is_special): Likewise.
1795         * minsyms.c (prim_record_minimal_symbol_and_info): Update.
1796         (install_minimal_symbols): Likewise.
1797         (prim_record_minimal_symbol): Update.
1798         (prim_record_minimal_symbol_and_info): Remove 'info' argument.
1799         * m68hc11-tdep.c (MSYMBOL_SET_RTC): Redefine.
1800         (MSYMBOL_SET_RTI): Redefine.
1801         (MSYMBOL_IS_RTC): Redefine.
1802         (MSYMBOL_IS_RTI): Redefine.
1803         * arm-tdep.c (MSYMBOL_SET_SPECIAL): Redefine.
1804         (MSYMBOL_IS_SPECIAL): Redefine.
1805         * symtab.h (struct minimal_symbol) <info>: Remove.
1806         <target_flag_1, target_flag_2>: New fields.
1807         (MSYMBOL_INFO): Remove.
1808         (MSYMBOL_TARGET_FLAG_1): New macro.
1809         (MSYMBOL_TARGET_FLAG_2): Likewise.
1810         (prim_record_minimal_symbol_and_info): Update.
1811
1812 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1813
1814         * ada-lang.c (is_digits_suffix): Delete unused function.
1815
1816 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
1817
1818         * ada-lang.c (ada_modulus): Correct to avoid sign problem with
1819         moduli >= 2**31.
1820
1821 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
1822
1823         * ada-lang.c (ada_lookup_struct_elt_type): Handle case of a "naked"
1824         variant branch.
1825         (empty_record): Use INIT_CPLUS_SPECIFIC, since this field is not
1826         supposed to be null.  Fixes debugger segfaults.
1827         (is_unchecked_variant): New function.
1828         (to_fixed_variant_branch_type): Modify to leave unchecked unions
1829         untouched.
1830         (ada_template_to_fixed_record_type_1): Fix comment.
1831
1832 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1833
1834         * ada-lang.c (standard_exc): New static constant.
1835         (ada_exception_catchpoint_cond_string): Add special handling
1836         for the predefined exceptions.
1837
1838 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1839
1840         * ada-lang.c (ADA_RETAIN_DOTS): Delete this dead macro.  Update
1841         the code accordingly.
1842
1843 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1844
1845         * ada-lang.c (ada_evaluate_subexp) [UNOP_IND]: Remove strange
1846         treatment of expect_type. Return the correct type when dereferencing
1847         an integer.
1848
1849 2008-09-30  Tom Tromey  <tromey@redhat.com>
1850
1851         PR gdb/2484:
1852         * symtab.c (struct add_macro_name_data): New struct.
1853         (add_macro_name): New function.
1854         (default_make_symbol_completion_list): Complete macro names.
1855         * scm-lang.c (scm_language_defn): Update.
1856         * p-lang.c (pascal_language_defn): Update.
1857         * objc-lang.c (objc_language_defn): Update.
1858         * macrotab.h (macro_callback_fn): Add user_data argument.
1859         (macro_for_each): Likewise.
1860         (macro_for_each_in_scope): Declare.
1861         * macrotab.c: (struct macro_for_each_data): New struct.
1862         (foreach_macro): Use it.
1863         (macro_for_each): Likewise.
1864         (foreach_macro_in_scope): New function.
1865         (macro_for_each_in_scope): Likewise.
1866         * macrocmd.c (print_one_macro): Add argument.
1867         (macro_list_command): Pass NULL to macro_for_each.
1868         * m2-lang.c (m2_language_defn): Update.
1869         * language.h (struct language_defn) <la_macro_expansion>: New
1870         field.
1871         (macro_expansion): New enum.
1872         * language.c (unknown_language_defn): Update.  Fix order of
1873         initializers.
1874         (auto_language_defn): Likewise.
1875         (local_language_defn): Update.
1876         * jv-lang.c (java_language_defn): Update.
1877         * f-lang.c (f_language_defn): Update.
1878         * c-lang.c (c_language_defn): Update.
1879         (cplus_language_defn): Likewise.
1880         (asm_language_defn): Likewise.
1881         (minimal_language_defn): Likewise.
1882         * ada-lang.c (ada_language_defn): Update.
1883
1884 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1885
1886         * dwarf2read.c (dwarf2_get_subprogram_pc_bounds): New function.
1887         (get_scope_pc_bounds): Use it.
1888
1889 2008-09-27  Tom Tromey  <tromey@redhat.com>
1890
1891         * NEWS: Update.
1892         * macrocmd.c (extract_identifier): Add is_parameter argument.
1893         (macro_define_command): Update.
1894         (macro_undef_command): Likewise.
1895         * macroexp.c (stringify): New function.
1896         (find_parameter): Likewise.
1897         (gather_arguments): Add nargs argument.  Handle varargs.
1898         (substitute_args): Add is_varargs and va_arg_name arguments.
1899         Handle varargs, splicing, stringification.  Use find_parameter.
1900         (expand): Handle varargs.
1901
1902 2008-09-27  Tom Tromey  <tromey@redhat.com>
1903
1904         * scm-lang.c (scm_language_defn): Update.
1905         * p-typeprint.c (pascal_print_typedef): New function.
1906         * p-lang.h: (pascal_print_typedef): Declare.
1907         * p-lang.c (pascal_language_defn): Update.
1908         * objc-lang.c (objc_language_defn): Update.
1909         * m2-typeprint.c (m2_print_typedef): New function.
1910         * m2-lang.h (m2_print_typedef): Declare.
1911         * m2-lang.c (m2_language_defn): Update.
1912         * language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal):
1913         Remove.
1914         (struct language_defn) <la_print_typedef>: New field.
1915         (default_print_typedef): Declare.
1916         (LA_PRINT_TYPEDEF): New define.
1917         * language.c (unknown_language_defn): Update.
1918         (auto_language_defn): Update.
1919         (local_language_defn): Update.
1920         * jv-lang.c (java_language_defn): Update.
1921         * f-lang.c (f_language_defn): Update.
1922         * c-typeprint.c (c_print_typedef): New function.
1923         * c-lang.h (c_print_typedef): Declare.
1924         * c-lang.c (c_language_defn): Update.
1925         (cplus_language_defn): Update.
1926         (asm_language_defn): Update.
1927         (minimal_language_defn): Update.
1928         * ada-lang.c (ada_language_defn): Update.
1929         * typeprint.c (default_print_typedef): New function.
1930
1931 2008-09-27  Tom Tromey  <tromey@redhat.com>
1932
1933         * jv-exp.y (insert_exp): Define using ISO syntax.
1934         (copy_exp): Likewise.
1935         (push_expression_name): Likewise.
1936         (push_fieldnames): Likewise.
1937         (java_type_from_name): Likewise.
1938         (yyerror): Likewise.
1939         (yylex): Likewise.
1940         (parse_number): Likewise.
1941
1942 2008-09-26  Joel Brobecker  <brobecker@adacore.com>
1943
1944         * MAINTAINERS (GLOBAL MAINTAINERS): Add Pedro Alves.
1945
1946 2008-09-25  Stephan Springl  <springl-gdb@bfw-online.de> (tiny change)
1947
1948         * stack.c (print_frame_args): Fix typos in comments.
1949
1950 2008-09-25  Sérgio Durigan Júnior  <sergiodj@linux.vnet.ibm.com>
1951
1952         * linux-nat.c (get_pending_status): Fix argument to WIFSTOPPED.
1953
1954 2008-09-24  Vladimir Prus  <vladimir@codesourcery.com>
1955
1956         * remote-sim.c (gdbsim_create_inferior): Fix missing parenthesis.
1957         
1958 2008-09-24  Andreas Schwab  <schwab@suse.de>
1959
1960         * frame.c (get_frame_register_bytes): Take pseudo registers into
1961         account.  Avoid excessive function calls.
1962
1963 2008-09-23  Doug Evans  <dje@google.com>
1964
1965         * dcache.c (state_chars): New static global.
1966         (ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
1967         All uses updated.
1968         (dcache_info): Print cache state as mnemonically useful letters instead
1969         of magic numbers.
1970
1971         * dwarf2read.c (comp_unit_head): Reorganize for better packing.
1972
1973 2008-09-22  Tom Tromey  <tromey@redhat.com>
1974
1975         * symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
1976         printf_filtered.
1977
1978 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
1979
1980         * infrun.c (follow_exec): Don't do a generic mourn.  Instead
1981         inline the required bits.
1982         * breakpoint.h (enum inf_context): Add inf_execd.
1983
1984 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
1985
1986         * infrun.c (handle_inferior_event): In the follow exec case,
1987         context-switch before doing anything else.
1988
1989 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
1990
1991         * top.c (any_thread_of, kill_or_detach): New functions.
1992         (quit_target): Iterate over all inferiors, killing or detaching
1993         accordingly.
1994
1995 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
1996
1997         Remove the attach_flag global, and make it per-inferior.
1998
1999         * inferior.h (attach_flag): Delete.
2000         (inferior_process): Declare.
2001         * solib.c (update_solib_list): Adjust.
2002         * gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
2003         * inf-ptrace.c (inf_ptrace_detach): Adjust.
2004         (inf_ptrace_files_info): Get it from the current inferior.
2005         * inf-ttrace.c (inf_ttrace_attach): Adjust.
2006         (inf_ttrace_files_info): Get it from the current
2007         inferior.
2008         * inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
2009         (clear_sigint_trap): Get it from the current process.
2010         * remote.c (extended_remote_attach_1)
2011         (extended_remote_create_inferior_1): Adjust.
2012         * top.c (quit_confirm, quit_target): Get it from the current inferior.
2013         * procfs.c (do_detach): Adjust.
2014         (procfs_wait): Get it from the event inferior.
2015         (procfs_files_info): Get it from the current inferior.
2016         * nto-procfs.c (procfs_files_info): Likewise.
2017         (procfs_attach): Adjust.  Set the attach_flag here.
2018         (do_attach): Don't set it here.
2019         (procfs_detach): Don't clear it.
2020         (procfs_mourn_inferior): Don't clear it.
2021         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2022         * target.c (attach_flag): Delete.
2023         (generic_mourn_inferior): Don't clear it.
2024         * win32-nat.c (get_win32_debug_event): Get it from the event
2025         process.
2026         (do_initial_win32_stuff): Add attaching argument.  Set attach_flag
2027         in the inferior accordingly.
2028         (win32_attach): Don't set the attach_flag here.  Pass 1 to
2029         do_intial_win32_stuff.
2030         (win32_files_info): Get it from the current inferior.
2031         (win32_create_inferior): Dont clear attach_flag here.  Pass 0 to
2032         do_intial_win32_stuff.
2033
2034 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2035
2036         Make the stop_soon global be per-inferior instead.
2037
2038         * infcmd.c (attach_command_post_wait): Adjust.
2039         (attach_command): Likewise.
2040
2041         * inferior.h (stop_soon): Delete.
2042         (struct inferior): Add stop_soon member.
2043
2044         * infrun.c (stop_soon): Delete.
2045         (clear_proceed_status, start_remote)
2046         (fetch_inferior_event, handle_inferior_event): Adjust.
2047         (signal_stop_state): Don't check stop_soon here.  Check in callers
2048         instead.
2049         (save_inferior_status, restore_inferior_status): Adjust.
2050
2051         * linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
2052         signals to common code if starting up the inferior.
2053         
2054         * inferior.h (struct inferior_info): Added stop_soon member.
2055         * inferior.c (add_inferior) Clear stop_soon.
2056
2057         * mips-tdep.c (heuristic_proc_start): Adjust.
2058         * nto-procfs.c (procfs_create_inferior): Adjust.
2059         * solib-irix.c (irix_solib_create_inferior_hook): Adjust.
2060         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2061         * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
2062         * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
2063
2064         * win32-nat.c (do_initial_win32_stuff): Adjust.
2065
2066         * alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
2067
2068 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2069
2070         Implement remote multi-process extensions.
2071
2072         * remote.c (struct remote_state): Add extended and
2073         multi_process_aware fields.
2074         (remote_multi_process_p): New.
2075         (PACKET_vKill): New.
2076         (record_currthread): Use thread_change_ptid.  Notice new
2077         inferiors.
2078         (set_thread, remote_thread_alive): Use write_ptid.
2079         (write_ptid, read_ptid): New.
2080         (remote_current_thread, remote_threads_extra_info): Use them.
2081         (remote_threads_info): Likewise.  Detect new inferiors.
2082         (remote_start_remote): Add inferior to inferior list.
2083         (remote_multi_process_feature): New.
2084         (remote_protocol_features): Add "multiprocess" feature.
2085         (remote_query_supported): Pass "multiprocess+" as supported
2086         features.
2087         (remote_open_1): Clear multi_process_aware.  Set extended
2088         accordingly.
2089         (remote_detach_1): Detach current process.  Use extended packet
2090         format for extended-remote multi-process.  Detach process from the
2091         inferior list.  Only mourn after printing output.
2092         (extended_remote_attach_1): Add process to the inferior list.
2093         (remote_vcont_resume): Use write_ptid to pass the thread ids.
2094         (remote_wait): Use read_ptid.  Implement the extended
2095         multi-process extension format of the 'W' and 'X' reply packets.
2096         Remove exited inferiors from inferior list.
2097         (remote_xfer_memory): Set general thread.
2098         (remote_vkill): New.
2099         (extended_remote_kill): New.
2100         (remote_mourn_1): Discard all inferiors.
2101         (select_new_thread_callback): New.
2102         (extended_remote_mourn_1): If there are more processes to debug,
2103         switch to a thread in another process, and don't pop the target.
2104         (extended_remote_create_inferior_1): Add the new process to the
2105         inferior list.
2106         (remote_stopped_by_watchpoint): Indenting.
2107         (remote_xfer_partial): Set the general thread.
2108         (remote_pid_to_str): If the remote is multi-process aware, print
2109         the process id as well as the thread id.
2110         (remote_get_thread_local_address): Use write_ptid.
2111         (init_extended_remote_ops): Register extended_remote_kill.
2112         (_initialize_remote): Register new packets.  Change
2113         magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
2114         member to 42000.
2115
2116         * thread.c (thread_change_ptid): Also account for the inferior pid
2117         changing.
2118
2119         * inferior.h (discard_all_inferiors): Declare.
2120         * inferior.c (discard_all_inferiors): New.
2121
2122 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2123
2124         * gnu-nat.c (gnu_attach): Add process to inferiors table.
2125         (gnu_detach): Remove it.
2126         * go32-nat.c (go32_create_inferior): Add process to gdb's inferior
2127         table.
2128         * inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
2129         to inferior table accordingly.
2130         (inf_ptrace_attach): Add new process to inferior table.
2131         (inf_ptrace_detach): Remove it.
2132         * inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
2133         to inferior table accordingly.
2134         (inf_ttrace_attach): Add process to inferior table.
2135         (inf_ttrace_detach): Remove it.
2136         * linux-fork.c (init_fork_list): Delete any left over inferior.
2137         (linux_fork_mourn_inferior, detach_fork_command): Also delete
2138         processes from inferior list.
2139         * monitor.c (monitor_open): Add process to inferior list.
2140         (monitor_close): Remove it.
2141         * nto-procfs.c (procfs_attach): Add process to inferior list.
2142         Find threads after pushing the target.
2143         (procfs_detach): Remove process from inferior list.
2144         (procfs_create_inferior): Add process to inferior list.
2145         * procfs.c (procfs_detach): Remove process from inferior list.
2146         (do_attach): Add process to inferior list.
2147         * remote-sim.c (sim_create_inferior): Add process to inferior list.
2148         (gdbsim_close): Remove it.
2149         * target.c (generic_mourn_inferior): If inferior_ptid is not
2150         null_ptid, remove the corresponding inferior from inferior list.
2151         * win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
2152         (win32_detach): Remove it.
2153         * linux-nat.c (linux_child_follow_fork): Delete and add inferiors
2154         to inferior list accordingly.
2155         * fork-child.c (fork_inferior): Add process to inferior list.
2156         * corelow.c (CORELOW_PID): Define.
2157         (core_close): Remove core from inferior list.
2158         (core_open): Add it.
2159
2160 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2161
2162         * inferior.h: Forward declare struct ui_out.
2163         Forward declare struct private_inferior.
2164         (struct inferior): New.
2165         (init_inferior_list, add_inferior, add_inferior_silent)
2166         (delete_inferior, delete_inferior_silent, detach_inferior)
2167         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
2168         (valid_inferior_id, find_inferior_pid): New functions.
2169         (inferior_callback_func): New typedef.
2170         (iterate_over_inferiors, print_inferior, have_inferiors)
2171         (current_inferior): New functions.
2172         * inferior.c: New file.
2173
2174         * Makefile.in (SFILES): Add inferior.c.
2175         (COMMON_OBS): Add inferior.o.
2176
2177 2008-09-22  Jonathan Larmour  <jifl@eCosCentric.com>
2178
2179         * arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
2180         instead of determining symbol and line info directly.
2181         * MAINTAINERS: Update my email address.
2182
2183 2008-09-22  Daniel Jacobowitz  <dan@codesourcery.com>
2184
2185         * symtab.c (skip_prologue_using_sal): Treat two consecutive lines
2186         at the same address as a prologue marker.  Do not skip an entire
2187         function.
2188
2189 2008-09-22  Andrew Stubbs  <ams@codesourcery.com>
2190
2191         * frame.c (get_frame_register_bytes): Comment improvments.
2192
2193 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2194
2195         * linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
2196         all-stop mode.
2197
2198 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2199
2200         * MAINTAINERS: Update my email address.
2201
2202 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2203
2204         * frame.c (get_frame_register_bytes): Detect bad debug info.
2205
2206 2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
2207
2208         Fix a crash on uninitialized ECS->EVENT_THREAD for a newly found thread.
2209         * infrun.c (wait_for_inferior): Move this ECS->EVENT_THREAD
2210         initialization ...
2211         (fetch_inferior_event): ... and this ECS->EVENT_THREAD initialization
2212         ...
2213         (handle_inferior_event): ... here after the add_thread call together
2214         with the local adjust_pc_after_break and reinit_frame_cache calls.
2215
2216 2008-09-16  David Daney  <ddaney@avtrex.com>
2217
2218         * breakpoint.c (bpstat_stop_status): Clear breakpoint_at for
2219         all hardware bpstats.
2220
2221 2008-09-16  Joel Brobecker  <brobecker@adacore.com>
2222
2223         * gstdint.h: Delete.
2224
2225 2008-09-15  Mark Kettenis  <kettenis@gnu.org>
2226
2227         * infcall.c (generic_push_dummy_code): Remove.
2228         (push_dummy_code): Unconditionally call gdbarch_push_dummy_code.
2229
2230 2008-09-15  Doug Evans  <dje@google.com>
2231
2232         * dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
2233         (struct attribute): Ditto.
2234
2235 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2236
2237         * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind_cache): Record
2238         HPPA_IPSW_REGNUM and HPPA_SAR_REGNUM values.
2239
2240         * hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
2241         "#if 0" "#endif".  Fix mapping of DWARF DBX registers to GDB registers.
2242         Correct arguments and improve comments.
2243         (hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum.  Delete
2244         disabled code.
2245         * hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating
2246         point DBX register, change error to warning, and improve comments.
2247
2248 2008-09-14  Doug Evans  <dje@google.com>
2249
2250         * dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.
2251
2252 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2253
2254         * hppa-linux-tdep.c (hppa_linux_supply_fpregset): Correct iteration.
2255
2256 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2257
2258         * defs.h (GCC_GENERATED_STDINT_H): Define.
2259
2260 2008-09-13  Tom Tromey  <tromey@redhat.com>
2261
2262         * varobj.c (varobj_set_display_format): Use xfree.
2263         * tracepoint.c (stringify_collection_list): Use xfree.
2264         * remote-fileio.c (remote_fileio_reset): Use xfree.
2265         * mipsread.c (read_alphacoff_dynamic_symtab): Use xfree.
2266         * dfp.c (decimal_from_floating): Use xfree, xstrprintf.  Don't use
2267         asprintf.
2268         * cp-support.c (mangled_name_to_comp): Use xfree.
2269
2270 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2271
2272         * ada-lang.c (remove_extra_symbols): Remove stub symbols if
2273         the associated complete symbol is also in the list.
2274         (ada_add_local_symbols, ada_add_non_local_symbols): New functions,
2275         extracted out from ada_lookup_symbol_list.
2276         (ada_lookup_symbol_list): Use them.  Remove the search through
2277         the minimal symbols.
2278
2279 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2280
2281         * dwarf2read.c (add_partial_subprogram): New procedure.
2282         (scan_partial_symbols): Use it.
2283         (load_partial_dies): Read in children of subprogram and lexical
2284         blocks for Ada compilation units.
2285
2286 2008-09-13  Tom Tromey  <tromey@redhat.com>
2287
2288         * symfile.c (build_id_verify): Free 'found'.
2289         (find_separate_debug_file): Use xfree, not free.
2290
2291 2008-09-12  Doug Evans  <dje@google.com>
2292
2293         * corefile.c (write_memory): Remove unnecessary copying.
2294
2295         * sol-thread.c (_initialize_sol_thread): Add FIXME regarding
2296         order of _initialize_* fns.
2297
2298         * dwarf2read.c (comp_unit_head): Rename first_die_ptr to
2299         first_die_offset.  All uses updated.
2300         Delete unused members cu_head_ptr, next.
2301         Move members base_known, base_address to ...
2302         (dwarf2_cu) ... here.  All uses updated.
2303
2304 2008-09-12  Pedro Alves  <pedro@codesourcery.com>
2305
2306         * Makefile.in (generated_files): Add $(NAT_GENERATED_FILES).
2307         * config/i386/i386gnu.mh (NAT_GENERATED_FILES): New.
2308
2309 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2310
2311         * fork-child.c (startup_inferior): Use target_wait and target_resume
2312         directly instead of calling wait_for_inferior / resume.
2313
2314         * infcmd.c (kill_if_already_running): Do not call no_shared_libraries
2315         or init_wait_for_inferior.
2316         (run_command_1): Call init_wait_for_inferior.
2317
2318 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2319
2320         * gdbtypes.h (builtin_type_void_data_ptr, builtin_type_void_func_ptr,
2321         builtin_type_CORE_ADDR, builtin_type_char, builtin_type_short,
2322         builtin_type_int, builtin_type_long, builtin_type_signed_char,
2323         builtin_type_unsigned_char, builtin_type_unsigned_short,
2324         builtin_type_unsigned_int, builtin_type_unsigned_long,
2325         builtin_type_float, builtin_type_double, builtin_type_long_double,
2326         builtin_type_complex, builtin_type_double_complex, builtin_type_string,
2327         builtin_type_bool, builtin_type_long_long,
2328         builtin_type_unsigned_long_long): Remove macros.
2329
2330         (builtin_type_f_character, builtin_type_f_integer,
2331         builtin_type_f_integer_s2, builtin_type_f_logical,
2332         builtin_type_f_logical_s1, builtin_type_f_logical_s2,
2333         builtin_type_f_real, builtin_type_f_real_s8, builtin_type_f_real_s16,
2334         builtin_type_f_complex_s8, builtin_type_f_complex_s16,
2335         builtin_type_f_complex_s32): Likewise.
2336
2337         (builtin_type_m2_char, builtin_type_m2_int, builtin_type_m2_card,
2338         builtin_type_m2_real, builtin_type_m2_bool): Likewise.
2339
2340         (struct builtin_f_type, builtin_f_type): Move to f-lang.h.
2341         (struct builtin_m2_type, builtin_m2_type): Move to m2-lang.h.
2342
2343         * f-lang.h (struct builtin_f_type, builtin_f_type): Move here.
2344         * m2-lang.h (struct builtin_m2_type, builtin_m2_type): Move here.
2345
2346 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2347
2348         * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Use builtin types of
2349         target_gdbarch instead of builtin_type_void_data_ptr.
2350         (LM_DYNAMIC_FROM_LINK_MAP, LM_NEXT, LM_NAME,
2351         IGNORE_FIRST_LINK_MAP_ENTRY, scan_dyntag, elf_locate_base,
2352         solib_svr4_r_map, solib_svr4_r_brk, solib_svr4_r_ldsomap,
2353         open_symbol_file_object): Likewise.
2354         * nto-tdep.c (LM_ADDR): Likewise.
2355
2356 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2357
2358         * bsd-uthread.c (bsd_uthread_read_memory_address): New function.
2359         (bsd_uthread_fetch_registers, bsd_uthread_store_registers,
2360         bsd_uthread_wait, bsd_uthread_find_new_threads): Use it.
2361
2362 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2363
2364         * procfs.c (procfs_address_to_host_pointer): Use target_gdbarch
2365         and its associated types to perform pointer conversion.
2366         (procfs_can_use_hw_breakpoint): Likewise.
2367         (procfs_auxv_parse): Remove unused variable.
2368
2369 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2370
2371         * auxv.c (default_auxv_parse): Use gdbarch_ptr_bit (target_gdbarch)
2372         instead of builtin_type_void_data_ptr.
2373         * target.c (default_region_ok_for_hw_watchpoint): Likewise.
2374
2375 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2376
2377         * expprint.c (print_subexp_standard): Compare against builtin type
2378         associated with exp->gdbarch instead of builtin_type_char.
2379
2380         * f-valprint.c (f_val_print): Use extract_unsigned_integer to
2381         extract values of arbitrary logical type.  Handle arbitrary
2382         complex types.
2383
2384         * printcmd.c (float_type_from_length): New function.
2385         (print_scalar_formatted, printf_command): Use it.
2386
2387 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2388
2389         * valops.c: Include "objfiles.h" and "symtab.h".
2390         (find_function_in_inferior): New argument OBJF_P.  Use it to return
2391         objfile where function is defined.  Use per-objfile arch types
2392         instead of builtin_type_ to define default return type.
2393
2394         * linux-fork.c (checkpoint_command): Update calls.  Use per-objfile
2395         architecture to define inferior call argument types.
2396         * gcore.c (derive_heap_segment): Likewise.
2397         * objc-lang.c (value_nsstring): Likewise.
2398         * scm-lang.c (scm_lookup_name): Likewise.
2399         * scm-valprint.c (scm_inferior_print): Likewise.
2400         * valops.c (value_allocate_space_in_inferior): Likewise.
2401
2402         * eval.c (evaluate_subexp_standard): Update calls.
2403         * objc-lang.c (lookup_objc_class, print_object_command): Likewise.
2404
2405         * linux-fork.c: Include "objfiles.h".
2406         * scm-lang.c: Include "objfiles.h".
2407         * scm-valprint.c: Include "objfiles.h".
2408
2409 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2410
2411         * gdbarch.sh (name_of_malloc): Remove.
2412         * gdbarch.c, gdbarch.h: Re-generate.
2413         * valops.c (value_allocate_space_in_inferior): Do not call
2414         gdbarch_name_of_malloc.
2415
2416 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2417
2418         * valarith.c (value_x_unop): Use builtin_type_int8 as type for
2419         UNOP_POSTINCREMENT/UNOP_POSTDECREMENT constant 0 argument.
2420         (value_bit_index): Use extract_unsigned_integer
2421         instead of unpack_long to read single byte.
2422
2423 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2424
2425         * infcall.c (value_arg_coerce): Add GDBARCH parameter.  Use its
2426         associates types instead of builtin_type_ macros.
2427         (find_function_addr): Leave output VALUE_TYPE NULL if unknown.
2428         (call_function_by_hand): Use per-architecture "int" type as
2429         fall-back if find_function_addr returns NULL VALUE_TYPE.
2430         Update call to value_arg_coerce.
2431
2432 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2433
2434         * cp-abi.h (cplus_method_ptr_size): Add TO_TYPE parameter.
2435         (cplus_make_method_ptr): Add TYPE parameter.
2436         * cp-abi.c (cplus_method_ptr_size): Add TO_TYPE parameter.  Pass it
2437         on to current_cp_abi.method_ptr_size callback.
2438         (cplus_make_method_ptr): Add TYPE parameter.  Pass it on to
2439         current_cp_abi.make_method_ptr callback.
2440
2441         * gdbtypes.c (lookup_methodptr_type): Pass target type
2442         argument to cplus_method_ptr_size.
2443         * valops.c (value_cast): Pass type argument to cplus_make_method_ptr.
2444         (value_struct_elt_for_reference): Likewise.
2445
2446         * gnu-v3-abi.c (get_class_arch): New function.
2447         (vtable_address_point_offset): Add GDBARCH parameter.  Use it
2448         instead of current_gdbarch.  Update all callers.
2449         (gnuv3_get_vtable): Likewise.
2450         (gnuv3_get_virtual_fn): Likewise.
2451         (gnuv3_decode_method_ptr): Likewise.
2452         (gnuv3_rtti_type): Call get_class_arch to determine architecture.
2453         Use it instead of current_gdbarch.
2454         (gnuv3_virtual_fn_field): Likewise.
2455         (gnuv3_baseclass_offset): Likewise.
2456         (gnuv3_print_method_ptr): Likewise.
2457         (gnuv3_method_ptr_to_value): Likewise.
2458         (gnuv3_method_ptr_size): Add TYPE parameter.  Use it to determine
2459         class architecture.  Use architecture types instead of builtin types.
2460         (gnuv3_make_method_ptr): Likewise.
2461
2462         * cp-valprint.c (cp_print_class_member): Expect pointer type
2463         instead of class type.  Use its length when extracting value.
2464         * c-valprint.c (c_val_print): Update call to cp_print_class_member.
2465
2466 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2467
2468         * stack.c (return_command): Use frame architecture to determine
2469         default integer return type.
2470
2471         * f-valprint.c (f77_get_dynamic_lowerbound): Use frame architecture
2472         to determine pointer types.
2473         (f77_get_dynamic_upperbound): Likewise.
2474
2475         * objc-lang.c (OBJC_FETCH_POINTER_ARGUMENT): Remove.
2476         (resolve_msgsend): Use architecture of current frame to determine
2477         pointer types.  Inline OBJC_FETCH_POINTER_ARGUMENT.
2478         (resolve_msgsend_stret, resolve_msgsend_super,
2479         resolve_msgsend_super_stret): Likewise.
2480
2481 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2482
2483         * alpha-tdep.c (alpha_register_type): Use builtin_type (gdbarch)
2484         instead of builtin_type_ macros.
2485         * amd64-tdep.c (amd64_register_type): Likewise.
2486         (amd64_get_longjmp_target): Likewise.
2487         * arm-tdep.c (arm_register_type): Likewise.
2488         * avr-tdep.c (avr_register_type): Likewise.
2489         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
2490         * frv-tdep.c (frv_register_type): Likewise.
2491         * h8300-tdep.c (h8300_register_type): Likewise.
2492         * hppa-tdep.c (hppa32_convert_from_func_ptr_addr, 
2493         hppa_skip_trampoline_code): Likewise.
2494         * i386-tdep.c (i386_register_type): Likewise.
2495         (i386_unwind_pc, i386_sse_type): Likewise.
2496         * ia64-tdep.c (ia64_register_type): Likewise.
2497         * m32r-tdep.c (m32r_register_type): Likewise.
2498         * m68k-tdep.c (m68k_register_type, m68k_unwind_pc): Likewise.
2499         * m88k-tdep.c (m88k_register_type): Likewise.
2500         * mep-tdep.c (mep_register_type): Likewise.
2501         * mips-tdep.c (mips_pseudo_register_type): Likewise.
2502         * mn10300-tdep.c (mn10300_register_type): Likewise.
2503         * mt-tdep.c (mt_copro_register_type): Likewise.
2504         * rs6000-tdep.c (rs6000_builtin_type_vec64): Likewise.
2505         (rs6000_convert_register_p, rs6000_register_to_value,
2506         rs6000_value_to_register): Likewise.
2507         * s390-tdep.c (s390_register_type): Likewise.
2508         * sh64-tdep.c (sh64_register_type): Likewise.
2509         (sh64_build_float_register_type, sh64_do_fp_register): Likewise.
2510         * sh-tdep.c (sh_sh2a_register_type, sh_sh3e_register_type,
2511         sh_sh4_build_float_register_type, sh_sh4_register_type,
2512         sh_default_register_type): Likewise.
2513         * sparc64-tdep.c (sparc64_register_type): Likewise.
2514         * sparc-tdep.c (sparc32_register_type): Likewise.
2515         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
2516         * v850-tdep.c (v850_register_type): Likewise.
2517         * vax-tdep.c (vax_register_type): Likewise.
2518         * xtensa-tdep.c (xtensa_register_type, xtensa_unwind_pc,
2519         xtensa_push_dummy_call): Likewise.
2520
2521         * std-regs.c (value_of_builtin_frame_fp_reg,
2522         value_of_builtin_frame_pc_reg): Likewise.
2523         * target-descriptions.c (tdesc_register_type): Likewise.
2524
2525 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2526
2527         * ada-lang.c (ada_coerce_to_simple_array_type): Use builtin_type_int32
2528         instead of builtin_type_int as default unspecified integral type.
2529         (ada_index_type, ada_array_bound_from_type, ada_variant_discrim_type,
2530         assign_component, to_fixed_range_type): Likewise.
2531         * ada-typeprint.c (print_range, print_range_bound,
2532         print_range_type_named): Likewise.
2533         * ada-valprint.c (print_optional_low_bound, ada_val_print_1): Likewise.
2534         * eval.c (evaluate_subexp_standard): Likewise.
2535         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2536         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
2537         build_gdb_vtable_type): Likewise.
2538         * jv-lang.c (java_array_type): Likewise.
2539         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Likewise.
2540         * m2-valprint.c (m2_print_long_set): Likewise.
2541         * parse.c (follow_types): Likewise.
2542         * p-typeprint.c (pascal_type_print_base): Likewise.
2543         * valops.c (value_one, value_array, value_string,
2544         value_bitstring): Likewise.
2545         * value.c (allocate_repeat_value, value_from_string): Likewise.
2546         * varobj.c (c_describe_child): Likewise.
2547         * mt-tdep.c (mt_register_type): Likewise.
2548         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
2549         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
2550
2551 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2552
2553         * defs.h (struct gdbarch): Add forward declaration.
2554         (set_next_address): Add GDBARCH argument.
2555         * printcmd.c (set_next_address): Use it to find pointer type.
2556         * breakpoint.c (breakpoint_1): Update call.
2557         * source.c (line_info): Likewise.
2558         * findcmd.c (find_command): Use current_gdbarch to find pointer type.
2559
2560         * breakpoint.c (set_breakpoint_count): Use platform-neutral
2561         types for internal variable values.
2562         * infrun.c (handle_inferior_event): Likewise.
2563         * source.c (forward_search_command, reverse_search_command): Likewise.
2564         * tracepoint.c (set_tracepoint_count, set_traceframe_num,
2565         set_tracepoint_num, set_traceframe_context): Likewise.
2566
2567 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2568
2569         * gdbtypes.h (struct builtin_type): Remove builtin_true_char
2570         and builtin_true_unsigned_char.
2571         (builtin_type_true_char): Remove macro, add extern declaration.
2572         (builtin_type_true_unsigned_char): Add extern declaration.
2573         * gdbtypes.c (builtin_type_true_char): New global variable.
2574         (builtin_type_true_unsigned_char): Likewise.
2575         (_initialize_gdbtypes): Initialize them.
2576         (gdbtypes_post_init): Do not initialize builtin_true_char
2577         and builtin_true_unsigned_char members of struct builtin_type.
2578
2579         * printcmd.c (print_scalar_formatted): Do not use builtin_type;
2580         use builtin_type_true_unsigned_char instead.
2581
2582         * ada-valprint.c (ada_val_print_1): Use builtin_type_true_char
2583         instead of builtin_type_char for internal string.
2584
2585 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2586
2587         * gdbtypes.h (builtin_type_void): Remove macro, add declaration.
2588         (builtin_type_f_void): Remove macro.
2589         * gdbtypes.c (builtin_type_void): New global variable.
2590         (_initialize_gdbtypes): Initialize it.
2591
2592         * gnu-v3-abi.c (build_gdb_vtable_type): Do not call
2593         lookup_pointer_type or lookup_function_type on builtin_type_void.
2594         * printcmd.c (set_next_address): Likewise.
2595         * objc-lang.c (value_nsstring): Likewise.
2596         * mt-tdep.c (mt_copro_register_type): Likewise.
2597         * xtensa-tdep.c (xtensa_register_type): Likewise.
2598
2599         * symfile.c (syms_from_objfile): Remove special handling
2600         of builtin_type_void and builtin_type_char.
2601
2602 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2603
2604         * eval.c (evaluate_subexp_standard): Use exp->gdbarch types instead
2605         of builtin_type_ macros when handling OP_OBJC_ operations.
2606         * objc-lang.c (print_object_command): Likewise.
2607
2608 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2609
2610         * ada-valprint.c: Include "objfiles.h".
2611         (ada_val_print_1): Use the gdbarch associated with the objfile whether
2612         a System.Address type is defined to retrieve the proper pointer type
2613         to use to print it.
2614
2615 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2616
2617         * ada-lang.c (value_pos_atr): Add TYPE argument.  Use it as
2618         result type instead of builtin_type_int.
2619         (value_subscript_packed): Use pos_atr instead of value_pos_atr.
2620         (ada_value_subscript): Update call to value_pos_atr.
2621         (ada_value_ptr_subscript): Likewise.
2622         (ada_evaluate_subexp): Likewise.
2623
2624 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2625
2626         * ada-lang.c (cast_to_fixed): Do not cast to builtin_type_double.
2627         (cast_from_fixed_to_double): Rename to ...
2628         (cast_from_fixed): ... this.  Add TYPE parameter.  Use it instead
2629         of builtin_type_double.
2630         (ada_value_cast): Use cast_from_fixed instead of casting result
2631         of cast_from_fixed_to_double.
2632         (ada_evaluate_subexp): Update calls to cast_from_fixed_to_double. 
2633
2634 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2635
2636         * valops.c (value_ind): No longer allow dereferencing an
2637         integer type.
2638         * eval.c (evaluate_subexp_standard): Handle deferencing an
2639         integer type here.
2640         * ada-lang.c (ada_evaluate_subexp): Likewise.
2641
2642 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2643
2644         * ada-valprint.c (ada_val_print_1): When implicitly dereferencing
2645         a reference type, pass the reference type directly to unpack_pointer.
2646         * c-valprint.c (c_val_print): Likewise.
2647         * f-valprint.c (f_val_print): Likewise.
2648         * m2-valprint.c (print_variable_at_address, m2_val_print): Likewise.
2649         * p-valprint.c (pascal_val_print): Likewise.
2650
2651 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2652
2653         * eval.c (evaluate_subexp_standard): Use builtin_type_int8
2654         to construct the EVAL_SKIP dummy return value.
2655         * ada-lang.c (ada_evaluate_subexp): Likewise.
2656         * jv-lang.c (evaluate_subexp_java): Likewise.
2657         * m2-lang.c (evaluate_subexp_modula2): Likewise.
2658         * scm-lang.c (evaluate_exp): Likewise.
2659
2660 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2661
2662         * value.h (coerce_enum, coerce_number): Remove prototypes.
2663         * value.c (coerce_enum, coerce_number): Remove.
2664         * valarith.c (value_x_binop): Do not call coerce_enum.
2665         (value_x_unop): Likewise.
2666         (value_logical_not): Call coerce_array instead of coerce_number.
2667
2668 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2669
2670         * ax-gdb.c: Include "language.h".
2671         (gen_frame_args_address): Add GDBARCH parameter; use it
2672         instead of current_gdbarch.
2673         (gen_frame_locals_address): Likewise.
2674         (gen_var_ref): Add GDBARCH parameter.  Update calls to
2675         gen_frame_args_address and gen_frame_locals_address.  Use
2676         pointer type from gdbarch.
2677         (gen_usual_unary): Add EXP parameter.  Use integer type
2678         from exp->gdbarch.
2679         (gen_usual_arithmetic): Likewise.
2680         (gen_integral_promotions): Likewise.
2681         (gen_add, gen_sub): Remove.
2682         (gen_ptradd, gen_ptrsub, gen_ptrdiff): New functions.
2683         (gen_logical_not): Use passed-in boolean result type
2684         instead of builtin_type_int.
2685         (gen_complement): Do not call gen_usual_unary or
2686         gen_integral_promotions.
2687         (gen_struct_ref): Call require_rvalue instead of gen_usual_unary.
2688         (gen_repeat): Add EXP parameter.  Update call to gen_expr.
2689         Use builtin_type_int32 as internal range type.
2690         (gen_sizeof): Add EXP and SIZE_TYPE parameters.  Use SIZE_TYPE
2691         as result type.  Update call to gen_expr.
2692         (gen_expr): Add EXP parameter.  Update calls to gen_expr,
2693         gen_repeat, gen_var_ref, gen_usual_unary, gen_usual_arithmetic,
2694         and gen_integral_promotions.  Call gen_ptradd, gen_ptrsub,
2695         gen_ptrdiff, or gen_binop instead of gen_add or gen_sub.
2696         Use exp->gdbarch instead of current_gdbarch.
2697         Call language_bool_type to determine result type of UNOP_LOGICAL_NOT.
2698
2699 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2700
2701         * eval.c (evaluate_subexp_standard): Add calls to binop_promote
2702         and unop_promote before calling value_binop et. al.
2703         * ada-lang.c (ada_evaluate_subexp): Add calls to binop_promote
2704         and unop_promote before calling value_binop et. al.
2705
2706         * valarith.c (value_binop): Do not call binop_promote or unop_promote.
2707         (value_pos): Do not call unop_promote.
2708         (value_neg, value_complement): Likewise.
2709
2710 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2711
2712         * value.h (unop_promote, binop_promote): Add prototypes.
2713         * eval.c (unop_promote, binop_promote): New functions.
2714         * valarith.c (unop_result_type, binop_result_type): Remove.
2715         (value_binop): Call binop_promote or unop_promote.
2716         Inline remaining parts of binop_result_type.  Remove special
2717         code to truncate integer values for unsigned operations.
2718         (value_pos): Call unop_promote.  Inline remaining parts of
2719         unop_result_type.
2720         (value_neg, value_complement): Likewise.
2721
2722 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2723
2724         * value.h (value_add, value_sub): Remove.
2725         (value_ptradd, value_ptrsub, value_ptrdiff): Add prototypes.
2726         * valarith.c (value_add, value_sub): Remove.
2727         (value_ptradd, value_ptrsub, value_ptrdiff): New functions.
2728         (find_size_for_pointer_math): Add assertion.  Update comment.
2729         (value_binop): Update comment.
2730
2731         * eval.c (ptrmath_type_p): New function.
2732         (evaluate_subexp_standard): Replace value_add and value_sub
2733         by value_ptradd, value_ptrsub, value_ptrdiff or value_binop.
2734         Use builtin_type_uint8 instead of builtin_type_char to hold
2735         the increment for BINOP_{PRE,POST}{IN,DE}CREMENT operations.
2736         * valarith.c (value_subscript): Replace value_add by
2737         value_ptradd.  Replace value_sub by value_binop.
2738         * ada-lang.c (ada_value_ptr_subscript): Likewise.
2739         (ada_tag_name_2): Replace value_add by value_ptradd.
2740         (ada_evaluate_subexp): Replace value_add and value_sub by
2741         value_binop.
2742         * m2-lang.c (evaluate_subexp_modula2): Replace value_add
2743         by value_ptradd.
2744         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2745         * gnu-v3-abi.c (gnuv3_method_ptr_to_value): Likewise.
2746
2747 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2748
2749         * eval.c (evaluate_subexp_for_sizeof): Use builtin_int type of
2750         the expression architecture instead of builtin_type_int as the
2751         sizeof return type.
2752
2753 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2754
2755         * expression.h (enum exp_opcode): Document OP_COMPLEX to take
2756         a type parameter as expression element.
2757         * eval.c (evaluate_subexp_standard) [OP_COMPLEX]: Retrieve result
2758         type as expression element.
2759         * f-exp.y: Pass in type when buildin OP_COMPLEX expression.
2760         * parse.c (operator_length_standard): Update length of OP_COMPLEX.
2761
2762 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2763
2764         * language.h (struct language_arch_info): New members
2765         bool_type_default and bool_type_symbol.
2766         (lang_bool_type): Remove prototype.
2767         (LA_BOOL_TYPE): Remove macro.
2768         (language_bool_type): Add prototype.
2769         * language.c (lang_bool_type): Remove.
2770         (language_bool_type): New function.
2771
2772         * value.h (value_in): Change return value to int.
2773         * value.c (value_in): Return int instead of struct value *.
2774
2775         * eval.c (evaluate_subexp_standard): Call language_bool_type instead
2776         of using LA_BOOL_TYPE.  Update call to value_in.
2777         * ada-lang.c (ada_evaluate_subexp): Call language_bool_type instead
2778         of using LA_BOOL_TYPE or builtin_type_int for boolean values.
2779
2780         * language.c (unknown_language_arch_info): Set bool_type_default member
2781         of struct language_arch_info.
2782         * ada-lang.c (ada_language_arch_info): Set bool_type_symbol and
2783         bool_type_default members of struct language_arch_info.
2784         * c-lang.c (c_language_arch_info): Set bool_type_default member
2785         of struct language_arch_info.
2786         (cplus_language_arch_info): Set bool_type_symbol and bool_type_default
2787         members of struct language_arch_info.
2788         * f-lang.c (f_language_arch_info): Set bool_type_symbol and
2789         bool_type_default members of struct language_arch_info.
2790         * jv-lang.c (java_language_arch_info): Set bool_type_symbol and
2791         bool_type_default members of struct language_arch_info.
2792         * m2-lang.c (m2_language_arch_info): Set bool_type_symbol and
2793         bool_type_default members of struct language_arch_info.
2794         * p-lang.c (p_language_arch_info): Set bool_type_symbol and
2795         bool_type_default members of struct language_arch_info.
2796
2797 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2798
2799         * jv-lang.c (enum java_primitive_types): New type.
2800         (java_language_arch_info): New function.
2801         (java_language): Use it instead of c_language_arch_info.
2802
2803 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2804
2805         * value.h (value_bitstring_subscript): New prototype.
2806         * valarith.h (value_bitstring_subscript): New function.
2807         (value_subscript): No longer handle TYPE_CODE_BITSTRING.
2808         * eval.c (evaluate_subexp_standard): Call value_bitstring_subscript
2809         instead of value_subscript to handle TYPE_CODE_BITSTRING.
2810
2811 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2812
2813         * expression.h (struct expression): New member GDBARCH.
2814         * parse.c (parse_exp_in_context): Initialize it.
2815         * parser-def.h (parse_gdbarch, parse_language): New macros.
2816
2817         * ada-exp.y (parse_type): New macro.
2818         Replace builtin_type_ macros by using parse_type.
2819         Replace current_language by parse_language.
2820         * ada-lex.l (processInt): Replace current_gdbarch by parse_gdbarch.
2821         Replace builtin_type_ macros.
2822
2823         * c-exp.y (parse_type): New macro.
2824         Replace builtin_type_ macros by using parse_type.
2825         (parse_number): Replace current_gdbarch by parse_gdbarch.
2826         (yylex): Replace current_language by parse_language.
2827
2828         * f-exp.y (parse_type, parse_f_type): New macros.
2829         Replace builtin_type_ macros by using parse_{f_,}type.
2830         (parse_number): Replace current_gdbarch by parse_gdbarch.
2831         (yylex): Replace current_language by parse_language.
2832
2833         * jv-exp.y (parse_type): New macro.
2834         (parse_number): Replace builtin_type_ macros by using parse_type.
2835
2836         * m2-exp.y (parse_type, parse_m2_type): New macros.
2837         Replace builtin_type_ macros by using parse_{m2_,}type.
2838
2839         * objc-exp.y (parse_type): New macro.
2840         Replace builtin_type_ macros by using parse_type.
2841         (parse_number): Replace current_gdbarch by parse_gdbarch.
2842         (yylex): Replace current_language by parse_language.
2843
2844         * p-exp.y (parse_type): New macro.
2845         Replace builtin_type_ macros by using parse_type.
2846         (parse_number): Replace current_gdbarch by parse_gdbarch.
2847         (yylex): Replace current_language by parse_language.
2848
2849 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2850
2851         * parser-defs.h (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE
2852         and DATA_SYMBOL_TYPE arguments.
2853         * parse.c (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE and
2854         DATA_SYMBOL_TYPE arguments.  Replace use of builtin_type_CORE_ADDR.
2855         (write_dollar_variable): Update call.
2856
2857         * ada-exp.y (write_var_or_type): Update call.
2858         * c-exp.y: Likewise.
2859         * f-exp.y: Likewise.
2860         * jv-exp.y: Likewise.
2861         * m2-exp.y: Likewise.
2862         * objc-exp.y: Likewise.
2863         * p-exp.y: Likewise.
2864
2865 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
2866
2867         * ada-lang.c (ada_parent_type): Add handling of the case where
2868         the _parent field is a pointer and/or has a parallel XVS type.
2869         (ada_evaluate_subexp) [OP_VAR_VALUE]: When doing an
2870         EVAL_AVOID_SIDE_EFFECTS evaluation of a tagged type, return
2871         the type of the tag instead of doing forcing an EVAL_NORMAL
2872         expression evaluation.
2873
2874 2008-09-10  Paul N. Hilfinger  <hilfinger@adacore.com> 
2875             Joel Brobecker  <brobecker@adacore.com>
2876
2877         * ada-lang.c (is_digits_suffix): New function.
2878         (is_dot_digits_suffix): Remove.
2879         (ada_lookup_symbol_list): Remove digits suffix from minimal symbols
2880         before looking up in symbol table, and do not use wild matches on them.
2881         (wild_match): Reimplement for speed and to allow matching of operator
2882         symbols.
2883         (is_valid_name_for_wild_match): Return zero for names that do not
2884         follow the GNAT encoding.
2885
2886         (is_name_suffix): Fix typo in comment.
2887         (to_record_with_fixed_variant_part): Ditto.
2888
2889 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
2890
2891         * Makefile.in (gnu-nat.o): New rule.
2892
2893 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
2894
2895         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Use
2896         archecture-neutral builtin_type_int32 instead of builtin_type_int.
2897
2898 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
2899
2900         * ada-lang.c (ada_evaluate_subexp) [BINOP_ADD, BINOP_SUB]:
2901         Add special handling for pointer types.
2902
2903 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
2904
2905         * inf-ttrace.c (inf_ttrace_follow_fork): Declare locals at the
2906         right scope level.
2907         (inf_ttrace_resume, inf_ttrace_wait): Typos.
2908
2909 2008-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
2910
2911         * ada-lang.c (ada_array_length): Use builtin_type_int32 instead
2912         of builtin_type_int.
2913         (ada_evaluate_subexp) [UNOP_IN_RANGE]: Use operand range type
2914         instead of builtin_type_int.
2915
2916 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
2917
2918         * infrun.c (normal_stop): Run hook-stop last.
2919
2920 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
2921
2922         * gnu-nat.c (gnu_pid_to_exec_file): Delete.
2923         (init_gnu_ops): Don't register it.
2924
2925 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
2926
2927         * gnu-nat.c (gnu_attach): Push target before fetching the list of
2928         threads.
2929
2930 2008-09-08  Daniel Jacobowitz  <dan@codesourcery.com>
2931
2932         * valops.c (value_cast_structs): Return NULL for failure.
2933         (value_cast): Handle NULL from value_cast_structs.
2934         (value_fetch_lazy): Call check_typedef.  Remove unused variable.
2935
2936 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
2937
2938         * inferior.h (context_switch_to): Delete.
2939         * infrun.c (context_switch): Don't save and load infrun state.
2940         (context_switch_to): Delete.
2941
2942         * infcmd.c (proceed_thread_callback): Replace context_switch_to
2943         calls by switch_to_thread calls.
2944
2945         * gdbthread.h (save_infrun_state, load_infrun_state): Delete.
2946         * thread.c (main_thread_state, main_thread_executing): Delete.
2947         (inferior_thread): Delete references to them.
2948         (add_thread_silent): Fix case where we're adding a thread with the
2949         same ptid as an exited thread.  Remove references to
2950         context-switching.
2951         (load_infrun_state, save_infrun_state): Delete.
2952         (thread_alive, is_thread_state, any_running, is_executing)
2953         (set_executing): Remove the special handling for targets that
2954         don't register any thread.
2955         (restore_current_thread, thread_apply_all_command)
2956         (do_captured_thread_select): Unconditionally call
2957         switch_to_thread.
2958
2959         * mi/mi-main.c (mi_cmd_execute): Check for exited threads.
2960         Call switch_to_thread instead of context_switch_to.
2961
2962 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
2963
2964         Remove global continuations in favour of a per-thread
2965         continuations.
2966
2967         * gdbthread.h (struct thread_info): Add comments around
2968         continuations and intermediate_continuations.
2969         (save_infrun_state, load_infrun_state): Delete continuations and
2970         intermediate_continuations arguments.
2971         * infrun.c (context_switch): Don't context-switch the continuations.
2972         * thread.c (clear_thread_inferior_resources): Discard all
2973         continuations of the thread we're clearing.
2974         (save_infrun_state, load_infrun_state): Delete continuations and
2975         intermediate_continuations arguments, and the code referencing
2976         them.
2977         * utils.c: Include "gdbthread.h".
2978         (cmd_continuation, intermediate_continuation): Delete.
2979         (add_continuation): Add thread_info* argument.  Install the
2980         continuation on it.
2981         (restore_thread_cleanup): New.
2982         (do_all_continuations_ptid, do_all_continuations_thread_callback):
2983         New.
2984         (do_all_continuations): Reimplement.
2985         (discard_all_continuations_thread_callback,
2986         discard_all_continuations_thread): New.
2987         (discard_all_continuations): Reimplement.
2988         (add_intermediate_continuation): Add thread_info* argument.
2989         Install the continuation on it.
2990         (do_all_intermediate_continuations_thread_callback)
2991         (do_all_intermediate_continuations_thread): New.
2992         (do_all_intermediate_continuations): Reimplement.
2993         (discard_all_intermediate_continuations_thread_callback): New.
2994         (discard_all_intermediate_continuations_thread): New.
2995         (discard_all_intermediate_continuations): Reimplement.
2996
2997         * breakpoint.c (until_break_command): Install the continuation on
2998         the current thread.
2999
3000         * defs.h (cmd_continuation, intermediate_continuation): Delete.
3001         (struct thread_info): Forward declare.
3002         (add_continuation, add_intermediate_continuation): Add
3003         thread_info* argument.
3004         (do_all_continuations_thread, discard_all_continuations_thread)
3005         (do_all_intermediate_continuations_thread)
3006         (discard_all_intermediate_continuations_thread): Declare.
3007         * inf-loop.c (inferior_event_handler): In non-stop only run
3008         continuations on the thread that stopped.  In all-stop, run
3009         continuations on all threads.
3010         * infcmd.c (step_once, finish_command): Adjust.
3011
3012 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3013
3014         Remove the global stop_step in favour of a per-thread
3015         stop_step.
3016
3017         * inferior.h (stop_step): Delete.
3018
3019         * gdbthread.h (struct thread_info): Add comments to stop_step.
3020         (save_infrun_state, load_infrun_state): Remove stop_step argument.
3021         * thread.c (load_infrun_state, save_infrun_state): Remove
3022         stop_step argument, and references to it.
3023
3024         * infrun.c (clear_proceed_status): Clear stop_step.
3025         (fetch_inferior_event): Adjust.
3026         (context_switch): Don't context-switch stop_step.
3027         (handle_inferior_event): Adjust.
3028         (normal_stop): Adjust.
3029         (save_inferior_status, restore_inferior_status): Adjust.
3030
3031         * infcmd.c (stop_step): Delete.
3032         (step_1, step_1_continuation, step_once, until_next_command):
3033         Adjust.
3034
3035 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3036
3037         Remove the global step_multi in favour of a per-thread
3038         step_multi.
3039
3040         * inferior.h (step_multi): Delete.
3041         * gdbthread.h (struct thread_info): Add comments around
3042         step_multi.
3043         (save_infrun_state, load_infrun_state): Remove step_multi
3044         parameter.
3045         * thread.c (load_infrun_state, save_infrun_state): Remove
3046         step_multi argument, and references to it.
3047         * infcmd.c (step_multi): Delete.
3048         (step_1): Adjust.
3049         (step_1_continuation, until_next_command): Adjust.
3050         * infrun.c (fetch_inferior_event): Adjust.
3051         (context_switch): Don't context-switch step_multi.
3052         (print_stop_reason, normal_stop): Adjust.
3053
3054 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3055
3056         Remove the global stop_signal in favour of a per-thread
3057         stop_signal.
3058
3059         * inferior.h (stop_signal): Delete.
3060         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3061         stop_signal argument.
3062         * thread.c (load_infrun_state, save_infrun_state): Remove
3063         stop_signal argument.  Don't reference it.
3064
3065         * infcmd.c (stop_signal): Delete.
3066         (program_info): Adjust.
3067         * infrun.c (resume): Clear stop_signal.
3068         (proceed): Adjust.  Pass the last stop_signal to the thread we're
3069         resuming.
3070         (context_switch): Don't context-switch stop_signal.
3071         (handle_inferior_event, keep_going): Adjust.
3072         (save_inferior_status, restore_inferior_status): Adjust.
3073
3074         * fbsd-nat.c: Include "gdbthread.h".
3075         (find_signalled_thread, find_stop_signal): New.
3076         (fbsd_make_corefile_notes): Use it.
3077         * fork-child.c (startup_inferior): Adjust.
3078
3079         * linux-nat.c (get_pending_status): Adjust.
3080         (linux_nat_do_thread_registers): Adjust.
3081         (find_signalled_thread, find_stop_signal): New.
3082         (linux_nat_do_thread_registers): Add stop_signal parameter.
3083         (struct linux_nat_corefile_thread_data): Add stop_signal member.
3084         (linux_nat_corefile_thread_callback): Pass stop_signal.
3085         (linux_nat_do_registers): Delete.
3086         (linux_nat_make_corefile_notes): Use find_stop_signal.  Assume
3087         there's always a thread.
3088
3089         * procfs.c (find_signalled_thread, find_stop_signal): New.
3090         (find_stop_signal): New.
3091         (procfs_do_thread_registers): Add stop_signal parameter.
3092         (struct procfs_corefile_thread_data): Add stop_signal member.
3093         (procfs_corefile_thread_callback): Pass args->stop_signal.
3094         (procfs_make_note_section): Find the last stop_signal.
3095
3096         * solib-irix.c: Include gdbthread.h.
3097         (irix_solib_create_inferior_hook): Adjust.
3098         * solib-osf.c: Include gdbthread.h.
3099         (osf_solib_create_inferior_hook): Adjust.
3100         * solib-sunos.c: Include gdbthread.h.
3101         (sunos_solib_create_inferior_hook): Adjust.
3102         * solib-svr4.c: Include gdbthread.h.
3103         (svr4_solib_create_inferior_hook): Adjust.
3104
3105         * win32-nat.c (do_initial_win32_stuff): Adjust.
3106
3107 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3108
3109         * gdbthread.h (struct thread_info): Add comments around
3110         proceed_to_finish.
3111         (save_infrun_state, load_infrun_state): Remove proceed_to_finish
3112         argument.
3113         * thread.c (load_infrun_state, save_infrun_state): Delete
3114         proceed_to_finish argument and references to it.
3115
3116         * infcall.c (call_function_by_hand): Adjust.
3117         * infcmd.c (finish_command): Adjust.
3118         * infrun.c (proceed_to_finish): Delete.
3119         (clear_proceed_status): Adjust.
3120         (context_switch): Don't context-switch proceed_to_finish.
3121         (normal_stop, save_inferior_status, restore_inferior_status):
3122         Adjust.
3123
3124 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3125
3126         * inferior.h (stop_bpstat): Delete.
3127
3128         * breakpoint.h (bpstat_do_actions): Remove bpstat* argument.
3129         
3130         * breakpoint.c (bpstat_do_actions): Rename to ...
3131         (bpstat_do_actions_1): ... this.  Make static.  Change return type
3132         to int.  Return true if a breakpoint proceeded.
3133         (bpstat_do_actions): New, as wrapper around bpstat_do_actions_1.
3134         (delete_breakpoint): Don't reference the global stop_bpstat; it's
3135         gone.
3136
3137         * gdbthread.h (struct thread_info): Add stop_bpstat.
3138         (save_infrun_state, load_infrun_state): Remove stop_bpstat
3139         argument.
3140         * thread.c (load_infrun_state, save_infrun_state): Remove
3141         stop_bpstat argument, and the code referencing it.
3142
3143         * infcall.c: Include "gdbthread.h".
3144         (call_function_by_hand): Adjust.
3145         * exceptions.c: Include "gdbthread.h".
3146         (throw_exception): Adjust.
3147         * infcmd.c (stop_bpstat): Delete.
3148         (continue_command): In all-stop, set the ignore count on the
3149         thread that reported the stop.  In non-stop, set it on the current
3150         thread.
3151         (finish_command_continuation): Adjust.
3152         (program_info): Adjust.
3153         * infrun.c (clear_proceed_status): Adjust.
3154         (context_switch): Don't context-switch stop_bpstat.
3155         (handle_inferior_event): Adjust.
3156         (normal_stop): Adjust.
3157         (save_inferior_status, restore_inferior_status): Adjust.
3158
3159         * inf-loop.c (inferior_event_handler): Remove parameter to
3160         bpstat_do_actions call.
3161         * top.c (command_loop): Remove parameter to bpstat_do_actions
3162         call.  Call it unconditionally.
3163         * event-top.c (command_handler): Ditto.
3164         * python/python.c (execute_gdb_command): Ditto.
3165
3166 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3167
3168         * inferior.h (step_over_calls): Delete.
3169
3170         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3171         step_over_calls argument.
3172         * thread.c (save_infrun_state, load_infrun_state): Remove
3173         step_over_calls argument.  Adjust.
3174
3175         * infcmd.c (step_over_calls): Delete.
3176         (step_1): Adjust.
3177         * infrun.c (clear_proceed_status): Adjust.
3178         (context_switch): Don't context-switch step_over_calls.
3179         (handle_inferior_event, save_inferior_status)
3180         (restore_inferior_status): Adjust.
3181
3182 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3183
3184         Remove context switching in favour of accessing thread_info fields
3185         directly.
3186
3187         * infrun.c (stepping_over_breakpoint, step_resume_breakpoint):
3188         Delete.
3189         (struct thread_stepping_state): Delete.
3190         (gtss, tss): Delete.
3191         (follow_inferior_reset_breakpoints, follow_exec)
3192         (resume, clear_proceed_status): Adjust.
3193         (prev_pc): Delete.
3194         (proceed, start_remote, init_wait_for_inferior): Adjust.
3195         (struct execution_control_state): Add event_thread member.
3196         (delete_step_resume_breakpoint_callback)
3197         (delete_step_thread_step_resume_breakpoint)
3198         (delete_step_thread_step_resume_breakpoint_cleanup)
3199         (delete_step_thread_step_resume_breakpoint): New.
3200         (wait_for_inferior, init_execution_control_state): Use
3201         delete_step_thread_step_resume_breakpoint_cleanup.
3202         (wait_for_inferior): Set the event_thread.
3203         (fetch_inferior_event): Ditto.  Delete the step-resume breakpoint
3204         with delete_step_thread_step_resume_breakpoint.
3205         (init_thread_stepping_state): Change parameter type to
3206         thread_info.  Adjust.
3207         (context_switch): Don't context switch prev_pc,
3208         stepping_over_breakpoint, step_resume_breakpoint,
3209         step_range_start, step_range_end, step_frame_id,
3210         tss->stepping_over_breakpoint,
3211         tss->stepping_through_solib_after_catch,
3212         tss->stepping_through_solib_catchpoints, tss->current_line, or
3213         tss->current_symtab.
3214         (adjust_pc_after_break, handle_inferior_event)
3215         (currently_stepping, step_into_function)
3216         (insert_step_resume_breakpoint_at_sal)
3217         (insert_longjmp_resume_breakpoint, keep_going): Adjust.
3218         (clear_stepping_state): New.
3219         (normal_stop): Adjust.
3220         (save_inferior_status, restore_inferior_status): Adjust.
3221
3222         * gdbthread.h (struct thread_info): Comments describing the
3223         members moved here.  Add step_after_step_resume_breakpoint.
3224         (delete_step_resume_breakpoint): Add thread_info argument.
3225         (save_infrun_state, load_infrun_state): Remove prev_pc,
3226         trap_expected, step_resume_breakpoint, step_range_start,
3227         step_range_end, step_frame_id, another_trap,
3228         stepping_through_solib_after_catch,
3229         stepping_through_solib_catchpoints, current_line and
3230         current_symtab function arguments.
3231         (inferior_thread): Declare.
3232
3233         * thread.c (inferior_thread): New.
3234         (delete_step_resume_breakpoint): Add a thread_info parameter and
3235         rewrite.
3236         (load_infrun_state, save_infrun_state): Remove prev_pc,
3237         trap_expected, step_resume_breakpoint, step_range_start,
3238         step_range_end, step_frame_id, stepping_over_breakpoint,
3239         stepping_through_solib_after_catch,
3240         stepping_through_solib_catchpoints, current_line and
3241         current_symtab args.  Remove code referencing them.
3242
3243         * infcmd.c (step_range_start, step_range_end, step_frame_id):
3244         Delete.
3245         (step_1, step_once, until_next_command): Adjust.
3246
3247         * inferior.h (step_range_start, step_range_end, step_frame_id):
3248         Delete.
3249
3250         * linux-nat.c (linux_child_follow_fork): If following the child,
3251         move the step state to it.  Adjust.
3252         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
3253         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
3254
3255 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3256
3257         * bsd-uthread.c (bsd_uthread_find_new_threads): Claim the main
3258         thread.
3259
3260 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3261
3262         * corelow.c (add_to_thread_list): If this is the first time we
3263         hear about thread info, update inferior_ptid.
3264         (core_open): Clear the thread list and set inferior_ptid before
3265         acknowledging a new inferior.  Find threads before fetching
3266         register info.  Give an upper target layer a chance to find and
3267         claim new threads.  Print core generation and stop signal info
3268         after finding new threads.
3269         (get_core_register_section): Look at the lwp member of
3270         inferior_ptid for detecting if we have threads info, instead of
3271         the pid member.
3272         (core_pid_to_str): New.
3273         (init_core_ops): Register core_pid_to_str.
3274
3275 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3276
3277         * spu-linux-nat.c (spu_child_post_startup_inferior)
3278         (spu_child_post_attach): Don't add the main thread here.
3279
3280 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3281
3282         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
3283
3284         * gnu-nat.c (inf_validate_procs): If this is the first time we're
3285         seeing a thread id, extend the main thread's ptid.  If we still
3286         have pending execs, don't be verbose about new threads.
3287         (gnu_wait, gnu_resume, gnu_attach, gnu_thread_alive)
3288         (gnu_pid_to_str, cur_thread, sig_thread_cmd): Adjust.
3289         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers):
3290         Adjust.
3291
3292 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3293
3294         * procfs.c (to_attach): Create a procinfo for the current lwp.
3295         Add it to gdb's thread list.
3296         (procfs_fetch_registers, procfs_store_registers): Assume there's
3297         always an lwp.
3298         (procfs_wait): Don't add the main thread here.
3299         (procfs_init_inferior): Create a procinfo for the main lwp here.
3300         Change main thread's ptid with thread_change_ptid.
3301         (procfs_notice_thread): Check for exited threads.
3302         (procfs_corefile_thread_callback): Remove check for the main
3303         process.
3304         (procfs_make_note_section): Assume there is always a thread.
3305
3306         * sol-thread.c (sol_thread_attach): Clear sol_thread_active before
3307         attaching.  Change the main thread ptid with thread_change_ptid.
3308         (sol_thread_detach): Clear sol_thread_active.
3309         (sol_thread_wait): Check for exited threads.
3310         (sol_thread_create_inferior): Clear sol_thread_active before
3311         creating a new inferior.  Change the main thread ptid with
3312         thread_change_ptid.
3313         (sol_thread_mourn_inferior): Clear sol_thread_active.
3314         (sol_find_new_threads_callback): Check for exited threads.
3315
3316 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3317
3318         * inf-ttrace.c (inf_ttrace_wait): On TTEVT_LWP_CREATE and
3319         LWP_TERMINATE, resume the caller thread.  On TTEVT_LWP_CREATE,
3320         TTEVT_LWP_EXIT and TTEVT_LWP_TERMINATE, don't stop the whole
3321         process, and return TARGET_WAITKIND_IGNORE.
3322
3323 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3324
3325         * inf-ttrace.c: Include <signal.h>
3326         (inf_ttrace_delete_dead_threads_callback): New.
3327         (inf_ttrace_resume_lwp): New.
3328         (inf_ttrace_resume_callback, inf_ttrace_resume): Rewrite.  Don't
3329         delete dying threads until they are really dead.
3330         (inf_ttrace_wait): After stopping the whole process, delete any
3331         dying thread that is really dead by now.
3332         (inf_ttrace_thread_alive): Return 1.
3333         (inf_ttrace_extra_thread_info): New.
3334         (inf_ttrace_target): Register inf_ttrace_extra_thread_info.
3335
3336 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3337
3338         * inf-ttrace.c (inf_ttrace_follow_fork): Register the main thread
3339         of the child fork.
3340         (inf_ttrace_attach): Add the main thread.
3341         (inf_ttrace_resume_callback): Check for exited threads.  Adjust
3342         for always a thread.
3343         (inf_ttrace_wait): Decorate the main thread's ptid with lwp info
3344         using thread_change_ptid, and set its private data.  Don't add the
3345         main thread here.
3346         (inf_ttrace_pid_to_str): Adjust.
3347
3348 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3349
3350         * bsd-uthread.c (bsd_uthread_wait): Decorate the main thread with
3351         thread_change_ptid.  Check for exited threads.
3352         (bsd_uthread_find_new_threads): Check for exited threads.
3353
3354 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3355
3356         * inf-ptrace.c: Include "gdbthread.h".
3357         (inf_ptrace_attach): Add the main thread here.
3358         * linux-nat.c (linux_nat_attach): Don't add the main thread here.
3359         Decorate the main thread id with the lwp id.
3360
3361 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3362
3363         * linux-nat.c (linux_nat_wait): Update inferior_ptid's ptid with
3364         thread_change_ptid.  Don't add or mark the main thread as running
3365         and executing here.
3366         * fork-child.c (fork_inferior): Add the main thread here.
3367
3368 2008-09-08  Jerome Guitton  <guitton@adacore.com>
3369
3370         * rs6000-tdep.c (rs6000_fetch_instruction)
3371         (rs6000_skip_stack_check): New functions.
3372         (skip_prologue): Skip stack check sequence.
3373         
3374 2008-09-08  David Daney  <ddaney@avtrex.com>
3375
3376         * dummy-frame.h (frame.h): Include it.
3377         (struct frame_id): Remove declaration.
3378
3379 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3380
3381         * spu-tdep.c (spu_push_dummy_code): New function.
3382         (spu_gdbarch_init): Install it.
3383
3384 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3385
3386         * gdbarch.sh (gdbarch_dump): Use core_addr_to_string_nz
3387         instead of paddr_nz.
3388         * gdbarch.c: Regenerate.
3389
3390         * target.c (target_xfer_partial, debug_print_register): Use
3391         core_addr_to_string_nz instead of paddr_nz.
3392
3393 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3394
3395         * rs6000-tdep.c (rs6000_gdbarch_init): Setup displaced stepping
3396         *before* calling gdbarch_init_osabi.
3397         (rs6000_aix_init_osabi): Disable displaced stepping.
3398
3399 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3400
3401         * target.c (update_current_target): Do not inherit to_open
3402         or to_close.
3403         (pop_target): Call target_close on target_stack instead
3404         of current_target.
3405         (pop_all_targets_above): Likewise.
3406
3407 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3408
3409         * gnu-v3-abi.c (gnuv3_decode_method_ptr): New function.
3410         (gnuv3_print_method_ptr): Use it.
3411         (gnuv3_method_ptr_to_value): Likewise.
3412
3413 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3414
3415         * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to
3416         register_area callback function.
3417         * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
3418         Use it instead of current_gdbarch.
3419         * nto-procfs.c (procfs_store_registers): Update call.
3420
3421 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3422
3423         * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
3424         regcache architecture instead of current_gdbarch.
3425
3426 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3427
3428         * mep-tdep.c (struct mep_prologue): Add gdbarch member.
3429         (check_for_saved): Use it instead of current_gdbarch.
3430         (is_arg_spill): Add gdbarch paramter.  Use it instead
3431         of current_gdbarch.
3432         (mep_analyze_prologue): Add gdbarch parameter.  Pass it
3433         to is_arg_spill and check_for_saved.
3434         (mep_skip_prologue, mep_analyze_frame_prologue): Update calls.
3435
3436 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3437
3438         * hppa-tdep.c (internalize_unwinds): Use objfile architecture
3439         instead of current_gdbarch.
3440
3441 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3442
3443         * m68k-tdep.h (m68kbsd_fpreg_offset): Add gdbarch parameter.
3444         * m68kbsd-tdep.c (m68kbsd_fpreg_offset): Add gdbarch paramter.
3445         Use it instead of current_gdbarch.
3446         (m68kbsd_supply_fpregset): Update call.
3447         * m68kbsd-nat.c (m68kbsd_supply_fpregset): Likewise.
3448         (m68kbsd_collect_fpregset): Likewise.
3449
3450 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3451
3452         * cris-tdep.c (cris_version, cris_mode): Remove.
3453         (crisv32_single_step_through_delay): Use tdep->cris_mode.
3454         (cris_breakpoint_from_pc): Likewise.
3455         (cris_frame_unwind_cache): Use tdep->cris_version.
3456         (crisv32_scan_prologue): Likewise.
3457         (cris_spec_reg_applicable): Add gdbarch argument.
3458         Use tdep->cris_version.
3459         (cris_register_size, cris_special_register_name): Update calls.
3460         (cris_special_register_name): Add gdbarch argument.
3461         (cris_register_name, crisv32_register_name): Update calls.
3462
3463 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3464
3465         * m68hc11-tdep.c (gdb_print_insn_m68hc11): Use info->arch
3466         instead of current_gdbarch.
3467
3468         * sh64-tdep.c (gdb_print_insn_sh64): Remove.
3469         (sh64_gdbarch_init): Install print_insn_sh64 directly.
3470         * sh-tdep.c (gdb_print_insn_sh): Remove.
3471         (sh_gdbarch_init): Install print_insn_sh directly.
3472
3473         * mips-tdep.c (gdb_print_insn_mips): Do not check mips_abi
3474         from current_gdbarch.
3475         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): New functions.
3476         (mips_gdbarch_init): Install them instead of gdb_print_insn_mips
3477         depending on mips_abi.
3478
3479 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3480
3481         * gdbarch.sh (addr_bits_remove): Change type to 'm'.
3482         (smash_text_address): Likewise.
3483         * gdbarch.c, gdbarch.h: Regenerate.
3484
3485         * arch-utils.c (core_addr_identity): Add gdbarch parameter.
3486         * arch-utils.h (core_addr_identity): Likewise.
3487         * arm-tdep.c (arm_addr_bits_remove): Likewise.
3488         (arm_smash_text_address): Likewise.
3489         * hppa-tdep.c (hppa_smash_text_address): Likewise.
3490         * m88k-tdep.c (m88k_addr_bits_remove): Likewise.
3491         * s390-tdep.c (s390_addr_bits_remove): Likewise.
3492
3493         * mips-tdep.c (mips_addr_bits_remove): Add gdbarch parameter.
3494         Use it instead of current_gdbarch.
3495
3496         * arm-tdep.c (arm_prologue_prev_register, arm_unwind_pc,
3497         arm_dwarf2_prev_register): Update calls.
3498         * m88k-tdep.c (m88k_unwind_pc): Update call.
3499
3500 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3501
3502         * dwarf2expr.h (dwarf2_read_address): Add gdbarch argument.
3503         * dwarf2expr.c (dwarf2_read_address): Add gdbarch argument.
3504         Call gdbarch_integer_to_address directly instead of converting
3505         to value and back.  Update comment.
3506         (execute_stack_op): Update call site.
3507         * dwarf2loc.c (find_location_expression): Likewise.
3508         (locexpr_describe_location): Update
3509
3510         * dwarf2expr.h (struct dwarf_expr_context): Add gdbarch member.
3511         * dwarf2-frame.c (execute_stack_op): Initialize ctx->gdbarch.
3512         * dwarf2loc. (dwarf2_evaluate_loc_desc): Likewise.
3513         (dwarf2_loc_desc_needs_frame): Likewise.
3514
3515 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3516
3517         * breakpoint.h (struct bp_location): Change type of section
3518         member to "struct obj_section *".
3519         * tracepoint.h (struct tracepoint): Likewise.
3520         * symtab.h (struct general_symbol_info): Replace bfd_section
3521         member with obj_section.
3522         (struct symtab_and_line): Change type of section member to
3523         "struct obj_section *".
3524         (SYMBOL_BFD_SECTION): Remove macro, replace by ...
3525         (SYMBOL_OBJ_SECTION): ... this.
3526
3527         * minsym.c (prim_record_minimal_symbol_and_info): Record symbol
3528         section as obj_section instead of bfd_section.
3529
3530         * ada-lang.c (ada_decode_symbol): Use gsymbol->obj_section
3531         directly instead of looking of obj_section from bfd_section.
3532
3533         * objfiles.h (find_pc_sect_section): Remove.
3534         * objfiles.c (find_pc_sect_section): Remove.
3535         (find_pc_section): Inline find_pc_sect_section code.
3536
3537         * symfile.h (find_pc_overlay): Return struct obj_section *.
3538         (find_pc_mapped_section): Likewise.
3539         (section_is_overlay, section_is_mapped): Change type of section
3540         argument to struct obj_section *.
3541         (pc_in_mapped_range, pc_in_unmapped_range): Likewise.
3542         (overlay_mapped_address, overlay_unmapped_address): Likewise.
3543         (symbol_overlayed_address): Likewise.
3544         * symtab.h (symbol_overlayed_address): Likewise.
3545         * symfile.c (overlay_is_mapped): Remove.
3546         (section_is_mapped): Inline overlay_is_mapped code.  Update.
3547         (overlay_invalidate_all): Update.
3548         (section_is_overlay): Change section argument to type
3549         "struct obj_section *".  Use bfd_ methods.
3550         (pc_in_unmapped_range): Likewise.  Handle relocated sections.
3551         (pc_in_mapped_range): Likewise.  Handle relocated sections.
3552         (sections_overlap): Likewise.
3553         (overlay_unmapped_address): Likewise.
3554         (overlay_mapped_address): Likewise.
3555         (symbol_overlayed_address): Likewise.
3556         (find_pc_overlay): Return struct obj_section *.
3557         (find_pc_mapped_section): Likewise.
3558         (list_overlays_command): Update.
3559         (map_overlay_command, unmap_overlay_command): Update.
3560         (simple_overlay_update): Update.
3561
3562         * block.h (blockvector_for_pc_sect): Change section argument
3563         to type "struct obj_section *".
3564         (block_for_pc_sect): Likewise.
3565         * block.c (blockvector_for_pc_sect): Change section argument
3566         to type "struct obj_section *".
3567         (block_for_pc_sect): Likewise.
3568         * symtab.h (find_pc_sect_function, find_pc_sect_psymtab,
3569         find_pc_sect_symtab, find_pc_sect_psymbol, find_pc_sect_line,
3570         lookup_minimal_symbol_by_pc_section, find_function_start_pc): Likewise.
3571         (matching_bfd_sections): Rename to ...
3572         (matching_obj_sections): ... this.  Update argument types.
3573         * blockframe.c (find_pc_sect_function): Likewise.
3574         * breakpoint.c (describe_other_breakpoints): Likewise.
3575         (breakpoint_has_pc, check_duplicates_for): Likewise.
3576         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3577         (lookup_minimal_symbol_by_pc_section): Likewise.
3578         * symtab.c (find_pc_sect_psymtab_closer): Likewise.
3579         (find_pc_sect_psymtab, find_pc_sect_psymbol, find_pc_sect_symtab,
3580         find_pc_sect_line, find_function_start_pc): Likewise.
3581         (matching_bfd_sections): Rename to ...
3582         (matching_obj_sections): ... this.  Update argument types.
3583
3584         * blockframe.c (find_pc_partial_function): Update to section
3585         type changes.  No longer call find_pc_sect_section.
3586         (cache_pc_function_section): Change to type "struct obj_section *".
3587         * breakpoint.c (resolve_sal_pc): Update to section type changes.
3588         * exec.c (xfer_memory): Likewise.
3589         * findvar.c (read_var_value): Likewise.
3590         * infcmd.c (jump_command): Likewise.
3591         * linespec.c (minsym_found): Likewise.
3592         * maint.c (maintenance_translate_address): Likewise.
3593         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3594         (lookup_solib_trampoline_symbol_by_pc): Likewise.
3595         * parse.c (write_exp_msymbol): Likewise.
3596         * printcmd.c (build_address_symbolic): Likewise.
3597         (address_info, sym_info): Likewise.
3598         * symmisc.c (dump_msymbols, print_symbol): Likewise.
3599         * symtab.c (fixup_section): Likewise.
3600         (fixup_symbol_section, fixup_psymbol_section): Likewise.
3601         (find_pc_line, find_function_start_sal): Likewise.
3602         * target.c (memory_xfer_partial): Likewise.
3603         * hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline): Likewise.
3604         * spu-tdep.c (spu_overlay_update): Likewise.
3605
3606 2008-09-04  Doug Evans  <dje@google.com>
3607
3608         * defs.h (plongest,pulongest): Renamed from paddr_u,paddr_d.
3609         Change argument of pulongest from CORE_ADDR to ULONGEST.
3610         All callers updated.
3611         * utils.c (plongest): Renamed from paddr_d.
3612         (pulongest): Renamed from paddr_u, change arg type to ULONGEST.
3613         * remote-mips.c (send_srec): Use paddr_nz instead of paddr_u in
3614         `CORE_ADDR addr' arg of error message.
3615
3616 2008-09-03  Angela Marie Thomas <angela@releasedominatrix.com>
3617
3618         * ser-tcp.c (ser_tcp_send_break): New function.
3619         (_initialize_ser_tcp): Use ser_tcp_send_break.
3620         * ser-tcp.h (ser_tcp_send_break): New prototype.
3621
3622 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3623
3624         * spu-tdep.c (spu_push_dummy_call): Update all stack pointer slots
3625         when allocating stack frame for inferior call.
3626
3627 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3628
3629         * spu-tdep.c (spu_frame_unwind_cache): Do not attempt to unwind
3630         SP or return address if we failed to find a valid frame.
3631
3632 2008-09-03  Aleksandar Ristovski  <aristovski@qnx.com>
3633
3634         * breakpoint.c (breakpoint_init_inferior): Mark as not inserted only
3635         non-permanent breakpoints.
3636         (bpstat_stop_status): Change enable_state to bp_disabled only for
3637         non-permanent breakpoints.
3638         (bp_loc_is_permanent): New function.
3639         (create_breakpoint): Check if the location points to a permanent
3640         breakpoint and if it does, make breakpoint permanent.
3641         (update_breakpoint_locations): Make sure new locations of permanent
3642         breakpoints are properly initialized.
3643         * i386-tdep.c (i386_skip_permanent_breakpoint): New function.
3644         (i386_gdbarch_init): Set gdbarch_skip_permanent_breakpoint.
3645
3646 2008-09-02  Pedro Alves  <pedro@codesourcery.com>
3647
3648         * breakpoint.c (insert_breakpoints, update_global_location_list):
3649         Check breakpoints_always_inserted_mode instead of
3650         always_inserted_mode directly.
3651
3652 2008-09-02  Andreas Schwab  <schwab@suse.de>
3653
3654         * ia64-tdep.c (ia64_get_dyn_info_list): Use obj_section_addr.
3655
3656 2008-09-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
3657
3658         Stay compatible after the GCC PR fortran/29635 fix.
3659         * dwarf2read.c (process_die <DW_TAG_imported_module>)
3660         (process_die <DW_TAG_imported_module>): Do not assert anything about
3661         these unsupported tags.
3662
3663 2008-08-29  Tom Tromey  <tromey@redhat.com>
3664
3665         * maint.c (_initialize_maint_cmds): Fix typo.
3666
3667 2008-08-29  Tom Tromey  <tromey@redhat.com>
3668
3669         * dwarf2read.c (dwarf2_build_psymtabs_hard): Copy dirname on
3670         obstack.
3671
3672 2008-08-27  Ulrich Weigand  <uweigand@de.ibm.com>
3673
3674         * remote.c: Include "gdb_stat.h".
3675
3676 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3677
3678         * dummy-frame.h (dummy_frame_pop): Add prototype.
3679         * dummy-frame.c: Include "observer.h".
3680         (dummy_frame_push): Do not check for stale frames.
3681         (dummy_frame_pop): New function.
3682         (cleanup_dummy_frames): New function.
3683         (_initialize_dummy_frame): Install it as inferior_created observer.
3684
3685         * frame.h (struct frame_id): Update comments.
3686         (frame_id_inner): Remove prototype.
3687         * frame.c (frame_id_inner): Make static.  Add comments.
3688         (frame_find_by_id): Update frame_id_inner safety net check to avoid
3689         false positives for targets using non-contiguous stack ranges.
3690         (get_prev_frame_1): Update frame_id_inner safety net check.
3691         (frame_pop): Call dummy_frame_pop when popping a dummy frame.
3692
3693         * stack.c (return_command): Directly pop the selected frame.
3694         * infrun.c (handle_inferior_event): Remove dead code.
3695         * i386-tdep.c (i386_push_dummy_call): Update comment.
3696
3697 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3698
3699         * breakpoint.c (remove_breakpoint): Do not fail if unable to remove
3700         breakpoint from shared library.
3701
3702 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3703
3704         * solib-svr4.c (read_program_header): New function.
3705         (scan_dyntag_auxv): New function.
3706         (elf_locate_base): Use it if scan_dyntag fails.
3707         (find_program_interpreter): New function.
3708         (enable_break): Use it instead of .interp section.
3709
3710 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3711
3712         * remote.h (remote_filename_p, remote_bfd_open): Add prototypes.
3713         * remote.c (remote_bfd_iovec_open, remote_bfd_iovec_close,
3714         remote_bfd_iovec_pread, remote_bfd_iovec_stat, remote_filename_p,
3715         remote_bfd_open): New functions.
3716         (remote_hostio_send_command): Fail safely if remote connection
3717         is not set up.
3718
3719         * solist.h (solib_open): Remove prototype.
3720         (solib_bfd_open): Add prototype.
3721         * solib.c: Include "remote.h".
3722         (solib_open): Remove, replace by ...
3723         (solib_bfd_open): ... this new function.  Handle remote BFDs.
3724         (solib_map_sections): Replace solib_open by solib_bfd_open.
3725         * solib-frv.c: Include "exceptions.h".
3726         (enable_break2): Replace solib_open by solib_bfd_open.
3727         * solib-svr4.c: Include "exceptions.h".
3728         (enable_break): Replace solib_open by solib_bfd_open.
3729
3730         * symfile.c: Include "remote.h".
3731         (build_id_verify): Handle remote BFDs.
3732         (separate_debug_file_exists): Use BFD to access file.  Handle
3733         remote BFDs.
3734         (symfile_bfd_open): Handle remote BFDs.
3735         (reread_symbols): Handle remote BFDs.
3736
3737         * NEWS: Mention "remote:" argument prefix to "set sysroot".
3738
3739 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3740
3741         * gdbarch.sh (target_gdbarch): New global variable.
3742         (deprecated_current_gdbarch_select_hack): Set it.
3743         * gdbarch.c, gdbarch.h: Regenerate.
3744
3745         * arch-utils.c (gdbarch_update_p): Use target_gdbarch instead
3746         of current_gdbarch.
3747         * target-descriptions.c (target_find_description): Likewise.
3748         * arm-tdep.c (arm_update_current_architecture): Likewise.
3749         (show_fp_model, arm_show_abi, arm_show_fallback_mode, 
3750         arm_show_force_mode): Likewise.
3751         * mips-tdep.c (show_mask_address, show_mipsfpu_command,
3752         show_mips_abi): Likewise.
3753         * mep-tdep.c (me_module_register_set, current_me_module): Likewise.
3754
3755         * target.c (target_translate_tls_address): Use target_gdbarch
3756         instead of current_gdbarch.
3757         * remote.c (struct packet_reg): Likewise.
3758         (get_remote_arch_state, packet_reg_from_regnum,
3759         packet_reg_from_pnum, remote_check_symbols, remote_wait,
3760         remote_address_masked, remote_insert_breakpoint,
3761         remote_insert_hw_breakpoint, remote_read_description): Likewise.
3762         * remote-m32r-sdi.c (m32r_resume, m32r_wait): Likewise.
3763         * remote-mips.c (mips_open, mips_common_breakpoint): Likewise.
3764         * cris-tdep.c (cris_can_use_hardware_watchpoint): Likewise.
3765
3766         * solib.c (solib_open, solib_map_sections, solib_read_symbols,
3767         solib_add, info_sharedlibrary_command, solib_address, 
3768         solib_create_inferior_hook, in_solib_dynsym_resolve_code,
3769         solib_global_lookup): Likewise.
3770         * solib-frv.c (enable_break2, frv_relocate_main_executable): Likewise.
3771         * solib-irix.c (irix_current_sos, irix_open_symbol_file_object):
3772         Likewise.
3773         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
3774         * solib-svr4.c (exec_entry_point, enable_break, svr4_free_so,
3775         set_solib_svr4_fetch_link_map_offsets, svr4_fetch_link_map_offsets):
3776         Likewise.
3777         * nto-tdep.c (nto_find_and_open_solib, nto_init_solib_absolute_prefix,
3778         nto_truncate_ptr): Likewise.
3779         * mips-linux-tdep.c (mips_linux_in_dynsym_stub): Likewise.
3780
3781 2008-08-26  Luis Machado  <luisgpm@br.ibm.com>
3782
3783         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections) New structure.
3784         (ppc_linux_vmx_regset_sections): New structure.
3785         (ppc_linux_fp_regset_sections): New structure.
3786         (ppc_linux_init_abi): Select core-file regset  based on target
3787         features.
3788
3789 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3790
3791         * target.c (debug_print_register): Use regcache_raw_collect
3792         instead of regcache_cooked_read.  Only handle raw registers.
3793
3794 2008-08-25  Pedro Alves  <pedro@codesourcery.com>
3795
3796         * cp-name-parser.y: Include config.h before system headers.
3797
3798 2008-08-25  Ulrich Weigand  <uweigand@de.ibm.com>
3799
3800         * m88k-tdep.c: Update for unwinder changes.
3801
3802 2008-08-24  Tom Tromey  <tromey@redhat.com>
3803
3804         * s390-tdep.c (s390_address_class_type_flags): Use
3805         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1.
3806         (s390_address_class_type_flags_to_name): Likewise.
3807         (s390_address_class_name_to_type_flags): Likewise.
3808
3809 2008-08-24  Tom Tromey  <tromey@redhat.com>
3810
3811         * rs6000-tdep.c (rs6000_builtin_type_vec128): Don't use
3812         TYPE_FLAGS.
3813         * features/rs6000/powerpc-vsx32l.c
3814         (initialize_tdesc_powerpc_vsx32l): Update.
3815         * features/rs6000/powerpc-vsx32.c
3816         (initialize_tdesc_powerpc_vsx32): Update.
3817         * features/rs6000/powerpc-vsx64.c
3818         (initialize_tdesc_powerpc_vsx64): Update.
3819         * features/rs6000/powerpc-vsx64l.c
3820         (initialize_tdesc_powerpc_vsx64l): Update.
3821         * target-descriptions.c (maint_print_c_tdesc_cmd): Emit
3822         TYPE_VECTOR, not TYPE_FLAGS.
3823
3824 2008-08-24  Tom Tromey  <tromey@redhat.com>
3825
3826         * xml-tdesc.c (tdesc_end_union): Update.
3827         * stabsread.c (define_symbol): Update.
3828         (read_type): Update.
3829         (read_struct_type): Update.
3830         (read_enum_type): Update.
3831         * spu-tdep.c (spu_builtin_type_vec128): Update.
3832         * sh-tdep.c (sh_push_dummy_call_fpu): Update.
3833         (sh_push_dummy_call_nofpu): Update.
3834         * mdebugread.c (parse_symbol): Update.
3835         (parse_symbol): Update.
3836         (parse_symbol): Update.
3837         (upgrade_type): Update.
3838         * jv-lang.c (java_lookup_class): Update.
3839         * iq2000-tdep.c (iq2000_pointer_to_address): Update.
3840         * i386-tdep.c (i386_mmx_type): Update.
3841         (i386_sse_type): Update.
3842         * gdbtypes.h (enum type_flag_value): New enum.
3843         (enum type_instance_flag_value): New enum.
3844         (TYPE_FLAG_UNSIGNED, TYPE_FLAG_NOSIGN, TYPE_FLAG_STUB,
3845         TYPE_FLAG_TARGET_STUB, TYPE_FLAG_STATIC, TYPE_FLAG_PROTOTYPED,
3846         TYPE_FLAG_INCOMPLETE, TYPE_FLAG_VARARGS, TYPE_FLAG_VECTOR,
3847         TYPE_FLAG_FIXED_INSTANCE, TYPE_FLAG_STUB_SUPPORTED,
3848         TYPE_FLAG_NOTTEXT): Now enum constants.
3849         (TYPE_FLAG_CONST, TYPE_FLAG_VOLATILE, TYPE_FLAG_CODE_SPACE,
3850         TYPE_FLAG_DATA_SPACE, TYPE_FLAG_ADDRESS_CLASS_1,
3851         TYPE_FLAG_ADDRESS_CLASS_2): Remove.
3852         (TYPE_INSTANCE_FLAG_CONST, TYPE_INSTANCE_FLAG_VOLATILE,
3853         TYPE_INSTANCE_FLAG_CODE_SPACE, TYPE_INSTANCE_FLAG_DATA_SPACE,
3854         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1,
3855         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2): New constants.
3856         (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB, TYPE_TARGET_STUB,
3857         TYPE_STATIC, TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_VARARGS,
3858         TYPE_VECTOR, TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED,
3859         TYPE_NOTTEXT): Update.
3860         (TYPE_FLAG_ADDRESS_CLASS_ALL): Remove.
3861         (TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL): New define.
3862         (TYPE_VOLATILE, TYPE_CODE_SPACE, TYPE_DATA_SPACE,
3863         TYPE_ADDRESS_CLASS_1, TYPE_ADDRESS_CLASS_2,
3864         TYPE_ADDRESS_CLASS_ALL): Update.
3865         (struct main_type) <flags>: Remove.
3866         <flag_unsigned, flag_nosign, flag_stub, flag_target_stub,
3867         flag_static, flag_prototyped, flag_incomplete, flag_varargs,
3868         flag_vector, flag_stub_supported, flag_nottext,
3869         flag_fixed_instance>: New fields.
3870         <nfields, vptr_fieldno>: Move earlier.
3871         (TYPE_FLAGS): Remove.
3872         * gdbtypes.c (make_pointer_type): Update.
3873         (address_space_name_to_int): Update.
3874         (address_space_int_to_name): Update.
3875         (make_type_with_address_space): Update.
3876         (make_cv_type): Update.
3877         (create_range_type): Update.
3878         (get_discrete_bounds): Update.
3879         (create_set_type): Update.
3880         (make_vector_type): Update.
3881         (smash_to_method_type): Update.
3882         (check_typedef): Update.
3883         (check_stub_method): Update.
3884         (init_type): Individually assign flag fields.
3885         (recursive_dump_type): Don't print entire TYPE_FLAGS field.  Do
3886         print TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED, and TYPE_NOTTEXT.
3887         (copy_type_recursive): Copy the entire main type.  Don't use
3888         TYPE_FLAGS.
3889         * features/rs6000/powerpc-altivec64l.c
3890         (initialize_tdesc_powerpc_altivec64l): Update.
3891         * features/rs6000/powerpc-altivec64.c
3892         (initialize_tdesc_powerpc_altivec64): Update.
3893         * features/rs6000/powerpc-altivec32l.c
3894         (initialize_tdesc_powerpc_altivec32l): Update.
3895         * features/rs6000/powerpc-altivec32.c
3896         (initialize_tdesc_powerpc_altivec32): Update.
3897         * features/rs6000/powerpc-7400.c (initialize_tdesc_powerpc_7400):
3898         Update.
3899         * features/arm-with-iwmmxt.c (initialize_tdesc_arm_with_iwmmxt):
3900         Update.
3901         * dwarf2read.c (read_structure_type): Update.
3902         (read_enumeration_type): Likewise.
3903         (process_enumeration_scope): Likewise.
3904         (read_tag_pointer_type): Likewise.
3905         (read_subroutine_type): Likewise.
3906         (read_subroutine_type): Likewise.
3907         (read_base_type): Likewise.
3908         * coffread.c (coff_read_enum_type): Update.
3909         * ada-valprint.c (adjust_type_signedness): Update.
3910         * ada-typeprint.c (print_record_field_types): Update.
3911         * ada-lang.c (packed_array_type): Update.
3912         (empty_record): Don't reset TYPE_FLAGS.
3913         (ada_template_to_fixed_record_type_1): Update.
3914         (ada_template_to_fixed_record_type_1): Likewise.
3915         (template_to_static_fixed_type): Likewise.
3916         (to_record_with_fixed_variant_part): Likewise.
3917         (to_fixed_record_type): Likewise.
3918         (to_fixed_array_type): Likewise.
3919         (to_static_fixed_type): Likewise.
3920
3921 2008-08-23  Jim Blandy  <jimb@redhat.com>
3922
3923         PR macros/607:
3924         * symmisc.c (print_symbol_bcache_statistics): Include statistics
3925         for the macro bcache.
3926
3927 2008-08-23  Tom Tromey  <tromey@redhat.com>
3928
3929         * macrotab.h (struct macro_definition) <kind>: Shrink to one bit.
3930         (argc): Now 31 bits.
3931
3932 2008-08-22  Tom Tromey  <tromey@redhat.com>
3933
3934         * NEWS: Move macro entries back under "New commands".
3935
3936 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
3937
3938         * breakpoint.c (create_overlay_event_breakpoint): Rename to ...
3939         (create_overlay_event_breakpoint_1): ... this.  Add OBJFILE parameter.
3940         (create_overlay_event_breakpoint): Loop over all objfiles to install
3941         multiple instances of the overlay event breakpoint if present.
3942
3943 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
3944
3945         * spu-tdep.c (spu_overlay_new_objfile): Only consider SPU objfiles.
3946         (info_spu_event_command): Command only supported on SPU architecture.
3947         (info_spu_signal_command): Likewise.
3948         (info_spu_mailbox_command): Likewise.
3949         (info_spu_dma_command): Likewise.
3950         (info_spu_proxydma_command): Likewise.
3951
3952 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
3953
3954         * infrun.c (adjust_pc_after_break): Do not call get_thread_regcache
3955         if the thread has already exited.
3956
3957 2008-08-22  Pedro Alves  <pedro@codesourcery.com>
3958
3959         * infrun.c (proceed): Move back setting previous_inferior_ptid
3960         from here ...
3961         (wait_for_inferior): ... to here.
3962         (fetch_inferior_event): ... and here.
3963
3964 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
3965
3966         * gdbarch.sh: Include "regcache.h" into gdbarch.c.
3967         (deprecated_current_gdbarch_select_hack): Call registers_changed
3968         instead of reinit_frame_cache.
3969         * gdbarch.c: Regenerate.
3970
3971 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
3972
3973         * elfread.c (elf_symtab_read): Do not relocate thread-local symbols.
3974
3975 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
3976
3977         * xcoffread.c (SYMNAME_ALLOC): Correct syntax.
3978
3979 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
3980
3981         * findvar.c (locate_var_value): Do not call get_frame_arch
3982         with a NULL frame argument.
3983
3984 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
3985
3986         * frame.h (frame_map_regnum_to_name): Remove prototype.
3987         (frame_map_name_to_regnum): Remove prototype.
3988         * frame.c (frame_map_regnum_to_name): Remove.
3989         (frame_map_name_to_regnum): Remove.
3990         (frame_unwind_register_value): Use user_reg_map_regnum_to_name
3991         instead of frame_map_regnum_to_name.
3992         * ax-gdb.c: Include "user-regs.h".
3993         (gen_expr): Use user_reg_map_name_to_regnum instead of
3994         frame_map_name_to_regnum.
3995         * eval.c:  Include "user-regs.h".
3996         (evaluate_subexp_standard): Use user_reg_map_name_to_regnum
3997         instead of frame_map_name_to_regnum.
3998         * infcmd.c (registers_info): Likewise.
3999         * parse.c: Include "user-regs.h".
4000         (write_dollar_variable): Use user_reg_map_name_to_regnum
4001         instead of frame_map_name_to_regnum.
4002         * tracepoint.c: Include "user-regs.h".
4003         (encode_actions): Use user_reg_map_name_to_regnum
4004         instead of frame_map_name_to_regnum.
4005         * valops.c: Include "user-regs.h".
4006         (value_fetch_lazy): Use user_reg_map_regnum_to_name instead
4007         of frame_map_regnum_to_name.
4008
4009 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4010
4011         * ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read
4012         and manually relocate .opd contents from BFD instead of reading
4013         them from target memory.
4014
4015 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4016
4017         * dwarf2read.c (processing_current_prefix): Delete static
4018         variable.
4019         (process_full_comp_unit): Do not set processing_current_prefix.
4020         (dwarf2_full_name): New function.
4021         (read_func_scope): Do not set processing_current_prefix.  Use
4022         determine_prefix.
4023         (read_structure_type): Do not set processing_current_prefix.  Remove
4024         unused inner cleanup.
4025         (process_structure_scope): Do not set processing_current_prefix.
4026         (read_enumeration_type): Use dwarf2_full_name.
4027         (determine_class_name): Return a const char *.  Put the result
4028         on the objfile obstack.  Use dwarf2_full_name.
4029         (read_namespace_type): New function.
4030         (read_namespace): Do not create the type here.  Use
4031         determine_prefix.
4032         (read_typedef): Use dwarf2_full_name.  Do not pass the name
4033         to init_type.
4034         (read_base_type): Do not pass the name to init_type.  Handle
4035         TYPE_FLAG_NOSIGN.
4036         (read_unspecified_type): Do not pass the name to init_type.
4037         (new_symbol): Use dwarf2_full_name instead of
4038         processing_current_prefix.
4039         (read_type_die): Do not set processing_current_prefix.  Handle
4040         DW_TAG_namespace.
4041         (determine_prefix): Handle specifications.  Return the result
4042         on the objfile obstack.  Handle unions correctly.
4043
4044 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4045
4046         * buildsym.c (add_symbol_to_list): Do not call
4047         cp_scan_for_anonymous_namespaces here.
4048         (finish_block): Do not call cp_set_block_scope here.
4049         * cp-namespace.c (processing_has_namespace_info)
4050         (processing_current_prefix): Delete.
4051         (cp_initialize_namespace): Do not initialize
4052         processing_has_namespace_info.
4053         (cp_scan_for_anonymous_namespaces): Use SYMBOL_DEMANGLED_NAME.  Do
4054         not check processing_has_namespace_info.
4055         (cp_set_block_scope): Take prefix and namespace info flag as
4056         arguments.  Honor namespaces regardless of a demangled name.
4057         * cp-support.h (processing_has_namespace_info)
4058         (processing_current_prefix): Delete declarations.
4059         (cp_set_block_scope): Update prototype.
4060         * dwarf2read.c (processing_has_namespace_info)
4061         (processing_current_prefix): New static variables.
4062         (read_file_scope): Initialize processing_has_namespace_info.
4063         (read_func_scope): Call cp_set_block_scope for C++.
4064         (new_symbol): Call cp_scan_for_anonymous_namespaces for C++.
4065         * symtab.c (symbol_demangled_name): Accept a const argument.
4066         * symtab.h (symbol_demangled_name): Update prototype.
4067
4068 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4069
4070         * ax-gdb.c (gen_var_ref): Use SYMBOL_LINKAGE_NAME.
4071         * blockframe.c (find_pc_partial_function): Likewise.
4072         * buildsym.c (find_symbol_in_list): Likewise.
4073         * c-valprint.c (c_val_print): Likewise.
4074         * coffread.c (patch_opaque_types, process_coff_symbol): Likewise.
4075         (coff_read_enum_type): Likewise.  Use SYMBOL_SET_LINKAGE_NAME.
4076         * cp-support.c (cp_remove_params): Renamed from remove_params and
4077         made global.
4078         (overload_list_add_symbol): Update call to remove_params.
4079         * cp-support.h (cp_remove_params): Declare.
4080         * dwarf2read.c (process_enumeration_scope): Use SYMBOL_LINKAGE_NAME.
4081         (dwarf2_const_value): Use SYMBOL_PRINT_NAME.
4082         * expprint.c (dump_subexp_body_standard): Likewise.
4083         * f-valprint.c (info_common_command, there_is_a_visible_common_named):
4084         Use SYMBOL_LINKAGE_NAME to find symbols and SYMBOL_PRINT_NAME
4085         for messages.
4086         * findvar.c (read_var_value): Use SYMBOL_LINKAGE_NAME.
4087         * gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise.
4088         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
4089         (hppa_hpux_skip_trampoline_code): Use SYMBOL_LINKAGE_NAME to find
4090         symbols and SYMBOL_PRINT_NAME for messages.
4091         * jv-lang.c (add_class_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4092         * linespec.c (decode_line_2): Use SYMBOL_LINKAGE_NAME.
4093         * mdebugread.c (parse_symbol): Use SYMBOL_LINKAGE_NAME and
4094         SYMBOL_SET_LINKAGE_NAME.
4095         (mylookup_symbol): Use SYMBOL_LINKAGE_NAME.
4096         * minsyms.c (add_minsym_to_demangled_hash_table): Use
4097         SYMBOL_SEARCH_NAME.
4098         (lookup_minimal_symbol): Use SYMBOL_LINKAGE_NAME or
4099         SYMBOL_MATCHES_SEARCH_NAME, depending on the pass.
4100         * objfiles.h (ALL_OBJFILE_MSYMBOLS): Use SYMBOL_LINKAGE_NAME.
4101         * printcmd.c (build_address_symbolic): Use SYMBOL_LINKAGE_NAME.
4102         (address_info): Use SYMBOL_PRINT_NAME for messages and
4103         SYMBOL_LINKAGE_NAME for lookups.
4104         * sol-thread.c (info_cb): Use SYMBOL_PRINT_NAME for messages.
4105         * stabsread.c (patch_block_stabs, define_symbol)
4106         (read_type, read_enum_type, common_block_end)
4107         (cleanup_undefined_types_1, scan_file_globals): Use
4108         SYMBOL_LINKAGE_NAME, SYMBOL_SET_LINKAGE_NAME, ALL_OBJFILE_MSYMBOLS,
4109         and SYMBOL_PRINT_NAME.
4110         * stack.c (print_frame_args): Use SYMBOL_LINKAGE_NAME.
4111         (print_frame, frame_info): Use SYMBOL_PRINT_NAME for output.  Use
4112         cp_remove_params instead of cplus_demangle.
4113         (print_block_frame_labels, print_frame_arg_vars): Use
4114         SYMBOL_LINKAGE_NAME.
4115         * symmisc.c (dump_msymbols): Use ALL_OBJFILE_MSYMBOLS and
4116         SYMBOL_LINKAGE_NAME.
4117         (dump_symtab_1, print_symbol, print_partial_symbols)
4118         (maintenance_check_symtabs): Use SYMBOL_LINKAGE_NAME.
4119         * symtab.h (DEPRECATED_SYMBOL_NAME): Delete.
4120         (SYMBOL_SET_LINKAGE_NAME): New.
4121         (SYMBOL_SET_NAMES): Add a comment.
4122         * tracepoint.c (set_traceframe_context, validate_actionline)
4123         (collect_symbol, scope_info): Use SYMBOL_LINKAGE_NAME for
4124         lookups and SYMBOL_PRINT_NAME for output.
4125         * typeprint.c (typedef_print): Use SYMBOL_LINKAGE_NAME.
4126         * xcoffread.c (process_xcoff_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4127
4128 2008-08-21  Pedro Alves  <pedro@codesourcery.com>
4129
4130         * arm-tdep.c (arm_pc_is_thumb): Use obj_section_addr.
4131         * hppa-hpux-tdep.c (hppa_hpux_find_dummy_bpaddr): Likewise.
4132         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Use
4133         obj_section_addr and obj_section_endaddr.
4134         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Likewise.
4135         * hppabsd-tdep.c (hppabsd_find_global_pointer): Likewise.
4136         * ia64-tdep.c (ia64_find_global_pointer): Likewise.
4137         (find_extant_func_descr): Likewise.
4138         * solib-frv.c (frv_relocate_main_executable): Use
4139         obj_section_addr.
4140         * xstormy16-tdep.c (xstormy16_find_jmp_table_entry): Use
4141         obj_section_addr and obj_section_endaddr.
4142
4143 2008-08-21  Paul N. Hilfinger  <hilfinger@adacore.com>
4144
4145         * NEWS: Amplify last entry on boolean types in Ada.
4146
4147 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4148
4149         * dwarf2read.c (die_specification, dwarf2_extension, follow_die_ref):
4150         Make the dwarf2_cu * parameter output as well as input.  Update it if
4151         we follow a reference to another CU.
4152         (read_func_scope, determine_class_name, namespace_name, dwarf2_attr)
4153         (die_type, die_containing_type): Update calls to changed functions.
4154         Use the returned CU along with the returned DIE.
4155         (read_namespace): Use dwarf2_attr instead of dwarf2_extension.
4156
4157 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4158
4159         * dwarf2read.c (queue_comp_unit): Take an objfile argument.  Read
4160         in the DIEs here.
4161         (process_queue): Do not read in the DIEs here.
4162         (psymtab_to_symtab_1): Update call to queue_comp_unit.
4163         (read_full_die): Do not call queue_comp_unit from here.
4164         (maybe_queue_comp_unit): New function.
4165         (follow_die_ref): Use it.
4166
4167 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4168
4169         * dwarf2read.c (struct attribute): Move earlier.
4170         (struct die_info): Change attrs to a trailing array.
4171         (dwarf_alloc_die): Take the number of attributes.  Allocate space
4172         for them.
4173         (read_full_die): Update call to dwarf_alloc_die.  Do not manually
4174         allocate attributes.
4175
4176 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4177
4178         * dwarf2read.c (REF_HASH_SIZE): Delete.
4179         (struct dwarf2_cu): Replace die_ref_table with die_hash.
4180         (struct die_info): Remove next_ref.
4181         (store_in_ref_table): Remove offset argument.  Rewrite to use
4182         htab_find_slot_with_hash.
4183         (die_hash, die_eq): New.
4184         (read_comp_unit): Allocate the die_hash.
4185         (read_die_and_children): Update call to store_die_ref.
4186         (follow_die_ref): Rewrite to use htab_find_with_hash.
4187
4188 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4189
4190         * dwarf2read.c (free_die_list, copy_die): Delete.
4191         (dwarf_alloc_die): Take a CU argument.  Allocate the new DIE
4192         on the obstack.
4193         (read_full_die): Update call to dwarf_alloc_die.  Allocate
4194         attributes on the CU obstack.
4195         (free_one_comp_unit): Do not call free_die_list.
4196
4197 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4198
4199         * dwarf2read.c (read_die_and_children): Ignore NULL DIEs.
4200         (read_die_and_siblings): Likewise.  Do not add padding DIEs to the
4201         sibling list.
4202         (read_full_die): Do not allocate DIEs for abbrev 0.
4203         (follow_die_ref): Correct error message.
4204
4205 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4206
4207         * linespec.c (symtab_from_filename): Also throw NOT_FOUND_ERROR if
4208         there are no symbols loaded, instead of throwing a generic error.
4209         (decode_variable): Likewise.
4210
4211 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4212
4213         * objfiles.h (struct obj_section): Remove addr and endaddr fields.
4214         (obj_section_offset, obj_section_addr, obj_section_endaddr): New
4215         macros.
4216         * objfiles.c (add_to_objfile_sections): Don't set addr, endaddr
4217         and offset.  Use size_t instead of unsigned long.
4218         (build_objfile_section_table): Use size_t instead of unsigned
4219         long.
4220         (objfile_relocate): Don't relocate s->addr and s->endaddr, they're
4221         gone.
4222         (find_pc_sect_section): Use obj_section_addr and
4223         obj_section_endaddr.
4224         * symfile.c (symfile.c): Remove code that maps sections
4225         offsets in "addr" to the object's sections.
4226         * blockframe.c (find_pc_partial_function): Use obj_section_endaddr.
4227         * gcore.c (gcore_create_callback): Use obj_section_addr and
4228         obj_section_endaddr.
4229         * maint.c (print_objfile_section_info): Likewise.
4230         * printcmd.c (sym_info): Use obj_section_addr and
4231         obj_section_endaddr.
4232         * symtab.c (fixup_section): Likewise.
4233
4234 2008-08-20  Mark Kettenis  <kettenis@gnu.org>
4235
4236         * sparc-tdep.c: Make some comments catch up with reality.
4237
4238 2008-08-20  Vladimir Prus  <vladimir@codesourcery.com>
4239
4240         * NEWS: Mention 'set target-async'
4241
4242 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4243
4244         * infrun.c (resume): If the thread is placed to the deferred step
4245         queue, mark it as running.
4246
4247 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4248
4249         Make sure target supports non-stop.
4250         * infcmd.c (run_command_1, attach_command): If non-stop mode
4251         is requested, verify the target supports it.
4252         * linux-nat.c (linux_nat_supports_non_stop): New.
4253         (linux_nat_add_target): Register the above.
4254         * target.c (find_default_supports_non_stop)
4255         (target_supports_non_stop): New.
4256         (init_dummy_target): Register find_default_supports_non_stop.
4257         * target.h (struct target_ops): New field to_supports_non_stop.
4258         (target_supports_non_stop): New.
4259
4260 2008-08-19  Pedro Alves  <pedro@codesourcery.com>
4261             Vladimir Prus  <vladimir@codesourcery.com>
4262
4263         * target.c (target_async_permitted, target_async_permitted_1)
4264         (set_maintenance_target_async_permitted)
4265         (show_maintenance_target_async_permitted): New.
4266         (initialize_targets): Register 'set target-async'.
4267         * target.h (target_async_permitted): Declare.
4268         * linux-nat.c (linux_nat_async_enabled)
4269         (linux_nat_async_permitted, set_maintenance_linux_async_permitted)
4270         (show_maintenance_linux_async_permitted): Remove.
4271         (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p)
4272         (get_pending_events, linux_nat_async): Use target_async_permitted.
4273         (linux_nat_set_async_mode): Remove, moving the only used bits
4274         into...
4275         (linux_nat_setup_async): This.
4276         (_initialize_linux_nat): Do not register 'maint set linux-async'.
4277         Use linux_nat_setup_async.
4278         * remote.c (remote_async_permitted, remote_async_permitted_set)
4279         (set_maintenance_remote_async_permitted)
4280         (show_maintenance_remote_async_permitted): Remove.
4281         (remote_open_1, remote_terminal_inferior, remote_can_async_p)
4282         (remote_is_async_p): Use target_async_permitted.
4283         (_initialize_remote): Don't register 'main set remote-async'.
4284         * mi/mi-cmds.c (mi_cmds): Register -list-target-features.
4285         * mi/mi-cmds.h (mi_cmd_list_target_features): New.
4286         * mi/mi-main.c (mi_cmd_list_target_features): New.
4287
4288 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4289
4290         * target.c (maybe_kill_then_attach)
4291         (maybe_kill_then_create_inferior): Remove.
4292         (update_current_target): Do not default to_attach,
4293         to_create_inferiour, to_is_async_p.
4294
4295 2008-08-19  Paul N. Hilfinger  <hilfinger@adacore.com>
4296         
4297         Changes for supporting boolean types in debugging data.
4298         * ada-lang.c (discrete_type_high_bound,discrete_type_low_bound): Change 
4299         API to return LONGEST values rather than struct values.
4300         (ada_evaluate_subexp): Change to use new API of discrete_type_low_bound
4301         and discrete_type_high_bound.
4302         (to_fixed_range_type): Create a range type in cases where 
4303         argument is base type and its limits are representable as ints.
4304         (ada_is_modular_type): Correct so that base type must be integral.
4305         * ada-lex.l (TRUEKEYWORD,FALSEKEYWORD): Make 'true' and 'false' 
4306         keywords when they appear alone, since we are phasing out 
4307         direct representation of these identifiers in debugging data.
4308         * ada-exp.y: Define 'true' and 'false' as primaries.
4309         (type_boolean): New function.
4310         (type_int,type_long,type_long_long,type_floattype_double)
4311         (type_long_double): Remove uses of current_gdbarch for consistency
4312         with type_boolean.
4313         (write_int): Change comment to indicate that it might write boolean 
4314         constant as well.
4315         * ada-typeprint.c (ada_print_type): Print '(false, true)' for boolean
4316         type, since will no longer be represented as enumerated type in 
4317         debugging data.
4318         * ada-valprint.c (print_optional_low_bound): Handle boolean case
4319         as well.
4320         * NEWS: Note support boolean types.
4321         
4322 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4323
4324         * bsd-uthread.c (bsd_uthread_close): New.
4325         (bsd_uthread_deactivate): Don't cleanup here, just unpush the
4326         target.
4327         (bsd_uthread_solib_loaded): Fix typo.
4328         (bsd_uthread_target): Register bsd_uthread_close.
4329
4330 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4331
4332         * corelow.c (core_open): Assume there was no upper layer left
4333         behind from a previous inferior.
4334         * target.c (pop_all_targets): Rename to ...
4335         (pop_all_targets_above): ... this.  Add a target stratum
4336         parameter.  Use it instead of hardcoding the dummy_stratum.
4337         (pop_all_targets): New, defer to pop_all_targets_above.
4338         (target_preopen): Use pop_all_targets_above.
4339         * target.h (pop_all_targets_above): Declare.
4340
4341 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4342
4343         * gdbthread.h (thread_change_ptid): Declare.
4344         * infrun.c (infrun_thread_ptid_changed): New.
4345         (_initialize_infrun): Attach infrun_thread_ptid_changed to the
4346         thread_ptid_changed observer.
4347         * regcache.c (regcache_thread_ptid_changed): New.
4348         (_initialize_regcache): Attach regcache_thread_ptid_changed to the
4349         thread_ptid_changed observer.
4350         * thread.c (thread_change_ptid): New.
4351
4352 2008-08-18  Tom Tromey  <tromey@redhat.com>
4353
4354         * symfile.c (reread_symbols): Update.
4355         * solib-sunos.c (allocate_rt_common_objfile): Update.
4356         * objfiles.c (allocate_objfile): Update.
4357         * objfiles.h (struct objfile) <md, mmfd, deprecated_obj_private>:
4358         Remove.
4359
4360 2008-08-18  Tom Tromey  <tromey@redhat.com>
4361
4362         * gdbtypes.c (copy_type_recursive): Allocate 'stored' on objfile's
4363         obstack.
4364
4365 2008-08-18  Daniel Jacobowitz  <dan@codesourcery.com>
4366
4367         * rs6000-tdep.c (struct rs6000_framedata): Add gpr_mask, used_bl,
4368         lr_register.
4369         (rs6000_in_function_epilogue_p): Check for bctr.
4370         (skip_prologue): Initialize lr_register.  Set lr_reg to a register
4371         number.  Set gpr_mask and used_bl.  Continue scanning while some
4372         expected registers are not saved.  Set lr_register if LR is not
4373         stored.
4374         (rs6000_frame_cache): Handle gpr_mask and lr_register.
4375
4376 2008-08-17  Tom Tromey  <tromey@redhat.com>
4377
4378         PR gdb/1535:
4379         * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): New macros.
4380         (ep_find_event_name_end): Remove.
4381         (catch_fork_temporary, catch_vfork_temporary,
4382         catch_fork_permanent, catch_vfork_permanent): New constants.
4383         (catch_vfork, catch_fork): Remove.
4384         (catch_fork_command_1): Add 'command' argument.  Remove
4385         'fork_kind' and 'tempflag'.  Handle NULL 'arg'.  Update switch for
4386         all cases.
4387         (catch_exec_command_1): Add 'command' argument; remove
4388         'tempflag'.  Handle NULL 'arg'.
4389         (catch_load_command_1): Likewise.
4390         (catch_unload_command_1): Likewise.
4391         (catch_ada_exception_command): Likewise.
4392         (catch_assert_command): Likewise.
4393         (catch_catch_command): New function.
4394         (catch_throw_command): Likewise.
4395         (catch_command_1): Remove.
4396         (catch_command): Just call error.
4397         (tcatch_command): Likewise.
4398         (catch_cmdlist): New global.
4399         (tcatch_cmdlist): Likewise.
4400         (add_catch_command): New function.
4401         (_initialize_breakpoint): Create "catch" and "tcatch" as prefix
4402         commands.  Create all catch sub-commands.
4403
4404 2008-08-17  Pedro Alves  <pedro@codesourcery.com>
4405
4406         * gdbthread.h: Add comments.
4407         * stack.c (get_selected_block): Return 0 on an exited thread.
4408         * top.c (execute_command): Check for is_stopped, not !is_running.
4409         * event-top.c (command_handler): Likewise.
4410
4411 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4412
4413         * mi/mi-main.c (mi_cmd_exec_next, mi_cmd_exec_next_instruction)
4414         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
4415         (mi_cmd_exec_finish): Remove "return".
4416
4417 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4418
4419         * target.h (pop_all_targets): Declare.
4420         * target.c (pop_all_targets): New.
4421         * top.c (quit_target): Pop all targets instead of just closing the
4422         current.
4423
4424 2008-08-16  Vladimir Prus  <vladimir@codesourcery.com>
4425             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4426
4427         * cli-script.c (read_next_line): Add parse_commands argument.
4428         (recurse_read_control_structure): Adapt to new read_next_line
4429         signature.
4430         (read_command_lines): Add parse_commands argument.
4431         (define_command): Adapt to new read_command_lines signature.
4432         (document_command): Likewise.
4433         * breakpoint.c (commands_command): Likewise.
4434         * defs.h (read_command_lines): Adjust function prototype.
4435
4436 2008-08-16  Paul N. Hilfinger  <hilfinger@adacore.com>
4437
4438         * ada-lang.c (pos_atr): Account for the possibility that the 
4439         argument may be a reference.
4440
4441 2008-08-16  Paul N. Hilfinger  <hilfingr@adacore.com>
4442
4443         * xcoffread.c (scan_xcoff_symtab): Do not include global symbols
4444         ('F' format) for @FIX names generated by the loader, retaining only
4445         the minimal symbols (and no partial symbol tables) for these names.
4446         Fixes warning messages about symbols that are found in partial 
4447         symbol tables, but not full symbol tables.
4448
4449 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4450
4451         * infrun.c (fetch_inferior_event): Only call normal_stop if not
4452         stopping quietly.
4453
4454 2008-08-15  Luis Machado  <luisgpm@br.ibm.com>
4455
4456         * rs6000-tdep: Include "features/rs6000/powerpc-vsx32.c".
4457         Include "features/rs6000/powerpc-vsx64.c".
4458         (ppc_supply_vsxregset): New function.
4459         (ppc_collect_vsxregset): New function.
4460         (IS_VSX_PSEUDOREG): New macro.
4461         (IS_EFP_PSEUDOREG): New macro.
4462         (vsx_register_p): New function.
4463         (ppc_vsx_support_p): New function.
4464         (rs6000_builtin_type_vec128): New function.
4465         (rs6000_register_name): Hide upper halves of vs0~vs31.  Return
4466         correct names for VSX registers and EFPR registers.
4467         (rs6000_pseudo_register_type): Return correct types for VSX
4468         and EFPR registers.
4469         (rs6000_pseudo_register_reggroup_p): Return correct group for
4470         VSX and EFPR registers.
4471         (ppc_pseudo_register_read): Rename to dfp_pseudo_register_read.
4472         (ppc_pseudo_register_write): Rename to dfp_pseudo_register_write.
4473         (vsx_pseudo_register_read): New function.
4474         (vsx_pseudo_register_write): New function.
4475         (efpr_pseudo_register_read): New function.
4476         (efpr_pseudo_register_write): New function.
4477         (rs6000_pseudo_register_read): Call new VSX and EFPR read functions.
4478         (rs6000_pseudo_register_write): Call new VSX and EFPR write functions.
4479         (rs6000_gdbarch_init): Declare have_vsx.
4480         Initialize new upper half VSX registers.
4481         Initialize VSX-related and EFPR-related pseudo-registers variables.
4482         Adjust the number of pseudo registers accordingly.
4483
4484         * ppc-linux-nat.c: Define PTRACE_GETVSXREGS, PTRACE_SETVSXREGS
4485         and SIZEOF_VSRREGS.
4486         (gdb_vsxregset_t): New type.
4487         (have_ptrace_getsetvsxregs): New variable.
4488         (fetch_vsx_register): New function.
4489         (fetch_register): Handle VSX registers.
4490         (fetch_vsx_registers): New function.
4491         (fetch_ppc_registers): Handle VSX registers.
4492         (store_ppc_registers): Handle VSX registers.
4493         (store_vsx_register): New function.
4494         (store_register): Handle VSX registers.
4495         (store_vsx_registers): New function.
4496         (ppc_linux_read_description): Handle VSX-enabled inferiors.
4497         (gdb_vsxregset_t): New type.
4498         (supply_vsxregset): New function.
4499         (fill_vsxregset): New function.
4500
4501         * ppc-tdep.h (vsx_register_p): New prototype.
4502         (vsx_support_p): New prototype.
4503         (ppc_vsr0_regnum): New variable.
4504         (ppc_vsr0_upper_regnum): Likewise.
4505         (ppc_efpr0_regnum): Likewise.
4506         (ppc_builtin_type_vec128): New type.
4507         (ppc_num_vsrs): New constant.
4508         (ppc_num_vshrs): New constant.
4509         (ppc_num_efprs): Likewise.
4510         Define POWERPC_VEC_VSX PPC_VSR0_UPPER_REGNUM and PPC_VSR31_UPPER_REGNUM.
4511         (ppc_supply_vsxregset): New prototype.
4512         (ppc_collect_vsxregset): New prototype.
4513
4514         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-vsx32l.c"
4515         Include "features/rs6000/powerpc-vsx64l.c".
4516         (_initialize_ppc_linux_tdep): Initialize VSX-enabled targets.
4517         (ppc_linux_regset_sections): Add new ".reg-ppc-vsx" field.
4518         (ppc32_linux_vsxregset): New 32-bit VSX-enabled regset.
4519         (ppc_linux_regset_from_core_section): Handle VSX core section.
4520         (ppc_linux_core_read_description): Support VSX-enabled core files.
4521
4522         * ppc-linux-tdep.h: Declare *tdesc_powerpc_vsx32l
4523         Declare tdesc_powerpc_vsx64l
4524
4525         * corelow.c (get_core_register_section): Support VSX-enabled
4526         core files.
4527
4528         * features/rs6000/power-vsx.xml: New VSX descriptions.
4529         * features/rs6000/powerpc-vsx32.xml: New file.
4530         * features/rs6000/powerpc-vsx32l.xml: New file.
4531         * features/rs6000/powerpc-vsx64.xml: New file.
4532         * features/rs6000/powerpc-vsx64l.xml: New file.
4533         * features/rs6000/powerpc-vsx32.c: New file (generated).
4534         * features/rs6000/powerpc-vsx32l.c: New file (generated).
4535         * features/rs6000/powerpc-vsx64.c: New file (generated).
4536         * features/rs6000/powerpc-vsx64l.c: New file (generated).
4537         * features/Makefile: Updated with new descriptions.
4538         * regformats/rs6000/powerpc-vsx32l.dat: New file (generated).
4539         * regformats/rs6000/powerpc-vsx64l.dat: New file (generated).
4540
4541 2008-08-15  Vladimir Prus  <vladimir@codesourcery.com>
4542
4543         * ia64-linux.nat (_initialize_ia64_linux_nat): Don't
4544         call linux_target twice.
4545
4546 2008-08-14  Aleksandar Ristovski  <aristovski@qnx.com>
4547
4548         * nto-tdep.c (lm_info): Updated struct lm_info definition from
4549         solib-svr4.c
4550         (LM_ADDR): Use l_addr if available; if not, use link map and set 
4551         l_addr.
4552
4553 2008-08-14  Tom Tromey  <tromey@redhat.com>
4554
4555         * macrocmd.c (macro_define_command): Check for NULL argument.
4556         (macro_undef_command): Likewise.
4557
4558 2008-08-14  Pedro Alves  <pedro@codesourcery.com>
4559
4560         * infcmd.c (continue_1): Add an ERROR_NO_INFERIOR call.
4561
4562 2008-08-13  Pedro Alves  <pedro@codesourcery.com>
4563
4564         * breakpoint.c (always_inserted_auto, always_inserted_on)
4565         (always_inserted_off, always_inserted_enums): New.
4566         (always_inserted_mode): Change type to char* and point to
4567         always_inserted_auto.
4568         (show_always_inserted_mode): In auto mode, also show the current
4569         effect of the option.
4570         (breakpoints_always_inserted_mode): Adjust for the new auto mode.
4571         (_initialize_breakpoint): Make the "set breakpoints
4572         always-inserted" command an enum command.  Extend help to describe
4573         the auto mode.
4574
4575 2008-08-13  Ulrich Weigand  <uweigand@de.ibm.com>
4576
4577         * spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status
4578         query valid) bit.  Ignore bits outside the condition field.
4579         (info_spu_proxydma_command): Ignore bits outside the field.
4580
4581 2008-08-12  Michael Snyder  <msnyder@vmware.com>
4582
4583         * MAINTAINERS: Update my email address.
4584
4585 2008-08-12  Ulrich Weigand  <uweigand@de.ibm.com>
4586
4587         * ppc-linux-nat.c (ppc_linux_get_hwcap): Really get AT_HWCAP.
4588
4589 2008-08-12  Pedro Alves  <pedro@codesourcery.com>
4590
4591         Add no-ack mode to the remote protocol --- optionally stop ACKing
4592         packets and responses when we have a reliable communication
4593         medium.
4594
4595         Based on Apple's GDB, by Jason Molenda <jmolenda@apple.com>
4596
4597         * remote.c (struct remote_state): Add noack_mode field.
4598         (PACKET_QStartNoAckMode): New.
4599         (remote_start_remote): Don't any outstanding packet here.
4600         (remote_open_1): Clear noack_mode.  Ack any outstanding packet
4601         here.  Activate noack mode if requested.
4602         (remote_protocol_features): Add QStartNoAckMode.
4603         (remote_open_1):
4604         (putpkt_binary): Don't send ack in noack mode.
4605         (read_frame): Don't recompute the checksum in noack mode.
4606         (getpkt_sane): Skip sending ack if in noack mode.
4607         (_initialize_remote): Add set/show remote noack mode.
4608         * NEWS:  Note the new features.
4609
4610 2008-08-11  Kevin Buettner  <kevinb@redhat.com>
4611
4612         * rs6000-tdep.c (BL_MASK, BL_INSTRUCTION, BL_DISPLACEMENT_MASK):
4613         New macros.
4614         (rs6000_skip_main_prologue): New function.
4615         (rs6000_gdb_arch_init): Register rs6000_skip_main_prologue.
4616
4617 2008-08-11  Sandra Loosemore  <sandra@codesourcery.com>
4618
4619         * MAINTAINERS (Write After Approval):  Add self.
4620
4621 2008-08-11  Stan Shebs  <stan@codesourcery.com>
4622
4623         ARM BE8 support.
4624         * disasm.c (gdb_disassemble_info): Set endian_code.
4625         * gdbarch.sh (gdbarch_info): New field byte_order_for_code.
4626         * gdbarch.h, gdbarch.c: Regenerate.
4627         * arch-utils.c (initialize_current_architecture): Set the
4628         default byte_order_for_code.
4629         (gdbarch_info_init): Ditto.
4630         (gdbarch_info_fill): Ditto.
4631         * arm-tdep.c (SWAP_INT, SWAP_SHORT): New macros.
4632         (thumb_analyze_prologue): Swap halfword if code endianness is
4633         different from general endianness.
4634         (arm_skip_prologue): Similarly.
4635         (arm_scan_prologue): Ditto.
4636         (thumb_get_next_pc): Ditto.
4637         (arm_get_next_pc): Ditto.
4638         (arm_gdbarch_init): Set byte_order_for_code from BE8 flag,
4639         choose correct endianness for breakpoints.
4640
4641 2008-08-10  Pedro Alves  <pedro@codesourcery.com>
4642
4643         * bsd-kvm.c: Include "gdbthread.h".
4644         (bsd_kvm_ptid): New.
4645         (bsd_kvm_open): Add a main thread.
4646         (bsd_kvm_close): Delete it.
4647         (bsd_kvm_thread_alive): New.
4648         (bsd_kvm_pid_to_str): New.
4649         (bsd_kvm_add_target): Register bsd_kvm_thread_alive and
4650         bsd_kvm_pid_to_str.
4651         (bsd_kvm_add_target): Initialize bsd_kvm_ptid.
4652
4653 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4654
4655         * buildsym.c (start_subfile): Properly cast sentinel in concat
4656         call.
4657         * cp-name-parser.y: Include "config.h".
4658         * xml-tdesc.c (fetch_xml_from_file): Properly cast sentinel in
4659         concat call.
4660         * gdb_select.h: Include sys/time.h if sys/select.h is not
4661         available.
4662
4663 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4664
4665         * go32-nat.c: Include "gdbthread.h".
4666         (go32_stop, go32_kill_inferior): Delete the main thread.
4667         (go32_create_inferior): Add it.
4668         (go32_thread_alive, go32_pid_to_str): New.
4669         (init_go32_ops): Register go32_thread_alive and go32_pid_to_str.
4670
4671 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4672
4673         * go32-nat.c (fetch_register, store_register): Pass the regcache
4674         gdbarch to i386_fp_regnum_p and i386_fpc_regnum_p.
4675         (go32_xfer_memory): Change type of myaddr parameter to gdb_byte.
4676         (struct seg_descr, struct seg_descr): pack the whole struct
4677         instead of each member individually.
4678
4679 2008-08-09  Andreas Schwab  <schwab@suse.de>
4680
4681         * python/python.c (_initialize_python): Use unabbreviated commands
4682         in prefix name.
4683
4684 2008-08-09  Daniel Jacobowitz  <dan@codesourcery.com>
4685
4686         * Makefile.in (stamp-h): Also create .deps.
4687
4688 2008-08-09  Tom Tromey  <tromey@redhat.com>
4689
4690         * Makefile.in (generated_files): Add GNULIB_H.
4691
4692 2008-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4693
4694         * solib-pa64.c (pa64_solib_create_inferior_hook): Don't set
4695         DT_HP_DEBUG_PRIVATE.  Add warning if DT_HP_DEBUG_PRIVATE is not set.
4696         Revise comment.
4697         (pa64_current_sos): Remove map private warning warning.
4698         * solib-som.c: Include string.h and sys/utsname.h.
4699         (get_hpux_major_release): New function.
4700         (som_solib_create_inferior_hook): Read dynamic linker header.  Warn
4701         about shared library private mapping on HP-UX 11 and later.  Only force
4702         private mapping of shared libraries on HP-UX 10 and earlier.
4703         (link_map_start): Delete warning.
4704
4705 2008-08-09  Xuepeng Guo  <xuepeng.guo@intel.com>
4706             H.J. Lu  <hongjiu.lu@intel.com>
4707             Mark Kettenis <kettenis@gnu.org>
4708
4709         * amd64-tdep.c (amd64_frame_cache): Add saved_sp_reg.
4710         (amd64_init_frame_cache): Initialize saved_sp_reg.
4711         (amd64_analyze_stack_align): New.
4712         (amd64_analyze_prologue): Call it.
4713         (amd64_frame_cache): Use saved_sp_reg if it is invalid.  Don't set
4714         %rip to 8 when halfway aligning the stack.
4715
4716         * amd64-tdep.h (amd64_regnum): Add AMD64_R9_REGNUM to
4717         AMD64_R14_REGNUM.
4718
4719         * i386-tdep.c (i386_frame_cache): Remove stack_align.  Add
4720         saved_sp_reg.
4721         (i386_alloc_frame_cache): Remove stack_align.  Initialize
4722         saved_sp_reg to -1.
4723         (i386_analyze_stack_align): Rewrite.
4724         (i386_frame_cache): Use saved_sp_reg if it is valid.
4725
4726 2008-08-09  Ulrich Weigand  <uweigand@de.ibm.com>
4727
4728         * target.c: Include "solib.h".
4729         (target_pre_inferior): Call no_shared_libraries.
4730         * infcmd.c (run_command_1): Do not call objfile_purge_solibs
4731         or clear_solib.
4732         (attach_command): Do not call clear_solib.
4733
4734 2008-08-09  Mark Kettenis  <kettenis@gnu.org>
4735
4736         * i386obsd-nat.c (i386obsd_supply_pcb): Supply the right bytes for
4737         the %eip register.
4738
4739 2008-08-08  Tom Tromey  <tromey@redhat.com>
4740
4741         * Makefile.in (python.o): Remove dependencies.  Use COMPILE and
4742         POSTCOMPILE.
4743         (python-utils.o): Likewise.
4744
4745 2008-08-08  Andreas Schwab  <schwab@suse.de>
4746
4747         * corefile.c (_initialize_core): Remove spurious paren from set
4748         gnutarget doc string.
4749
4750 2008-08-08  Luis Machado  <luisgpm@br.ibm.com>
4751
4752         * ppc-linux-nat.c: Include "auxv.h" and "elf/common.h".
4753         Define PPC_FEATURE_BOOKE.
4754         (ppc_linux_get_hwcap): New function.
4755         (ppc_linux_region_ok_for_hw_watchpoint): Handle PowerPC 440
4756         4-bytes alignment restrictions.
4757         (ppc_linux_insert_watchpoint): Handle PowerPC 440-specific
4758         positioning of the read/write flags.
4759         (ppc_linux_watchpoint_addr_within_range): Handle PowerPC 440
4760         4-bytes alignment.
4761
4762 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
4763
4764         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
4765
4766         * win32-nat.c (win32_add_thread): Change thread argument type to
4767         ptid_t.  Adjust.
4768         (win32_add_thread): Adjust.
4769         (win32_delete_thread): Change thread argument type to ptid_t.
4770         Adjust.
4771         (win32_fetch_inferior_registers, win32_store_inferior_registers)
4772         (win32_resume, get_win32_debug_event, get_win32_debug_event)
4773         (win32_wait, win32_pid_to_exec_file, win32_pid_to_str): Adjust.
4774         (init_win32_ops): Put to_magic last.
4775         (win32_win32_thread_alive): Adjust.
4776
4777 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
4778
4779         * remote-m32r-sdi.c (m32r_thread_alive, m32r_pid_to_str): New.
4780         (init_m32r_ops): Register m32r_thread_alive and m32r_pid_to_str.
4781
4782 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
4783
4784         * remote-m32r-sdi.c: Include "gdbthread.h".
4785         (remote_m32r_ptid): New.
4786         (m32r_close): Delete the main thread.
4787         (m32r_resume): Set inferior_ptid toA remote_m32r_ptid. Add the
4788         main thread.
4789         (m32r_kill, m32r_load, sdireset_command): Delete the main thread.
4790         (_initialize_remote_m32r): Initialize remote_m32r_ptid.
4791
4792 2008-08-07  Tom Tromey  <tromey@redhat.com>
4793             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4794
4795         * aclocal.m4, configure: Rebuild.
4796         * configure.in: Call ZW_CREATE_DEPDIR,
4797         ZW_PROG_COMPILER_DEPENDENCIES, AC_PROG_MAKE_SET.
4798         (MAKE, GMAKE): New substs.
4799         * acinclude.m4: Include depstand.m4.
4800         * Makefile.in (DEPMODE, DEPDIR, COMPILE.post, COMPILE.pre,
4801         COMPILE, POSTCOMPILE, depcomp): New variables.
4802         Remove all _h variables.
4803         Remove many .o targets.
4804         ($(srcdir)/copying.c): avoid backslash-newline after comment
4805         sign (@maintainer_mode_true@).
4806         (HFILES_NO_SRCDIR): Regenerate.
4807         (generated_files): New variable.
4808         (all_gdbtk_cflags): Likewise.
4809         (.c.o): Rewrote.
4810         (init.o, version.o, copying.o): Remove.
4811         (distclean): Remove DEPDIR.
4812         (test-cp-name-parser.o, hpux-thread.o, main.o, monitor.o,
4813         printcmd.o, procfs.o, v850ice.o): Rewrite.
4814         (cli-cmds.o, cli-decode.o, cli-dump.o, cli-interp.o, cli-logging.o,
4815         cli-script.o, cli-setshow.o, cli-utils.o): Likewise.
4816         (gdbtk.o, gdbtk-bp.o, gdbtk-cmds.o, gdbtk-hooks.o, gdbtk-interp.o,
4817         gdbtk-main.o, gdbtk-register.o, gdbtk-stack.o, gdbtk-varobj.o,
4818         gdbtk-wrapper.o): Likewise.
4819         (mi-cmd-break.o, mi-cmd-disas.o, mi-cmd-env.o, mi-cmd-file.o,
4820         mi-cmds.o, mi-cmd-stack.o, mi-cmd-target.o, mi-cmd-var.o,
4821         mi-console.o, mi-getopt.o, mi-interp.o, mi-main.o, mi-out.o,
4822         mi-parse.o, mi-symbol-cmds.o, mi-common.o, signals.o, tui.o,
4823         tui-command.o, tui-data.o, tui-disasm.o, tui-file.o, tui-hooks.o,
4824         tui-interp.o, tui-io.o, tui-layout.o, tui-main.o, tui-out.o,
4825         tui-regs.o, tui-source.o, tui-stack.o, tui-win.o, tui-windata.o,
4826         tui-wingeneral.o, tui-winsource.o): Likewise.
4827         (all_object_files): New variable.
4828         ($(all_object_files)): New target.
4829         Include dependency files, when using GNU Make.
4830
4831 2008-08-07  Ulrich Weigand  <uweigand@de.ibm.com>
4832
4833         * spu-tdep.c (info_spu_dma_cmdlist): Only show entries with
4834         the valid bit set.  Ensure display order respects partial
4835         order defined by dependency bits.
4836
4837 2008-08-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4838
4839         * solib-pa64.c (read_dld_descriptor): Return zero if load map is not
4840         setup.
4841
4842 2008-08-06  Mark Kettenis  <kettenis@gnu.org>
4843
4844         * i386obsd-nat.c (i386obsd_supply_pcb): Adjust for changes in
4845         OpenBSD 4.3.
4846
4847 2008-08-06  Vladimir Prus  <vladimir@codesourcery.com>
4848             Tom Tromey  <tromey@redhat.com>
4849             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4850             Doug Evans  <dje@google.com>
4851
4852         * Makefile.in (SUBDIR_PYTHON_OBS, SUBDIR_PYTHON_SRCS,
4853         SUBDIR_PYTHON_DEPS, SUBDIR_PYTHON_LDFLAGS, SUBDIR_PYTHON_CFLAGS,
4854         PYTHON_CFLAGS): New.
4855         (python_h, python_internal_h): New.
4856         (cli-script.o): Depend on python.h
4857         (python.o, python-utils.o): New.
4858         * cli/cli-script.c (print_command_lines): Handle python_control.
4859         (execute_control_command): Handle python_control.
4860         (execute_control_command_untraced): New function.
4861         (while_command): Call execute_control_command_untraced.
4862         (if_command): Likewise.
4863         (get_command_line): Remove static attribute.
4864         (read_next_line): Handle "python".
4865         (recurse_read_control_structure): Handle python_control.
4866         (read_command_lines): Handle python_control.
4867         Include python.h.
4868         * cli/cli-script.h (get_command_line): Add prototype.
4869         (execute_control_command_untraced): Likewise.
4870         * configure.ac: Add --with-python.
4871         * defs.h (enum command_control_type) <python_control>: New
4872         constant.
4873         * python/python-internal.h: New file.
4874         * python/python.c: New file.
4875         * python/python.h: New file.
4876         * python/python-utils.c: New file.
4877         * NEWS: Mention Python scripting support and its new commands.
4878
4879 2008-08-06  Ulrich Weigand  <uweigand@de.ibm.com>
4880
4881         * spu-tdep.c (spu_gdbarch_init): Call set_gdbarch_frame_red_zone_size.
4882
4883 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
4884
4885         * MAINTAINERS (Write After Approval): Add self.
4886
4887 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
4888
4889         * breakpoint.c (hw_breakpoint_used_count): Use breakpoint_enabled.
4890         (insert_breakpoint_locations): Likewise.
4891
4892 2008-08-05  Phil Muldoon  <pmuldoon@redhat.com>
4893
4894         * breakpoint.c (create_longjmp_breakpoint): Remove unused struct
4895         breakpoint.
4896         (set_longjmp_breakpoint): Likewise.
4897
4898 2008-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4899
4900         PR build/2490
4901         * solib-pa64.c: Only compile if both HAVE_ELF_HP_H and __LP64__ are
4902         defined.
4903
4904 2008-08-05  Tom Tromey  <tromey@redhat.com>
4905
4906         * bcache.c (deprecated_bcache_added): Initialize obstack.
4907         (bcache_xmalloc): Don't initialize obstack.
4908         (bcache_xfree): Conditionally free obstack.
4909         (bcache_memory_used): Update.
4910
4911 2008-08-05  Tom Tromey  <tromey@redhat.com>
4912
4913         * symfile.c (add_psymbol_to_bcache): Return a const pointer.  Use
4914         bcache_full.
4915         (append_psymbol_to_list): Accept a const pointer.
4916         (add_psymbol_to_list): Fix const correctness.
4917         * bcache.h: (deprecated_bcache_added, deprecated_bcache): Remove.
4918         (bcache_full): Declare.
4919         * bcache.c (bcache_data, deprecated_bcache): Remove.
4920         (bcache): Use bcache_full.
4921         (bcache_full): Rename from deprecated_bcache_added.  Change return
4922         type.
4923
4924 2008-08-04  Stan Shebs  <stan@codesourcery.com>
4925
4926         * solib-svr4.c (BKPT_AT_SYMBOL): Remove, always defined.
4927         (bkpt_names): Remove SOLIB_BKPT_NAME, never defined.
4928         (enable_break): Remove test of BKPT_AT_SYMBOL.
4929
4930 2008-08-02  Keith Seitz  <keiths@redhat.com>
4931
4932         * acinclude.m4: Include ../config/tcl.m4 to pick up
4933         standard Tcl configury bits.
4934         Remove all Tcl, Tk, Itcl, Itk, etc definitions.
4935         * configure.ac: Don't check if ../itcl exists when building
4936         gdbtk. It could be installed.
4937         Rewrite gdbtk configury to allow for using system-supplied
4938         Tcl and Tk. Gdbtk no longer requires build-time access to
4939         itcl and itk.
4940         * Makefile.in: Remove everything related to itcl and itk.
4941         Rewrite the Tcl bits for gdbtk to correspond to rewrite of
4942         configure.ac.
4943         Remove v850ice.o build rule.
4944         (ALL_TCL_CFLAGS): New convenience defintion. Change all
4945         gdbtk sources to use it.
4946         * configure: Regenerate.
4947
4948 2008-07-31  Stan Shebs  <stan@codesourcery.com>
4949
4950         * coffread.c (coff_symtab_read): Remove FUNCTION_EPILOGUE_SIZE.
4951
4952 2008-07-30  Stan Shebs  <stan@codesourcery.com>
4953
4954         * objfiles.c (TARGET_KEEP_SECTION): Remove.
4955         (add_to_objfile_sections): Remove use.
4956
4957 2008-07-29  Tom Tromey  <tromey@redhat.com>
4958
4959         * cli/cli-decode.c (lookup_cmd_1): Use memcpy.
4960         (lookup_cmd_composition): Likewise.
4961
4962 2008-07-29  Tom Tromey  <tromey@redhat.com>
4963
4964         * cli/cli-cmds.c (edit_command): Remove unused variables.  Delete
4965         dead code.  Fix indentation.
4966
4967 2008-07-29  Stan Shebs  <stan@codesourcery.com>
4968
4969         * main.c (captured_main): Remove long-unused #if 0 blocks.
4970
4971 2008-07-28  Tom Tromey  <tromey@redhat.com>
4972
4973         * annotate.h (deprecated_annotate_starting_hook): Remove.
4974         (deprecated_annotate_stopped_hook): Remove.
4975         (deprecated_annotate_exited_hook): Remove.
4976         * Makefile.in (annotate.o): Depend on observer_h.
4977         * top.c (deprecated_delete_breakpoint_hook): Remove.
4978         (deprecated_create_breakpoint_hook): Likewise.
4979         (deprecated_modify_breakpoint_hook): Likewise.
4980         * interps.c (clear_interpreter_hooks): Update for removed hooks.
4981         * breakpoint.c (mention): Don't call removed hook.
4982         (delete_breakpoint): Likewise.
4983         (disable_breakpoint): Likewise.
4984         (do_enable_breakpoint): Likewise.
4985         * annotate.c: Include observer.h.
4986         (breakpoint_changed): Change type of argument.
4987         (_initialize_annotate): Register observers.
4988         (deprecated_annotate_starting_hook): Remove.
4989         (deprecated_annotate_stopped_hook): Remove.
4990         (deprecated_annotate_exited_hook): Remove.
4991         (annotate_starting): Update for hook removal.
4992         (annotate_stopped): Likewise.
4993         (annotate_exited): Likewise.
4994         * defs.h (deprecated_delete_breakpoint_hook): Remove.
4995         (deprecated_create_breakpoint_hook): Likewise.
4996         (deprecated_modify_breakpoint_hook): Likewise.
4997
4998 2008-07-28  Tom Tromey  <tromey@redhat.com>
4999
5000         * main.c (captured_main): Don't use BEFORE_MAIN_LOOP_HOOK.
5001
5002 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5003
5004         * configure.ac: Check for the GNU/Linux ptrace signature.
5005         * configure: Regenerated.
5006
5007 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5008
5009         * linux-nat.c (resume_callback): Add more debugging output.
5010         (linux_nat_has_pending_sigint): New function, based on
5011         linux_nat_has_pending.
5012         (set_ignore_sigint, maybe_clear_ignore_sigint): New functions.
5013         (stop_wait_callback): Remove flush_mask handling.  Honor
5014         ignore_sigint.  Call maybe_clear_ignore_sigint.  Pass NULL
5015         to recursive calls.
5016         (linux_nat_has_pending, flush_callback): Remove.
5017         (linux_nat_filter_event): Check for ignore_sigint.
5018         (linux_nat_wait): Remove flush_mask support and call to
5019         flush_callback.  Use set_ignore_sigint and maybe_clear_ignore_sigint.
5020         * linux-nat.h (struct lwp_info): Add ignore_sigint field.
5021
5022 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5023
5024         * linux-nat.c (count_events_callback, select_event_lwp_callback): Only
5025         report events from resumed threads.
5026
5027 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5028
5029         * mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
5030         (mips_linux_init_abi): Set tdep->syscall_next_pc.
5031         * mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
5032         mips-tdep.h.
5033         (mips32_next_pc): Handle the syscall instruction.
5034         * mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
5035         from mips-tdep.c.  Add syscall_next_pc to gdbarch_tdep.
5036
5037 2008-07-26  Tom Tromey  <tromey@redhat.com>
5038
5039         PR gdb/1158:
5040         * valops.c (value_struct_elt): Treat function-valued field as a
5041         static method.
5042
5043 2008-07-26  Tom Tromey  <tromey@redhat.com>
5044
5045         PR gdb/1136:
5046         * macroexp.c (get_punctuator) <punctuators>: Rearrange to put
5047         longer tokens first.
5048
5049 2008-07-26  Vladimir Prus  <vladimir@codesourcery.com>
5050
5051         Kill cmd_async_ok.
5052         * cli/cli-decode.h (CMD_ASYNC_OK, set_cmd_async_ok)
5053         (get_cmd_async_ok): Remove.
5054         * cli/cli-decode.c (set_cmd_async_ok, get_cmd_async_ok): Remove.
5055         * cli/cli-cmds.c (init_cli_cmds): Don't use set_cmd_async_ok.
5056         * infcmd.c (_initialize_infcmd): Likewise.
5057         * thread.c (_initialize_thread): Likewise.
5058
5059 2008-07-25  Joseph Myers  <joseph@codesourcery.com>
5060
5061         * mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
5062         128-bit long doubles in even-odd pairs of FPRs.  Do not
5063         right-align float arguments for big-endian.
5064         (mips_n32n64_return_value): Apply return value convention for
5065         structs containing one or two floating-point values to soft-float
5066         as well as hard-float.  Handle 128-bit long doubles in such
5067         structs.
5068         (mips_o32_push_dummy_call): Only skip one integer register for a
5069         float argument passed in an FPR.
5070
5071 2008-07-25  Tom Tromey  <tromey@redhat.com>
5072
5073         * tui/tui-hooks.c: Include observer.h.
5074         (tui_event_default, tui_old_event_hooks, tui_event_hooks):
5075         Remove.
5076         (tui_bp_created_observer, tui_bp_deleted_observer,
5077         tui_bp_modified_observer): New globals.
5078         (tui_install_hooks): Use observers, not events.
5079         (tui_remove_hooks): Likewise.
5080         * mi/mi-cmd-break.c: Include observer.h, not gdb-events.h.
5081         (mi_breakpoint_observers_installed, mi_can_breakpoint_notify): New
5082         globals.
5083         (breakpoint_notify): Check mi_can_breakpoint_notify.
5084         (breakpoint_hooks): Remove.
5085         (mi_cmd_break_insert): Attach observers.  Don't use events.
5086         * tracepoint.c: Include observer.h, not gdb-events.h.
5087         (tracepoint_operation, trace_pass_command): Notify observer.
5088         * interps.c: Don't include gdb-events.h.
5089         (clear_interpreter_hooks): Don't call clear_gdb_event_hooks.
5090         * gdbarch.c: Rebuild.
5091         * gdbarch.sh: Emit include for observer.h, not gdb-events.h.
5092         (deprecated_current_gdbarch_select_hack): Notify observer.
5093         * breakpoint.h: Don't include gdb-events.h.
5094         * breakpoint.c: Don't include gdb-events.h.
5095         (condition_command): Notify observer.
5096         (commands_command): Likewise.
5097         (commands_from_control_command): Likewise.
5098         (mention, delete_breakpoint, set_ignore_count): Likewise.
5099         (disable_breakpoint, do_enable_breakpoint): Likewise.
5100         * Makefile.in (gdb_events_h): Remove.
5101         (breakpoint_h): Update.
5102         (COMMON_OBS): Remove gdb-events.o.
5103         (gdb-events.o): Remove.
5104         (breakpoint.o, gdbarch.o, interps.o, tracepoint.o, gdbtk-bp.o,
5105         gdbtk-hooks.o, mi-cmd-break.o, tui-hooks.o): Update.
5106         * gdb-events.c: Remove.
5107         * gdb-events.h: Remove.
5108         * gdb-events.sh: Remove.
5109
5110 2008-07-24  Pedro Alves  <pedro@codesourcery.com>
5111
5112         * remote.c (remote_threads_extra_info): Don't query the remote
5113         server about info on the internally added main thread.
5114
5115 2008-07-24  Aleksandar Ristovski  <aristovski@qnx.com>
5116
5117         * nto-procfs.c (procfs_attach): Populate initial thread list.
5118         (procfs_wait): Return new pid, built from the inferior status.
5119
5120 2008-07-23  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5121
5122         * configure.ac (CONFIG_INITS): Delete long obsoleted variable.
5123         * configure: Regenerate.
5124
5125 2008-07-23  Aleksandar Ristovski  <aristovski@qnx.com>
5126
5127         * nto-procfs.c (procfs_xfer_memory): Changed signature.
5128         (procfs_resume): Workaround for dereferencing type-punned pointer
5129         warning.
5130         * nto-tdep.c (nto_parse_redirection): Change signature to be const
5131         correct.
5132         * nto-tdep.h (nto_parse_redirection): Likewise.
5133
5134 2008-07-21  Stan Shebs  <stan@codesourcery.com>
5135
5136         Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
5137         * gdbarch.sh: Adjust comment to refer to
5138         in_solib_dynsym_resolve_code().
5139         * gdbarch.h, gdbarch.c: Update.
5140         * solib-osf.c: Ditto.
5141         * infrun.c: Ditto.
5142         (handle_inferior_event): Use in_solib_dynsym_resolve_code
5143         unconditionally.
5144         * config/mips/nm-irix5.h: Remove undef of
5145         IN_SOLIB_DYNSYM_RESOLVE_CODE.
5146
5147 2008-07-21  Tom Tromey  <tromey@redhat.com>
5148
5149         * symfile.c (reread_symbols): Don't pass argument to observer.
5150         * exec.c (exec_file_attach): Don't pass argument to observer.
5151         * ada-lang.c (ada_executable_changed_observer): Remove argument.
5152         * symtab.c (symtab_observer_executable_changed): Remove argument.
5153         * observer.sh: Handle functions with no arguments.
5154
5155 2008-07-20  Sergei Poselenov  <sposelenov@emcraft.com>
5156             Chris Demetriou  <cgd@google.com>
5157
5158         * elfread.c (elf_symfile_segments): Fix the check that each loadable
5159         section fits within an ELF segment to handle ELF segments that hit
5160         the end of the address space.
5161
5162 2008-07-20  Chris Demetriou  <cgd@google.com>
5163
5164         * MAINTAINERS (Write After Approval): Add self.
5165
5166 2008-07-18  Tom Tromey  <tromey@redhat.com>
5167
5168         PR gdb/855:
5169         * NEWS: Add entry for macro commands.
5170         * Makefile.in (macrocmd.o): Add gdb_string.h.
5171         * macroscope.h (user_macro_scope): Declare.
5172         (default_macro_scope): Update documentation.
5173         (macro_user_macros): Declare.
5174         * c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
5175         Use user_macro_scope.
5176         (null_macro_lookup): Remove.
5177         * macrotab.h (macro_callback_fn): Declare.
5178         (macro_for_each): Likewise.
5179         (macro_allow_redefinitions): Likewise.
5180         * macrotab.c (foreach_macro): New function
5181         (macro_for_each): Likewise.
5182         (struct macro_table) <redef_ok>: New field.
5183         (macro_allow_redefinitions): New function.
5184         (new_macro_table): Update.
5185         (macro_define_function): Likewise.
5186         (macro_define_object): Likewise.
5187         * macroscope.c (user_macro_scope): New function.
5188         (default_macro_scope): Use it.
5189         (macro_user_macros): New global.
5190         (standard_macro_lookup): Look in macro_user_macros.
5191         (_initialize_macroscope): New function.
5192         * macroexp.h (macro_is_whitespace, macro_is_digit,
5193         macro_is_identifier_nondigit): Declare.
5194         * macroexp.c (macro_is_whitespace): Rename.  No longer static.
5195         (macro_is_digit): Likewise.
5196         (macro_is_identifier_nondigit): Likewise.
5197         (get_identifier): Update.
5198         (get_pp_number): Likewise.
5199         (get_token): Likewise.
5200         * macrocmd.c (skip_ws): New function.
5201         (extract_identifier): Likewise.
5202         (free_macro_definition_ptr): Likewise.
5203         (user_macros): Remove.
5204         (macro_define_command): Implement.
5205         (_initialize_macrocmd): Update.
5206         (macro_undef_command): Implement.
5207         (print_one_macro): New function.
5208         (macro_list_command): Implement.
5209
5210 2008-07-18  Joseph Myers  <joseph@codesourcery.com>
5211
5212         * configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
5213         in BFD ELF check.
5214         * configure: Regenerate.
5215
5216 2008-07-17  Paul Pluzhnikov  <ppluzhnikov@google.com>
5217
5218         * auxv.c (fprint_target_auxv): Stop at AT_NULL.
5219
5220 2008-07-15  Andreas Schwab  <schwab@suse.de>
5221
5222         * valops.c (value_cast_pointers): Follow typedefs when checking
5223         result of coercion.
5224
5225 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5226
5227         * block.c (block_function): Renamed to ...
5228         (block_linkage_function): ... this.  All callers changed.
5229         * block.h (block_function): Renamed to ...
5230         (block_linkage_function): ... this.
5231
5232 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5233
5234         * mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.
5235
5236 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5237
5238         * frame.c (frame_sp_unwind): Delete.
5239         (get_frame_sp): Do not use it.
5240         * frame.h (frame_sp_unwind): Delete prototype.
5241
5242 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5243
5244         * ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.
5245
5246 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5247
5248         * dwarf2-frame.c (dwarf2_frame_cache): Update comment.
5249         * frame.c (frame_unwind_address_in_block): Delete.
5250         (get_frame_address_in_block): Do not use it.  Check the type
5251         of the next frame first.
5252         (frame_cleanup_after_sniffer): Update comment.
5253         * frame.h (frame_unwind_address_in_block): Delete prototype.
5254         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
5255
5256 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5257
5258         * frame.c (frame_func_unwind): Delete.
5259         (get_frame_func): Do not use it.
5260         * frame.h (frame_func_unwind): Delete prototype.
5261         * hppa-tdep.c (hppa_frame_cache): Update comment.
5262         * rs6000-tdep.c (rs6000_frame_cache): Update comment.
5263
5264 2008-07-14  Stan Shebs  <stan@codesourcery.com>
5265
5266         * remote-sim.c (init_gdbsim_ops): Remove
5267         TARGET_REDEFINE_DEFAULT_OPS.
5268
5269 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5270
5271         * findvar.c (read_var_value): Remove unused variable.
5272
5273 2008-07-15  Luis Machado  <luisgpm@br.ibm.com>
5274
5275         * infrun.c (handle_inferior_event): Tag threads as stopped
5276         before inserting breakpoints.
5277
5278 2008-07-15  Hui Zhu  <teawater@gmail.com>
5279
5280         * MAINTAINERS: Added myself to section Write After Approval.
5281
5282 2008-07-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
5283
5284         PR gdb/2477
5285         * cp-abi.c (value_virtual_fn_field): Handle invalid pointers.
5286
5287 2008-07-14  Pedro Alves  <pedro@codesourcery.com>
5288
5289         * i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
5290         (i386_dicos_push_dummy_code): New.
5291         (i386_dicos_init_abi): Don't register i386_dicos_frame_align.
5292         Register i386_dicos_push_dummy_code.
5293
5294 2008-07-14  Markus Deuling  <deuling@de.ibm.com>
5295
5296         * mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
5297         (mips_n32n64_push_dummy_call, mips_o64_return_value)
5298         (mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
5299
5300         (MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
5301         (fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
5302         (mips_n32n64_fp_arg_chunk_p): Update caller.
5303
5304         (mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
5305         (mips_n32n64_push_dummy_call): Update caller.
5306
5307         (MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
5308         current_gdbarch.
5309         (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
5310         (mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
5311
5312
5313         (MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
5314         current_gdbarch.
5315         (mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
5316         (mips_o64_push_dummy_call): Update caller.
5317
5318         (MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
5319         (fp_register_arg_p, mips_dump_tdep): Update caller.
5320
5321         (set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
5322         (mips16_scan_prologue, mips32_scan_prologue): Update caller.
5323
5324         (reset_saved_regs): Make static.  Add gdbarch as parameter.  Replace
5325         current_gdbarch.
5326         (mips32_scan_prologue): Update caller.
5327
5328         (heuristic_proc_start): Add gdbarch as parameter. Replace
5329         current_gdbarch.
5330         (mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
5331
5332         * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
5333         (mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
5334         the current architecture. Update call to getregs_supplies.
5335         (getregs_supplies): Add gdbarch as parameter and replace
5336         current_gdbarch.
5337
5338         * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
5339         get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
5340         NBSD_MIPS_JB_ELEMENT_SIZE.
5341         (NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
5342         replace current_gdbarch.
5343
5344         * remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
5345         current_gdbarch.
5346         (mips_fetch_registers, mips_store_registers): Update call
5347         to mips_map_regno.
5348         (mips_load): Use get_regcache_arch to get at the current_architecture
5349         and replace current_gdbarch.
5350
5351 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5352
5353         * thread.c (restore_selected_frame): On fail to restore, select
5354         the innermost frame, and don't crash when warning the user.
5355
5356 2008-07-13  Hui Zhu  <teawater@gmail.com>
5357
5358         * symtab.c (expand_line_sal): Fix a memory leak.
5359
5360 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5361
5362         * utils.c (struct continuation): Define as inheriting struct
5363         cleanup.
5364         (add_continuation, do_all_continuations)
5365         (discard_all_continuations, add_intermediate_continuation)
5366         (do_all_intermediate_continuations)
5367         (discard_all_intermediate_continuations): Adjust.
5368
5369 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5370
5371         Skip varobj in running threads.
5372         * mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
5373         thread is not stopped, skip the varobj.
5374         * Makefile.in: Update dependencies.
5375
5376 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5377
5378         Enable all commands while inferiour is running
5379         * mi/mi-main.c (mi_cmd_execute): Don't check if
5380         inferiour is executing.
5381
5382 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5383
5384         Allow all CLI command even if target is executing.
5385         * gdb/top.c (execute_command_1): Don't check if the inferiour
5386         is running.
5387
5388 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5389
5390         * mi/mi-main.c (mi_cmd_execute): Remove unused variable.
5391         Fix printing of frame, when frame is wrong.
5392
5393 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5394
5395         * spu-tdep.c (spu_frame_unwind_cache): Do not error if
5396         backchain is unreadable.
5397
5398 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5399
5400         * spu-linux-nat.c: Include "gdbthread.h".
5401         (spu_child_post_startup_inferior): Register main thread.
5402         (spu_child_post_attach): Likewise.
5403         * Makefile.in (spu-linux-nat.o): Update dependencies.
5404
5405 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5406
5407         Rewrite continuations internals on top of cleanups and plug
5408         continuation arguments leaks.
5409
5410         * defs.h (struct continuation): Make it opaque.
5411         (add_continuation, add_intermediate_continuation): Drop the int
5412         argument of the continuation hook argument.  Add
5413         continuation_free_args argument.
5414         (do_all_continuations, do_all_intermediate_continuations): Drop
5415         the error_p argument.
5416
5417         * utils.c (add_continuation): Drop the int argument of the
5418         continuation hook argument.  Add continuation_free_args argument.
5419         Reimplement on top of cleanups.
5420         (do_all_continuations): Drop error argument.  Reimplement on top
5421         of cleanups.
5422         (discard_all_continuations): Reimplement on top of cleanups.
5423         (add_intermediate_continuation): Drop the int argument of the
5424         continuation hook argument.  Add continuation_free_args argument.
5425         Reimplement on top of cleanups.
5426         (do_all_intermediate_continuations): Drop error argument.
5427         Reimplement on top of cleanups.
5428         (discard_all_intermediate_continuations): Reimplement on top of
5429         cleanups.
5430
5431         * breakpoint.c (until_break_command_continuation): Drop error
5432         argument.  Add xfree as continuation argument deleter.
5433
5434         * inf-loop.c (inferior_event_handler): On error, discard all
5435         continuations.  Adjust to new do_all_intermediate_continuations
5436         and do_all_continuations interfaces.
5437
5438         * infcmd.c (step_1_continuation): Drop error_p argument.  Adjust.
5439         Pass xfree as continuation argument deleter.
5440         (finish_command_continuation): Drop error_p argument.  Adjust.
5441         (finish_command_continuation_free_arg): New.
5442         (finish_command): Pass finish_command_continuation_free_arg as
5443         continuation argument deleter.  Adjust to new do_all_continuations
5444         interfaces.
5445         (attach_command_continuation): Drop error_p argument.
5446         (attach_command_continuation_free_args): New.
5447         (attach_command): Pass attach_command_continuation_free_args as
5448         continuation argument deleter.
5449
5450         * interps.c (interp_set): Adjust to new do_all_continuations
5451         interfaces.
5452
5453         * event-top.c (stdin_event_handler): In error, also discard the
5454         intermediate continuations.
5455
5456 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5457
5458         Replace struct continuation_args by void* and per command structs.
5459
5460         * top.c (execute_command): Remove unused arg1 and arg2 locals.
5461
5462         * breakpoint.c (struct until_break_command_continuation_args):
5463         New.
5464         (until_break_command_continuation): Take a void* instead of a
5465         continuations_arg.  Adjust.
5466         (until_break_command): Adjust to use struct
5467         until_break_command_continuation_args instead of struct
5468         continuation_arg.
5469
5470         * infcmd.c (struct step_1_continuation_args): New.
5471         (step_1_continuation): Take a void* instead of a
5472         continuations_arg.  Adjust to use struct step_1_continuation_args.
5473         (step_once): Adjust to use struct step_1_continuation_args.
5474
5475         (struct finish_command_continuation_args): New.
5476         (finish_command_continuation): Take a void* instead of a
5477         continuations_arg.  Adjust to use struct
5478         finish_command_continuation_args.
5479         (finish_command): Adjust to use struct
5480         finish_command_continuation_args.
5481         (struct attach_command_continuation_args): New.
5482         (attach_command_continuation): Take a void* instead of a
5483         continuations_arg.  Adjust to use struct
5484         attach_command_continuation_args.
5485         (attach_command): Adjust to use struct
5486         attach_command_continuation_args.
5487
5488         * defs.h (struct continuation_arg): Delete.
5489         (struct continuation): Replace the struct continuation_arg*
5490         parameter of continuation_hook by a void*.  Replace "arg_list"
5491         member by a new "args" member with void* type.
5492         (add_continuation, add_intermediate_continuation): Replace struct
5493         continuation_arg type usages by void* usages.
5494
5495         * utils.c (add_continuation, do_all_continuations)
5496         (add_intermediate_continuation)
5497         (do_all_intermediate_continuations): Replace struct
5498         continuation_arg type usages by void* usages.  Pass "args" instead
5499         of "arg_list".
5500
5501 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5502
5503         * infrun.c (struct thread_stepping_state): Delete sal member.
5504         (init_thread_stepping_state): Add local sal.  Use it instead of
5505         tss->sal.
5506         (handle_inferior_event): New local stop_pc_sal.  Use it instead of
5507         tss->sal.
5508         (step_into_function): Add local stop_func_sal.  Use it instead of
5509         tss->sal.
5510
5511 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5512
5513         Implement -exec-continue/-exec-interrupt --all.
5514         * infcmd.c (continue_1): New, extracted from
5515         (continue_command): ...here.
5516         (interrupt_target_1): New, extracted from
5517         (interrupt_target_command): ...here.
5518         * inferior.h (continue_1, interrupt_target_1): New.
5519         * mi/mi-main.c (mi_cmd_exec_continue)
5520         (mi_cmd_exec_interrupt): Handle --all.
5521
5522 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5523
5524         Implement --thread and --frame.
5525         * gdbthread.h (find_thread_id): Declare.
5526         * thread.c (find_thread_id): Make non-static.
5527         * mi/mi-main.c (mi_cmd_execute): Switch to the right
5528         thread and frame, if necessary.
5529         * mi/mi-parse.c (mi_parse): Handle --thread and --frame.
5530         * mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
5531
5532 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5533
5534         * infrun.c (resume): Discard cleanups on early exit path.
5535
5536 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5537
5538         * infrun.c (normal_stop): For MI, report which threads
5539         were stopped.
5540
5541 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5542
5543         Report thread state in -thread-info output.
5544         * thread.c (print_thread_info): Add new field "state".
5545
5546 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5547
5548         * infrun.c (handle_inferior_event): Also ignore a
5549         TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
5550
5551 2008-07-11  Tom Tromey  <tromey@redhat.com>
5552
5553         * completer.c (complete_line_internal): New function, from
5554         complete_line.  Add 'for_help' parameter.
5555         (complete_line): Use it.
5556         (command_completer): Move later.  Rewrite.
5557
5558 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5559
5560         * thread.c (thread_apply_command): Move making the cleanup out of
5561         the loop.
5562
5563 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5564
5565         Exited threads.
5566
5567         * thread.c (enum thread_state): New.
5568         (thread_state main_thread_running): Delete, in favor of...
5569         (thread_state main_thread_state): ... this.  Update throughout.
5570         (clear_thread_inferior_resources): New, split from free_thread.
5571         (free_thread): Call clear_thread_inferior_resources.
5572         (init_thread_list): Set main thread to stopped state.
5573         (add_thread_silent): Take care of PTID reuses.
5574         (delete_thread): If deleting inferior_ptid or a thread with
5575         refcount > 0, mark it as exited, but still keep it in the list.
5576         Only notify of thread exits, if we haven't done so yet.
5577         (iterate_over_threads): Make it safe to delete threads while
5578         iterating over them.
5579         (do_captured_list_thread_ids): Don't account for exited threads.
5580         (thread_alive): Check for the THREAD_EXITED state, and don't set
5581         ptid to -1 on exited threads.
5582         (set_running): Update to account for extra possible states.
5583         (is_thread_state): New.
5584         (is_stopped, is_exited): New.
5585         (is_running): Implement in terms of is_thread_state.
5586         (any_running): Update.
5587         (print_thread_info): Update.  Account for exited threads.  Don't
5588         warn about missed frame restoring here, its done in the cleanup.
5589         (switch_to_thread): Don't read from a thread that has gone.
5590         (restore_current_thread): In non-stop mode, do a full context
5591         switch.
5592         (restore_selected_frame): Add a frame_level argument.  Rewrite.
5593         (struct current_thread_cleanup): Add selected_frame_level and
5594         was_stopped members.
5595         (do_restore_current_thread_cleanup): Check if thread was stopped
5596         and still is, and if the target has registers, stack and memory
5597         before restoring the selected frame.  Don't delete the cleanup
5598         argument here.
5599         (restore_current_thread_cleanup_dtor): New.
5600         (make_cleanup_restore_current_thread): Remove all arguments.
5601         Rewrite.
5602         (thread_apply_all_command): Update.  Prune threads.
5603         (thread_apply_command): Update.
5604         (thread_command): Account for currently selected exited thread.
5605         (do_captured_thread_select): Check for a running thread.  Prune
5606         threads.
5607         (_initialize_thread): Make "info threads", "thread", "thread
5608         apply", and "thread apply all" appliable without a selected thread.
5609         * gdbthread.h (struct thread_info): Replace running_ by state_.
5610         Add refcount.
5611         (is_exited, is_stopped): Declare.
5612         (make_cleanup_restore_current_thread): Remove all arguments.
5613         * infrun.c: Include "event-top.h".
5614         (fetch_inferior_event): In non-stop mode, restore selected thread
5615         and frame after handling the event and running breakpoint
5616         commands.  Display GDB prompt if needed.
5617         (normal_stop): In non-stop mode, don't print thread switching
5618         notice.
5619         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
5620         (get_cmd_no_selected_thread_ok): New.
5621         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
5622         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
5623         Declare.
5624         * cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
5625         no-selected-thread ok.
5626         * top.c (execute_command): Check for non no-selected-thread-ok
5627         commands.
5628         * linux-nat.c (struct saved_ptids, threads_to_delete)
5629         (record_dead_thread, prune_lwps): Delete.
5630         (exit_lwp): Unconditionally delete thread.
5631         (linux_nat_resume): Remove prune_lwps call.
5632         * infcmd.c (proceed_thread_callback): Check if !is_stopped instead
5633         of is_running.  Adjust to make_cleanup_restore_current_thread
5634         interface change.
5635         * mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
5636         selected thread has exited.
5637         * inf-loop.c (inferior_event_handler): Don't display the prompt
5638         here.
5639         * varobj.c (c_value_of_root): Update.
5640         * defs.h (make_cleanup_dtor): Declare.
5641         * utils.c (make_cleanup_dtor): New.
5642
5643         * Makefile.in (infrun.o): Depend on $(event_top_h).
5644
5645 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5646
5647         Add "continue -a" and "interrupt -a" options for non-stop mode.
5648
5649         * infcmd.c (proceed_thread_callback, do_context_switch_to): New.
5650         (continue_command): Add "-a" option.
5651         (interrupt_target_command): Add "-a" option.
5652         (_initialize_infcmd): Add extend help of continue and interrupt
5653         command to mention the new "-a" option.  Mark "continue" async ok.
5654
5655 2008-07-10  Doug Evans  <dje@google.com>
5656
5657         Add "set print symbol-loading on|off".
5658         * NEWS: Document new option.
5659         * symfile.h (print_symbol_loading): Declare.
5660         * symfile.c (print_symbol_loading): New global.
5661         (symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
5662         from ..." if print_symbol_loading.
5663         (_initialize_symfile): Add set/show print symbol-loading.
5664         * solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
5665         if print_symbol_loading.
5666
5667 2008-07-10  Pedro Alves  <pedro@codesourcery.com>
5668
5669         Non-stop linux native.
5670
5671         * linux-nat.c (linux_test_for_tracefork): Block events while we're
5672         here.
5673         (get_pending_status): Implement non-stop mode.
5674         (linux_nat_detach): Stop threads before detaching.
5675         (linux_nat_resume): In non-stop mode, always resume only a single
5676         PTID.
5677         (linux_handle_extended_wait): On a clone event, in non-stop mode,
5678         add new lwp to GDB's thread table, and mark as running, executing
5679         and stopped appropriately.
5680         (linux_nat_filter_event): Don't assume there are other running
5681         threads when a thread exits.
5682         (linux_nat_wait): Mark the main thread as running and executing.
5683         In non-stop mode, don't stop all lwps.
5684         (linux_nat_kill): Stop lwps before killing them.
5685         (linux_nat_thread_alive): Use signal 0 to detect if a thread is
5686         alive.
5687         (send_sigint_callback): New.
5688         (linux_nat_stop): New.
5689         (linux_nat_add_target): Set to_stop to linux_nat_stop.
5690
5691         * linux-nat.h (thread_db_attach_lwp): Declare.
5692
5693         * linux-thread-db.c (thread_get_info_callback): Check for new
5694         threads if we have none.
5695         (thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
5696         stopped lwp.  Check for new threads if we have none.
5697         (thread_db_attach_lwp): New.
5698         (thread_db_init): Set proc_handle.pid to inferior_ptid.
5699         (check_event): Set proc_handle.pid to the stopped lwp.
5700         (thread_db_find_new_threads): Set proc_handle.pid to any stopped
5701         lwp available, bail out if there is none.
5702
5703         * linux-fork.c (linux_fork_killall): Use SIGKILL instead of
5704         PTRACE_KILL.
5705
5706 2008-07-10  Kevin Buettner  <kevinb@redhat.com>
5707
5708         * rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
5709         `current_pc' from CORE_ADDR to ULONGEST.
5710
5711         * remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
5712         gdbsim_stop().
5713
5714 2008-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
5715
5716         * NEWS (New commands): Mention "set disable-randomization".
5717         * configure.ac: Add check for HAVE_PERSONALITY and
5718         HAVE_DECL_ADDR_NO_RANDOMIZE.
5719         * configure, config.in: Regenerate.
5720         * linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>.
5721         [HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set
5722         ADDR_NO_RANDOMIZE.
5723         (disable_randomization, show_disable_randomization)
5724         (set_disable_randomization): New.
5725         (linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables
5726         PERSONALITY_ORIG and PERSONALITY_SET.  Disable randomization upon the
5727         variable DISABLE_RANDOMIZATION.
5728         (_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable
5729         DISABLE_RANDOMIZATION.
5730
5731 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5732
5733         Adjust all targets to new target_stop interface.
5734
5735         * gnu-nat.c (gnu_stop): Add ptid argument.
5736         * go32-nat.c (go32_stop): Add ptid argument.
5737         (go32_create_inferior): Pass inferior_ptid to go32_stop.
5738         * hpux-thread.c (hpux_thread_stop): Add ptid argument.
5739         * monitor.c (monitor_stop): Add ptid argument.
5740         (monitor_open): Pass inferior_ptid to monitor_stop.
5741         (monitor_interrupt): Pass inferior_ptid to target_stop.
5742         (monitor_stop): Add ptid argument.
5743         * nto-procfs.c (nto_interrupt): Pass inferior_ptid to target_stop.
5744         (procfs_create_inferior): Add ptid argument.
5745         * procfs.c (procfs_stop): Add ptid argument.
5746         * remote-m32r-sdi.c (m32r_stop): Add ptid argument.
5747         * remote-sim.c (gdbsim_stop): Add ptid argument.
5748         * sol-thread.c (sol_thread_stop): Add ptid argument.
5749         * win32-nat.c (win32_stop): Add ptid argument.
5750
5751 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5752
5753         Non-stop inferior control.
5754
5755         * infrun.c (resume): In non-stop mode, always resume just one
5756         thread.
5757         (proceed): Don't call prepare_to_proceed in non-stop mode.
5758         (fetch_inferior_event): In non-stop mode, switch context before
5759         handling the event.
5760         (error_is_running, ensure_not_running): New.
5761         (handle_inferior_event): In non-stop mode: Mark only the event
5762         thread as stopped.  Require that the target module manages adding
5763         threads to the thread list.  Assert that there isn't a
5764         deferred_step_ptid set.  Don't switch to infwait_thread_hop_state.
5765         (normal_stop): Only mark not-running if inferior hasn't exited.
5766         In non-stop mode, only mark the event thread.
5767
5768         * thread.c:Include "cli/cli-decode.h".
5769         (print_thread_info): Don't read from a running thread.
5770         Output "(running)" if thread is running.
5771         (switch_to_thread): Don't read stop_pc if thread is executing.
5772         (do_restore_current_thread_cleanup): Don't write to a running
5773         thread.
5774         (thread_apply_all_command): Don't read from a running thread.  In
5775         non-stop mode, do a full context-switch instead of just switching
5776         threads.
5777         (thread_apply_command): In non-stop mode, do a full context-switch
5778         instead of just switching threads.
5779         (do_captured_thread_select): Likewise.  Inform user if selected
5780         thread is running.
5781         (_initialize_thread): Mark "info threads" and "thread" and
5782         async_ok.
5783
5784         * inf-loop.c (inferior_event_handler): In non-stop mode, don't
5785         unregister the target from the event loop.
5786
5787         * infcmd.c (continue_command, step_1, jump_command)
5788         (signal_command): Ensure the selected thread isn't running.
5789         (interrupt_target_command): In non-stop mode, interrupt only the
5790         selected thread.
5791
5792         * inferior.h (error_is_running, ensure_not_running): Declare.
5793
5794         * target.h (struct target_ops): Add ptid argument to the to_stop
5795         member.
5796         (target_stop): Add ptid_t argument.
5797
5798         * target.c (update_current_target): Add ptid argument to to_stop's
5799         type.
5800         (debug_to_stop): Add ptid_t argument.
5801         (debug_to_rcmd): Set to_stop_ptid.
5802
5803         * remote.c (remote_stop): Add ptid_t argument.
5804         (async_remote_interrupt): Add inferior_ptid to target_stop.
5805         * inf-ptrace.c (inf_ptrace_stop): Add ptid argument.
5806
5807         * Makefile.in (thread.o): Depend on $(cli_decode_h).
5808
5809 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5810
5811         Don't rely on ecs->wait_for_more.
5812
5813         * infrun.c (proceed): Clear the stepping state, set
5814         previous_inferior_ptid and clear infwait state.
5815         (wait_for_inferior): Don't clear the stepping state, set
5816         previous_inferior_ptid, or clear the infwait state here.
5817         (fetch_inferior_event): Don't clear the stepping state, set
5818         previous_inferior_ptid, or clear the infwait state here.  Don't
5819         condition on wait_for_more.
5820
5821 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5822
5823         Refactor infrun a bit.
5824
5825         * infrun.c (currently_stepping): Take a struct
5826         thread_stepping_state instead of an execution_control_state.
5827         (struct thread_stepping_state): New, split from
5828         execution_control_state.
5829         (gtss, tss): New globals.
5830         (proceed): Clear the stepping state, set previous_inferior_ptid
5831         and clear infwait state.
5832         (init_wait_for_inferior): Clear the stepping state,
5833         previous_inferior_ptid and infwait state.
5834         (waiton_ptid, infwait_state): New, split from
5835         execution_control_state.
5836         (struct execution_control_state): Members that persist through
5837         events moved out to either struct thred_stepping_state or made
5838         global.  Deleted unneeded wp, saved_inferior_ptid, tmpstatus.
5839         (wait_for_inferior, fetch_inferior_event): Use local
5840         execution_control_state.  Update to execution_control_state split.
5841         (init_execution_control_state): Adjust.
5842         (init_thread_stepping_state): New, extracted from
5843         init_execution_control_state.
5844         (context_switch): Take a ptid instead of an
5845         execution_control_state.
5846         (context_switch_to): Adjust.
5847         (adjust_pc_after_break): Adjust.
5848         (init_infwait_state): New.
5849         (handle_inferior_event): Adjust.
5850
5851 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5852             Vladimir Prus  <vladimir@codesourcery.com>
5853
5854         Per-thread commands.
5855
5856         * gdbthread.h: Remove unneeded forward declarations.
5857         Include "inferior.h".
5858         (struct thread_info): Add continuations,
5859         intermediate_continuations, proceed_to_finish, step_over_calls,
5860         stop_step, step_multi and stop_signal members.
5861         (save_infrun_state): Add continuations,
5862         intermediate_continuations, proceed_to_finish, step_over_calls,
5863         stop_step, step_multi, stop_signal and stop_bpstat parameters.
5864         (load_infrun_state): Add continuations,
5865         intermediate_continuations, proceed_to_finish, step_over_calls,
5866         stop_step, step_multi, stop_signal and stop_bpstat parameters.
5867
5868         * thread.c (load_infrun_state): In non-stop mode, load
5869         continuations, intermediate_continuations, proceed_to_finish,
5870         step_over_calls, stop_step, step_multi and stop_signal.
5871         (save_infrun_state): Store continuations,
5872         intermediate_continuations, proceed_to_finish, step_over_calls,
5873         stop_step, step_multi, stop_signal and stop_bpstat.
5874         (save_infrun_state): Store continuations,
5875         intermediate_continuations, proceed_to_finish, step_over_calls,
5876         stop_step, step_multi, stop_signal and stop_bpstat.
5877         (free_thread): Clear The thread's stop_bpstat.
5878
5879         * inferior.h (context_switch_to): Declare.
5880
5881         * infrun.c (ecss): New global.
5882         (context_switch): Context switch continuations,
5883         intermediate_continuations, proceed_to_finish, step_over_calls,
5884         stop_step, step_multi, stop_signal and stop_bpstat.
5885         (wait_for_inferior): Use global ecss.
5886         (async_ecss, async_ecs): Delete.
5887         (fetch_inferior_event): Use global ecss.
5888         (context_switch_to): New.
5889
5890         * top.c (execute_command): In non-stop, only check if the current
5891         thread is running, in all-stop, check if there's any thread
5892         running.
5893
5894         * breakpoint.c (bpstat_remove_breakpoint): New.
5895         (bpstat_remove_breakpoint_callback): New.
5896         (delete_breakpoint): Clear the stop_bpstats of all threads.
5897
5898         * mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
5899         current thread is running, in all-stop, check if there's any
5900         thread running.
5901
5902         * Makefile.in (gdbthread_h): Depend on $(inferior_h).
5903
5904 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5905
5906         Add non_stop global.
5907
5908         * inferior.h (non_stop): Declare.
5909         * infrun.c (non_stop, non_stop_1): New.
5910         (set_non_stop, show_non_stop): New.
5911         (_initialize_infrun): Add "set/show non-stop" command.
5912
5913 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5914
5915         Adjust fork/vfork/exec to pass ptids around.
5916
5917         * target.h (struct target_waitstatus): Store related_pid as a ptid.
5918         (inferior_has_forked, inferior_has_vforked, inferior_has_execd):
5919         Take a ptid_t.
5920         * breakpoint.h (struct breakpoint): Change forked_inferior_pid
5921         type to ptid.
5922         * breakpoint.c (print_it_typical, bpstat_check_location)
5923         (print_one_breakpoint_location, set_raw_breakpoint_without_location)
5924         (create_fork_vfork_event_catchpoint): Adjust.
5925         * infrun.c (fork_event): Change parent_pid and child_pid types to
5926         ptid.
5927         (follow_exec, inferior_has_forked, inferior_has_vforked)
5928         (inferior_has_execd): Take a ptid_t and don't trim it.
5929         * linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
5930         * linux-nat.c (linux_child_follow_fork): Adjust.
5931         * inf-ptrace.c (inf_ptrace_wait): Adjust.
5932         * inf-ttrace.c (inf_ttrace_wait): Adjust.
5933         * win32-nat.c (get_win32_debug_event): Don't set related_pid.
5934
5935 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5936
5937         Add "executing" property to threads.
5938
5939         * inferior.h (target_executing): Delete.
5940         * gdbthread.h (struct thread_info): Add executing_ field.
5941         (set_executing, is_executing): New.
5942         * thread.c (main_thread_executing): New.
5943         (init_thread_list): Clear it and also main_thread_running.
5944         (is_running): Return false if target has no execution.
5945         (any_running, is_executing, set_executing): New.
5946
5947         * top.c: Include "gdbthread.h".
5948         (target_executing): Delete.
5949         (execute_command): Replace target_executing check by any_running.
5950         * event-top.c: Include "gdbthread.h".
5951         (display_gdb_prompt, command_handler): Replace target_executing by
5952         is_running.
5953         * inf-loop.c: Include "gdbthread.h".  Don't mark as not executing
5954         here.  Replace target_executing by is_running.
5955         * infrun.c (handle_inferior_event): Mark all threads as
5956         not-executing.
5957         * linux-nat.c (linux_nat_resume): Don't mark thread as executing
5958         here.
5959         * stack.c (get_selected_block): Return null if inferior is
5960         executing.
5961         * target.c (target_resume): Mark resumed ptid as executing.
5962         * breakpoint.c (until_break_command): Replace target_executing
5963         check by is_executing.
5964         * remote.c (remote_async_resume): Don't mark inferior as executing
5965         here.
5966         * mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
5967         by any_running.
5968
5969         * mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
5970         (mi_execute_async_cli_command): Replace target_executing by
5971         is_running.
5972
5973         * frame.c (get_current_frame): Error out if the current thread is
5974         executing.
5975         (has_stack_frames): New.
5976         (get_selected_frame, deprecated_safe_get_selected_frame): Check
5977         has_stack_frames.
5978
5979         * Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
5980         $(gdbthread_h).
5981
5982 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5983
5984         * symfile.c (load_command): Reopen the exec file and reread
5985         symbols before anything else.
5986
5987 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5988
5989         * remote-sim.c: Include gdbthread.h.
5990         (remote_sim_ptid): New global.
5991         (gdbsim_create_inferior): Silently add the main task to GDB's
5992         thread list.
5993         (gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
5994         task from GDB's thread list.
5995         (gdbsim_resume): Adjust to use remote_sim_ptid.
5996         (gdbsim_thread_alive, gdbsim_pid_to_str): New.
5997         (init_gdbsim_ops): Register gdbsim_thread_alive and
5998         gdbsim_pid_to_str.
5999         (_initialize_remote_sim): Initialize remote_sim_ptid.
6000         * Makefile.in (remote-sim.o): Depend on $(gdbthread_h).
6001
6002 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6003
6004         * monitor (monitor_ptid): New global.
6005         (monitor_open): Silently add the main task to GDB's thread list.
6006         (monitor_close, monitor_mourn_inferior): Silently delete the main
6007         task from GDB's thread list.
6008         (monitor_thread_alive, monitor_pid_to_str): New.
6009         (init_base_monitor_ops): Register monitor_thread_alive and
6010         monitor_pid_to_str.
6011         (_initialize_remote_monitors): Initialize monitor_ptid.
6012
6013         * gdbthread.h (delete_thread_silent): Declare.
6014         * thread.c (delete_thread): Rename to ...
6015         (delete_thread_1): ... this.  Add "silent" parameter.  If silent,
6016         don't do exit notifications.
6017         (delete_thread, delete_thread_silent): New, as wrappers to
6018         delete_thread_1.
6019
6020 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6021
6022         * breakpoint.c (update_global_location_list): Add boolean
6023         "should_insert" argument.  Only insert locations if caller told it
6024         too.
6025         (update_global_location_list_nothrow): Add boolean "should_insert"
6026         argument.  Pass it to update_global_location_list.
6027         (insert_breakpoints, create_longjmp_breakpoint)
6028         (create_overlay_event_breakpoint, enable_overlay_breakpoints)
6029         (create_thread_event_breakpoint, create_solib_event_breakpoint)
6030         (create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
6031         (enable_watchpoints_after_interactive_call_stop)
6032         (set_momentary_breakpoint, create_breakpoints)
6033         (break_command_really, watch_command_1)
6034         (create_ada_exception_breakpoint, update_breakpoint_locations)
6035         (do_enable_breakpoint, enable_command): Pass true to
6036         update_global_location_list.
6037         (bpstat_stop_status, disable_overlay_breakpoints)
6038         (disable_watchpoints_before_interactive_call_start)
6039         (delete_breakpoint, disable_breakpoint, disable_command): Pass
6040         false to update_global_location_list.
6041         (update_breakpoints_after_exec): Don't temporarily disable
6042         always-inserted mode.
6043
6044 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6045
6046         * breakpoint.c (mark_breakpoints_out): Make public.
6047         (update_breakpoints_after_exec): Don't call mark_breakpoints_out
6048         here.  Update comment.
6049         * breakpoint.h (mark_breakpoints_out): Declare.
6050
6051         * linux-nat.c (linux_handle_extended_wait): On
6052         TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
6053         * inf-ttrace.c (inf_ttrace_wait): Likewise.
6054
6055 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6056
6057         * infrun.c (follow_exec): Reset shared libraries before adding the
6058         main exec file.
6059
6060 2008-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6061
6062         * breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.
6063
6064 2008-07-07  Pedro Alves  <pedro@codesourcery.com>
6065
6066         * i386-dicos-tdep.c: Include "inferior.h".
6067         (i386_dicos_frame_align): New.
6068         (i386_dicos_init_abi): Register i386_dicos_frame_align.  Set call
6069         dummy location ON_STACK.
6070         * Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).
6071
6072 2008-07-07  Joel Brobecker  <brobecker@adacore.com>
6073
6074         * gstdint.h: New file.
6075
6076 2008-07-05  Vladimir Prus  <vladimir@codesourcery.com>
6077
6078         * mi/mi-interp.c (mi_on_resume): Don't try to report
6079         resumed thread it the thread list is empty.
6080
6081 2008-07-05  Pierre Muller  <muller@ics.u-strasbg.fr>
6082
6083         * cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
6084         completer for set to filename_completer.
6085
6086         NEWS: Mention it.
6087
6088 2008-07-04  Vladimir Prus  <vladimir@codesourcery.com>
6089
6090         Implement -target-attach.
6091         * mi/mi-cmds.c (mi_cmds): Forward -target-attach to CLI attach.
6092
6093 2008-06-21  Hui Zhu  <teawater@gmail.com>
6094
6095         * target-descriptions.c (maint_print_c_tdesc_cmd): Fix a memory leak.
6096
6097 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6098
6099         * config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.
6100         * config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete.
6101
6102         * target.h (struct target_ops): Add to_attach_no_wait member.
6103         (target_attach_no_wait): New.
6104         * target.c (update_current_target): Inherit to_attach_no_wait.
6105
6106         * infcmd.c: Replace ATTACH_NO_WAIT compile time check by
6107         target_attach_no_wait runtime check.
6108
6109         * gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops.
6110         * win32-nat.c (init_win32_ops): Set to_attach_no_wait in
6111         win32_ops.
6112
6113 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6114
6115         * i386-tdep.c (i386_displaced_step_fixup): Condition log printing
6116         on debug_displaced being set.
6117
6118 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6119
6120         * frame.c (get_prev_frame_1): Call frame_unwind_find_by_frame
6121         directly instead of get_frame_id.
6122
6123 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6124
6125         * rs6000-tdep.c (ppc_displaced_step_fixup): New function.
6126         (deal_with_atomic_sequence): Update BC masks.
6127         (rs6000_gdbarch_init): Init displaced stepping infra-structure.
6128         Define BRANCH_MASK, B_INSN, BC_INSN, BXL_INSN, BP_MASK and BP_INSN.
6129
6130 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6131
6132         * cris-tdep.c (crisv32_single_step_through_delay): Get this frame's
6133         register, not the previous frame's.
6134
6135 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6136
6137         * source.c (select_source_symtab): Make sure we skip namespace
6138         symtabs when showing cpp source code.
6139
6140 2008-06-30  Hans-Peter Nilsson  <hp@axis.com>
6141
6142         * MAINTAINERS (Authorized committers): Fix my email address.
6143
6144 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6145
6146         * mi/mi-cmds.c (mi_cmds): Route -exec-run, -exec-until,
6147         -target-download and -target-select via CLI, so that
6148         the quoting rules are the same as they were (unfortunately)
6149         in all prior gdb releases.
6150         * mi/mi-cmds.h (mi_cmd_exec_run, mi_cmd_exec_until)
6151         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6152         * mi/mi-main.c (mi_cmd_exec_run, mi_cmd_exec_until)
6153         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6154         (mi_cmd_execute): Set current_token even for commands
6155         routed via CLI.
6156
6157 2008-06-28  Ulrich Weigand  <uweigand@de.ibm.com>
6158
6159         * alphafbsd-tdep.c: Update for unwinder changes.
6160         * alpha-linux-tdep.c: Likewise.
6161         * alphanbsd-tdep.c: Likewise.
6162         * alphaobsd-tdep.c: Likewise.
6163         * avr-tdep.c: Likewise.
6164         * cris-tdep.c: Likewise.
6165         * frv-linux-tdep.c: Likewise.
6166         * frv-tdep.c: Likewise.
6167         * h8300-tdep.c: Likewise.
6168         * hppa-linux-tdep.c: Likewise.
6169         * iq2000-tdep.c: Likewise.
6170         * m32c-tdep.c: Likewise.
6171         * m32r-linux-tdep.c: Likewise.
6172         * m32r-tdep.c: Likewise.
6173         * m68hc11-tdep.c: Likewise.
6174         * mep-tdep.c: Likewise.
6175         * mn10300-tdep.c: Likewise.
6176         * mt-tdep.c: Likewise.
6177         * score-tdep.c: Likewise.
6178         * sh64-tdep.c: Likewise.
6179         * sh-tdep.c: Likewise.
6180         * sparc64fbsd-tdep.c: Likewise.
6181         * sparc64nbsd-tdep.c: Likewise.
6182         * sparc64obsd-tdep.c: Likewise.
6183         * v850-tdep.c: Likewise.
6184         * vaxobsd-tdep.c: Likewise.
6185         * vax-tdep.c: Likewise.
6186         * xstormy16-tdep.c: Likewise.
6187
6188 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6189
6190         * mi/mi-main.c (enum captured_mi_execute_command_actions)
6191         (captured_mi_execute_command_args): Remove.
6192         (captured_mi_execute_command): Cast the closure to mi_parse
6193         pointer, not to captured_mi_execute_command_args, and don't
6194         set the action field thereof.
6195         (mi_execute_command): Pass struct mi_parse, not
6196         captured_mi_execute_command_args to captured_mi_execute_command.
6197         (mi_execute_command): Remove (dead) code for suppressing
6198         printing prompt.
6199
6200 2008-06-28  Pedro Alves  <pedro@codesourcery.com>
6201
6202         * linux-nat.c (enum sigchld_state): New.
6203         (linux_nat_async_events_state): Renamed from
6204         linux_nat_async_events_enabled.
6205         (linux_nat_event_pipe_push, my_waitpid): Adjust.
6206         (sigchld_default_action): New.
6207         (lin_lwp_attach_lwp): Adjust.  Call linux_nat_async_events
6208         unconditionally.
6209         (linux_nat_create_inferior): Set events state to sigchld_default
6210         state.
6211         (linux_nat_resume): Adjust.
6212         (linux_nat_wait): Call linux_nat_async_events unconditionally.
6213         (sigchld_handler): Adjust.
6214         (linux_nat_async_mask): Don't set SIGCHLD actions here.
6215         (get_pending_events): Adjust.
6216         (linux_nat_async_events): Rewrite to handle enum sigchld_state
6217         instead of a boolean.
6218         (linux_nat_async): Adjust.
6219         (_initialize_linux_nat): Capture default SIGCHLD action into
6220         sigchld_default_action.
6221
6222 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6223
6224         * breakpoint.c (moribund_locations): New.
6225         (bpstat_stop_status): Process moribund locations.
6226         (update_global_location_list): Add removed
6227         locations to moribund_locations.
6228         (breakpoint_retire_moribund): New.
6229         * breakpoint.h (struct bp_location): New field
6230         events_till_retirement.
6231         (breakpoint_retire_moribund): Declare.
6232         * thread.c (thread_count): New.
6233         * infrun.c (handle_inferior_event): Call
6234         breakpoint_retire_moribund.
6235         * gdbthread.h (thread_count): Declare.
6236
6237 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6238
6239         * dfp.c (decimal_convert): Call match_endianness before and after
6240         conversion.
6241
6242 2008-06-27  Jonathan Larmour  <jifl@eCosCentric.com>
6243
6244         * remote.c (remote_insert_breakpoint): Ensure that if Z0
6245         unsupported and we fall back to memory_insert_breakpoint, we
6246         use the unmodified requested address.
6247
6248 2008-06-27  Joel Brobecker  <brobecker@adacore.com>
6249
6250         * dwarf2read.c (read_attribute_value): Issue a complaint when
6251         adjusting size attribute values of 0xffffffff as zero.
6252
6253 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6254
6255         * i386-tdep.c (i386_16_byte_align_p): New.
6256         (i386_push_dummy_call): Determine stack space required for
6257         arguments going forwards allowing for 16-byte alignment, then push
6258         arguments going forwards.
6259
6260 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6261
6262         * infrun.c (start_remote): Don't clear thread list here.
6263         * monitor.c (monitor_open): Include "gdbthread.h".  Clear thread
6264         list here.
6265         * remote.c (record_currthread): Upgrade the main thread and its
6266         entry in the thread list if this is the first time we hear about
6267         threads.
6268         (remote_thread_alive): Consider magic_null_ptid or a ptid without
6269         a tid member always alive.
6270         (remote_find_new_threads): Don't update the main thread here.
6271         (remote_start_remote): Clear thread list here.  Always add the
6272         main thread.
6273         (extended_remote_attach_1): Add the main thread here.
6274         (extended_remote_mourn_1): Re-add the main thread here.
6275         (extended_remote_create_inferior_1): Add a main thread.
6276
6277         * Makefile.in (monitor.o): Depend on $(gdbthread_h).
6278
6279 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6280
6281         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
6282
6283         * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
6284         globals.
6285         (general_thread, continue_thread): Change type to ptid_t.
6286         (record_currthread): Take a ptid_t parameter instead of an
6287         integer.
6288         (MAGIC_NULL_PID): Delete.
6289         (set_thread): Take a ptid_t parameter and adjust.
6290         (set_general_thread, set_continue_thread): New.
6291         (remote_thread_alive, remote_newthread_step)
6292         (remote_current_thread, remote_find_new_threads)
6293         (remote_threads_info, remote_start_remote, remote_vcont_resume)
6294         (remote_resume_1, remote_wait, extended_remote_create_inferior_1)
6295         (threadalive_test, remote_pid_to_str)
6296         (remote_get_thread_local_address): Adjust.
6297         (_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
6298         and any_thread_ptid.
6299
6300 2008-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
6301
6302         * configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
6303         * configure: Regenerated.
6304
6305 2008-06-26  Joel Brobecker  <brobecker@adacore.com>
6306
6307         * dwarf2read.c (read_attribute_value): Treat size attribute
6308         values of 0xffffffff as if the attribute value was zero.
6309
6310 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6311
6312         * linux-nat.c: Add description of overall logic.
6313
6314 2008-06-26  Daniel Jacobowitz  <dan@codesourcery.com>
6315
6316         * Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
6317         (gdb_stdint_h, gdb_stdint.h, stamp-int): Delete.  Remove
6318         all dependencies on $(gdb_stdint_h).
6319         (distclean): Do not delete gdb_stdint.h.
6320         * acinclude.m4: Do not use stdint.m4.
6321         * configure.ac: Set GNULIB_STDINT_H.  Remove tests for stdint.h,
6322         uintptr_t, and gdb_stdint.h.
6323         * defs.h: Include <stdint.h>.
6324         * gdb_thread_db.h: Assume stdint.h is already included.
6325         * breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
6326         rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
6327         include gdb_stdint.h.
6328         * configure, config.in: Regenerate.
6329
6330 2008-06-26  Joseph Myers  <joseph@codesourcery.com>
6331
6332         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
6333         decimal floating-point values in GPRs for soft-float.
6334         (do_ppc_sysv_return_value): Handle returning decimal
6335         floating-point values in GPRs for soft-float.
6336
6337 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6338
6339         * target.c (target_read_until_error): New.
6340         * target.h (target_read_until_error): Declare.
6341         * mi/mi-main.c (mi_cmd_data_read_memory): Use
6342         target_read_until_error.
6343
6344 2008-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
6345
6346         Fix a memory leak found by Hui Zhu <teawater@gmail.com>.
6347         * c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
6348         after the DECFLOAT detection to fix a memory leak.  Remove the
6349         redundant NUM initialization.  Protect the DECFLOAT detection memory
6350         access before the P block.  Restore the P memory content for the
6351         DECFLOAT detection.
6352
6353 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6354
6355         Kill the return value for all MI command functions.
6356         * mi/mi-cmds.h (enum mi_cmd_result): Remove.
6357         (mi_cmd_argv_ftype): Change return type to void.
6358
6359         * mi/mi-main.c: Adjust all function that implement
6360         MI commands to return nothing.
6361         (struct captured_mi_execute_command_actions):
6362         Remove the rc field.
6363         (mi_cmd_execute): Return nothing.
6364         (mi_execute_async_cli_command): Return nothing.
6365         (mi_cmd_exec_interrupt): Don't print ^done here.
6366         (mi_cmd_target_select): Don't print ^connected here.
6367         (captured_mi_execute_command): Don't check for MI_CMD_DONE.
6368         Special-case -target-select and output ^connected, not ^done.
6369
6370         * mi/mi-cmd-break.c: Adjust.
6371         * mi/mi-cmd-disas.c: Adjust.
6372         * mi/mi-cmd-env.c: Adjust.
6373         * mi/mi-cmd-file.c: Adjust.
6374         * mi/mi-cmd-stack.c: Adjust.
6375         * mi/mi-cmd-target.c: Adjust.
6376         * mi/mi-cmd-var.c: Adjust.
6377         * mi/mi-interp.c: Adjust.
6378         * mi/mi-symbol-cmds.c: Adjust.
6379
6380 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6381
6382         Emit ^running via observer.
6383         * mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
6384         ^running here.
6385         (mi_on_resume): Print ^running if not previously output.
6386         * mi/mi-main.c (running_result_record_printed): New.
6387         (captured_mi_execute_command): Reset
6388         running_result_record_printed.  Use running_result_record_printed
6389         to decide if we should skip ^done.
6390         (mi_execute_async_cli_command): Don't print ^running here.
6391         * mi/mi-main.h (current_token, running_result_record_printed):
6392         Declare.
6393
6394 2008-06-24  Michael Snyder  <msnyder@specifix.com>
6395
6396         * infrun.c (_initialize_infrun): White space and typo fix.
6397
6398 2008-06-23  Christopher Faylor  <me.gdb.changelog@cgf.cx>
6399
6400         * win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
6401         (do_initial_win32_stuff): Fix problem with inability to set breakpoints
6402         when first loading DLL with "dll" command.
6403
6404 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6405
6406         * gnu-nat.c (proc_string): Use capital T for "Thread".
6407
6408 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6409
6410         * win32-nat.c (win32_pid_to_str): Use capital T for "Thread".
6411
6412 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6413
6414         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6415         the target cannot run.
6416
6417 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6418
6419         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6420         we're attaching to a running process.
6421
6422 2008-06-18  Pierre Muller  <muller@ics.u-strasbg.fr>
6423
6424         * win32-nat.c (handle_load_dll): Give dll name and load address
6425         if debug_events is on.
6426         (handle_unload_dll): Likewise.
6427
6428 2008-06-14  Vladimir Prus  <vladimir@codesourcery.com>
6429
6430         Don't suppress *running when doing finish.
6431         * infcall.c (call_function_by_hand): Set both
6432         suppress_resume_observer and suppress_stop_observer.
6433         * infcmd.c (suppress_run_stop_observers): Split into...
6434         (suppress_resume_observer, suppress_stop_observer): ...those.
6435         (finish_command_continuation): Clear suppress_stop_observer.
6436         (finish_command): Set suppress_stop_observer.
6437         * inferior.h (suppress_run_stop_observers): Split into...
6438         (suppress_resume_observer, suppress_stop_observer): ...those.
6439         * infrun.c (normal_stop): Check for suppress_stop_observer.
6440         * thread.c (set_running): Check for suppress_resume_observer.
6441
6442 2008-06-12  Pedro Alves  <pedro_alves@portugalmail.pt>
6443             Pierre Muller  <muller@ics.u-strasbg.fr>
6444
6445         * gdbarch.sh (gdbarch_skip_main_prologue): New.
6446         * gdbarch.h, gdbarch.c: Regenerate.
6447         * i386-tdep.h (i386_skip_main_prologue): Declare.
6448         * i386-tdep.c (i386_skip_main_prologue): New.
6449         * i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
6450         i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
6451         * symtab.c (find_function_start_sal): When pc points at the "main"
6452         function, call gdbarch_skip_main_prologue.
6453
6454 2008-06-11  Daniel Jacobowitz  <dan@codesourcery.com>
6455
6456         * value.c (value_primitive_field): Fetch lazy register values.
6457
6458 2008-06-11  Pedro Alves  <pedro@codesourcery.com>
6459
6460         * NEWS: Mention support removal of undocumented S AA p PID stop
6461         reply packet.
6462
6463         * remote.c (remote_wait): Remove undocumented S AA p PID support.
6464
6465 2008-06-10  Stan Shebs  <stan@codesourcery.com>
6466
6467         * MAINTAINERS: Update my affiliation and address.
6468
6469 2008-06-10  Andreas Schwab  <schwab@suse.de>
6470
6471         * top.c (print_gdb_version): Don't print final newline.
6472
6473 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6474
6475         Implement *running.
6476         * Makefile.in: Update dependencies.
6477         * gdbthread.h (struct thread_info): New field
6478         running_.
6479         (set_running, is_running): New.
6480         * thread.c (set_running, is_running): New.
6481         * inferior.h (suppress_normal_stop_observer): Rename to...
6482         (suppress_run_stop_observers): ..this.
6483         * infcmd.c (suppress_normal_stop_observer): Rename to...
6484         (suppress_run_stop_observers): ..this.
6485         (finish_command_continuation, finish_command): Adjust.
6486         * infcall.c (call_function_by_hand): Adjust.
6487         * infrun.c (normal_stop): Call set_running.
6488         * target.c (target_resume): New.  Call set_running.
6489         * target.h (target_resume): Convert from macro to
6490         a function.
6491
6492         * mi/mi-interp.c (mi_on_resume): New.
6493         (mi_interpreter_init): Register mi_on_resume.
6494
6495 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6496
6497         Use observers to report stop events in MI.
6498         * mi/mi-interp.c (mi_on_normal_stop): New.
6499         (mi_interpreter_init): Register mi_on_normal_stop.
6500         (mi_interpreter_exec_continuation): Remove.
6501         (mi_cmd_interpreter_exec): Don't register the above.
6502         * mi/mi-main.c (captured_mi_execute_command): Don't care
6503         about sync_execution.
6504         (mi_execute_async_cli_command): Don't install continuation.  Don't
6505         print *stopped.
6506         (mi_exec_async_cli_cmd_continuation): Remove.
6507
6508 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6509
6510         Suppress normal stop observer when it's problematic.
6511         * inferior.h (suppress_normal_stop_observer): New.
6512         * infcall.c (call_function_by_hand): Disable stop events when
6513         doing function calls.
6514         * infmcd.c (suppress_normal_stop_observer): New.
6515         (finish_command_continuation): Call normal_stop observer
6516         explicitly.
6517         (finish_command): Disable stop events inside proceed.
6518         * infrun.c (normal_stop): Don't call normal stop observer if
6519         suppressed of if multi-step is in progress.
6520
6521 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6522
6523         Remove stale code.
6524         * infrun.c (finish_command): Don't pass cleanup
6525         to continuation.
6526         (finish_command_continuation): Don't grab cleanup from
6527         the passed data, as we don't use, and cannot, use it anyway.
6528
6529 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6530
6531         Introduce common cleanup for restoring integers.
6532         * defs.h (make_cleanup_restore_integer): New declaration.
6533         (struct cleanup): New field free_arg.
6534         (make_my_cleanup_2): New.
6535         * utils.c (restore_integer_closure, restore_integer)
6536         (make_cleanup_restore_integer): New.
6537         (make_my_cleanup): Initialize the free_arg field and
6538         renamed to make_my_cleanup_2.
6539         (do_my_cleanups): Call free_arg.
6540         (discard_cleanups): Call free_arg.
6541         * breakpoint.c (restore_always_inserted_mode): Remove.
6542         (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
6543
6544 2008-06-09  Doug Evans  <dje@google.com>
6545
6546         * remote.c (remote_wait): Include beginning of malformed packet
6547         in error output.
6548
6549 2008-06-09  Tom Tromey  <tromey@redhat.com>
6550
6551         * completer.c (complete_line): Don't special-case
6552         expression_completer.
6553         (expression_completer): Only pass last word to
6554         location_completer.
6555         * c-exp.y (yylex): Check 'token', not 'operator'.
6556
6557 2008-06-09  Daniel Jacobowitz  <dan@codesourcery.com>
6558
6559         * configure.ac (build_warnings): Add -Wno-format for mingw.
6560         * configure: Regenerated.
6561
6562 2008-06-07  Daniel Jacobowitz  <dan@codesourcery.com>
6563
6564         * NEWS: Make indentation consistent.  Move exec tracing entry out
6565         of remote packet list.
6566
6567 2008-06-06  Tom Tromey  <tromey@redhat.com>
6568
6569         * value.h (evaluate_subexpression_type, extract_field_op):
6570         Declare.
6571         * printcmd.c (_initialize_printcmd): Use expression_completer for
6572         'p', 'inspect', 'call'.
6573         * parser-defs.h (parse_field_expression): Declare.
6574         * parse.c: Include exceptions.h.
6575         (in_parse_field, expout_last_struct): New globals.
6576         (mark_struct_expression): New function.
6577         (prefixify_expression): Return int.
6578         (prefixify_subexp): Return int.  Use expout_last_struct.
6579         (parse_exp_1): Update.
6580         (parse_exp_in_context): Add 'out_subexp' argument.  Handle
6581         in_parse_field.
6582         (parse_field_expression): New function.
6583         * expression.h (parse_field_expression): Declare.
6584         (in_parse_field): Likewise.
6585         * eval.c (evaluate_subexpression_type): New function.
6586         (extract_field_op): Likewise.
6587         * completer.h (expression_completer): Declare.
6588         * completer.c (expression_completer): New function.
6589         (count_struct_fields, add_struct_fields): New functions.
6590         * c-exp.y (yyparse): Redefine.
6591         (COMPLETE): New token.
6592         (exp): New productions.
6593         (saw_name_at_eof, last_was_structop): New globals.
6594         (yylex): Return COMPLETE when needed.  Recognize in_parse_field.
6595         (c_parse): New function.
6596         * breakpoint.c (_initialize_breakpoint): Use expression_completer
6597         for watch, awatch, and rwatch.
6598         * Makefile.in (parse.o): Depend on exceptions_h.
6599
6600 2008-06-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
6601
6602         PR gdb/1147
6603         * gdb/valopts.c (find_overload_match): Handle references
6604         to pointers.
6605
6606 2008-06-06  Paul N. Hilfinger  <hilfinger@adacore.com>
6607
6608         * ada-lang.c (ada_value_assign): Correct big-endian case to take into
6609         account the bitsize of the 'from' operand.
6610
6611 2008-06-06  Pedro Alves  <pedro@codesourcery.com>
6612
6613         * annotate.h (annotate_thread_changed): Declare.
6614
6615 2008-06-06  Nick Roberts  <nickrob@snap.net.nz>
6616
6617         * annotate.c (annotate_thread_changed): New function.
6618         * thread.c (thread_command) : Use it.
6619         * infrun.c (normal_stop): Use it.
6620
6621 2008-06-05  Vladimir Prus  <vladimir@codesourcery.com>
6622             Nathan Sidwell  <nathan@codesourcery.com>
6623             Joseph Myers  <joseph@codesourcery.com>
6624
6625         * acinclude.m4: Include ../config/acx.m4.
6626         * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
6627         * configure, config.in: Regenerate.
6628         * main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
6629         address.
6630         * top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.
6631
6632 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6633
6634         Replace 'target async' by 'maintenance set remote-async' and
6635         'target remote' combination.
6636
6637         * remote.c (remote_async_wait): Merge into remote_wait, and
6638         remove.
6639         (remote_async_permitted, remote_async_permitted_set): New
6640         variables.
6641         (set_maintenance_remote_async_permitted)
6642         (show_maintenance_remote_async_permitted): New functions.
6643         (remote_async_ops, extended_async_remote_ops): Delete.
6644         (remote_async_open, extended_remote_async_open): Delete.
6645         (remote_open_1): Drop async_p parameter.  Update callers.  Replace
6646         async_p with remote_async_permitted checks.
6647         (extended_async_remote_attach): Delete.
6648         (remote_resume, remote_async_resume): Merge and leave remote_resume.
6649         (remote_async_terminal_inferior): Rename to...
6650         (remote_terminal_inferior): ... this, and add
6651         remote_async_termitted check.
6652         (remote_async_terminal_ours): Rename to...
6653         (remote_terminal_ours): ... this, and add remote_async_termitted
6654         check.
6655         (remote_wait, remote_async_wait): Merge and leave remote_wait
6656         only.
6657         (remote_kill, remote_async_kill): Merge and leave remote_kill
6658         only.
6659         (remote_async_mourn, extended_async_remote_mourn): Delete.
6660         (extended_remote_create_inferior_1): Drop async_p parameter.
6661         Update callers.  Always use extended_remote_ops.
6662         (extended_remote_async_create_inferior): Delete.
6663         (remote_return_zero): Delete.
6664         (init_remote_ops): Register remote_can_async_p, remote_async,
6665         remote_async_mask, remote_terminal_inferior and
6666         remote_terminal_ours.
6667         (remote_can_async_p, remote_is_async_p): Check for
6668         remote_async_permitted.
6669         (init_remote_async_ops, init_extended_async_remote_ops): Remove.
6670         (set_remote_cmd): Don't add async and extended-async targets.
6671         (_initialize_remote): Add set/show remote-async maintenance
6672         commands.
6673
6674 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6675
6676         * remote.c (kill_kludge): Delete.
6677         (remote_wait, remote_async_wait): Don't set it.
6678         (remote_kill, remote_async_kill): Don't do anything with it.
6679
6680 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6681
6682         * linux-thread-db.c (thread_db_wait): Don't trim event ptid.
6683
6684 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6685
6686         * bcache.c (bcache_data): Call deprecated_bcache_added function.
6687         (deprecated_bcache_added): New function name. Body of function
6688         bcache_data is used here with the addition of 'added' argument.
6689         * bcache.h (deprecated_bcache_added): New function.
6690         * symfile.c (add_psymbol_to_bcache): New helper function, takes part of
6691         work from add_psymbol_to_list - initialises partial symbol and stashes
6692         it in objfile's cache.
6693         (append_psymbol_to_list): New helper function, takes other part of
6694         work from add_psymbol_to_list - adds partial symbol to the given list.
6695         (add_psymbol_to_list): Call helper functions instead of doing work
6696         here. If adding to global list, do not duplicate partial symbols in the
6697         partial symtab.
6698
6699 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6700
6701         * breakpoint.c (print_exception_catchpoint): Put 'exception' back to
6702         'exception caught|thrown' message.
6703
6704 2008-06-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
6705
6706         * Makefile.in: Update dependencies.
6707         * dwarf2expr.c: New include "gdb_assert.h".
6708         (new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
6709         (dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
6710         (execute_stack_op): Error out on too large RECURSION_DEPTH.
6711         Increase/decrease RECURSION_DEPTH around the function.
6712
6713 2008-06-05  Daniel Jacobowitz  <dan@codesourcery.com>
6714
6715         * remote.c (get_offsets): Handle a single segment.
6716         * symfile.c (symfile_map_offsets_to_segments): Allow more bases
6717         than segments.
6718
6719 2008-06-03  Daniel Jacobowitz  <dan@codesourcery.com>
6720
6721         * solib-svr4.c (struct lm_info): Add lm_addr.
6722         (main_lm_addr): New.
6723         (svr4_default_sos): Set lm_addr.
6724         (svr4_current_sos): Set lm_addr and main_lm_addr.
6725         (svr4_fetch_objfile_link_map): Rewrite.
6726         (svr4_clear_solib): Clear main_lm_addr.
6727
6728 2008-06-03  Michael Snyder  <msnyder@redhat.com>
6729             Joseph Myers  <joseph@codesourcery.com>
6730
6731         * mips-tdep.c (mips_eabi_return_value): Replace stub that always
6732         returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
6733
6734 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
6735
6736         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.
6737
6738 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
6739
6740         * m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.
6741
6742 2008-06-01  Joel Brobecker  <brobecker@adacore.com>
6743
6744         * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
6745         treat pointers in data space as function descriptors if the
6746         target address is also in the data space.
6747
6748 2008-05-30  Joel Brobecker  <brobecker@adacore.com>
6749
6750         * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
6751         the trad-frame register value for the SP register.
6752
6753 2008-05-29  Mark Kettenis  <kettenis@gnu.org>
6754
6755         * sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.
6756
6757 2008-05-28  Joel Brobecker  <brobecker@adacore.com>
6758
6759         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
6760         that identifies function descriptors outside of the .opd section.
6761
6762 2008-05-28  Aleksandar Ristovski  <aristovski@qnx.com>
6763
6764         * breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
6765         temporary catchpoints.  In MI add missing fields 'reason', 'disp',
6766         'bkptno'.
6767         (print_mention_exception_catchpoint): Add 'Temporary' for temporary
6768         catchpoints.
6769         (handle_gnu_v3_exceptions): Use tempflag.
6770
6771 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
6772
6773         Refactor varobj_update interface.
6774         * varobj.c (varobj_update): Report changes as vector.  Also
6775         return not just a list of varobj, but a list of special structures
6776         that tell what exactly has changed.
6777         * varobj.h (enum varobj_update_error): Rename to
6778         varobj_scope_status.
6779         (struct varobj_update_result_t): New.
6780         (varobj_update): Adjust prototype.
6781         * mi/mi-cmd-var.c: Adjust for changes.
6782
6783 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
6784
6785         * varobj.c (varobj_update): Fix comment typo.
6786         Fix indentation.
6787
6788 2008-05-26  Joel Brobecker  <brobecker@adacore.com>
6789
6790         Set the symtab field of symbols read from ECOFF debugging entries.
6791         * mdebugread.c (add_symbol): Add new parameter symtab.
6792         (parse_symbol): Update calls to add_symbol throughout.
6793
6794 2008-05-27  Andreas Schwab  <schwab@suse.de>
6795
6796         * symtab.h (enum address_class): Remove LOC_REGPARM and
6797         LOC_COMPUTED_ARG.
6798         (struct symbol): Add is_argument.
6799         (SYMBOL_IS_ARGUMENT): Define.
6800
6801         * ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
6802         * buildsym.c (finish_block): Likewise.
6803         * stack.c (print_frame_args, print_block_frame_locals)
6804         (print_frame_arg_vars): Likewise.
6805         * symtab.c (lookup_block_symbol): Likewise.
6806         * tracepoint.c (add_local_symbols): Likewise.
6807         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
6808
6809         * coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
6810         * dwarf2read.c (new_symbol): Likewise.
6811         * mdebugread.c (parse_symbol): Likewise.
6812         * stabsread.c (define_symbol): Likewise.
6813
6814         * ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
6815         and LOC_COMPUTED_ARG.
6816         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
6817         * ax-gdb.c (gen_var_ref): Likewise.
6818         * eval.c (evaluate_subexp_for_address): Likewise.
6819         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
6820         * m2-exp.y (yylex): Likewise.
6821         * printcmd.c (address_info): Likewise.
6822         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
6823         * tracepoint.c (collect_symbol, scope_info): Likewise.
6824
6825 2008-05-24  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
6826
6827         * gdbarch.sh: Added new gdbarch struct
6828         core_regset_sections.
6829         * gdbarch.c: Refreshed.
6830         * gdbarch.h: Refreshed.
6831         * regset.h (core_regset_section): Declared.
6832         * linux-nat.c (linux_nat_do_thread_registers): Added
6833         support for the new gdbarch struct core_regset_sections.
6834         * utils.c (host_address_to_string): New function.
6835         * defs.h (host_address_to_string): New prototype.
6836         * i386-linux-tdep.c (i386_regset_rections): New register
6837         sections list for i386.
6838           (i386_linux_init_abi): Initialized new gdbarch struct
6839           core_regset_sections.
6840         * Makefile.in: Updated to reflect dependency changes.
6841         * ppc-linux-tdep.c (ppc_regset_sections): Register
6842         sections list for ppc.
6843           (ppc_linux_init_abi): Initialized new gdbarch struct
6844           core_regset_sections
6845
6846 2008-05-24  Andreas Schwab  <schwab@suse.de>
6847
6848         * linespec.c (decode_objc): Save current language around call to
6849         get_selected_block.
6850
6851 2008-05-23  Joel Brobecker  <brobecker@adacore.com>
6852
6853         * valprint.h (get_array_bounds): Renames get_array_low_bound.
6854         * valprint.c (get_array_bounds): Renames get_array_low_bound.
6855         Return the proper bound value if the array index type is an
6856         enumerated type. Compute the high bound if requested.
6857         (val_print_array_elements): Handle the case when the array
6858         element has a null size.
6859         * ada-valprint.c (print_optional_low_bound): Add handling
6860         for empty arrays or arrays of zero-size elements.
6861         (ada_val_print_array): New function, extracted out from
6862         ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
6863         handle empty arrays and arrays of zero-size elements.
6864         (ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
6865         code by call to ada_val_print_array.
6866         (ada_value_print): Remove handling of null array.  The handling
6867         was incomplete and is now better handled by ada_val_print_array.
6868
6869 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
6870
6871         * annotate.c (annotate_source, annotate_frame_begin): Replace
6872         deprecated_print_address_numeric with paddress.
6873         * cli/cli-cmds.c (list_command, edit_command): Likewise.
6874         * tui/tui-stack.c (tui_make_status_line): Likewise.
6875
6876         * defs.h (deprecated_print_address_numeric): Remove.
6877         * printcmd.c (deprecated_print_address_numeric): Remove.
6878         * maint.c (maint_print_section_info): Fix comment.
6879
6880 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
6881
6882         * valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
6883         print_binary_chars, print_char_chars): Add byte_order parameter and
6884         replace gdbarch_byte_order.
6885         (print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
6886         expressions and remove them.  Remove unused TWO_TO_FOURTH.
6887         (val_print_type_code_int): Introduce gdbarch_byte_order to get at the
6888         endianness.  Update call to print_hex_chars.
6889         * valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
6890         print_binary_chars, print_char_chars): Add byte_order parameter.
6891         * printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
6892         get at the endianness.  Update print_*_char calls to use byte_order.
6893
6894 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
6895
6896         * symtab.h (struct symbol): Make "aux_value" member a void pointer
6897         instead of a union.
6898         (SYMBOL_LOCATION_BATON): Update.
6899
6900 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
6901
6902         * symtab.h (enum address_class): Remove LOC_BASEREG and
6903         LOC_BASEREG_ARG.
6904         (struct symbol): Remove "basereg" member of "aux_value" union.
6905         (SYMBOL_BASEREG): Remove.
6906
6907         * ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
6908         or LOC_BASEREG_ARG.
6909         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
6910         (ada_add_block_symbols): Likewise.
6911         * ax-gdb.c (gen_var_ref): Likewise.
6912         * buildsym.c (finish_block): Likewise.
6913         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
6914         * m2-exp.y (yylex): Likewise.
6915         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
6916         * printcmd.c (address_info): Likewise.
6917         * stack.c (print_frame_args, print_block_frame_locals): Likewise.
6918         (print_frame_arg_vars): Likewise.
6919         * symmisc.c (print_symbol): Likewise.
6920         * symtab.c (lookup_block_symbol): Likewise.
6921         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
6922         (scope_info): Likewise.
6923
6924 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
6925
6926         * symtab.h (enum address_class): Remove LOC_LOCAL_ARG.
6927
6928         * ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
6929         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
6930         (ada_add_block_symbols): Likewise.
6931         * ax-gdb.c (gen_var_ref): Likewise.
6932         * buildsyms.c (finish_block): Likewise.
6933         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
6934         * m2-exp.y (yylex): Likewise.
6935         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
6936         * printcmd.c (address_info): Likewise.
6937         * stack.c (print_frame_args, print_frame_arg_vars): Likewise.
6938         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
6939         * symtab.c (lookup_block_symbol): Likewise.
6940         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
6941         (scope_info): Likewise.
6942
6943 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
6944
6945         * symtab.h (enum address_class): Remove LOC_INDIRECT and
6946         LOC_HP_THREAD_LOCAL_STATIC.
6947
6948         * findvar.c (symbol_read_needs_frame, read_var_value): Do not
6949         handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
6950         (read_var_value): Likewise.
6951         * buildsym.c (finish_block): Likewise.
6952         * objfiles.c (objfile_relocate): Likewise.
6953         * printcmd.c (address_info): Likewise.
6954         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
6955         * tracepoint.c (scope_info): Likewise.
6956
6957 2008-05-21 Markus Deuling  <deuling@de.ibm.com>
6958            Maxim Grigoriev  <maxim2405@gmail.com>
6959
6960         * xtensa-tdep.c (xtensa_read_register): Remove.
6961         (xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
6962         argument litbase to call0_frame_cache().
6963         (call0_track_op, call0_analyze_prologue)
6964         (call0_frame_cache): Use extra argument litbase.
6965
6966 2008-05-21  Joel Brobecker  <brobecker@adacore.com>
6967
6968         * infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
6969
6970 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
6971
6972         * frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
6973
6974 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
6975
6976         * alpha-mdebug-tdep.c: Include "trad-frame.h".
6977         (struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
6978         struct trad_frame_saved_reg *.
6979         (alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
6980         trad_frame_alloc_saved_regs.  Update accesses.  Record previous
6981         value of SP as being vfp.
6982         (alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
6983         * Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
6984
6985 2008-05-21  Markus Deuling  <deuling@de.ibm.com>
6986
6987         * score-tdep.c (score_print_insn): Get the current endianess from
6988         disassemble_info instead of gdbarch_byte_order.
6989
6990 2008-05-21  Pedro Alves  <pedro@codesourcery.com>
6991
6992         * frame.c (get_prev_frame_1): Build frame id before setting
6993         this_frame->prev_p, not after.
6994
6995 2008-05-21  Nick Roberts  <nickrob@snap.net.nz>
6996
6997         * annotate.c (annotate_new_thread): New function for new-thread
6998         annotation.
6999         * annotate.h: (annotate_new_thread): New extern.
7000         * thread.c (add_thread_with_info): Use it.
7001         * Makefile.in (thread.o): Add dependency on annotate.h.
7002
7003 2008-05-20  Joel Brobecker  <brobecker@adacore.com>
7004
7005         * win32-nat.c (win32_wait): Block the control-c event while
7006         waiting for a debug event.
7007
7008 2008-05-19  Pedro Alves  <pedro@codesourcery.com>
7009
7010         * symtab.h (lookup_symbol_in_language): Update comment.
7011         * symtab.c (lookup_symbol_aux_block): Update comment.
7012         * ada-lang.c (ada_lookup_symbol_list): Update comment.
7013
7014 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7015
7016         * symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
7017         (lookup_symbol): Likewise.
7018         * symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
7019         (lookup_symbol): Likewise.
7020         (search_symbols): Update.
7021
7022         * linespec.c (find_methods, collect_methods): Update.
7023         (add_matching_methods, add_constructors): Update.
7024         (decode_compound, decode_dollar, decode_variable): Update.
7025         (lookup_prefix_sym): Update.
7026
7027         (symbol_found): Remove SYM_SYMTAB parameter.
7028         Use SYMBOL_SYMTAB (sym) instead.
7029
7030         * gdbtypes.c (lookup_typename): Update.
7031         (lookup_struct, lookup_union, lookup_enum): Update.
7032         (lookup_template_type): Update.
7033         (check_typedef): Update.
7034         * language.c (lang_bool_type): Update.
7035         * mdebugread.c (parse_procedure): Update.
7036         * mi/mi-cmd-stack.c (list_args_or_locals): Update.
7037         * parse.c (write_dollar_variable): Update.
7038         * printcmd.c (address_info): Update.
7039         * source.c (select_source_symtab): Update.
7040         * stack.c (print_frame_args, print_frame_arg_vars): Update.
7041         * valops.c (find_function_in_inferior): Update.
7042         (value_struct_elt_for_reference): Update.
7043         * value.c (value_static_field, value_fn_field): Update.
7044
7045         * alpha-mdebug-tdep.c (find_proc_desc): Update.
7046         * arm-tdep.c (arm_skip_prologue): Update.
7047         * mt-tdep.c (mt_skip_prologue): Update.
7048         * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
7049
7050         * ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
7051         * ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
7052         (add_defn_to_vec): Likewise.
7053         (ada_add_block_symbols): Likewise.
7054         (lookup_cached_symbol, cache_symbol): Likewise.
7055         (standard_lookup): Update.
7056         (ada_lookup_symbol_list): Update.
7057
7058         * c-valprint.c (c_val_print): Update.
7059         * cp-support.c (cp_lookup_rtti_type): Update.
7060         * jv-lang.c (java_lookup_class, get_java_object_type): Update.
7061         * objc-lang.c (lookup_struct_typedef, find_imps): Update.
7062         * p-valprint.c (pascal_val_print): Update.
7063         * scm-lang.c (scm_lookup_name): Update.
7064
7065         * c-exp.y: Update.
7066         * f-exp.y: Update.
7067         * jv-exp.y: Update.
7068         * m2-exp.y: Update.
7069         * objc-exp.y: Update.
7070         * p-exp.y: Update.
7071
7072 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7073
7074         * language.h (struct language_defn): Remove SYMTAB parameter from
7075         la_lookup_symbol_nonlocal callback function pointer.
7076
7077         * ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7078         (ada_lookup_encoded_symbol): Likewise.
7079         * ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7080         Always call fixup_symbol_section.
7081         (ada_lookup_symbol): Remove SYMTAB parameter.
7082         (ada_lookup_symbol_nonlocal): Likewise.
7083         * ada-exp.y (write_object_renaming): Update.
7084         (find_primitive_type): Likewise.
7085
7086         * cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7087         (cp_lookup_symbol_namespace): Likewise.
7088         * cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
7089         (lookup_symbol_file): Likewise.
7090         (lookup_possible_namespace_symbol): Likewise.
7091         (cp_lookup_symbol_nonlocal): Likewise.
7092         (cp_lookup_symbol_namespace): Likewise.
7093         (cp_lookup_nested_type): Update.
7094
7095         * scm-valprint.c (scm_inferior_print): Update.
7096         * valops.c (value_maybe_namespace_elt): Update.
7097
7098         * solist.h (struct target_so_ops): Remove SYMTAB parameter from
7099         lookup_lib_global_symbol callback function pointer.
7100         (solib_global_lookup): Remove SYMTAB parameter.
7101         * solib.c (solib_global_lookup): Remove SYMTAB parameter.
7102         * solib-svr4.c (elf_lookup_lib_symbol): Likewise.
7103
7104         * symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7105         (lookup_symbol_static): Likewise.
7106         (lookup_symbol_global): Likewise.
7107         (lookup_symbol_aux_block): Likewise.
7108         (lookup_global_symbol_from_objfile): Likewise.
7109         * symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
7110         (lookup_symbol_aux_local): Likewise.
7111         (lookup_symbol_aux_block): Likewise.
7112         (lookup_symbol_aux_symtabs): Likewise.
7113         (lookup_symbol_aux_psymtabs): Likewise.
7114         (lookup_global_symbol_from_objfile): Likewise.
7115         (basic_lookup_symbol_nonlocal): Likewise.
7116         (lookup_symbol_static): Likewise.
7117         (lookup_symbol_global): Likewise.
7118
7119         (lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
7120
7121 2008-05-17  Pedro Alves  <pedro@codesourcery.com>
7122
7123         * remote.c (init_extended_remote_ops): Fix typo.
7124
7125 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7126
7127         * NEWS: Mention new DICOS x86 target configuration.
7128
7129 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7130             Ulrich Weigand  <uweigand@de.ibm.com>
7131
7132         * minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
7133         * symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
7134
7135         * symtab.c (fixup_section): Remove prototype.  Add ADDR parameter;
7136         use it instead of ginfo->value.address.  Look up minimal symbol by
7137         address and name.  Assume OBJFILE is non-NULL.
7138         (fixup_symbol_section): Ensure we always have an objfile to look
7139         into.  Extract and pass to fixup_section the symbol's address that
7140         will match the minimal symbol's address.
7141         (fixup_psymbol_section): Likewise.
7142
7143         (find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
7144         overlays and the addrmap returned the wrong section.
7145
7146         * dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
7147         calling fixup_symbol_section.
7148
7149 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7150
7151         * minsyms.c: Include "target.h".
7152         (find_solib_trampoline_target): Handle minimal symbols pointing
7153         to function descriptors as well.
7154         * Makefile.in (minsyms.o): Update dependencies.
7155
7156         * ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
7157         (ppc64_standard_linkage1): ... this.  Fix optional instructions.
7158         (PPC64_STANDARD_LINKAGE_LEN): Rename to ...
7159         (PPC64_STANDARD_LINKAGE1_LEN): ... this.
7160         (ppc64_standard_linkage2, ppc64_standard_linkage3): New.
7161         (PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
7162         (ppc64_standard_linkage_target): Rename to ...
7163         (ppc64_standard_linkage1_target): ... this.
7164         (ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
7165         (ppc64_skip_trampoline_code): Support three variants of standard
7166         linkage stubs.  Call find_solib_trampoline_target to handle
7167         glink stubs.
7168
7169 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7170
7171         * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
7172         ppc64_sysv_abi_adjust_breakpoint_address.
7173         * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7174         * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7175
7176 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7177
7178         * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
7179         (ppc_linux_init_abi): Install find_solib_trampoline_target instead
7180         of ppc_linux_skip_trampoline_code.
7181
7182 2008-05-15  Daniel Jacobowitz  <dan@codesourcery.com>
7183
7184         * gdbarch.sh: Delete dwarf_reg_to_regnum.
7185         * gdbarch.c, gdbarch.h: Regenerated.
7186         * amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
7187         hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
7188         s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
7189
7190 2008-05-15  Pedro Alves  <pedro@codesourcery.com>
7191
7192         * linux-nat.c (trap_ptid): Delete.
7193         (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
7194         Adjust.
7195         * linux-thread-db.c (thread_db_wait): Adjust.
7196
7197 2008-05-15  Joel Brobecker  <brobecker@adacore.com>
7198
7199         * linespec.c (decode_line_1): Fix a couple of comments.
7200
7201 2008-05-15  Alan Modra  <amodra@bigpond.net.au>
7202
7203         * dbxread.c: Formatting.
7204         (INTERNALIZE_SYMBOL): Init n_other.
7205         (set_namestring): Take pointer to nlist arg rather than struct
7206         copy.  Update all callers.
7207
7208 2008-05-15  Andreas Schwab  <schwab@suse.de>
7209
7210         * Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
7211         (dwarf2read.o): Add $(addrmap_h).
7212
7213 2008-05-14  Ulrich Weigand  <uweigand@de.ibm.com>
7214
7215         * ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
7216         (ppc64_linux_convert_from_func_ptr_addr): ... to this.  No longer try
7217         to handle ppc32 PLT entries.
7218         (ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
7219         only on ppc64.
7220
7221 2008-05-14  Daniel Jacobowitz  <dan@codesourcery.com>
7222
7223         * elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
7224         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
7225         lookup_minimal_symbol_by_pc_section.  Prefer trampolines if requested.
7226         (lookup_minimal_symbol_by_pc_section): Use
7227         lookup_minimal_symbol_by_pc_section_1.
7228         (lookup_solib_trampoline_symbol_by_pc): Likewise.
7229
7230 2008-05-13  Joel Brobecker  <brobecker@adacore.com>
7231
7232         * findcmd.c: Add #include "gdb_stdint.h".
7233         * Makefile.in (findcmd.o): Update dependencies.
7234
7235 2008-05-11  David S. Miller  <davem@davemloft.net>
7236
7237         * sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
7238         long double size override, Linux does use 128-bit now.
7239
7240         * sparc-linux-tdep.c (PSR_SYSCALL): Define.
7241         (sparc_linux_write_pc): New function.
7242         (sparc32_linux_init_abi): Register it.
7243         * sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
7244         (sparc64_linux_write_pc): New function.
7245         (sparc64_linux_init_abi): Register it.
7246
7247         * sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
7248         dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
7249
7250 2008-05-11  Ulrich Weigand  <uweigand@de.ibm.com>
7251
7252         * rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
7253         and info.tdep_info before calling gdbarch_init_osabi.
7254
7255 2008-05-09  Joel Brobecker  <brobecker@adacore.com>
7256
7257         * ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
7258         the type of the right hand side of the assignment to the type
7259         of the left hand side if the left hand side is a convenience
7260         variable.
7261
7262 2008-05-09  Ulrich Weigand  <uweigand@de.ibm.com>
7263
7264         * NEWS: Mention gdbserver bi-arch capability.
7265
7266 2008-05-09  Doug Evans  <dje@google.com>
7267
7268         New "find" command.
7269         * NEWS: Document find command and qSearch:memory packet.
7270         * Makefile.in (SFILES): Add findcmd.c.
7271         (COMMON_OBJS): Add findcmd.o.
7272         (findcmd.o): New rule.
7273         * findcmd.c: New file.
7274         * target.h (target_ops): New member to_search_memory.
7275         (simple_search_memory): Declare.
7276         (target_search_memory): Declare.
7277         * target.c (simple_search_memory): New fn.
7278         (target_search_memory): New fn.
7279         * remote.c (PACKET_qSearch_memory): New packet kind.
7280         (remote_search_memory): New fn.
7281         (init_remote_ops): Init to_search_memory.
7282         (init_extended_remote_ops): Ditto.
7283         (_initialize_remote): Add qSearch:memory packet config command.
7284
7285 2008-05-09  Eli Zaretskii  <eliz@gnu.org>
7286
7287         * thread.c (_initialize_thread): Don't use commas and periods in
7288         first line of doc string of "set/show print thread-events".
7289
7290 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7291
7292         * alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
7293         Update for unwinder changes.
7294
7295 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7296
7297         * frame.c (get_frame_base_address, get_frame_locals_address)
7298         (get_frame_args_address): Pass the correct frame when calling
7299         frame_base_find_by_frame.
7300
7301 2008-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7302
7303         * remote.c (extended_remote_attach_1): Call target_find_description.
7304
7305 2008-05-08  Daniel Jacobowitz  <dan@codesourcery.com>
7306
7307         * remote.c (extended_remote_create_inferior_1): Clean up
7308         before marking the target running.
7309
7310 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7311
7312         * hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
7313         changes.
7314
7315 2008-05-07  Joel Brobecker  <brobecker@adacore.com>
7316
7317         * sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
7318         sparc64-sol2-tdep.c: Update for unwinder changes.
7319
7320 2008-05-07  Daniel Jacobowitz  <dan@codesourcery.com>
7321
7322         * cp-support.c (mangled_name_to_comp): Initialize storage.
7323         (unqualified_name_from_comp): Likewise.
7324
7325 2008-05-07  Jie Zhang  <jie.zhang@analog.com>
7326
7327         * remote.c (remote_insert_breakpoint): Call get_remote_state
7328         after gdbarch_breakpoint_from_pc is called.
7329         (remote_insert_hw_breakpoint): Likewise.
7330
7331 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7332
7333         * valprint.c (val_print): Add new language parameter and use it
7334         instead of using the current_language. Update calls to val_print
7335         throughout.
7336         (common_val_print): Add new langauge parameter and pass it to
7337         val_print.
7338         * value.h (struct language_defn): Add opaque declaration.
7339         (val_print, common_val_print): Update declarations.
7340         * stack.c (print_frame_args): Update call to common_val_print
7341         using the appropriate language.
7342         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7343         * c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
7344         mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
7345         scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
7346         #include "language.h" if necessary.
7347         Update calls to val_print and common_val_print.
7348         * Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
7349         Update dependencies.
7350
7351 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7352
7353         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
7354         pointing inside a non-executable section as function descriptors.
7355
7356 2008-05-06  Pedro Alves  <pedro@codesourcery.com>
7357
7358         * inf-loop.c (inferior_event_handler): Run all continuations and
7359         print any language change before running the breakpoint commands.
7360
7361 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7362
7363         * frame-unwind.c (frame_unwind_got_bytes): New function.
7364         * frame-unwind.h (frame_unwind_got_bytes): Add declaration.
7365         * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
7366         for unwinder changes.
7367
7368 2008-05-05  Doug Evans  <dje@google.com>
7369
7370         * NEWS: Mention new /m modifier for disassemble command.
7371         * cli/cli-cmds.c (print_disassembly): New function.
7372         (disassemble_current_function): New function
7373         (disassemble_command): Recognize /m modifier, print mixed
7374         source+assembly.
7375         (init_cli_cmds): Update disassemble help text.
7376
7377 2008-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
7378
7379         * xtensa-tdep.c: Update for unwinder changes.
7380
7381 2008-05-05  Andreas Schwab  <schwab@suse.de>
7382
7383         Update m68k port for unwinder changes.
7384         * m68k-tdep.c (m68k_frame_cache): Expect this_frame.
7385         (m68k_frame_this_id, m68k_frame_prev_register): Update signature.
7386         (m68k_frame_unwind): Use default_frame_sniffer.
7387         (m68k_frame_sniffer): Remove.
7388         (m68k_frame_base_address): Expect this_frame.
7389         (m68k_dummy_id): Renamed from m68k_unwind_dummy_id.  Expect
7390         this_frame.
7391         (m68k_gdbarch_init): Use set_gdbarch_dummy_id,
7392         dwarf2_append_unwinders, and frame_unwind_append_unwinder.
7393         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
7394         parameter instead of pc value.
7395         (m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
7396         Expect this_frame.
7397         (m68k_linux_sigtramp_frame_this_id)
7398         (m68k_linux_sigtramp_frame_prev_register)
7399         (m68k_linux_sigtramp_frame_sniffer): Update signature.
7400         (m68k_linux_sigtramp_frame_unwind): Use
7401         m68k_linux_sigtramp_frame_sniffer.
7402         (m68k_linux_init_abi): Use frame_unwind_append_unwinder.
7403
7404         * m68klinux-nat.c (store_register): Fix typo.
7405
7406 2008-05-05  Pedro Alves  <pedro@codesourcery.com>
7407
7408         * infcmd.c (step_1): Put thread id on the stack to avoid possible
7409         NULL dereferencing.
7410
7411 2008-05-05  Luis Machado  <luisgpm@br.ibm.com>
7412
7413         * symfile.c (reread_symbols): Update objfile's entry point.
7414
7415 2008-05-05  Aleksandar Ristovski  <aristovski@qnx.com>
7416             Joel Brobecker  <brobecker@adacore.com>
7417
7418         * ada-lang.c: Update throughout to use symbol_matches_domain
7419         instead of matching the symbol domain explictly.
7420         * dwarf2read.c (add_partial_symbol): Do not add new psym for
7421         STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
7422         class as typedefs. See lookup_partial_symbol function.
7423         (new_symbol): Similar to add_partial_symbol, do not create
7424         symbol for the typedef. See lookup_block_symbol.
7425         * symtab.c (symbol_matches_domain): New function, takes care
7426         of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
7427         (lookup_partial_symbol): Use symbol_matches_domain to see if the
7428         found psym domain matches the given domain.
7429         (lookup_block_symbol): Likewise.
7430
7431 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7432
7433         * top.c (command_line_handler_continuation): Remove.
7434         (execute_command): Do not install the above.
7435
7436 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7437
7438         * inf-loop.c (inferior_event_handler): Call bpstat_do_action,
7439         and catch all exceptions from it.
7440         * top.c (command_line_handler_continuation): Don't
7441         call bpstat_do_action here.
7442
7443 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7444
7445         * dwarf2read.c (struct dwarf2_cu): Add type_hash.
7446         (struct die_info): Remove type.
7447         (read_type_die, read_typedef, read_base_type, read_subrange_type)
7448         (read_structure_type, read_enumeration_type, read_array_type)
7449         (read_tag_pointer_type, read_tag_ptr_to_member_type)
7450         (read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
7451         (read_tag_string_type, read_subroutine_type, read_set_type)
7452         (read_unspecified_type): Delete prototypes.  Remove check for
7453         already-loaded type.  Return the new type.
7454         (set_die_type): Return the new type.
7455         (reset_die_and_siblings_types): Delete.
7456         (load_comp_unit, load_full_comp_unit): Set type_hash.
7457         (process_queue): Remove call to reset_die_and_siblings_types.
7458         (process_die): Do not read most types here.  Use read_type_die
7459         for others.
7460         (read_func_scope, dwarf2_add_member_fn): Use read_type_die.
7461         (quirk_gcc_member_function_pointer): Return the new type.
7462         (process_structure_scope, process_enumeration_scope): Use
7463         get_die_type and read the DIE's type.
7464         (read_full_die): Do not initialize die->type.
7465         (tag_type_to_type): Use read_type_die.
7466         (read_type_die): Check for already defined types.  Return the
7467         type.
7468         (determine_prefix): Use get_die_type.
7469         (set_die_type): Return the type.
7470         (get_die_type): Take a CU argument.  Check for no type_hash.
7471
7472 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7473
7474         * dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
7475         locals.
7476
7477 2008-05-04  Pedro Alves  <pedro@codesourcery.com>
7478
7479         * breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
7480         and bp_longjmp_resume breakpoints.
7481         (breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
7482         meaningful.
7483         (create_longjmp_breakpoint): Don't create bp_longjmp_resume
7484         breakpoints.  Create bp_longjmp breakpoints as momentary
7485         breakpoints.
7486         (enable_longjmp_breakpoint): Delete.
7487         (set_longjmp_breakpoint): New.
7488         (disable_longjmp_breakpoint): Delete.
7489         (delete_longjmp_breakpoint): New.
7490         (set_longjmp_resume_breakpoint): Delete.
7491         (set_momentary_breakpoint_at_pc): New.
7492         (breakpoint_re_set_one): Don't delete bp_longjmp and
7493         bp_longjmp_resume breakpoints.
7494         (breakpoint_re_set): Don't create longjmp and longjmp-resume
7495         breakpoints.
7496
7497         * infrun.c (step_resume_breakpoint): Add comment.
7498         (struct execution_control_state): Delete handling_longjmp member.
7499         (init_execution_control_state). Don't clear handling_longjmp.
7500         (context_switch): Don't context switch handling_longjmp.
7501         (handle_inferior_event): If handling a bp_longjmp breakpoint,
7502         create a bp_longjmp_resume breakpoint, and set it as current
7503         step_resume_breakpoint, then step over the longjmp breakpoint.  If
7504         handling a bp_longjmp_resume breakpoint, don't delete the longjmp
7505         breakpoint, delete the longjmp-resume breakpoint, and stop
7506         stepping.
7507         (currently_stepping): Remove handling_longjmp from expression.
7508         (insert_step_resume_breakpoint_at_sal): Update comment.
7509         (insert_longjmp_resume_breakpoint): New.
7510
7511         * breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
7512         (enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
7513         declarations.
7514         (set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
7515         (set_longjmp_resume_breakpoint): Delete declaration.
7516
7517         * gdbthread.h (save_infrun_state): Remove handling_longjmp
7518         parameter.
7519         (load_infrun_state): Delete *handling_longjmp parameter.
7520         * thread.c (save_infrun_state): Remove handling_longjmp parameter.
7521         Update body.
7522         (load_infrun_state): Delete *handling_longjmp parameter.  Update
7523         body.
7524
7525         * infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
7526         (delete_longjmp_breakpoint_cleanup): New.
7527         (step_1): Call set_longjmp_breakpoint instead of
7528         enable_longjmp_breakpoint.  Use delete_longjmp_breakpoint_cleanup
7529         instead of disable_longjmp_breakpoint_cleanup when making cleanup.
7530         (step_1_continuation): Pass thread id in the continuation args to
7531         step_once.
7532         (step_once): Add thread parameter.  Pass thread id the the
7533         continuation.
7534
7535 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7536
7537         Set CU BASE_ADDRESS already from partial DIEs.
7538         * dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
7539         BASE_ADDRESS_TYPE.  Set these variables from DW_AT_LOW_PC and
7540         DW_AT_ENTRY_PC.  Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
7541         from these variables if it was still unset.
7542
7543         * Makefile.in: Update dependencies.
7544         * dwarf2read.c: Include "addrmap.h"
7545         (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
7546         (dwarf2_ranges_read): New prototype.
7547         (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
7548         Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
7549         HAS_RANGES_OFFSET, otherwise add there the contiguous range.
7550         (dwarf2_ranges_read): New parameter RANGES_PST, update the function
7551         comment for it.  Add the found ranges to RANGES_PST.  New variable
7552         BASEADDR, initialize it the common way.
7553         (dwarf2_get_pc_bounds): Update the caller for the new parameter.
7554         (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
7555         HAS_RANGES_OFFSET for the later processing.
7556         * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
7557         * symtab.c: Include "addrmap.h"
7558         (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
7559         Move the psymtab locator into ...
7560         (find_pc_sect_psymtab_closer): ... a new function.
7561
7562 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7563
7564         * arch-utils.c (gdbarch_update_p): Use default values for
7565         info.abfd and info.target_desc if they are NULL.
7566         (gdbarch_from_bfd): Remove assertion.
7567         (set_gdbarch_from_file): Call gdbarch_find_by_info directly,
7568         using the current target description.
7569         (gdbarch_info_fill): Do not use default values for info->abfd
7570         and info->target_desc.
7571
7572 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7573
7574         * symfile.c (reread_symbols): Reload EXEC_BFD on its change.
7575
7576 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7577
7578         * inferior.h (read_pc_pid, write_pc_pid): Remove.
7579         * regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.
7580
7581         * regcache.c (read_pc_pid): Remove, replace by ...
7582         (regcache_read_pc): ... this function.
7583         (write_pc_pid): Remove, replace by ...
7584         (regcache_write_pc): ... this function.
7585         (read_pc, write_pc): Update.
7586
7587         * infrun.c (displaced_step_prepare): Replace read_pc_pid and
7588         write_pc_pid by regcache_read_pc and regcache_write_pc.
7589         (displaced_step_fixup): Likewise.
7590         (resume): Likewise.  Use regcache arch instead of current_gdbarch.
7591         (prepare_to_proceed): Likewise.
7592         (proceed): Likewise.
7593         (adjust_pc_after_break): Likewise.
7594         (handle_inferior_event): Likewise.
7595
7596         * linux-nat.c (cancel_breakpoint): Likewise.
7597         * linux-thread-db.c (check_event): Likewise.
7598         * aix-thread.c (aix_thread_wait): Likewise.
7599         * tracepoint.c (trace_dump_command): Likewise.
7600
7601 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7602
7603         * dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
7604         SYMBOL_LOCATION_BATON.
7605
7606 2008-05-04  Vladimir Prus  <vladimir@codesourcery.com>
7607
7608         * target.h (struct target_ops): New field to_auxv_parse.
7609         * auxv.c (default_auxv_parse): New, renamed from previous
7610         target_auxv_parse.
7611         (target_auxv_parse): Try to call target method.  Fallback to
7612         default_auxv_parse if not found.
7613         * procfs.c (procfs_auxv_parse): New.
7614         (init_procfs_ops): On Solaris, in 64-bit mode, install
7615         procfs_auxv_parse.
7616
7617 2008-05-03  Adam Nemet  <anemet@caviumnetworks.com>
7618
7619         * symfile.c (add_symbol_file_command):  Use paddress rather than
7620         hex_string to print the address.
7621
7622 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7623
7624         * rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
7625         return the null frame ID to terminate the backtrace.
7626
7627 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7628
7629         * rs6000-tdep.c: Do not include "rs6000-tdep.h".
7630         (rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
7631         (SIG_FRAME_PC_OFFSET): Likewise.
7632         (SIG_FRAME_LR_OFFSET): Likewise.
7633         (SIG_FRAME_FP_OFFSET): Likewise.
7634         (rs6000_push_dummy_call): Likewise.
7635         (rs6000_return_value): Likewise.
7636         (rs6000_convert_from_func_ptr_addr): Likewise.
7637         (branch_dest, rs6000_software_single_step): Likewise.
7638         (deal_with_atomic_sequence): Rename to ...
7639         (ppc_deal_with_atomic_sequence): ... this.  Adapt all callers.
7640         Do not call branch_dest; inline required parts of that function.
7641         (rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
7642         with SYMBOL_LINKAGE_NAME.
7643         (struct reg, regsize): Delete.
7644         (read_memory_addr): Delete; inline into callers.
7645         (rs6000_skip_prologue): Move after skip_prologue.
7646         (skip_prologue): Remove prototype.
7647         (rs6000_gdbarch_init): Remove sysv_abi variable; perform all
7648         initialization as if this variable were true.  Do not install
7649         ppc64_sysv_abi_adjust_breakpoint_address.
7650
7651         * rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
7652         "gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
7653         and "breakpoint.h".
7654         (rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
7655         (SIG_FRAME_PC_OFFSET): Likewise.
7656         (SIG_FRAME_LR_OFFSET): Likewise.
7657         (SIG_FRAME_FP_OFFSET): Likewise.
7658         (rs6000_push_dummy_call): Likewise.
7659         (rs6000_return_value): Likewise.
7660         (rs6000_convert_from_func_ptr_addr): Likewise.
7661         (branch_dest, rs6000_software_single_step): Likewise.  Replace
7662         tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
7663         (rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
7664         rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
7665         Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
7666         Set tdep->lr_frame_offset.  Do not set tdep->text_segment_base.
7667
7668         * rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
7669         (AIX_TEXT_SEGMENT_BASE): New macro.
7670         * rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
7671         by AIX_TEXT_SEGMENT_BASE.
7672
7673         * ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
7674         (struct gdbarch_tdep): Remove text_segment_base member.
7675         * ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
7676         ppc64_sysv_abi_adjust_breakpoint_address.
7677
7678         * Makefile.in (rs6000-tdep.o): Update dependencies.
7679         (rs6000-aix-tdep.o): Likewise.
7680
7681 2008-05-03  Luis Machado  <luisgpm@br.ibm.com>
7682             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7683
7684         * cli/cli-decode.c (lookup_cmd_1): Fix indentation.
7685         * doublest.c (convert_typed_floating): Fix typo in comment.
7686         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
7687         * frame-unwind.h (frame_sniffer_ftype): Likewise.
7688         * frame.c (frame_unwind_address_in_block): Likewise.
7689         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
7690         * symtab.h (struct symbol): Likewise.
7691         * tramp-frame.h (struct trad_frame_cache): Likewise.
7692         * value.c (allocate_repeat_value): Likewise.
7693
7694 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7695
7696         * infrun.c (handle_inferior_event): Do not insert breakpoints at
7697         TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).
7698
7699 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
7700
7701         * parse.c (parse_exp_in_context): Don't override
7702         expression_context_pc if get_selected_block returned a valid
7703         block.
7704
7705 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
7706
7707         * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
7708         * arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
7709         * breakpoint.c (args_for_catchpoint_enable, current_exception_event):
7710         Delete.
7711         * c-typeprint.c (c_type_print_base): Delete handling of template
7712         instantiations.
7713         * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
7714         (METHOD_PTR_TO_VOFFSET): Delete.
7715         * defs.h (QUIT_FIXME): Delete.
7716         * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
7717         (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
7718         * gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
7719         ninstantiations, and instantiations.
7720         (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
7721         (TYPE_FN_FIELD_INLINED): Delete.
7722         * srec.h (SREC_BINARY): Delete.
7723         * symtab.c (symbol_init_demangled_name): Delete.
7724         * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
7725         (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
7726         (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
7727         (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
7728         (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
7729         (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
7730         * target.h (enum thread_control_capabilities): Delete tc_switch.
7731         (target_can_switch_threads): Delete.
7732
7733 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
7734
7735         * Makefile.in (objfiles.o): Update.
7736         * exec.c (exec_set_section_address): Support p->addr != 0.
7737         * objfiles.c (objfile_relocate): Update exec_ops section
7738         addresses.
7739         * symfile.c (place_section): Move exec_set_section_address call...
7740         (default_symfile_offsets): ...to here.
7741
7742 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7743
7744         * Makefile.in (ppc_linux_tdep_h): New macro.
7745         (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
7746         (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
7747         (powerpc_e500l_c): Likewise.
7748         (ppc-linux-nat.o): Update dependencies.
7749         (ppc-linux-tdep.o): Update dependencies.
7750         (rs6000-tdep.o): Update dependencies.
7751
7752         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
7753         (ppc_linux_svr4_fetch_link_map_offsets): Remove.
7754         (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
7755         (ppc_supply_reg, ppc_collect_reg): Add prototypes.
7756         (tdesc_powerpc_e500): Remove.
7757
7758         * rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
7759         and "features/rs6000/powerpc-altivec64.c".
7760         (ppc_supply_reg, ppc_collect_reg): Make global.
7761         (variants): Use tdesc_powerpc_32 for "powerpc" and
7762         tdesc_powerpc_altivec64 for "powerpc64".
7763         (_initialize_rs6000_tdep): Initialize AltiVec descriptions.
7764
7765         * ppc-linux-tdep.h: New file.
7766
7767         * ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
7768         Include "features/rs6000/powerpc-32l.c".
7769         Include "features/rs6000/powerpc-altivec32l.c".
7770         Include "features/rs6000/powerpc-64l.c".
7771         Include "features/rs6000/powerpc-altivec64l.c".
7772         Include "features/rs6000/powerpc-e500l.c".
7773         (ppc_linux_supply_gregset): New function.
7774         (ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
7775         (ppc32_linux_gregset): Use ppc_linux_supply_gregset.
7776         (ppc64_linux_gregset): Likewise.
7777         (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
7778         (ppc_linux_trap_reg_p): New function.
7779         (ppc_linux_write_pc): New function.
7780         (ppc_linux_core_read_description): New function.
7781         (ppc_linux_init_abi): Install ppc_linux_write_pc and
7782         ppc_linux_core_read_description.  Install orig_r3 and trap
7783         registers if present in the target description.
7784         (_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
7785
7786         * ppc-linux-nat.c: Include "ppc-linux-tdep.h".
7787         (PT_ORIG_R3, PT_TRAP): Define if necessary.
7788         (ppc_register_u_addr): Handle orig_r3 and trap registers.
7789         (fetch_ppc_registers): Likewise.
7790         (store_ppc_registers): Likewise.
7791         (store_register): Likewise.
7792         (ppc_linux_read_description): Check whether AltiVec is supported.
7793         Check whether inferior is 32-bit or 64-bit.  Return the appropriate
7794         Linux target description.
7795
7796         * features/Makefile (WHICH): Use rs6000/powerpc-32l and
7797         rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
7798         Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
7799         of rs6000/powerpc-64.  Use rs6000/powerpc-e500l instead of
7800         rs6000/powerpc-e500.  Update -expedite variables accordingly.
7801
7802         * features/rs6000/power-spe.xml: Use regnum 73 for "acc".
7803         * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
7804         * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
7805         * features/rs6000/powerpc-e500.c: Regenerate.
7806         * features/rs6000/powerpc-32.c: Regenerate.
7807         * features/rs6000/powerpc-64.c: Regenerate.
7808
7809         * features/rs6000/power-linux.xml: New file.
7810         * features/rs6000/power64-linux.xml: New file.
7811         * features/rs6000/powerpc-32l.xml: New file.
7812         * features/rs6000/powerpc-altivec32l.xml: New file.
7813         * features/rs6000/powerpc-64l.xml: New file.
7814         * features/rs6000/powerpc-altivec64l.xml: New file.
7815         * features/rs6000/powerpc-e500l.xml: New file.
7816         * features/rs6000/powerpc-32l.c: New (generated) file.
7817         * features/rs6000/powerpc-altivec32l.c: New (generated) file.
7818         * features/rs6000/powerpc-64l.c: New (generated) file.
7819         * features/rs6000/powerpc-altivec64l.c: New (generated) file.
7820         * features/rs6000/powerpc-e500l.xml: New (generated) file.
7821
7822         * regformats/reg-ppc.dat: Remove.
7823         * regformats/reg-ppc64.dat: Remove.
7824         * regformats/rs6000/powerpc-32.dat: Remove.
7825         * regformats/rs6000/powerpc-64.dat: Remove.
7826         * regformats/rs6000/powerpc-e500.dat: Remove.
7827         * regformats/rs6000/powerpc-32l.dat: New (generated) file.
7828         * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
7829         * regformats/rs6000/powerpc-64l.dat: New (generated) file.
7830         * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
7831         * regformats/rs6000/powerpc-e500l.dat: New (generated) file.
7832
7833 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
7834
7835         * thread.c (delete_thread): Call observer_notify_thread_exit.
7836         * mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
7837         thread_exit observer.
7838         (mi_thread_exit): New.
7839
7840 2008-05-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
7841
7842         * breakpoint.c (create_exception_catchpoint): Remove prototype
7843         for already deleted function.
7844         * breakpoint.h (ep_is_exception_catchpoint): Likewise.
7845         * frame.h (show_stack_frame): Remove prototype.
7846         * stack.c (show_stack_frame): Remove empty, unused function.
7847         * source.c (symtab_to_fullname, print_source_lines): Small fix
7848         in comment.
7849         * value.c (show_values): Update comments to mention "show values"
7850         command instead of "info history".
7851
7852 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
7853
7854         * linespec.c: Include "target.h".
7855         (minsym_found): Handle minimal symbols pointing to function
7856         descriptors.  Use find_function_start_pc.
7857         * minsyms.c (msymbol_objfile): New function.
7858         * parse.c (write_exp_msymbol): Handle minimal symbols pointing
7859         to function descriptors.
7860         * symtab.c (fixup_section): Only use minimal symbol at the same
7861         address to determine section of a symbol.
7862         (find_function_start_pc): New function.
7863         (find_function_start_sal): Use it.
7864         * symtab.h (msymbol_objfile): Add prototype.
7865         (find_function_start_pc): Likewise.
7866         * value.c: Include "objfiles.h".
7867         (value_fn_field): Handle minimal symbols pointing to function
7868         descriptors.
7869         * Makefile.in (linespec.o): Update dependencies.
7870         (value.o): Likewise.
7871
7872 2008-05-02  Joel Brobecker  <brobecker@adacore.com>
7873
7874         * ada-lang.c (unwrap_value): Handle the case where the "F" field
7875         inside a PAD type is a bitfield.
7876
7877 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
7878
7879         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
7880         TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
7881         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
7882         Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
7883         Allow typedefs when checking for function pointer arguments.
7884         Right-align small structs passed on the stack.
7885         (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
7886         TYPE_CODE_CHAR the same as TYPE_CODE_INT.
7887         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
7888
7889 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
7890
7891         * Makefile.in (arm-tdep.o): Update.
7892         * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
7893         (struct arm_per_objfile, arm_compare_mapping_symbols): New.
7894         (arm_pc_is_thumb): Use mapping symbols.
7895         (arm_objfile_data_cleanup, arm_record_special_symbol): New.
7896         (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
7897         (_initialize_arm_tdep): Initialize arm_objfile_data_key.
7898         * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
7899         * gdbarch.sh: Add record_special_symbol.
7900         * gdbarch.c, gdbarch.h: Regenerated.
7901         * objfiles.c (struct objfile_data): Add cleanup member.
7902         (register_objfile_data_with_cleanup): New function, from
7903         register_objfile_data.
7904         (register_objfile_data): Use it.
7905         (objfile_free_data): Call clear_objfile_data.
7906         (clear_objfile_data): Call cleanup functions.
7907         * objfiles.h (register_objfile_data_with_cleanup): Declare.
7908
7909 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
7910
7911         * objfiles.c (init_entry_point_info): Handle shared libraries.
7912
7913 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
7914
7915         * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
7916         lowest_pc.
7917
7918 2008-05-02  Jim Blandy  <jimb@codesourcery.com>
7919             Pedro Alves  <pedro@codesourcery.com>
7920
7921         Implement displaced stepping.
7922
7923         * gdbarch.sh (max_insn_length): New 'variable'.
7924         (displaced_step_copy, displaced_step_fixup)
7925         (displaced_step_free_closure, displaced_step_location): New
7926         functions.
7927         (struct displaced_step_closure): Add forward declaration.
7928         * gdbarch.c, gdbarch.h: Regenerated.
7929
7930         * arch-utils.c: #include "objfiles.h".
7931         (simple_displaced_step_copy_insn)
7932         (simple_displaced_step_free_closure)
7933         (displaced_step_at_entry_point): New functions.
7934         * arch-utils.h (simple_displaced_step_copy_insn)
7935         (simple_displaced_step_free_closure)
7936         (displaced_step_at_entry_point): New prototypes.
7937
7938         * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
7939         (I386_MAX_MATCHED_INSN_LEN): ... this.
7940         (i386_absolute_jmp_p, i386_absolute_call_p)
7941         (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
7942         (i386_displaced_step_fixup): New functions.
7943         (struct i386_insn, i386_match_insn): Update.
7944         (i386_gdbarch_init): Set gdbarch_max_insn_length.
7945         * i386-tdep.h (I386_MAX_INSN_LEN): New.
7946         (i386_displaced_step_fixup): New prototype.
7947         * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
7948         Register gdbarch_displaced_step_copy,
7949         gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
7950         and gdbarch_displaced_step_location functions.
7951
7952         * infrun.c (debug_displaced): New variable.
7953         (show_debug_displaced): New function.
7954         (struct displaced_step_request): New struct.
7955         (displaced_step_request_queue, displaced_step_ptid)
7956         (displaced_step_gdbarch, displaced_step_closure)
7957         (displaced_step_original, displaced_step_copy)
7958         (displaced_step_saved_copy, can_use_displaced_stepping): New
7959         variables.
7960         (show_can_use_displaced_stepping, use_displaced_stepping)
7961         (displaced_step_clear, cleanup_displaced_step_closure)
7962         (displaced_step_dump_bytes, displaced_step_prepare)
7963         (displaced_step_clear_cleanup, write_memory_ptid)
7964         (displaced_step_fixup): New functions.
7965         (resume): Call displaced_step_prepare.
7966         (proceed): Call read_pc once, and remember the value.  If using
7967         displaced stepping, don't remove breakpoints.
7968         (handle_inferior_event): Call displaced_step_fixup.  Add some
7969         debugging output.  When we try to step over a breakpoint, but get
7970         a signal to deliver to the thread instead, ensure the step-resume
7971         breakpoint is actually inserted.  If a thread hop is needed, and
7972         displaced stepping is enabled, don't remove breakpoints.
7973         (init_wait_for_inferior): Call displaced_step_clear.
7974         (_initialize_infrun): Add "set debug displaced" command.  Add
7975         "maint set can-use-displaced-stepping" command.  Clear
7976         displaced_step_ptid.
7977         * inferior.h (debug_displaced): Declare variable.
7978         (displaced_step_dump_bytes): Declare function.
7979
7980         * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
7981         dependencies.
7982
7983 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
7984
7985         * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
7986         (arm_force_mode_string, arm_show_fallback_mode)
7987         (arm_show_force_mode): New.
7988         (arm_pc_is_thumb): Honor fallback-mode and force-mode.  Use
7989         arm_frame_is_thumb.
7990         (_initialize_arm_tdep): Add "set arm fallback-mode"
7991         and "set arm force-mode".
7992         * NEWS: Document new commands.
7993
7994 2008-05-02  Andrew Stubbs  <andrew.stubbs@st.com>
7995
7996         * main.h (batch_silent): Declare.
7997         * event-top.c: Include main.h.
7998         (gdb_setup_readline): Remove extern batch_silent declaration.
7999         * infrun.c (normal_stop): Don't print source location when running in
8000         --batch-silent mode.
8001         * Makefile.in (event-top.o): Add main.h dependency.
8002
8003 2008-05-02  Andreas Schwab  <schwab@suse.de>
8004
8005         * target.h (struct target_ops): Add
8006         to_watchpoint_addr_within_range.
8007         (target_watchpoint_addr_within_range): New function.
8008         * target.c (update_current_target): Inherit
8009         to_watchpoint_addr_within_range, defaulting to
8010         default_watchpoint_addr_within_range.
8011         (default_watchpoint_addr_within_range): New function.
8012         (debug_to_watchpoint_addr_within_range): New function.
8013         (setup_target_debug): Set to_watchpoint_addr_within_range.
8014         * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
8015         New function.
8016         (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
8017         * breakpoint.c (watchpoints_triggered): Use
8018         target_watchpoint_addr_within_range.
8019
8020 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8021
8022         * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
8023         (i[34567]86-*-dicos*, x86_64-*-dicos*):
8024         Set gdb_osabi to GDB_OSABI_DICOS.
8025
8026         * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
8027         * osabi.c (gdb_osabi_name): Add "DICOS".
8028
8029         * i386-dicos-tdep.c: New file.
8030
8031         * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
8032         (ALLDEPFILES): Add i386-dicos-tdep.c.
8033         (i386-dicos-tdep.o): New rule.
8034
8035 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8036
8037         * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
8038         and register the fork's PTID as a thread.
8039
8040 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8041
8042         PR gdb/1665
8043         * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
8044         assign its value to the breakpoint created.
8045         (create_breakpoints): Add breakpoint_ops argument and pass it
8046         to create_breakpoint call.
8047         (break_command_really): Add breakpoint_ops argument and pass/assign
8048         appropriately.
8049         (break_command_1): Pass NULL as ops argument.
8050         (set_breakpoint): Pass NULL as ops argument.
8051         (print_one_exception_catchpoint): Print <PENDING> if no loc available.
8052         (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
8053         catch and throw catchpoints.
8054
8055 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8056
8057         PR gdb/2343
8058         * corelow.c (core_open): Use gdbarch_target_signal_from_host to
8059         translate signal numeric value from the target to GDB's enum
8060         target_signal.
8061         * gdbarch.c, gdbarch.h: Regenerated.
8062         * gdbarch.sh: Added two new functions target_signal_from_host and
8063         target_signal_to_host.
8064         * target.h (default_target_signal_from_host,
8065         default_target_signal_to_host): New functions - declarations.
8066         * signals/signals.c (struct gdbarch): New declaration.
8067         (default_target_signal_to_host, default_target_signal_from_host): New
8068         functions.
8069
8070 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8071             Pedro Alves  <pedro@codesourcery.com>
8072
8073         Based on work by Jan Kratochvil <jan.kratochvil@redhat.com> and Jeff
8074         Johnston <jjohnstn@redhat.com>.
8075
8076         * NEWS: Mention attach to stopped process fix.
8077         * infcmd.c (detach_command, disconnect_command): Discard the thread
8078         list.
8079         * infrun.c (handle_inferior_event): Do not ignore non-SIGSTOP while
8080         attaching.  Use signal_stop_state.
8081         (signal_stop_state): Check stop_soon.
8082         * linux-nat.c (kill_lwp): Declare earlier.
8083         (pid_is_stopped, linux_nat_post_attach_wait): New.
8084         (lin_lwp_attach_lwp): Use linux_nat_post_attach_wait.  Update
8085         comments.
8086         (linux_nat_attach): Use linux_nat_post_attach_wait.
8087         (detach_callback, linux_nat_detach): Improve handling for signalled
8088         processes.
8089         (linux_nat_pid_to_str): Always print out the LWP ID if it differs
8090         from the process ID.
8091         * Makefile.in (infcmd.o): Update.
8092
8093 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8094
8095         * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
8096         * arm-tdep.c (arm_frame_is_thumb): New.
8097         (arm_pc_is_thumb): Clarify comment.
8098         (thumb_analyze_prologue): Remove PC special case.
8099         (thumb_scan_prologue): Take a block_addr argument.  Use it for
8100         find_pc_partial_function.  Remove unused variables.
8101         (arm_scan_prologue): Use arm_frame_is_thumb.  Use the block address
8102         for find_pc_partial_function.  Remove PC special case.
8103         (arm_prologue_prev_register): Add special handling for PC and CPSR.
8104         (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
8105         (arm_get_next_pc): Use arm_frame_is_thumb.
8106         (arm_write_pc): Use CPSR_T instead of 0x20.
8107         (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
8108         * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
8109         (CPSR_T): Define.
8110         * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
8111         DWARF2_FRAME_REG_FN.
8112         * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
8113         DWARF2_FRAME_REG_FN.
8114         (struct dwarf2_frame_state_reg): Add FN to loc union.
8115
8116 2008-05-01  Nick Roberts  <nickrob@snap.net.nz>
8117
8118         * exec.c (print_section_info): Add missing '\n'.
8119
8120 2008-05-01  Vladimir Prus  <vladimir@codesourcery.com>
8121
8122         * thread.c (add_thread): Move observer call to ...
8123         (add_thread_silent): ... here.
8124
8125 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8126
8127         * rs6000-tdep.c: Update for unwinder changes.
8128         * ppcobsd-tdep.c: Likewise.
8129
8130 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8131
8132         * s390-tdep.c: Update for unwinder changes.
8133
8134 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8135
8136         * spu-tdep.c: Update for unwinder changes.
8137
8138 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8139
8140         * hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
8141         ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
8142         sparc64-linux-tdep.c: Update for unwinder changes.
8143
8144 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8145
8146         * mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
8147         for unwinder changes.
8148         * mips-tdep.c: Likewise.
8149         (mips_stub_frame_cache): Unwind the ABI stack pointer, not the
8150         raw one.
8151
8152 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8153
8154         * arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
8155         unwinder changes.
8156
8157 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8158
8159         Update i386 and amd64 ports for unwinder changes.
8160
8161         * amd64-tdep.c (amd64_frame_cache): Expect this_frame.
8162         (amd64_frame_this_id, amd64_frame_prev_register): Update signature.
8163         (amd64_frame_unwind): Use default_frame_sniffer.
8164         (amd64_frame_sniffer): Delete.
8165         (amd64_sigtramp_frame_cache): Expect this_frame.
8166         (amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
8167         (amd64_sigtramp_frame_sniffer): Update signature.
8168         (amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
8169         (amd64_frame_base_address): Expect this_frame.
8170         (amd64_dummy_id): Renamed from amd64_unwind_dummy_id.  Expect
8171         this_frame.
8172         (amd64_init_abi): Use set_gdbarch_dummy_id and
8173         frame_unwind_append_unwinder.
8174         * i386-tdep.c (i386_frame_cache): Expect this_frame.
8175         (i386_frame_this_id, i386_frame_prev_register): Update signature.
8176         (i386_frame_unwind): Use default_frame_sniffer.
8177         (i386_frame_sniffer): Delete.
8178         (i386_sigtramp_frame_cache): Expect this_frame.
8179         (i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
8180         (i386_sigtramp_frame_sniffer): Update signature.
8181         (i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
8182         (i386_frame_base_address): Update signature.
8183         (i386_dummy_id): Rename from i386_unwind_dummy_id.  Expect this_frame.
8184         (i386_push_dummy_call): Update comment.
8185         (i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
8186         Expect this_frame.
8187         (i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
8188         and frame_unwind_append_unwinder.
8189         * amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
8190         amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
8191         i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
8192         i386nbsd-tdep.c: Update for unwinder changes.
8193
8194 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8195
8196         * trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
8197         (trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
8198         this_frame.
8199         (trad_frame_get_prev_register, trad_frame_get_register): Update signature.
8200         * trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
8201         (trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
8202         signature.
8203         * tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
8204         this_frame.
8205         (tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
8206         Update signature.
8207         * tramp-frame.h (struct tramp_frame): Update signature of init.
8208         * Makefile.in (trad-frame.o): Update.
8209
8210 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8211
8212         * dwarf2-frame.c (read_reg): Expect this_frame in the baton.
8213         (execute_stack_op): Put this_frame in the baton.
8214         (execute_cfa_program): Take this_frame.
8215         (struct dwarf2_frame_ops): Update comment for signal_frame_p.
8216         (dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
8217         (dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
8218         (dwarf2_frame_this_id): Adjust to work on this_frame.
8219         (dwarf2_signal_frame_this_id): Delete.
8220         (dwarf2_frame_prev_register): Update signature.  Use new frame
8221         unwind methods.
8222         (dwarf2_frame_sniffer): Update signature.  Expect this_frame.
8223         (dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
8224         dwarf2_frame_sniffer.
8225         (dwarf2_append_unwinders): New.
8226         (dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
8227         this_frame.
8228         * sparc-tdep.c (sparc32_dwarf2_struct_return_p)
8229         (sparc32_dwarf2_frame_init_reg): Expect this_frame.
8230         * cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
8231         * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
8232         * s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
8233         * sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
8234         * sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
8235         * dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
8236         (dwarf2_append_unwinders): Declare.
8237         (dwarf2_frame_base_sniffer): Update declaration.
8238         * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
8239         this_frame.
8240
8241 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8242
8243         Convert frame unwinders to use the current frame and
8244         "struct value".
8245
8246         * frame.c (frame_debug): Make global.
8247         (get_frame_id): Pass this frame to unwinder routines.
8248         (frame_pc_unwind): Remove unused unwind->prev_pc support.
8249         (do_frame_register_read): Do not discard the return value of
8250         frame_register_read.
8251         (frame_register_unwind): Remove debug messages.  Use
8252         frame_unwind_register_value.
8253         (frame_unwind_register_value, get_frame_register_value): New
8254         functions.
8255         (create_new_frame, get_frame_base_address, get_frame_locals_address)
8256         (get_frame_args_address, get_frame_type): Pass this frame to
8257         unwinder routines.
8258         (frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
8259         functions.
8260         * frame.h: Update comments.
8261         (frame_debug, frame_unwind_register_value, get_frame_register_value)
8262         (frame_prepare_for_sniffer): Declare.
8263         * frame-unwind.h: Update comments and parameter names.
8264         (default_frame_sniffer): Declare.
8265         (frame_prev_register_ftype): Return a struct value *.
8266         (struct frame_unwind): Remove prev_pc member.
8267         (frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
8268         (frame_unwind_append_unwinder, frame_unwind_got_optimized)
8269         (frame_unwind_got_register, frame_unwind_got_memory)
8270         (frame_unwind_got_constant, frame_unwind_got_address): Declare.
8271         * frame-base.h: Update comments and parameter names.
8272         * valops.c (value_fetch_lazy): Use get_frame_register_value.  Iterate
8273         if necessary.  Add debugging output.
8274         * sentinel-frame.c (sentinel_frame_prev_register)
8275         (sentinel_frame_this_id): Update for new signature.
8276         (sentinel_frame_prev_pc): Delete.
8277         (sentinel_frame_unwinder): Remove prev_pc.
8278         * ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
8279         prev_pc.
8280         * libunwind-frame.c (libunwind_frame_unwind): Likewise.
8281         * frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
8282         (frame_unwind_append_sniffer): Delete.
8283         (frame_unwind_append_unwinder): New function.
8284         (frame_unwind_find_by_frame): Take this frame.  Only use sniffers
8285         from unwinders.  Use frame_prepare_for_sniffer.
8286         (default_frame_sniffer, frame_unwind_got_optimized)
8287         (frame_unwind_got_register, frame_unwind_got_memory)
8288         (frame_unwind_got_constant, frame_unwind_got_address): New functions.
8289         * dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
8290         (dummy_frame_prev_register, dummy_frame_this_id): Update for new
8291         signature.
8292         * gdbarch.sh: Replace unwind_dummy_id with dummy_id.
8293         * gdbarch.c, gdbarch.c: Regenerated.
8294         * frame-base.c (default_frame_base_address)
8295         (default_frame_locals_address, default_frame_args_address): Update
8296         for new signature.
8297         (frame_base_find_by_frame): Pass this frame to unwinder routines.
8298         * infcall.c (call_function_by_hand): Update comments.
8299         * Makefile.in (frame-unwind.o): Update dependencies.
8300
8301 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8302
8303         * ada-lang.c (ada_value_primitive_packed_val): Only check
8304         value_lazy for memory lvals.
8305         * findvar.c (value_of_register_lazy): New function.
8306         (locate_var_value): Only check value_lazy for memory lvals.
8307         * valarith.c (value_subscripted_rvalue): Likewise.
8308         * valops.c (value_fetch_lazy): Handle both memory and register
8309         lvals.
8310         (search_struct_field, value_slice): Only check value_lazy for memory
8311         lvals.
8312         * value.c (struct value): Update comment for lazy.
8313         (value_primitive_field): Only check value_lazy for memory lvals.
8314         * value.h (value_lazy): Update comment.
8315         (value_of_register_lazy): Declare.
8316
8317 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8318
8319         * corefile.c (reopen_exec_file): Close any open files.
8320
8321 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8322
8323         * ia64-tdep.c (ia64_memory_remove_breakpoint): Set
8324         show_memory_breakpoints to 1 while reading the instruction bundle.
8325
8326 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8327
8328         * gdbarch.sh: Document the return_value method. Explain that
8329         the FUNCTYPE parameter might be NULL.
8330         * gdbarch.h: Regenerated.
8331         * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
8332         type when calling using_struct_return, as this is unnecessary
8333         on this target.
8334
8335 2008-04-28  Joel Brobecker  <brobecker@adacore.com>
8336
8337         * terminal.h (create_tty_session): Fix return type.
8338
8339 2008-04-26  Vladimir Prus  <vladimir@codesourcery.com>
8340
8341         * mi/mi-interp.c (mi_new_thread): Quote the thread id.
8342
8343 2008-04-26  Joel Brobecker  <brobecker@adacore.com>
8344
8345         * breakpoint.c (condition_command, commands_from_control_command)
8346         (break_command_really): Minor reformatting.
8347
8348 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8349
8350         * dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.
8351
8352 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8353
8354         * amd64-tdep.c (amd64_get_longjmp_target): New.
8355         (amd64_init_abi): Register amd64_get_longjmp_target as
8356         gdbarch_get_longjmp_target callback.
8357         * i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
8358
8359 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8360
8361         * breakpoint.h (enum bpstat_what_main_action): Delete
8362         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
8363
8364         * breakpoint.c (clrs): Delete.
8365         (bpstat_what): Update table.
8366
8367         * infrun.c (handle_inferior_event): Remove
8368         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
8369
8370 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8371
8372         * mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
8373         Adjust all prototypes using mi_cmd_args_ftype to use
8374         mi_cmd_argv_ftype.
8375         (struct mi_cmd): Remove the args_func field.
8376         * mi/mi-cmds.c: Don't provide value for the args_func field.
8377         * mi/mi-main.c (mi_execute_async_cli_command)
8378         (mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
8379         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
8380         (mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
8381         (mi_cmd_exec_continue, mi_cmd_exec_interrupt)
8382         (mi_cmd_target_download): Adjust.
8383         (mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
8384         (mi_cmd_execute): Do not check for args_func.
8385         (mi_execute_async_cli_command): Adjust.
8386         * mi/mi-parse.c: Don't check for args_func.
8387
8388 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8389
8390         * breakpoint.c (bpstat_check_location)
8391         (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
8392         New, extracted from bpstat_stop_status.
8393         (bpstat_stop_status): Use the above.
8394
8395 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8396
8397         * mi/mi-main.c (last_async_command): Rename to current_token.
8398         (previous_async_command): Remove.
8399         (mi_cmd_gdb_exit): Adjust.
8400         (mi_cmd_exec_interrupt): Don't dance with previous_async_command.
8401         (mi_cmd_target_select): Adjust.
8402         (mi_cmd_execute): Don't set previous_async_command.  Free token
8403         here even in async mode.
8404         (mi_execute_async_cli_command): Adjust.
8405         (mi_exec_async_cli_cmd_continuation): Adjust.  Do not free the
8406         token.
8407         (mi_load_progress): Adjust.
8408
8409 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8410
8411         * infcmd.c (step_1_continuation): Always disable longjmp
8412         breakpoint if we're not going to do another step.
8413
8414 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8415
8416         exec_cleanup murder.
8417         * breakpoint.c (until_break_command_continuation): Add
8418         the 'error' parameter.  Directly delete the breakoint as
8419         opposed to running cleanups.
8420         (until_break_command): Install continuation only
8421         after starting the target.  Don't use exec cleanups,
8422         use ordinary cleanups.  Discard cleanups is successfully
8423         started the target in async mode.
8424         (make_cleanup_delete_breakpoint): Remove.
8425         * breakpoint.h (make_cleanup_delete_breakpoint): Remove
8426         declaration.
8427         * defs.h (do_exec_cleanups, make_exec_cleanup): Remove
8428         declarations.
8429         (struct continations): Add the 'error' parameter to the
8430         continuation_hook field.
8431         (add_continuation, do_all_continuations)
8432         (add_intermediate_continuation)
8433         (do_all_intermediate_continuations): Add the 'error' parameter.
8434         * exceptions.c (throw_exception): Don't call do_exec_cleanups.
8435         * inf-loop.c (inferior_event_handler): Instead of calling
8436         discard_all_continuations, use do_all_continuations with 1 as
8437         'error' parameter.  Pass 0 as 'error' parameter in existing uses
8438         of discard_all_continuations.
8439         * infcmd.c (step_1): Do not use exec cleanup.  For async case, discard
8440         cleanups.
8441         (step_once): Install continuation only after resuming the target.
8442         (step_1_continuation): Disable longjmp breakpoint on error.
8443         (finish_command_continuation): Add the error parameter.  Delete
8444         the finish breakpoint directly, do not use cleanups.
8445         (finish_command): Do not use exec_cleanups. Always setup
8446         continuation.  For sync case, immediately run them.
8447         (attach_command_continuation): Add the error parameter.
8448         * infrun.c (fetch_inferior_event): Do not use exec cleanups to
8449         remove step_resume_breakpoint -- adjust delete it directly.
8450         * interps.c (interp_set): Adjust call to do_all_continations.
8451         * mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
8452         do exec cleanups.
8453         * mi/mi-main.c (mi_cmd_target_select): Do not do exec
8454         cleanups.
8455         (mi_cmd_execute): Do not use exec_cleanup.
8456         (mi_execute_async_cli_command): Simplify the string concatenation
8457         logic.  Do no use exec cleanup.
8458         (mi_exec_async_cli_cmd_continuation): New parameter error.
8459         Free last_async_command.
8460         * top.c (command_line_handler_continuation): New parameter error.
8461         * utils.c (exec_cleanup_chain, make_exec_cleanup)
8462         (do_exec_cleanups): Remove.
8463         (add_continuation, do_all_continations)
8464         (add_intermediate_continuation)
8465         (do_all_intermediate_continuations): New parameter error.
8466
8467 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8468
8469         * breakpoint.h (bp_location_p): New typedef.
8470         Register a vector of bp_location_p.
8471         * breakpoint.c (always_inserted_mode)
8472         (show_always_inserted_mode): New.
8473         (unlink_locations_from_global_list): Remove.
8474         (update_global_location_list)
8475         (update_global_location_list_nothrow): New.
8476         (update_watchpoint): Don't free locations.
8477         (should_insert_location): New.
8478         (insert_bp_location): Use should_insert_location.
8479         (insert_breakpoint_locations): Copied from
8480         insert_breakpoints.
8481         (insert_breakpoint): Use insert_breakpoint_locations.
8482         (bpstat_stop_status): Call update_global_location_list
8483         when disabling breakpoint.
8484         (allocate_bp_location): Don't add to bp_location_chain.
8485         (set_raw_breakpoint)
8486         (create_longjmp_breakpoint, enable_longjmp_breakpoint)
8487         (disable_longjmp_breakpoint, create_overlay_event_breakpoint)
8488         (enable_overlay_breakpoints, disable_overlay_breakpoints)
8489         (set_longjmp_resume_breakpoint)
8490         (enable_watchpoints_after_interactive_call_stop)
8491         (disable_watchpoints_before_interactive_call_start)
8492         (create_internal_breakpoint)
8493         (create_fork_vfork_event_catchpoint)
8494         (create_exec_event_catchpoint, set_momentary_breakpoint)
8495         (create_breakpoints, break_command_1, watch_command_1)
8496         (create_exception_catchpoint)
8497         (handle_gnu_v3_exceptions)
8498         (disable_breakpoint, breakpoint_re_set_one)
8499         (create_thread_event_breakpoint, create_solib_event_breakpoint)
8500         (create_ada_exception_breakpoint): : Don't call check_duplicates.
8501         Call update_global_location_list.
8502         (delete_breakpoint): Don't remove locations and don't
8503         try to reinsert them. Call update_global_location_list.
8504         (update_breakpoint_locations): Likewise.
8505         (restore_always_inserted_mode): New.
8506         (update_breakpoints_after_exec): Temporary disable
8507         always inserted mode.
8508         * Makefile.in: Update dependencies.
8509
8510         * infrun.c (proceed): Remove breakpoints while stepping
8511         over breakpoint.
8512         (handle_inferior_event): Don't remove or insert
8513         breakpoints.
8514         * linux-fork.c (checkpoint_command): Remove breakpoints
8515         before fork and insert after.
8516         (linux_fork_context): Remove breakpoints before switch
8517         and insert after.
8518         * target.c (target_disconnect, target_detach): Remove
8519         breakpoints from target.
8520
8521
8522 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8523
8524         * breakpoint.c (print_one_breakpoint_location): In MI
8525         mode, report the location string the breakpoint was
8526         originally created with.
8527
8528 2008-04-23  Maxim Grigoriev  <maxim2405@gmail.com>
8529
8530         * Makefile.in (xtensa-tdep.o): Update dependencies.
8531         * configure.tgt (xtensa*): Update dependencies.
8532         * xtensa-tdep.c (arreg_number): Renamed from areg_number.
8533         Local variable areg renamed to arreg.
8534         (areg_number): New function.
8535         (xtensa_pseudo_register_read, xtensa_pseudo_register_write)
8536         (xtensa_extract_return_value, xtensa_store_return_value): areg_number
8537         replaced by arreg_number.
8538         (xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
8539         (xtensa_alloc_frame_cache): Initialize cache->wd.ws.
8540         (xtensa_scan_prologue): New function.
8541         (xtensa_frame_cache): New local fp_regnum. Handle separately the case,
8542         when ENTRY instraction hasn't been executed yet. Get the frame pointer
8543         value based on prologue analysis. Fix the bugs preventing WS and
8544         AR4-AR7/A11 registers from getting right values for intermediate frames,
8545         whose registers have been already spilled.
8546         (xtensa_frame_prev_register): Fix WS register value. Use are_number
8547         and arreg_number appropriately.
8548         (xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
8549         svr4_ilp32_fetch_link_map_offsets.
8550
8551 2008-04-23  Andrew Stubbs  <andrew.stubbs@st.com>
8552
8553         * printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
8554         (printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
8555
8556 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
8557
8558         * acinclude.m4: Add override.m4.
8559         * configure: Regenerate.
8560
8561 2008-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
8562
8563         * ada-lang.c (get_selections): Variable PROMPT made non-const and
8564         initialized with a trailing space now.  Use PROMPT_ARG of
8565         COMMAND_LINE_INPUT instead of printing it ourselves.
8566
8567 2008-04-22  Joel Brobecker  <brobecker@adacore.com>
8568
8569         * NEWS: Document support for 64-bit core file.
8570
8571 2008-04-22  Corinna Vinschen  <vinschen@redhat.com>
8572
8573         * NEWS: Add information on calling convention and new SH CLI options.
8574
8575         * sh-tdep.c (sh_cc_gcc): New static string.
8576         (sh_cc_renesas): Ditto.
8577         (sh_cc_enum): New static string array.
8578         (sh_active_calling_convention): New static string pointer denoting
8579         active user chosen ABI.
8580         (sh_is_renesas_calling_convention): New function to return function
8581         specific ABI, or user choice if necessary.
8582         (sh_use_struct_convention): Rename first argument and turn around its
8583         meaning.  Check for renesas ABI and return accordingly.
8584         (sh_use_struct_convention_nofpu): New function.
8585         (sh_next_flt_argreg): Get function type as third parameter.  Check
8586         for renesas ABI and choose floating registers accordingly.
8587         (sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
8588         struct return slot accordingly.
8589         (sh_push_dummy_call_nofpu): Ditto.
8590         (sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
8591         Evaluate ABI and give to sh_use_struct_convention_nofpu.
8592         (sh_return_value_fpu):  Evaluate ABI and give to
8593         sh_use_struct_convention.
8594         (show_sh_command): New function.
8595         (set_sh_command): Ditto.
8596         (_initialize_sh_tdep): Initialize `set/show sh calling-convention
8597         CLI command.
8598
8599         * gdbarch.sh (return_value): Add func_type argument.
8600         * gdbarch.c: Regenerate.
8601         * gdbarch.h: Ditto.
8602         * eval.c (evaluate_subexp_standard): Rename local variable value_type to
8603         val_type so as not to collide with value_type function.  Call
8604         using_struct_return with additional function type argument.
8605         * infcall.c (call_function_by_hand): Call using_struct_return and
8606         gdbarch_return_value with additional function type argument.
8607         * infcmd.c (print_return_value): Take addition func_type argument.
8608         Call gdbarch_return_value with additional function type argument.
8609         (finish_command_continuation): Call print_return_value with additional
8610         function type argument.
8611         (finish_command): Ditto.
8612         * sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
8613         additional function type argument.
8614         * stack.c (return_command): Call using_struct_return and
8615         gdbarch_return_value with additional function type argument.
8616         * value.c (using_struct_return): Take additional function type argument.
8617         * value.h (using_struct_return): Accommodate declaration.
8618         * alpha-tdep.c (alpha_return_value): Add func_type argument.
8619         * amd64-tdep.c (amd64_return_value): Ditto.
8620         * arm-tdep.c (arm_return_value): Ditto.
8621         * avr-tdep.c (avr_return_value): Ditto.
8622         * cris-tdep.c (cris_return_value): Ditto.
8623         * frv-tdep.c (frv_return_value): Ditto.
8624         * h8300-tdep.c (h8300_return_value): Ditto.
8625         (h8300h_return_value): Ditto.
8626         * hppa-tdep.c (hppa32_return_value): Ditto.
8627         (hppa64_return_value): Ditto.
8628         * i386-tdep.c (i386_return_value): Ditto.
8629         * ia64-tdep.c (ia64_return_value): Ditto.
8630         * iq2000-tdep.c (iq2000_return_value): Ditto.
8631         * m32c-tdep.c (m32c_return_value): Ditto.
8632         * m32r-tdep.c (m32r_return_value): Ditto.
8633         * m68hc11-tdep.c (m68hc11_return_value): Ditto.
8634         * m68k-tdep.c (m68k_return_value): Ditto.
8635         (m68k_svr4_return_value): Ditto.
8636         * m88k-tdep.c  (m88k_return_value): Ditto.
8637         * mep-tdep.c (mep_return_value): Ditto.
8638         * mips-tdep.c (mips_eabi_return_value): Ditto.
8639         (mips_n32n64_return_value): Ditto.
8640         (mips_o32_return_value): Ditto.
8641         (mips_o64_return_value): Ditto.
8642         * mn10300-tdep.c (mn10300_return_value): Ditto.
8643         * mt-tdep.c (mt_return_value): Ditto.
8644         * ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
8645         * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
8646         (ppc_sysv_abi_broken_return_value): Ditto.
8647         (ppc64_sysv_abi_return_value): Ditto.
8648         * ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
8649         (ppc_sysv_abi_broken_return_value): Ditto.
8650         (ppc64_sysv_abi_return_value): Ditto.
8651         * ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
8652         * rs6000-tdep.c (rs6000_return_value): Ditto.
8653         * s390-tdep.c (s390_return_value): Ditto.
8654         * score-tdep.c (score_return_value): Ditto.
8655         * sh-tdep.c (sh_return_value_nofpu): Ditto.
8656         (sh_return_value_fpu): Ditto.
8657         * sh64-tdep.c (sh64_return_value): Ditto.
8658         * sparc-tdep.c (sparc32_return_value): Ditto.
8659         * sparc64-tdep.c (sparc64_return_value): Ditto.
8660         * spu-tdep.c (spu_return_value): Ditto.
8661         * v850-tdep.c (v850_return_value): Ditto.
8662         * vax-tdep.c (vax_return_value): Ditto.
8663         * xstormy16-tdep.c (xstormy16_return_value): Ditto.
8664         * xtensa-tdep.c (xtensa_return_value): Ditto.
8665
8666         * gdbtypes.h (struct type): Add calling_convention member.
8667         * dwarf2read.c (read_subroutine_type): Add calling convention read
8668         from DW_AT_calling_convention attribute to function type.
8669
8670 2008-04-22  Markus Deuling  <deuling@de.ibm.com>
8671
8672         * eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
8673         multi_f77_subscript to support values from registers.
8674         * valarith.c (value_subscripted_rvalue): Remove prototype and static.
8675         * value.h (value_subscripted_rvalue): Add prototype.
8676
8677         * f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
8678         Fix output.
8679         * f-valprint.c (f_val_print): Likewise.
8680
8681 2008-04-21  Craig Silverstein  <csilvers@google.com>
8682
8683         * dwarf2read.c (zlib_decompress_section): Define abfd in the
8684         !HAVE_ZLIB_H case.
8685
8686 2008-04-21  Pedro Alves  <pedro@codesourcery.com>
8687
8688         * symfile.c (syms_from_objfile): Don't warn if lowest loadable
8689         section is not a code section.
8690
8691 2008-04-19  Craig Silverstein  <csilvers@google.com>
8692
8693         * NEWS: Add information on compressed debug sections.
8694
8695 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8696
8697         * mi/mi-cmd-var.c (varobj_update_one): Print new
8698         value for variable objects that changed type.
8699
8700 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8701
8702         * varobj.c (varobj_invalidate): Don't touch floating
8703         varobjs.
8704
8705 2008-04-19  Mark Kettenis  <kettenis@gnu.org>
8706
8707         * symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
8708         (multiple_symbols_cancel): Remove extra const.
8709         * symtab.h: Likewise.
8710
8711 2008-04-19  Nick Roberts  <nickrob@snap.net.nz>
8712
8713         * interps.c (top_level_interpreter): Rename static variable...
8714         (top_level_interpreter_ptr): ...to this.
8715         (top_level_interpreter): New function.
8716
8717         * interps.h: New extern for top_level_interpreter.
8718
8719         * linespec.c: Include interps.h and mi/mi-cmds.h.
8720         (decode_line_2): When using MI, always set all breakpoints in menu.
8721
8722         * Makefile.in (linespec.o, mi-interp.o): Add dependencies.
8723
8724 2008-04-18  Craig Silverstein  <csilvers@google.com>
8725
8726         * configure.ac (AC_SEARCH_LIBS): Add check for zlib.
8727         * config.in, configure: Regenerate.
8728         * dwarf2read.c: Include zlib.h if present.
8729         Modified *_SECTION macros.
8730         (section_is_p): New.
8731         (dwarf2_locate_sections): Use section_is_p instead of strcmp
8732         (dwarf2_resize_section): New.
8733         to determine whether a given section has a given name.
8734         (zlib_decompress_section): New.
8735         (dwarf2_read_section): Read the compressed section if present
8736         in the binary.
8737         * MAINTAINERS: Added myself to section Write After Approval.
8738
8739 2008-04-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8740
8741         * defs.h (exec_set_section_offsets): Remove prototype.
8742         * exec.c (exec_set_section_offsets): Remove function.
8743
8744 2008-04-18  Joel Brobecker  <brobecker@adacore.com>
8745
8746         * stabsread.c (cleanup_undefined_types_1): Add instance flags check
8747         in the search for the matching symbol.
8748
8749 2008-04-17  Marc Khouzam  <marc.khouzam@ericsson.com>
8750
8751         * breakpoint.c (update_watchpoint): Always reparse
8752         condition.
8753
8754 2008-04-17  Joel Brobecker  <brobecker@adacore.com>
8755
8756         * breakpoint.c (print_one_breakpoint_location): Make sure to print
8757         the breakpoint address only once.
8758
8759 2008-04-17  Dennis Roberts  <dennis.roberts@sunquestinfo.com>
8760
8761         * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
8762         rather than a hard-coded architecture, for xcoff executables.
8763
8764 2008-04-17  Doug Evans  <dje@google.com>
8765
8766         * buildsym.c (watch_main_source_file_lossage): New fn.
8767         (end_symtab): Call it.
8768
8769         * source.c (find_and_open_source): Add some comments clarifying
8770         handling of FULLNAME argument.  Make static.  Remove pointless
8771         xstrdup/xfree.
8772
8773 2008-04-17  Pedro Alves  <pedro@codesourcery.com>
8774
8775         * inf-loop.c (inferior_event_handler): Also run the intermediate
8776         continuations in the INF_EXEC_COMPLETE case.
8777
8778 2008-04-16  Tom Tromey  <tromey@redhat.com>
8779
8780         * cli/cli-decode.h (CMD_ASYNC_OK): New define.
8781         (set_cmd_async_ok, get_cmd_async_ok): Declare.
8782         * cli/cli-decode.c (set_cmd_async_ok): New function.
8783         (get_cmd_async_ok): New function.
8784         * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
8785         "show" as async-ok.
8786         * top.c (execute_command): Use get_cmd_async_ok.
8787         * infcmd.c: Include cli/cli-decode.h.
8788         (_initialize_infcmd): Mark "interrupt" as async-ok.
8789         * Makefile.in (infcmd.o): Depend on cli_decode_h.
8790
8791 2008-04-16  Daniel Jacobowitz  <dan@codesourcery.com>
8792
8793         PR gdb/2445
8794         * exec.c: Correct "arch-utils.h" include.
8795
8796 2008-04-15  Aleksandar Ristovski  <aristovski@qnx.com>
8797
8798         PR gdb/2424
8799         * infrun.c (normal_stop) Move breakpoint_auto_delete further down
8800         to allow printing to 'see' real reason of stop. This fixes PR 2424.
8801         * breakpoint.c (bpdisp_texst): New function. The function takes over
8802         the role of bpstats static array in print_one_breakpoint_location.
8803         (print_it_typical): Print "Temporary breakpoint" instead
8804         of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
8805         protocols, print disp field.
8806         (print_one_breakpoint_location): Removed bpdisps static definition.
8807         Call new bpstat_text function to get value for 'disp' field.
8808         (mention): Print "Temporary breakpoint" instead of just "Breakpoint".
8809
8810 2008-04-15  Daniel Jacobowitz  <dan@codesourcery.com>
8811
8812         * gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
8813         gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
8814         by rerunning gnulib-tool with --aux-dir=gnulib/extra.
8815         * gnulib/Makefile.in: Regenerate.
8816
8817 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
8818
8819         * Makefile.in (GNULIB_H): New.  Trigger all-lib.
8820         (defs_h): Use $(GNULIB_H).
8821         (all-lib): Depend on gnulib/Makefile.
8822         (gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
8823         * config.in, gnulib/Makefile.in: Regenerated.
8824
8825 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
8826
8827         * Makefile.in (LIBGNU, INCGNU): Define.
8828         (INTERNAL_CFLAGS_BASE): Add INCGNU.
8829         (INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
8830         (CLEANDIRS): New.
8831         ($(LIBGNU), all-lib): New rules.
8832         (clean, distclean, do-maintainer-clean): Use CLEANDIRS.
8833         * configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
8834         Simplify AC_CONFIG_AUX_DIR.  Generate gnulib/Makefile.
8835         * gnulib: New directory, from gnulib-tool.
8836         * configure, aclocal.m4: Regenerated.
8837
8838 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
8839
8840         * linux-thread-db.c (have_threads_callback): Check thread->private.
8841
8842 2008-04-13  Nick Roberts  <nickrob@snap.net.nz>
8843             Vladimir Prus  <vladimir@codesourcery.com>
8844
8845         Fix @-varobjs.
8846         * varobj.c (value_of_root): Update the expression for
8847         floating varobjs.
8848         * mi/mi-cmd-var.c (varobj_update_one): If type has changed,
8849         report that.
8850
8851 2008-04-09  Marc Khouzam  <marc.khouzam@ericsson.com>
8852
8853         * mi/mi-cmd-var.c: Include "mi-getopt.h".
8854         (mi_parse_format): New.  Factored out from mi_cmd_var_set_format.
8855         (mi_cmd_var_set_format): Use new mi_parse_format.
8856         (mi_cmd_var_evaluate_expression): Support for -f option to specify
8857         format.
8858         * Makefile.in (mi-cmd-var.o): Update dependencies.
8859
8860         * varobj.h (varobj_get_formatted_value): Declare.
8861         * varobj.c (my_value_of_variable): Added format parameter.
8862         (cplus_value_of_variable): Likewise.
8863         (java_value_of_variable): Likewise.
8864         (c_value_of_variable): Likewise.  Evaluate expression based
8865         on format parameter.
8866         (struct language_specific): Add format parameter to function member
8867         *value_of_variable.
8868         (varobj_get_formatted_value): New.
8869         (varobj_get_value): Added format parameter to method call.
8870
8871 2008-04-08  Joel Brobecker  <brobecker@adacore.com>
8872
8873         * stabsread.c (cleanup_undefined_types_noname): Manually set the
8874         instance flags of the undefined type before calling replace_type.
8875
8876 2008-04-08  Vladimir Prus  <vladimir@codesourcery.com>
8877
8878         * target.h (enum strata): Remove the download_stratum.
8879
8880 2008-04-07  Doug Evans  <dje@google.com>
8881
8882         * buildsym.h (last_source_file): Add dwarf info to comment.
8883         (last_source_start_addr): Ditto.
8884
8885 2008-04-07  Pedro Alves  <pedro@codesourcery.com>
8886
8887         * alphanbsd-tdep.c: Include "target.h".
8888         * mn10300-tdep.c: Include "target.h".
8889         * Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.
8890
8891 2008-04-06  Vladimir Prus  <vladimir@codesourcery.com>
8892
8893         Fix breakpoint condition that use member variables.
8894         * valops.c (check_field): Remove.
8895         (check_field_in): Rename to check_field.
8896         (value_of_this): Use la_name_of_this.
8897         * value.h (check_field): Adjust prototype.
8898
8899         * language.h (la_value_of_this): Rename to la_name_of_this.
8900         * language.c (unknown_language_defn): Specify "this" for
8901         name_of_this.
8902         (auto_language_defn): Likewise.
8903         (local_language_defn): Likewise.
8904         * ada-lang.c (ada_language_defn): Adjust comment.
8905         * c-lang.c (c_language_defn): Adjust comment.
8906         (cplus_language_defn): Specify "this" for name_of_this.
8907         (asm_language_defn): Adjust comment.
8908         (minimal_language_defn): Adjust comment.
8909         * f-lang.c (f_language_defn): Specify NULL for name_of_this.
8910         * jv-lang.c (java_language_defn): Specify "this" for name_of_this.
8911         * m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
8912         * objc-lang.c (objc_language_defn): Specify "self" for
8913         name_of_this.
8914         * p-lang.c (pascal_language_defn): Specify "this" for
8915         name_of_this.
8916         * scm-lang.c (scm_language_defn): Specify NULL for name_of_this.
8917
8918         * symtab.c (lookup_symbol_aux): Lookup "this" in the
8919         proper scope, and check for field in type of "this", without
8920         trying to create a value.
8921
8922 2008-04-04  Pedro Alves  <pedro@codesourcery.com>
8923
8924         * mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
8925         (mi_error_message): Delete declaration.
8926         * mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
8927         returning MI_CMD_ERROR.
8928         * mi/mi-main.c (mi_error_message): Delete.
8929         (mi_cmd_exec_interrupt):
8930         (mi_cmd_thread_select, mi_cmd_thread_list_ids)
8931         (mi_cmd_thread_info): Call error instead of returning
8932         MI_CMD_ERROR.
8933         (mi_cmd_data_list_register_values): Call error instead of
8934         returning MI_CMD_ERROR.  Adapt to new get_register interface.
8935         (get_register): Change return typo to void.  Call error instead of
8936         returning MI_CMD_ERROR.
8937         (mi_cmd_data_write_register_values): Call error instead of
8938         returning MI_CMD_ERROR.
8939         (mi_cmd_list_features): Return MI_CMD_DONE.
8940         (captured_mi_execute_command): Remove MI_CMD_ERROR handling.
8941         (mi_execute_command): Always print exceptions with -error.
8942
8943 2008-04-04  Joel Brobecker  <brobecker@adacore.com>
8944
8945         * NEWS: Mention new commands set/show multiple-symbols.
8946
8947 2008-04-03  Joel Brobecker  <brobecker@adacore.com>
8948
8949         * symtab.c (multiple_symbols_ask, multiple_symbols_all)
8950         (multiple_symbols_cancel): New constants.
8951         (multiple_symbols_modes, multiple_symbols_mode): New static globals.
8952         (multiple_symbols_select_mode): New function.
8953         (_initialize_symtab): Add new set/show multiple-symbols commands.
8954         * symtab.h (multiple_symbols_ask, multiple_symbols_all)
8955         (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
8956         * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
8957         setting.
8958         * linespec.c (decode_line_2): Likewise.
8959
8960 2008-04-03  Doug Evans  <dje@sebabeach.org>
8961
8962         * symtab.h (enum free_code): Delete free_contents, unused.
8963         * symmisc.c (free_symtab_block): Delete.
8964         (free_symtab, case free_code): Delete.
8965
8966 2008-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
8967
8968         * valops.c (value_cast_structs): New function. Cast related
8969         STRUCT types up/down and return cast value. The body of this
8970         function comes mostly from value_cast_pointers.
8971         (value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
8972         to value_cast_structs. Now value_cast_pointers needs only create
8973         appropriate reference after using value_cast_structs for actual
8974         casting.
8975         (value_cast): Handle references.
8976
8977 2008-04-01  Marc Khouzam  <marc.khouzam@ericsson.com>
8978
8979         * MAINTAINERS: Added myself to section Write After Approval.
8980
8981 2008-03-30  Daniel Jacobowitz  <dan@codesourcery.com>
8982
8983         * ia64-tdep.c (examine_prologue): Correct array access.
8984
8985 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
8986
8987         * cp-support.c (first_component_command): Return if no arguments.
8988
8989 2008-03-28  Carlos O'Donell  <carlos@codesourcery.com>
8990
8991         * ser-mingw.c (ser_windows_open): Open requested name.
8992
8993 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
8994
8995         * MAINTAINERS: Added myself.
8996
8997 2008-03-28  Pedro Alves  <pedro@codesourcery.com>
8998
8999         * target.c (find_default_run_target): Allow a NULL `do_mesg'
9000         parameter.  If it is NULL, don't call error.
9001         (find_default_can_async_p, find_default_is_async_p): Pass NULL as
9002         `do_mesg' parameter to find_default_run_target.  If no target was
9003         found, return 0.
9004
9005 2008-03-28  Daniel Jacobowitz  <dan@codesourcery.com>
9006
9007         * mips-linux-tdep.c: Update N32/N64 signal frame comments.
9008         (N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
9009         (N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
9010         Delete.
9011         (mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.
9012
9013 2008-03-27  Joel Brobecker  <brobecker@adacore.com>
9014
9015         GDB 6.8 released.
9016
9017 2008-03-27  Ulrich Weigand  <uweigand@de.ibm.com>
9018
9019         * features/Makefile (%.dat): Set xmltarget to the base filename
9020         of the XML source, without subdirectory.
9021         * regformats/rs6000/powerpc-32.dat: Regenerate.
9022         * regformats/rs6000/powerpc-64.dat: Regenerate.
9023         * regformats/rs6000/powerpc-e500.dat: Regenerate.
9024
9025 2008-03-27  Markus Deuling  <deuling@de.ibm.com>
9026
9027         * xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
9028         objfile arch.
9029
9030 2008-03-27  Nick Roberts  <nickrob@snap.net.nz>
9031
9032         * mi/mi-main.c (enum captured_mi_execute_command_actions):
9033         Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.
9034
9035 2008-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
9036
9037         * objfiles.h (struct objfile): New GDBARCH member.
9038         (get_objfile_arch): Add prototype.
9039         * objfiles.c: Include "arch-utils.h".
9040         (allocate_objfile): Look up gdbarch associated with bfd.
9041         (get_objfile_arch): New function.
9042         * Makefile (objfiles.o): Update dependencies.
9043
9044         * dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
9045         by objfile arch.
9046         * dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
9047         by frame arch.
9048         (locexpr_describe_location): Replace current_gdbarch by
9049         objfile arch.
9050         * dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
9051         (dwarf2_add_field): Likewise.
9052         (read_tag_pointer_type): Likewise.
9053         (read_base_type): Likewise.
9054         (new_symbol): Likewise.
9055
9056         * coffread.c (decode_type): Add OBJFILE argument.  Update callers.
9057         (decode_base_type, decode_function_type): Likewise.
9058         (coff_read_struct_type, coff_read_enum_type): Likewise.
9059         (coff_symtab_read): Replace current_gdbarch by objfile arch.
9060         (decode_base_type): Likewise.
9061         (coff_read_enum_type): Likewise.
9062         (coff_read_struct_type): Replace current_objfile by OBJFILE argument.
9063         (coff_read_enum_type): Likewise.
9064
9065         * dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
9066         (end_psymtab): Likewise.
9067         (process_one_symbol): Likewise.
9068
9069         * mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
9070         (parse_procedure): Likewise.
9071         (parse_partial_symbols): Likewise.
9072
9073         * somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.
9074
9075         * stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
9076         Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
9077         built-in types.
9078         (read_range_type): Replace current_gdbarch by objfile arch.  Replace
9079         static range_index_type by built-in type.
9080         (read_one_struct_field): Replace current_gdbarch by objfile arch.
9081         (read_enum_type): Likewise.
9082
9083         * xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
9084         objfile arch.
9085
9086 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9087
9088         * varobj.h (varobj_floating_p): Declare.
9089         * varobj.c (varobj_floating_p): New.
9090         * mi/mi-cmd-var.c (mi_cmd_var_update): When passed
9091         '@' as the name, update all floating varobjs.
9092
9093 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9094
9095         * varobj.c (struct varobj_root): Rename use_selected_frame to
9096         floating, and clarify the meaning.
9097         (varobj_create, varobj_update,  new_root_variable): Adjust.
9098         (value_of_root): Don't use type_changed as in variable,
9099         adjust comment.
9100         (c_value_of_root): Adjust.
9101
9102 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9103
9104         * linux-nat.c (linux_nat_attach): Add the pid we attached to, to
9105         gdb's thread list.
9106         (linux_nat_wait): Add main lwp to gdb's thread list.
9107         * linux-thread-db.c (find_new_threads_callback): Also attach to
9108         already listed threads which thread_db didn't know about yet.
9109
9110 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9111
9112         * linux-nat.c (drain_queued_events): Fix comment typo.
9113         (linux_nat_attach): In async mode, don't rely on storing a pending
9114         status.  Instead place the wait status on the pipe.
9115         (linux_nat_resume): Remove unreacheable shortcut code in async
9116         mode.
9117         (stop_wait_callback): In async mode, don't store pending status.
9118         Instead, cancel breakpoints or resend the signal appropriatelly.
9119         (cancel_breakpoint): New, refactored from
9120         cancel_breakpoints_callback.
9121         (cancel_breakpoints_callback): Call cancel_breakpoint.
9122         (pipe_to_local_event_queue): Remove special token processing.
9123         (linux_nat_wait): Issue an internal error if a pending status is
9124         found in async mode.
9125
9126 2008-03-24  Daniel Jacobowitz  <dan@codesourcery.com>
9127
9128         * inflow.c (gdb_has_a_terminal): Guard access to our_process_group.
9129
9130 2008-03-24  Nick Roberts  <nickrob@snap.net.nz>
9131             Vladimir Prus  <vladimir@codesourcery.com>
9132
9133         * varobj.c  (struct varobj_root): New component thread_id.
9134         (varobj_get_thread_id, check_scope): New functions.
9135         (c_value_of_root): Use check_scope.  Switch to the
9136         proper thread if necessary.
9137
9138         * varobj.h (varobj_get_thread_id): New extern.
9139
9140         * mi/mi-cmd-var.c (print_varobj): Add thread-id field.
9141
9142 2008-03-23  Daniel Jacobowitz  <dan@codesourcery.com>
9143
9144         PR gdb/544
9145         * top.c: Revert 2008-03-21 changes.
9146
9147 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9148
9149         * thread.c (make_cleanup_restore_current_thread): Make it
9150         globally visible.
9151         * gdbthread.h (make_cleanup_restore_current_thread): Declare.
9152         * varobj.c (varobj_update): Don't save/restore frame.
9153         (c_value_of_root): Save/restore thread and frame here,
9154         using make_cleanup_restore_current_thread.
9155         * Makefile.in: Update dependecies.
9156
9157 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9158
9159         * varobj.c (struct varobj_root): Clarify
9160         comment on the frame field.
9161         (varobj_create): Don't set frame if we have no
9162         block.
9163
9164 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9165
9166         PR gdb/544
9167         Suggested by Jan Kratochvil:
9168         * top.c (gdb_rl_operate_and_get_next_completion): Call
9169         rl_redisplay_function.
9170         (gdb_rl_redisplay): New.
9171         (init_main): Set rl_redisplay_function.
9172
9173 2008-03-21  Thomas Mittelstaedt  <T.Mittelstaedt@cadenas.de>  (tiny change)
9174
9175         * aix-thread.c (pdc_read_regs): Fix compiler warning.
9176         (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
9177         (store_regs_kernel_thread): Likewise.
9178
9179 2008-03-21  Pedro Alves  <pedro@codesourcery.com>
9180
9181         Linux native async support.
9182
9183         * target.h (struct target_ops): Delete to_async_mask_value and add
9184         to_async_mask.
9185         (target_is_async_p, target_async): Formatting.
9186         (target_async_mask_value): Delete.
9187         (target_async_mask): Delete function declaration, and add new
9188         target macro with the same name.
9189
9190         * target.c (update_current_target): Replace to_async_mask_value by
9191         to_async_mask.  Default to_async_mask to return_one.
9192         (target_async_mask): Delete.
9193         (find_default_can_async_p, find_default_is_async_p): New.
9194         (init_dummy_target): register find_default_can_async_p and
9195         find_default_is_async_p on the dummy target.
9196
9197         * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
9198         (debug_linux_nat_async): New global.
9199         (show_debug_linux_nat_async): New function.
9200         (linux_nat_async_enabled, linux_nat_async_mask_value)
9201         (linux_nat_event_pipe, linux_nat_num_queued_events)
9202         (linux_nat_async_events_enabled): New globals.
9203         (struct waitpid_result): New struct.
9204         (waitpid_queue): New global.
9205         (queued_waitpid, push_waitpid, drain_queued_events): New.
9206         (my_waitpid): Call queued_waitpid.
9207         (linux_child_follow_fork): Disable async events during the call.
9208         (blocked_mask): Delete.
9209         (sync_sigchld_action, async_sigchld_action): New globals.
9210         (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD.  In
9211         async mode, block events during the call.
9212         (linux_nat_create_inferior): New.
9213         (linux_nat_attach): In sync mode, restore the mask states.  In
9214         async mode, wake the event loop immediatelly.
9215         (detach_callback): Drain all queued events of the lwp we're
9216         detaching from.
9217         (linux_nat_detach): Block async mode, and drain events of the main
9218         process.
9219         (linux_nat_resume): If in async mode, mask async events during the
9220         call.  If short circuiting, force event loop to wake up.  If
9221         resuming, set target_executing, and register target events in the
9222         event loop.
9223         (pipe_to_local_event_queue, local_event_queue_to_pipe): New.
9224         (linux_nat_wait): In async mode, block events during the call.
9225         Only enable/disable passing SIGINT to the inferior in sync mode.
9226         Get events from local waitpid queue.  If no interesting events was
9227         found, return to events loop.  Reregister target events in the
9228         event loop on exit.  In sync mode, no need to reblock SIGCHLD.
9229         (linux_nat_kill): Disable events on entry.
9230         (linux_nat_mourn_inferior): In sync mode, don't restore the masks
9231         here.  Detach async mode from the event loop if there are no more
9232         forks available, otherwise leave it on.
9233         (sigchld_handler): Assure this is called only in sync mode.
9234         (linux_async_permitted, linux_async_permitted_1): New globals.
9235         (set_maintenance_linux_async_permitted)
9236         (show_maintenance_linux_async_permitted): New functions.
9237         (linux_nat_is_async_p, linux_nat_can_async_p)
9238         (linux_nat_async_mask): New.
9239         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
9240         (get_pending_events, async_sigchld_handler): New.
9241         (linux_nat_async_events): New.
9242         (async_terminal_is_ours): New global.
9243         (linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
9244         (async_client_callback, async_client_context): New.
9245         (linux_nat_async_file_handler, linux_nat_async)
9246         (linux_nat_disable_async, linux_nat_enable_async): New.
9247         (linux_nat_add_target): Register linux_nat_create_inferior,
9248         linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
9249         linux_nat_async_mask, linux_nat_terminal_inferior and
9250         linux_nat_terminal_ours.
9251         (_initialize_linux_nat): Remove local action variable, and update
9252         code that used it to use sync_sigchld_action.  Add new
9253         "lin-lwp-async" debug set/show command.  Put the "lin-lwp" debug
9254         set/show command in the maintenance class.  Add new "linux-async"
9255         maintenance set/show command.  Block SIGCHLD by default.  Setup
9256         async_sichld_action, and sync_sigchld_action.  Install the default
9257         async mode.
9258         (lin_thread_get_thread_signals): Use a local sigset_t for blocking
9259         the cancel signals.
9260
9261         * linux-thread-db.c (re_check_for_thread_db): New.
9262         (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
9263         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
9264         (thread_db_async_mask): New.
9265         (init_thread_db_ops): Register thread_db_can_async_p,
9266         thread_db_is_async_p, thread_db_async and thread_db_async_mask.
9267
9268         * remote.c (remote_async_mask_value): New.
9269         (remote_return_zero): New.
9270         (init_remote_ops): Register remote_return_zero as callbacks of
9271         to_can_async_p and to_is_async_p.
9272         (remote_can_async_p, remote_is_async_p, remote_async): Update to
9273         use remote_async_mask_value.
9274         (remote_async_mask): New.
9275         (init_remote_async_ops): Remove to_async_mask_value setting and
9276         register remote_async_mask as to_async_mask callback in
9277         remote_async_ops.
9278
9279         * Makefile.in (linux-nat.o): Update.
9280
9281 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9282
9283         * gdbthread.h (add_thread_with_info): New.
9284         * linux-thread-db.c: Add some documentation.
9285         (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
9286         (struct private_thread_info): Remove th_valid and ti_valid.
9287         Replace ti with tid.
9288         (thread_get_info_callback): Do not add TID to the new ptid.  Do
9289         not cache th or ti.
9290         (thread_db_map_id2thr, lwp_from_thread): Delete functions.
9291         (thread_from_lwp): Assert that the LWP is set.  Do not add TID to the
9292         new PTID.
9293         (attach_thread): Handle an already-existing thread.  Use
9294         add_thread_with_info.  Cache the th and tid.
9295         (detach_thread): Verify that private was set.  Remove verbose
9296         argument and printing.  Update caller.
9297         (thread_db_detach): Do not adjust inferior_ptid.
9298         (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
9299         (check_event, find_new_threads_callback): Do not add TID to the new PTID.
9300         (thread_db_wait): Do not use lwp_from_thread.
9301         (thread_db_pid_to_str): Use the cached TID.
9302         (thread_db_extra_thread_info): Check that private is set.
9303         (same_ptid_callback): Delete.
9304         (thread_db_get_thread_local_address): Do not use it or check
9305         is_thread.  Check that private is set.  Assume that the thread
9306         handle is already cached.
9307         (init_thread_db_ops): Remove to_resume and to_kill.
9308         * thread.c (add_thread_with_info): New.
9309         (add_thread): Use it.
9310         * linux-nat.c (find_thread_from_lwp): Delete.
9311         (exit_lwp): Do not use it.  Check print_thread_events.  Print before
9312         deleting the thread.
9313         (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
9314         * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
9315         * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
9316         printf_unfiltered for thread exits.
9317         * procfs.c (procfs_wait): Likewise.
9318
9319 2008-03-21  Chris Demetriou  <cgd@google.com>
9320
9321         * symtab.c (rbreak_command): Quote symbol name before passing
9322         it to break_command.
9323
9324 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9325
9326         * eval.c (evaluate_subexp_for_address): Clarify error message.
9327         Use value_must_coerce_to_target.
9328         * infcall.c (value_arg_coerce): Call value_coerce_to_target.
9329         * valops.c (value_assign): Call value_coerce_to_target when
9330         assigning to anything but internalvars.  Leave GDB-side arrays
9331         as arrays when assigning to internalvars.
9332         (value_must_coerce_to_target, value_coerce_to_target): New.
9333         (value_coerce_array, value_addr): Call value_coerce_to_target.
9334         (value_array): Create the array in GDB's memory instead of
9335         the inferior's.
9336         * value.h (value_must_coerce_to_target, value_coerce_to_target):
9337         Declare.
9338
9339 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9340
9341         * top.c (quit_confirm): Warn that we will kill the program.
9342
9343 2008-03-19  Pedro Alves  <pedro@codesourcery.com>
9344
9345         * inflow.c (terminal_ours_1): Guard access to
9346         inferior_process_group with #ifdef PROCESS_GROUP_TYPE.
9347
9348 2008-03-18  Ulrich Weigand  <uweigand@de.ibm.com>
9349             Jim Blandy  <jimb@codesourcery.com>
9350             Daniel Jacobowitz  <drow@false.org>
9351
9352         * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
9353         (dwarf2_read_address): Update prototype.
9354
9355         * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
9356         (signed_address_type): Likewise.
9357         (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
9358         (execute_stack_op): Update calls to unsigned_address_type,
9359         signed_address_type and dwarf2_read_address.  Fix implementation
9360         of DW_OP_deref_size.
9361
9362         * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
9363         (dwarf2_per_cu_addr_size): Likewise.
9364         (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
9365         (struct dwarf2_loclist_baton): Likewise.
9366
9367         * dwarf2loc.c (find_location_expression): Update calls to
9368         dwarf2_read_address.  Use dwarf2_per_cu_objfile and
9369         dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
9370         (locexpr_describe_location): Likewise.
9371         (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
9372         Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
9373         (dwarf2_loc_desc_needs_frame): Add PER_CU parameter.  Set ctx->addr_size
9374         to dwarf2_per_cu_addr_size (per_cu).
9375         (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
9376         (loclist_read_variable): Likewise.
9377         (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.
9378
9379         * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
9380         instead of baton->objfile.
9381         (dwarf2_per_cu_obfile): New function.
9382         (dwarf2_per_cu_addr_size): Likewise.
9383
9384         * dwarf2-frame.c (struct comp_unit): Move higher.
9385         (struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
9386         (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
9387         (execute_cfa_program): Add FDE parameter.  Replace EH_FRAME_P
9388         parameter by using fde->eh_frame_p.  Use read_encoded_value
9389         to implement DW_CFA_set_loc.
9390         (struct dwarf2_frame_cache): Add ADDR_SIZE member.
9391         (dwarf2_frame_cache): Set cache->addr_size.  Update calls to
9392         execute_stack_op and execute_cfa_program.
9393         (dwarf2_frame_prev_register): Update calls to execute_stack_op.
9394         (size_of_encoded_value): Remove.
9395         (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
9396         Remove call to size_of_encoded_value.  Implement DW_EH_PE_funcrel.
9397         (add_cie): Set cie->unit backlink.
9398         (decode_frame_entry_1): Set cie->addr_size.  Update calls to
9399         read_encoded_value.
9400         (dwarf2_build_frame_info): Allocate UNIT on objfile obstack.
9401
9402 2008-03-17  Markus Deuling  <deuling@de.ibm.com>
9403
9404         * i386-tdep.c (i386_print_insn): Remove unnecessary call to
9405         gdbarch_bfd_arch_info.
9406
9407 2008-03-17  Joel Brobecker  <brobecker@adacore.com>
9408
9409         * aix-thread.c (pdc_read_regs): Minor reformatting.
9410
9411 2008-03-17  Vladimir Prus  <vladimir@codesourcery.com>
9412
9413         * thread.c (print_thread_info): Don't insist
9414         on having current thread if there are no
9415         threads at all.
9416
9417 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9418
9419         * infcmd.c (attach_command_post_wait)
9420         (attach_command_continuation): New.
9421         (attach_command): Support background async execution, and async
9422         execution in synchronous mode.
9423
9424 2008-03-17  Daniel Jacobowitz  <dan@codesourcery.com>
9425
9426         * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
9427         * symmisc.c (dump_symtab_1): Likewise.
9428         * wrapper.c (gdb_value_struct_elt): Likewise.
9429
9430 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9431
9432         * linux-nat.c (linux_nat_filter_event): Fix comment typo.
9433
9434 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9435
9436         * linux-nat.c (linux_nat_filter_event): New, refactored from
9437         linux_nat_wait.
9438         (linux_nat_wait): Call linux_nat_filter_event.
9439
9440 2008-03-17  Ulrich Weigand  <uweigand@de.ibm.com>
9441
9442         * top.c (execute_command): Fix uninitialized variable error.
9443
9444 2008-03-16  Nick Hudson  <nick.hudson@dsl.pipex.com>
9445
9446         * Makefile.in (amd64nbsd-nat.o): New dependency.
9447         * amd64nbsd-nat.c: Include "nbsd-nat.h".
9448         (_initialize_amd64nbsd_nat): Update target vector to use
9449         nbsd_pid_to_exec_file.
9450         * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
9451
9452 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9453
9454         Remove ignoring leading exec events code.
9455         * fork-child.c (startup_inferior): Do not set
9456         inferior_ignoring_leading_exec_events.
9457         * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
9458         (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
9459         * infrun.c (inferior_ignoring_leading_exec_events): Remove.
9460         (handle_inferior_event): Remove code for ignoring leading exec
9461         events.
9462         * target.c (update_current_target): Do not inherit, or default,
9463         to_reported_exec_events_per_exec_call.
9464         (debug_to_reported_exec_events_per_exec_call): Remove.
9465         (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
9466         * target.h (target_reported_exec_events_per_exec_call): Remove.
9467         (struct target): Remove the to_reported_exec_events_per_exec_call
9468         field.
9469
9470 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9471
9472         Implement -thread-info.
9473         * gdbthread.h (print_thread_info): Declare.
9474
9475         * thread.c (print_thread_info): New, extracted
9476         from info_threads_command and adjusted to
9477         work for CLI and MI.
9478         (info_threads_command): Use print_thread_info.
9479         * Makefile.in: Update dependencies.
9480
9481         * mi/mi-cmds.c (mi_cmds): Specify a handler
9482         for -thread-info.
9483         * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
9484         * mi/mi-main.c (mi_cmd_thread_info): New.
9485         (mi_cmd_list_features): Include 'thread-info'.
9486
9487 2008-03-14  Kevin Buettner  <kevinb@redhat.com>
9488
9489         * mips-tdep.c (mips32_scan_prologue): Use the ABI register size
9490         to decide whether to match instruction patterns using "sw" and "sd".
9491
9492 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9493
9494         * infcmd.c (jump_command): Postpone disabling stdin until after
9495         the possible query.
9496
9497 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9498
9499         * inflow.c (gdb_getpgrp): New.
9500         (gdb_has_a_terminal): Use get_getpgrp.
9501         (terminal_ours_1): If attach_flag is set, don't refetch
9502         inferior_process_group.
9503
9504 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9505
9506         * features/library-list.dtd: Allow "section" elements as children
9507         of "library".  Add "section" element and describe its attributes.
9508
9509         * solib-target.c (struct lm_info): Add section_bases member.
9510         (library_list_start_segment): Error out if seen a section element.
9511         (library_list_start_section): New.
9512         (library_list_end_library): New.
9513         (solib_target_free_library_list): Free section_bases.
9514         (section_attributes): New.
9515         (library_children): Make "segment" optional.  Add "section" child.
9516         (library_list_children): Register library_list_end_library.
9517         (solib_target_relocate_section_addresses): Handle section bases.
9518
9519         * NEWS: Mention new qXfer:libraries:read section offsets support.
9520
9521 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9522
9523         * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
9524         (make_exec_error_cleanup): Remove declarations.
9525         * utils.c (exec_error_cleanup_chain): Remove.
9526         (do_exec_error_cleanups, discard_exec_error_cleanups)
9527         (make_exec_error_cleanup): Remove.
9528         * event-loop.c (start_event_loop): Adjust call to
9529         async_enable_stdin.
9530         * event-top.c (async_enable_stdin): Remove the paramater dummy.
9531         (async_disable_stdin): Don't register async_enable_stdin via
9532         cleanup.
9533         * inf-loop.c (inferior_event_handler): Don't
9534         call do_exec_error_cleanups.  Call async_enable_stdin instead.
9535         * event-loop.c (start_event_loop): Adjust call to
9536         async_enable_stdin.
9537         * tui/tui-interp.c (tui_command_loop): Adjust call to
9538         async_enable_stdin.
9539
9540 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9541
9542         Async mode fixes.
9543         * Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
9544         * breakpoint.c (bpstat_do_actions): In async mode,
9545         don't jump to top expecting stop_bpstat to be already
9546         updated.
9547         * event-loop.c (start_event_loop): Call async_enable_stdin
9548         on exception.
9549         * event-top.c (async_enable_stdin): Do nothing if sync_execution
9550         is not set.
9551         (command_handler): Do not setup continuation here.
9552         (command_line_handler_continuation): Move to...
9553         * top.c (command_line_handler_continuation): ... here.
9554         (execute_command): In async mode, register continuation.
9555         Don't check frame's language in running in async mode.
9556         * exceptions.c (throw_exception): Don't do exec_error_cleanups.
9557         * inf-loop.c (complete_execution): Inline into...
9558         (inferior_event_handler): ... here.  Clear target_executing before
9559         doing any cleanups.  Don't try to show prompt if the target was
9560         resumed.
9561         * infcmd.c (signal_command): Add support for async mode.
9562         (finish_command): Only add continuation if the target was
9563         successfully resumed.
9564         * remote.c (init_async_opts): Register to_get_thread_local_address
9565         handler.
9566         * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
9567         with sync_execution.
9568         * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
9569         on exception.
9570
9571 2008-03-14  Daniel Jacobowitz  <dan@codesourcery.com>
9572
9573         * corefile.c (reopen_exec_file): Use exec_bfd_mtime.
9574         * exec.c (exec_bfd_mtime): Define.
9575         (exec_close): Clear it.
9576         (exec_file_attach): Set it.
9577         * gdbcore.h (exec_bfd_mtime): Declare.
9578         * source.c (find_source_lines): Do not use bfd_get_mtime.
9579
9580 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9581
9582         * top.c (simplified_command_loop): Remove.
9583
9584 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9585
9586         Remove unused remote.c hooks.
9587         * remote.c (deprecated_target_resume_hook)
9588         (deprecated_target_wait_loop_hook): Remove.
9589         (remote_resume): Do not call deprecated_target_resume_hook.
9590         (remote_wait): Do not call deprecated_target_wait_loop_hook.
9591         (remote_async_wait): Likewise.
9592
9593 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9594
9595         Implement MI notification for new threads.
9596         * doc/observer.texi (new_thread): Document.
9597         * observer.sh: Forward declare struct thread_info.
9598         * thread.c (add_thread): Notify observer.
9599
9600         * interps.h (interp_init_ftype): New parameter
9601         top_level.
9602         (interp_set): Likewise.
9603         (top_level_interpreter_data): Declare.
9604         * interps.c (interp_set): New parameter top_level.
9605         Pass it to interpreter's init function.  Remember
9606         top level interpreter.
9607         (interpreter_exec_cmd): Adjust.
9608         (top_level_interpreter_data): New.
9609         * main.c (captured_main): Pass 1 for top_level
9610         parameter of interp_set.
9611         * cli/cli-interp.c (cli_interpreter_init): New
9612         parameter top_level.
9613         * tui/tui-interp.c (tui_init): New parameter top_level.
9614
9615         * mi/mi-interp.c (mi_new_thread): New.
9616         (mi_interpreter_init): If top level, register
9617         observer for new threads.
9618
9619         * Makefile.in (mi-interp.o, thread.o): Update dependencies.
9620
9621 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9622
9623         * top.c (execute_command): Disable break and stop
9624         commands in async mode.
9625
9626 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9627
9628         revert:
9629         2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9630         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9631         Call target_stop in the INF_QUIT_REQ case.
9632         * Makefile.in (inf-loop.o): Update.
9633
9634 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9635
9636         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9637         Call target_stop in the INF_QUIT_REQ case.
9638         * Makefile.in (inf-loop.o): Update.
9639
9640 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9641
9642         * top.c (execute_command): Enable break, info and interrupt
9643         commands in async mode.
9644
9645 2008-03-13  Vladimir Prus  <vladimir@codesourcery.com>
9646             Daniel Jacobowitz  <dan@codesourcery.com>
9647
9648         * breakpoint.h (breakpoint_restore_shadows): New
9649         declaration.
9650         * breakpoint.c (breakpoint_restore_shadows): New.
9651         (read_memory_nobpt): Delete.
9652         * gdbcore.h (read_memory_nobpt): Delete declaration.
9653         * target.c (memory_xfer_partial): Call
9654         breakpoint_restore_shadows.
9655         (restore_show_memory_breakpoints)
9656         (make_show_memory_breakpoints_cleanup): New.
9657         (show_memory_breakpoints): New.
9658         * target.h (make_show_memory_breakpoints_cleanup): Declare.
9659         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
9660         Make sure we see memory breakpoints when checking if
9661         breakpoint is still there.
9662         * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
9663         hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
9664         m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
9665         sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
9666
9667 2008-03-12  Pedro Alves  <pedro@codesourcery.com>
9668
9669         * thread.c (add_thread): Use printf_unfiltered to print.
9670
9671 2008-03-12  Joel Brobecker  <brobecker@gnat.com>
9672
9673         * sol-thread.c: Replace use of TM_I386SOL2_H by an expression
9674         that is true only on x86-solaris and x86_64-solaris.
9675         * procfs.c: Likewise. Move procfs_find_LDT_entry up together
9676         with proc_get_LDT_entry.
9677
9678 2008-03-12  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9679
9680         * configure.ac (AC_CHECK_FUNCS): Add check for setsid.
9681         * config.in, configure: Regenerate.
9682         * fork-child.c (fork_inferior): Call create_tty_session.
9683         * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
9684         (create_tty_session): New function.
9685         * terminal.h: Declare create_tty_session.
9686
9687 2008-03-12  Alan Modra  <amodra@bigpond.net.au>
9688
9689         PR 5900
9690         * elfread.c (elf_symtab_read): Make shndx an unsigned int.
9691         * mipsread.c: Include elf/internal.h.
9692         (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
9693         to internal range.
9694
9695 2008-03-11  Markus Deuling  <deuling@de.ibm.com>
9696
9697         * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
9698         to get at the current architecture and at the target specific vector.
9699         Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
9700         remove define of I387_ST0_REGNUM.
9701
9702         * amd64-tdep.c (I387_ST0_REGNUM): Remove define.
9703
9704         (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
9705         get at the current architecture
9706         (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
9707         parameter.
9708
9709         * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
9710         I387_NUM_XMM_REGS and I387_MM0_REGNUM.
9711
9712         (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
9713         I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
9714         (I387_FSTAT_REGNUM): Add target specific vector as parameter.
9715
9716         (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
9717         at the target specific vector.
9718
9719         (i386_get_longjmp_target): Use get_frame_arch to get at the current
9720         architecture. Use gdbarch_tdep to get at the target specific vector.
9721
9722         (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
9723         update caller. Use gdbarch_tdep to get at the target specific vector.
9724
9725         (i386_register_to_value: Use get_frame_arch to get at the current
9726         architecture.
9727
9728         * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
9729         parameter.
9730
9731         * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
9732         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
9733         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
9734         FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.
9735
9736         (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
9737         undef's.
9738
9739         (i387_convert_register_p, i387_register_to_value,
9740         i387_value_to_register): Update call for i386_fp_regnum_p.
9741
9742         * i387-tdep.h: Remove comment.
9743         (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
9744         (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
9745         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
9746         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
9747         I387_MXCSR_REGNUM): Add target specific vector as parameter.
9748
9749 2008-03-10  Daniel Jacobowitz  <dan@codesourcery.com>
9750
9751         * Makefile.in (fork-child.o): Update.
9752         * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
9753         argument.  Gather all gdbserver features together.
9754         * fork-child.c (exec_wrapper): New variable.
9755         (fork_inferior): Use it.
9756         (startup_inferior): Skip an extra trap if using "set exec-wrapper".
9757         (unset_exec_wrapper_command, _initialize_fork_child): New.
9758
9759 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
9760
9761         * source.c (directory_command): Modify the determination of
9762         condition of terminal "from_tty".
9763
9764 2008-03-10  Matt Rice  <ratmice@gmail.com>
9765
9766         * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.
9767
9768 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
9769
9770         * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
9771         of the data passing to strtoulst function.
9772         (info_spu_signal_command): Likewise.
9773
9774 2008-03-08  Vladimir Prus  <vladimir@codesourcery.com>
9775
9776         * mi/mi-interp.c (mi_command_loop): Remove
9777         commented-out code.
9778
9779 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
9780
9781         * remote.c (extended_remote_attach_1): Make local variable pid an int
9782         instead of a pid_t.
9783
9784 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
9785
9786         * solib-svr4.c (svr4_same_1): New function, originally extracted
9787         from svr4_same and expanded to handle the sparc64 case.
9788         (svr4_same): Move up and reimplement using svr4_same_1.
9789         (enable_break): Use svr4_same_1 to do shared library name comparisons.
9790
9791 2008-03-07  Ramana Radhakrishnan  <ramana.r@gmail.com>
9792
9793         * MAINTAINERS: Move self to Paper trail.
9794
9795 2008-03-05  Daniel Jacobowitz  <dan@codesourcery.com>
9796
9797         * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
9798         * event-loop.c (call_async_signal_handler): New.
9799         * event-loop.h (call_async_signal_handler)
9800         (gdb_call_async_signal_handler): Declare.
9801         (mark_async_signal_handler): Add comments.
9802         * event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
9803         * mingw-hdep.c (sigint_event, sigint_handler): New.
9804         (gdb_select): Use them.  Wait for the readline signal handler
9805         to finish.
9806         (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
9807         * posix-hdep.c (gdb_call_async_signal_handler): New function.
9808         * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
9809         New.
9810         (remote_fileio_ctrl_c_signal_handler): Use
9811         gdb_call_async_signal_handler.
9812         (initialize_remote_fileio): Initialize sigint_fileio_token.
9813         * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
9814         not initialize tokens here.
9815         (handle_remote_sigint_twice): Likewise.  Reinstall
9816         handle_remote_sigint.
9817         (async_remote_interrupt_twice): Just call interrupt_query.
9818         (cleanup_sigint_signal_handler): Do not delete tokens.
9819         (remote_interrupt, remote_interrupt_twice): Use
9820         gdb_call_async_signal_handler.
9821         (interrupt_query): Reinstall the default signal handler.
9822         (_initialize_remote): Initialize tokens here.
9823
9824 2008-03-04  Joel Brobecker  <brobecker@adacore.com>
9825
9826         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
9827         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
9828         Change the type of the lr register to code_ptr.
9829         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
9830         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
9831         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
9832         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
9833         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
9834         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
9835         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.
9836
9837 2008-03-03  James E. Wilson  <wilson@tuliptree.org>
9838
9839         * MAINTAINERS: Update my email address.
9840
9841 2008-03-03  Keith Seitz  <keiths@redhat.com>
9842
9843         From Dave Murphy  <davem@devkitpro.org>:
9844         * configure.ac: Set tcl configdir to win under mingw.
9845         * configure: Regenerate.
9846
9847 2008-03-03  Daniel Jacobowitz  <dan@codesourcery.com>
9848
9849         * breakpoint.c (fetch_watchpoint_value): New function.
9850         (update_watchpoint): Set and clear val_valid.  Use
9851         fetch_watchpoint_value.  Handle unreadable values on the
9852         value chain.  Correct check for user-requested array watchpoints.
9853         (breakpoint_init_inferior): Clear val_valid.
9854         (watchpoint_value_print): New function.
9855         (print_it_typical): Use it.  Do not free or clear old_val.  Print
9856         watchpoints even if old_val == NULL.
9857         (watchpoint_check): Use fetch_watchpoint_value.  Check for values
9858         becoming readable or unreadable.
9859         (watch_command_1): Use fetch_watchpoint_value.  Set val_valid.
9860         (do_enable_watchpoint): Likewise.
9861         * breakpoint.h (struct breakpoint): Update comment for val.  Add
9862         val_valid.
9863         * NEWS: Mention watchpoints on inaccessible memory.
9864
9865 2008-02-29  Daniel Jacobowitz  <dan@codesourcery.com>
9866
9867         * Makefile.in (i386-nat.o): Update.
9868         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
9869         i386_use_watchpoints.
9870         * i386-linux-nat.c (_initialize_i386_linux_nat): Call
9871         i386_use_watchpoints.
9872         * i386-nat.c (i386_stopped_data_address): Take two arguments.
9873         (i386_stopped_by_watchpoint): Update call.
9874         (i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
9875         * config/i386/nm-i386.h: Conditionalize definitions on
9876         ! I386_WATCHPOINTS_IN_TARGET_VECTOR.
9877         (i386_use_watchpoints): Declare.
9878         (i386_stopped_data_address): Update.
9879         * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
9880         * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
9881
9882 2008-02-29  Joel Brobecker  <brobecker@adacore.com>
9883
9884         GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
9885         * version.in: Bump version to 6.8.50.20080229-cvs.
9886
9887 2008-02-28  Markus Deuling  <deuling@de.ibm.com>
9888
9889         * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
9890         properly.
9891
9892 2008-02-28  Tom Tromey  <tromey@redhat.com>
9893
9894         * infcmd.c (notice_args_read): Print result of get_inferior_args.
9895
9896 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
9897
9898         * infcmd.c (kill_if_already_running): Make static.  Use
9899         target_require_runnable.
9900         * target.c (target_require_runnable): New.
9901         * target.h (target_require_runnable): Declare.
9902
9903 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
9904
9905         * frame.c (reinit_frame_cache): Only annotate if frames were
9906         previously valid.
9907
9908 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
9909
9910         * regformats/reg-ppc.dat: Rename "ps" to "msr".
9911         * regformats/reg-ppc64.dat: Likewise.
9912
9913 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
9914
9915         * features/Makefile (%.dat): Emit xmltarget statement.
9916
9917         * regformats/regdat.sh: Support xmltarget and xmlarch statments.
9918         Generate code to set gdbserver_xmltarget in init_registers_${name}.
9919
9920         * regformats/arm-with-iwmmxt.dat: Regenerate.
9921         * regformats/mips64-linux.dat: Regenerate.
9922         * regformats/mips-linux.dat: Regenerate.
9923         * regformats/rs6000/powerpc-32.dat: Regenerate.
9924         * regformats/rs6000/powerpc-64.dat: Regenerate.
9925         * regformats/rs6000/powerpc-e500.dat: Regenerate.
9926
9927         * regformats/reg-arm.dat: Add xmlarch statement.
9928         * regformats/reg-i386.dat: Likewise.
9929         * regformats/reg-i386-linux.dat: Likewise.
9930         * regformats/reg-x86-64-linux.dat: Likewise.
9931         * regformats/reg-spu.dat: Likewise.
9932
9933 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
9934
9935         * remote.c (remote_wait, remote_async_wait): Stop if we receive
9936         an error.
9937
9938 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
9939
9940         * utils.c (debug_timestamp): New.
9941         (vfprintf_unfiltered): Print timestamps if requested.
9942         (show_debug_timestamp): New.
9943         (initialize_utils): Register "set debug timestamp".
9944         * NEWS: Mention "set debug timestamp".  Add GDB 6.8 section.
9945
9946 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
9947
9948         * breakpoint.c (skip_prologue_sal): New function.
9949         (resolve_sal_pc): Adjust SAL past prologue if the SAL was
9950         computed from a line number.
9951
9952 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
9953
9954         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml
9955         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
9956         Set PC register type to "code_ptr".
9957         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
9958         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
9959         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
9960         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
9961         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
9962         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
9963         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
9964         Regenerate.
9965
9966 2008-02-27  Ulrich Weigand  <uweigand@de.ibm.com>
9967
9968         * regformats/regdat.sh: Rename init_registers function in
9969         generated file to init_registers_${name}.
9970
9971         * regformats/reg-crisv32.dat: Set "name" to crisv32.
9972         * regformats/reg-ppc64.dat: Set "name" to ppc64.
9973         * regformats/reg-s390x.dat: Set "name" to s390x.
9974
9975 2008-02-26  Greg Law  <glaw@undo-software.com>
9976
9977         * regcache.c (registers_changed): Call reinit_frame_cache.
9978
9979 2008-02-26  Daniel Jacobowitz  <dan@codesourcery.com>
9980
9981         * configure.tgt (sh-*-linux*): Match sh*.  Add glibc-tdep.o.
9982         * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
9983         and svr4_fetch_objfile_link_map.
9984         * Makefile.in (sh-linux-tdep.o): Update.
9985
9986 2008-02-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9987
9988         * amd64-tdep.c (amd64_classify): Add support for decimal float
9989         types.
9990         * i386-tdep.c (i386_return_value): Make 128-bit decimal float
9991         use the struct return convention.
9992
9993 2008-02-26  Nick Roberts  <nickrob@snap.net.nz>
9994
9995         * breakpoint.c (print_one_breakpoint_location): Revert Enb field
9996         to old format.  Discard breakpoint address if shared library is
9997         unloaded.
9998         (breakpoint_1): Adjust formatting of table header accordingly.
9999
10000 2008-02-25  Vladimir Prus  <vladimir@codesourcery.com>
10001
10002        * remote.c (remote_get_threadlist): If the response
10003        is empty, don't try to parse it.
10004
10005 2008-02-23  Vladimir Prus  <vladimir@codesourcery.com>
10006
10007         Unbreak 'target async'.
10008         * serial.c (serial_async): Set the
10009         handler function before enabling async
10010         mode.
10011
10012 2008-02-22  Daniel Jacobowitz  <dan@codesourcery.com>
10013
10014         * solib-svr4.c (enable_break): Convert r_brk to a code address.
10015
10016 2008-02-21  Pedro Alves  <pedro@codesourcery.com>
10017
10018         * remote.c (extended_remote_attach_1): Set attach_flag.
10019         (extended_remote_create_inferior_1): Clear attach_flag.
10020
10021 2008-02-20  Daniel Jacobowitz  <dan@codesourcery.com>
10022
10023         * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
10024         r_brk_offset.
10025         (mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
10026         * solib-svr4.c (solib_svr4_r_brk): New.
10027         (open_symbol_file_object, svr4_current_sos): Always check the
10028         debug base.
10029         (svr4_fetch_objfile_link_map): Do not set debug_base.
10030         (enable_break): Use r_brk if it is set.
10031         (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
10032         (svr4_lp64_fetch_link_map_offsets): Likewise.
10033         * solib-svr4.h (struct link_map_offsets): Add r_brk_offset.
10034
10035 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10036             Mark Kettenis  <kettenis@gnu.org>
10037
10038         * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
10039         trad_frame_saved_reg.
10040         (trad-frame.h): New include.
10041
10042         (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
10043         instead of frame_obstack_zalloc.
10044         (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.
10045
10046         * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
10047
10048 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10049
10050         * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
10051         from disassemble_info instead of gdbarch_byte_order.
10052
10053         * mips-tdep.c (gdb_print_insn_mips): Likewise.
10054         * arm-tdep.c (gdb_print_insn_arm): Likewise.
10055
10056 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10057
10058         * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
10059         gdbarch as parameter.
10060
10061         * gdbarch.{c,h}: Regenerate.
10062
10063         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10064         parameter.
10065         * mem-break.c (default_memory_insert_breakpoint)
10066         (default_memory_remove_breakpoint): Likewise.
10067         * target.h (default_memory_remove_breakpoint)
10068         (default_memory_insert_breakpoint): Likewise.
10069
10070         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10071         parameter. Replace current_gdbarch by gdbarch.
10072         * m32r-tdep.c (m32r_memory_insert_breakpoint)
10073         (m32r_memory_remove_breakpoint): Likewise.
10074
10075 2008-02-19  Daniel Jacobowitz  <dan@codesourcery.com>
10076
10077         * MAINTAINERS: Add Vladimir Prus as MI maintainer.
10078
10079 2008-02-19  Joel Brobecker  <brobecker@adacore.com>
10080
10081         * NEWS: Add entry describing Add support improvements.
10082
10083 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10084
10085         * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
10086         M68K_FP0_REGNUM.
10087
10088 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10089
10090         * sentinel-frame.c (sentinel_frame_prev_register): Do not call
10091         register_offset_hack anymore.
10092
10093         * regcache.{c,h} (register_offset_hack): Remove.
10094
10095 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10096
10097         * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.
10098
10099         * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
10100         current_gdbarch by gdbarch.
10101         (hppa64_hpux_find_global_pointer): Likewise.
10102         * hppa-tdep.c (hppa_find_global_pointer): Likewise.
10103         (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
10104         find_global_pointer.
10105
10106         * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
10107         parameter.
10108         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.
10109
10110         * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
10111         of gdbarch_num_regs.
10112
10113         * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
10114         replace current_gdbarch by gdbarch.
10115         (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.
10116
10117 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10118
10119         * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
10120         and replace current_gdbarch by gdbarch.
10121
10122         (store_register): Update call for exec_one_dummy_insn.
10123         (fetch_register, store_register): Update call of regmap.
10124
10125         * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
10126         parameter and replace current_gdbarch by gdbarch.
10127
10128         (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
10129         the current architecture. Update call for getregs_supplies and
10130         getfpregs_supplies.
10131         (ppcnbsd_fetch_inferior_registers): Likewise.
10132
10133         * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
10134         replace current_gdbarch by gdbarch.
10135         (ppcobsd_fetch_registers, ppcobsd_store_registers): Use
10136         get_regcache_arch to get at the current architecture. Update call for
10137         getfpregs_supplies.
10138
10139 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10140
10141         * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
10142         variables.
10143
10144 2008-02-15  Markus Deuling  <deuling@de.ibm.com>
10145
10146         * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.
10147
10148 2008-02-14  Vladimir Prus  <vladimir@codesourcery.com>
10149
10150         * NEWS: Mention pending breakpints in MI.
10151
10152 2008-02-14  Markus Deuling  <deuling@de.ibm.com>
10153
10154         * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.
10155
10156 2008-02-13  Markus Deuling  <deuling@de.ibm.com>
10157
10158         Add script to build and test GDB using enable-targets=all.
10159
10160         * gdb_buildall.sh: New file.
10161
10162 2008-02-11  Maxim Grigoriev  <maxim2405@gmail.com>
10163
10164         * NEWS (New native configurations): Xtensa GNU/Linux.
10165         (New targets): Xtensa GNU/Linux.
10166         * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and
10167         xtensa-linux-tdep.o
10168         (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c
10169         (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies.
10170         * configure.tgt (xtensa*-*-linux*): New entry.
10171         * xtensa-config.c (xtensa_tdep): New variable.
10172         (xtensa_config_byte_order, xtensa_config_tdep): Removed.
10173         (rmap): Change format based on new macro XTREG.
10174         (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h.
10175         * xtensa-linux-nat.c: New.
10176         * xtensa-linux-tdep.c: New.
10177         * xtensa-xtregs.c: New.
10178         * xtensa-tdep.h (xtensa_elf_gregset_t): Update.
10179         (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE)
10180         (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros.
10181         (xtensa_register_t): New field coprocessor.
10182         (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected.
10183         * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed.
10184         (xtensa_pseudo_register_read, xtensa_pseudo_register_write):
10185         Update to handle privileged registers.
10186         (xtensa_supply_gregset) Remove exccause and excvaddr registers.
10187         (xtensa_push_dummy_call): Set windowstart register correctly.
10188         (call0_analyze_prologue): Initialize xtensa_default_isa.
10189         (xtensa_derive_tdep): New.
10190         (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and
10191         xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead.
10192         Call xtensa_derive_tdep().
10193         * config/xtensa/linux.mh: New.
10194         * regformats/reg-xtensa.dat: New.
10195
10196 2008-02-09  Aleksandar Ristovski  <aristovski@qnx.com>  (tiny change)
10197
10198         * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
10199         (filenames.h): New include.
10200         * Makefile.in (corelow.o): Add dependency for filenames.h.
10201
10202 2008-02-08  Doug Evans  <dje@google.com>
10203
10204         * source.c (find_and_open_source): Always rewrite absolute filenames.
10205
10206 2008-02-07  Doug Evans  <dje@google.com>
10207
10208         * breakpoint.c: #include "hashtab.h".
10209         (ambiguous_names_p): New fn.
10210         (update_breakpoint_locations): When restoring bp enable status, don't
10211         compare function names if any functions have same name.
10212         * Makefile.in (breakpoint.o): Add hashtab.h dependency.
10213
10214 2008-02-07  Joel Brobecker  <brobecker@adacore.com>
10215
10216         * ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
10217         instead of just a VEC*. Update use of SV.
10218         (ada_make_symbol_completion_list): Update symbol_completion_add calls.
10219
10220 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10221
10222         * NEWS: Put all new commands since gdb-6.7 together.
10223
10224 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10225
10226         * ada-lang.c: #include "vec.h".
10227         (struct string_vector, new_string_vector, string_vector_append):
10228         Delete.
10229         (char_ptr): New typedef.
10230         (DEF_VEC_P (char_ptr)): New VEC type.
10231         (symbol_completion_add): Update profile to take the new VEC type
10232         instead of the old string_vector structure. Update code accordingly.
10233         (ada_make_symbol_completion_list): Use the new VEC type instead of
10234         the old string_vector structure, and update the code accordingly.
10235         * Makefile.in (ada-lang.o): Add dependency on vec.h.
10236
10237 2008-02-06  Pierre Muller  <muller@ics.u-strasbg.fr>
10238
10239         * p-exp.y: Set current_type in missing places.
10240         (leftdiv_is_integer): New static variable.
10241         Typecast right operand of BINOP_DIV to long_double if both operands
10242         are integers.
10243
10244 2008-02-06  Maciej W. Rozycki  <macro@mips.com>
10245
10246         * remote-mips.c (set_breakpoint): Rename to...
10247         (mips_set_breakpoint): ... this.
10248         (clear_breakpoint): Rename to...
10249         (mips_clear_breakpoint): ... this.
10250         (common_breakpoint): Rename to...
10251         (mips_common_breakpoint): ... this.
10252         (check_lsi_error): Rename to...
10253         (mips_check_lsi_error): ... this.
10254
10255 2007-02-05  Joel Brobecker  <brobecker@adacore.com>
10256
10257         * language.h (struct language_defn): Add new field
10258         la_make_symbol_completion_list.
10259         * symtab.c (default_make_symbol_completion_list): Renames
10260         make_symbol_completion_list.
10261         (make_symbol_completion_list): New function.
10262         * symtab.h (default_make_symbol_completion_list): Add declaration.
10263         * langauge.c (unknown_language): Set la_make_symbol_completion_list.
10264         (auto_language, local_language): Likewise.
10265         * objc-lang.c (objc_language_defn): Likewise.
10266         * scm-lang.c (scm_language_defn): Likewise.
10267         * m2-lang.c (m2_language_defn): Likewise.
10268         * f-lang.c (f_language_defn): Likewise.
10269         * jv-lang.c (java_language_defn): Likewise.
10270         * p-lang.c (pascal_language_defn): Likewise.
10271         * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
10272         (minimal_language_defn): Likewise.
10273         * ada-lang.c (struct string_vector): New structure.
10274         (new_string_vector, string_vector_append, ada_unqualified_name)
10275         (add_angle_brackets, symbol_completion_match, symbol_completion_add)
10276         (ada_make_symbol_completion_list): New functions.
10277         (ada_language_defn): Set la_make_symbol_completion_list.
10278         * ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
10279         this function is static.
10280
10281 2008-02-05  Kevin Buettner  <kevinb@redhat.com>
10282
10283         * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
10284         to account for call site optimizations.
10285
10286 2008-02-05  Andrzej Zaborowski  <balrogg@gmail.com>
10287
10288         * tracepoint.c (read_actions): Handle end-of-text indicator
10289         in action list properly.  (Committed by Jim Blandy)
10290
10291 2008-02-05  Jim Blandy  <jimb@red-bean.com>
10292
10293         * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
10294         pseudoregister, not an internal error.
10295         Reported by: Andrzej Zaborowski
10296
10297 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10298
10299         * varobj.c (c_value_of_variable): Use xstrdup.
10300
10301 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10302
10303         Update stored rendition of varobj value when format changes.
10304         * varobj.c (varobj_set_display_format): Recomputed
10305         print_value.
10306         (c_value_of_variable): Return print_value.
10307
10308 2008-02-03  Doug Evans  <dje@google.com>
10309
10310         * eval.c (evaluate_subexp_standard): Fix type of result of mixed
10311         integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
10312         * valops.c (value_one): New function.
10313         * value.h (value_one): Declare.
10314
10315         Fix argument promotion for binary arithmetic ops for C.
10316         * valarith.c (unop_result_type): New fn.
10317         (binop_result_type): New fn.
10318         (value_binop): Move result type computation to binop_result_type.
10319         (value_pos, value_neg, value_complement): Move result type
10320         computation to unop_result_type.
10321
10322         PR 2384
10323         * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10324         Return basetype, fieldno if found.  All callers updated.
10325         Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
10326         objfile.
10327         * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10328         * symfile.h (fill_in_vptr_fieldno): Delete.
10329
10330 2008-02-02  Doug Evans  <dje@google.com>
10331
10332         * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.
10333
10334         * typeprint.c (*): Whitespace cleanup.
10335
10336 2008-02-02  Mark Kettenis  <kettenis@gnu.org>
10337             Luis Machado  <luisgpm@br.ibm.com>
10338             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10339
10340         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
10341         don't fit into registerson the stack the way GCC does.
10342
10343 2008-02-01  Joel Brobecker  <brobecker@adacore.com>
10344
10345         * symtab.c (symbol_set_names): Do not add an entry in the demangling
10346         hash table for Ada symbols. Just store the linkage name as is,
10347         and leave the demangled_name as NULL.
10348
10349 2007-02-01  Joel Brobecker  <brobecker@adacore.com>
10350
10351         * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
10352         in the global scope.
10353         (new_symbol): Likewise.
10354
10355 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10356
10357         * breakpoint.c (break_command_1): Return void.
10358         (break_command_really): Return void.  Rethrow
10359         exceptions instead of returning.
10360         (gdb_breakpoint): Remove the error_message parameter.
10361         Return void.  Rename to set_breakpoint.
10362         * gdb.h (gdb_breakpoint): Rename and move to...
10363         * breakpoint.h (set_breakpoint): ...here.
10364         * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
10365         event hooks even if exception is thrown.  Adjust to
10366         gdb_breakpoint interface changes.
10367
10368
10369 2008-02-01  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10370
10371         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
10372         float in both first and second word in the doubleword, to support
10373         old and new ABIs.
10374
10375 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10376
10377         Properly rethrow exception.  This fixes errors
10378         about non-existent functions for -break-insert.
10379         * breakpoint.c (break_command_really): Use throw_exception
10380         for rethrowing.  If rethrowing, don't print the exception.
10381
10382 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10383
10384         * NEWS: Mention Decimal Floating Point support.
10385
10386 2008-01-31  Joel Brobecker  <brobecker@adacore.com>
10387
10388         * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
10389         value type to builtin_type_void_func_ptr.
10390
10391 2008-01-31  Andreas Krebbel  <krebbel1@de.ibm.com>
10392
10393         * s390-tdep.c (is_float_singleton, is_float_like,
10394         alignment_of, s390_return_value): Make checks for
10395         TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.
10396
10397 2008-01-31  Luis Machado  <luisgpm@br.ibm.com>
10398             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10399
10400         * infcmd.c (default_print_registers_info): Also print hex
10401         raw contents for TYPE_CODE_DECFLOAT registers.
10402         * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
10403         * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
10404         (rs6000_register_name): Add support for DFP pseudo-registers.
10405         (rs6000_pseudo_register_type): Likewise.
10406         rs6000_pseudo_register_reggroup_p): Likewise.
10407         (ppc_pseudo_register_read): New function.
10408         (ppc_pseudo_register_write): Likewise.
10409         (rs6000_pseudo_register_read): Likewise.
10410         (rs6000_pseudo_register_write): Likewise.
10411         (e500_pseudo_register_read): Move checks to
10412         rs6000_pseudo_register_read.
10413         (e500_pseudo_register_write): Move checks to
10414         rs6000_pseudo_register_write.
10415         (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum.  Install
10416         rs6000_pseudo_register_read and rs6000_pseudo_register_write
10417         in gdbarch if SPE or DFP is available.  Adjust gdbarch's
10418         num_pseudo_regs to account for DFP pseudo regs.
10419
10420 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10421
10422         * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
10423         * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
10424         (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
10425         rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
10426         e500_pseudo_register_read, e500_pseudo_register_write): Use
10427         IS_SPE_PSEUDOREG macro.
10428         (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
10429         (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
10430         Remove initialization of tdep->ppc_ev31_regnum.
10431
10432 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
10433
10434         * printcmd.c (print_formatted): Handle references as for unformatted
10435         prints.
10436
10437 2008-01-30  Joel Brobecker  <brobecker@adacore.com>
10438
10439         * eval.c (evaluate_subexp_standard): Add handling of user
10440         registers when in EVAL_AVOID_SIDE_EFFECTS mode.
10441
10442 2008-01-30  Pierre Muller  <muller@ics.u-strasbg.fr>
10443
10444         * eval.c (evaluate_subexp_standard): Support
10445         BINOP_INTDIV opcode.
10446
10447 2008-01-30  Paul N. Hilfinger  <hilfinger@adacore.com>
10448
10449         * valarith.c (value_binop): Add floating-point BINOP_MIN and
10450         BINOP_MAX cases.
10451         For BINOP_EXP, use length and signedness of left operand only for
10452         result, as for shifts.
10453         For integral operands to BINOP_EXP, use new integer_pow and
10454         uinteger_pow functions so as to get full range of results.
10455         (integer_pow): New function.
10456         (uinteger_pow): New function.
10457
10458 2008-01-30  Vladimir Prus  <vladimir@codesourcery.com>
10459
10460         Use vector for varobj_list_children interface.
10461         * gdb/varobj.c (varobj_list_children): Return vector
10462         of varobjs.
10463         * gdb/varobj.h (varobj_list_children): Adjust
10464         prototype.
10465         (varobj_p): Declare.  Declare vector thereof.
10466         * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
10467         for varobj_list_children change.
10468         * Makefile.in (varobj_h): Update dependencies.
10469
10470 2008-01-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10471
10472         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
10473         TYPE_CODE_DECFLOAT arguments.
10474         (ppc64_sysv_abi_push_dummy_call) Likewise.
10475         (get_decimal_float_return_value): New function.
10476         (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
10477         values by calling get_decimal_float_return_value.
10478         (ppc64_sysv_abi_return_value): Likewise.
10479
10480 2008-01-30  Nick Roberts  <nickrob@snap.net.nz>
10481
10482         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file):  Add field
10483         for preprocessor macro information.  Formatting changes.
10484
10485 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10486
10487         * remote.c (struct remote_state): Add cached_wait_status.
10488         (remote_exec_file): New variable.
10489         (PACKET_vAttach, PACKET_vRun): New constants.
10490         (extended_remote_restart): Do not query for status.
10491         (struct start_remote_args): New.
10492         (remote_start_remote): Take it as a second argument.  Check
10493         whether the target is running.  Issue an error for non-running
10494         non-extended targets.  Cache the wait status.  Set inferior_ptid
10495         here.
10496         (remote_open_1): Prompt to disconnect non-running targets.  Make
10497         sure the target is marked running.  Do not set inferior_ptid here.
10498         Update call to remote_start_remote.  Do not call remote_check_symbols
10499         if the target is not running.
10500         (remote_detach_1): Rename from remote_detach.  Take an EXTENDED
10501         argument.  Handle a non-running target.
10502         (remote_detach): Use it.
10503         (extended_remote_detach): New.
10504         (remote_disconnect): Fix typo.  Use remoute_mourn_1.
10505         (extended_remote_attach_1, extended_remote_attach)
10506         (extended_async_remote_attach): New.
10507         (remote_vcont_resume): Remove unused variable.
10508         (remote_wait, remote_async_wait): Use any cached wait status.
10509         (putpkt_binary, getpkt): Clear any cached wait status.
10510         (extended_remoute_mourn_1): New.
10511         (extended_remote_mourn): Use it.
10512         (extended_async_remote_mourn, extended_remote_run): New.
10513         (extended_remote_create_inferior_1): New.
10514         (extended_remote_create_inferior): Use it.
10515         (extended_remote_async_create_inferior): Likewise.
10516         (remote_xfer_partial): Skip for non-executing targets.
10517         (init_extended_remote_ops): Set to_detach and to_attach.
10518         (init_extended_async_remote_ops): Likewise.  Use
10519         extended_async_remote_mourn.
10520         (_initialize_remote): Register vAttach, vRun, and
10521         set remote exec-file.
10522         * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.
10523
10524 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10525
10526         * Makefile.in (symfile.o): Update.
10527         * NEWS: Mention exec tracing support.
10528         * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
10529         exec events.
10530         * infcmd.c (kill_if_already_running, detach_command)
10531         (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
10532         * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
10533         (follow_exec): Do not check may_follow_exec.  Do not mourn and push
10534         targets.  Apply the sysroot path to the loaded executable.  Use
10535         no_shared_libraries.
10536         * linux-nat.c (linux_child_follow_fork): Print fork following
10537         messages if verbose.
10538         (kill_wait_callback): Kill again before waiting a second time.
10539         * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
10540         no_shared_libraries.
10541
10542 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10543
10544         * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.
10545
10546 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10547
10548         * nto-tdep.h: Remove #include "defs.h".
10549         * nto-tdep.c: Add #include "defs.h".
10550         * Makefile.in (nto_tdep_h): Update dependencies.
10551         (nto-tdep.o): Likewise.
10552
10553 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10554
10555         * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
10556         and use it.
10557         (proceed, start_remote): Update call to wait_for_inferior.
10558         * inferior.h (wait_for_inferior): Update declaration.
10559         * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
10560         solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
10561         * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
10562         TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.
10563
10564 2008-01-29  Aleksandar Ristovski  <aristovski@qnx.com>
10565
10566         * varobj (adjust_value_for_child_access): Added checking for
10567         returned value from gdb_value_ind.
10568         (c_describe_child): Likewise.
10569         (cplus_describe_child): Fixed a typo.
10570
10571 2008-01-29  Jim Blandy  <jimb@red-bean.com>
10572
10573         * MAINTAINERS: Update my info.
10574
10575 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10576
10577         Use multiple locations for hardware watchpoints.
10578         This eliminates the need to traverse value chain, doing
10579         various checks, in three different places.
10580
10581         * breakpoint.h (struct bp_location): New fields
10582         lengths and watchpoint_type.
10583         (struct breakpoint): Remove the val_chain field.
10584         * breakpoint.c (is_hardware_watchpoint): New.
10585         (free_valchain): Remove.
10586         (update_watchpoint): New.
10587         (insert_bp_location): For hardware watchpoint, just
10588         directly insert it.
10589         (insert_breakpoints): Call update_watchpoint_locations
10590         on all watchpoints.  If we have failed to insert
10591         any location of a hardware watchpoint, remove all inserted
10592         locations.
10593         (remove_breakpoint): For hardware watchpoints, directly
10594         remove location.
10595         (watchpoints_triggered): Iterate over locations.
10596         (bpstat_stop_status): Use only first location of
10597         a resource watchpoint.
10598         (delete_breakpoint): Don't call free_valchain.
10599         (print_one_breakpoint): Don't print all
10600         locations for watchpoints.
10601         (breakpoint_re_set_one): Use update_watchpoint for
10602         watchpoints.
10603
10604 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10605
10606         Don't reset watchpoint block on solib load.
10607
10608         * breakpoint.c (insert_bp_location): For watchpoints,
10609         recompute condition.
10610         (breakpoint_re_set_one): Instead of recomputing value
10611         and condition for watchpoints, just reset value and
10612         let insert_breakpoints/insert_bp_location recompute it.
10613         Don't do anything about disabled watchpoint.
10614
10615 2008-01-29  Pierre Muller  <muller@ics.u-strasbg.fr>
10616
10617         * valarith.c (value_binop): Handle unsigned integer
10618         division by zero.
10619
10620 2008-01-28  Kevin Buettner  <kevinb@redhat.com>
10621
10622         * mn10300-tdep.c (mn10300_analyze_prologue): Check for an
10623         instruction pattern that appears frequently in position
10624         independent code.  Fix bug in code which looks for "fmov" and
10625         backtracks if no "fmov" is found.
10626
10627 2008-01-28  Doug Evans  <dje@google.com>
10628
10629         * dbxread.c (read_dbx_symtab): Fix indentation.
10630         Reformat comments to 80 columns.
10631         Move local var def closer to only use.
10632
10633 2008-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
10634
10635         * fork-child.c (SHELL_FILE): Remove #ifndef.
10636         (fork_inferior): Remove SHELL_COMMAND_CONCAT.
10637
10638 2008-01-25  Pierre Muller  <muller@ics.u-strasbg.fr>
10639
10640         * i386-tdep.c (i386_skip_noop): New function.
10641         (i386_analyze_prologue): Call i386_skip_noop function.
10642
10643 2008-01-24  Michael Snyder  <msnyder@specifix.com>
10644
10645         * procfs.c (procfs_xfer_partial): Comment, cut/paste error.
10646         * win32-nat.c (win32_xfer_partial): Ditto.
10647         * target.c (default_xfer_partial): Minor whitespace adjustment.
10648
10649 2008-01-24  Pedro Alves  <pedro@codesourcery.com>
10650
10651         * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
10652         strip bit 1 even if pc doesn't point to thumb code.
10653
10654 2008-01-23  Daniel Jacobowitz  <dan@codesourcery.com>
10655
10656         * remote.c (remote_wait): Handle SIGINT between packets.
10657         (remote_async_wait): Likewise.
10658
10659 2008-01-23  Vladimir Prus  <vladimir@codesourcery.com>
10660             Chris Demetriou  <cgd@google.com>
10661
10662         * thread.c (add_thread_silent): Renamed
10663         from add_thread.
10664         (print_thread_events): New variable definition.
10665         (show_print_thread_events): New function.
10666         (_initialize_thread): Add "set print thread-events" and
10667         "show print thread-events" commands.
10668         (add_thread): Announce new thread.
10669         * gdbthread.h (add_thread_silent): Declare.
10670         (print_thread_events): New variable declaration.
10671         * inf-ttrace.c (inf_ttrace_wait): Don't
10672         inform about new thread, as add_thread is always
10673         called too, and will take care of that.
10674         * infrun.c (handle_inferior_event): Likewise.
10675         * procfs.c (procfs_wait): Likewise.
10676         * remote.c (remote_currthread): Likewise.
10677         * sol-thread.c (sol_thread_wait): Likewise.
10678         * win32-nat.c (get_win32_debug_event): Likewise.
10679         * linux-thread-db.c (attach_thread): Likewise.
10680         Remove the verbose parameter.
10681         (check_event): Make detach_thread be verbose
10682         only if print_thread_events is set.
10683         * linux-nat.c (lin_lwp_attach_lwp): Don't inform
10684         about new thread.  This is called only from
10685         linux-thread-db.c:attach_thread, which will take care.
10686         Remove the verbose parameter.
10687         * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.
10688
10689 2008-01-23  Nick Roberts  <nickrob@snap.net.nz>
10690
10691         * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.
10692
10693 2008-01-22  Vladimir Prus  <vladimir@codesourcery.com>
10694
10695         * breakpoint.c (break_command_really): New parameter
10696         ignore_count.
10697         (break_command_1): Pass 0 as
10698         ignore_count to break_command_really.
10699         (gdb_breakpoint): Pass ignore_count to
10700         break_command_really.
10701
10702 2008-01-21  Kevin Buettner  <kevinb@redhat.com>
10703
10704         * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
10705         sigcontext struct via pointer.
10706         (struct sigframe comment): Update to show new field `psc'.
10707
10708 2008-01-21  Vladimir Prus  <vladimir@codesourcery.com>
10709
10710         * infrun.c (handle_inferior_event): If
10711         we failed to remove breakpoints, error,
10712         don't try to increment PC by hand.
10713
10714 2008-01-18  Nick Hudson  <nick.hudson@dsl.pipex.com>
10715
10716         Add NetBSD/hppa target and host support.
10717
10718         * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
10719         (hppabsd_gregset): Move to ...
10720         (hppabsd_regset_from_core_section): Rename
10721         hppaobsd_regset_from_core_section and move to ...
10722         (hppabsd_find_global_pointer): Update comment.
10723         (hppabsd_init_abi): Make global. Do not register
10724         hppabsd_regset_from_core_section.
10725         (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
10726         move to ...
10727         (_initialize_hppabsd_tdep): Move to ...
10728         * hppaobsd-tdep.c: ... here. New file.
10729         * hppnbsd-tdep.c: New file.
10730         * hppnbsd-nat.c: New file.
10731         * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
10732         (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
10733         (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
10734         (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
10735         * configure.host (hppa*-*-netbsd*): New entry.
10736         * configure.tgt (hppa*-*-netbsd*): New entry.
10737         (hppa*-*-openbsd*): Update.
10738         * NEWS (New native configuration): Mention NetBSD/hppa.
10739         (New targets): Mention NetBSD/hppa.
10740
10741 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
10742
10743         * gdbarch.sh (function_list): Add new property bits_big_endian to
10744         gdbarch structure.
10745         * gdbarch.{c,h}: Regenerate.
10746
10747         * value.c (struct value): Replace BITS_BIG_ENDIAN by
10748         gdbarch_bits_big_endian (comment).
10749         (unpack_field_as_long, modify_field): Likewise.
10750         * value.h: Likewise (comment).
10751         * valops.c (value_slice): Likewise.
10752         * valarith.c (value_subscript, value_bit_index): Likewise.
10753         * gdbtypes.h (field): Likewise (comment).
10754         * eval.c (evaluate_subexp_standard): Likewise.
10755         * dwarf2read.c (dwarf2_add_field): Likewise.
10756         * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
10757         (move_bits, ada_value_assign, value_assign_to_component): Likewise.
10758
10759         * defs.h (BITS_BIG_ENDIAN): Remove.
10760
10761 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
10762
10763         * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
10764         function calls.
10765         * m2-exp.y (yylex): Likewise.
10766         * objc-exp.y (yylex): Likewise.
10767
10768         * defs.h (DEPRECATED_STREQN): Remove.
10769
10770 2008-01-17  H.J. Lu  <hjl.tools@gmail.com>
10771
10772         * MAINTAINERS: Update my email address.
10773
10774 2008-01-17  Jim Blandy  <jimb@codesourcery.com>
10775
10776         * README: Mention gdbserver/README.
10777
10778 2008-01-17  Pierre Muller  <muller@ics.u-strasbg.fr>
10779
10780         * valarith.c (value_binop): Handle BINOP_INTDIV
10781         for unsigned and signed integers.
10782
10783 2008-01-17  Ulrich Weigand  <uweigand@de.ibm.com>
10784
10785         * s390-tdep.c (s390_gdbarch_init): Set default long double
10786         type to 128-bit IEEE quad.
10787
10788 2008-01-17  Joel Brobecker  <brobecker@adacore.com>
10789
10790         * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
10791
10792 2008-01-16  Mark Kettenis  <kettenis@gnu.org>
10793
10794         * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.
10795
10796         * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
10797         * value.c: All callers changed.
10798
10799 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10800
10801         * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
10802         DEPRECATED_STREQ by its expression.
10803         * coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
10804         * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
10805         (scan_xcoff_symtab): Likewise.
10806         * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
10807         * f-lang.c (find_common_for_function): Likewise.
10808         * objc-exp.y (parse_number): Likewise.
10809
10810         * defs.h (DEPRECATED_STREQ): Remove.
10811
10812 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10813
10814         * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
10815         * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
10816         get_frame_arch to get at the current_architecture. Update AM33_MODE
10817         call.
10818         (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
10819         (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
10820         architecture.
10821         (set_reg_offsets, mn10300_analyze_prologue): Fix indentation.
10822
10823 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10824
10825         * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
10826         parameter.
10827         * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.
10828
10829         (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
10830         current_gdbarch by gdbarch. Update caller.
10831
10832         * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
10833         (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
10834         the current architecture. Update calls of
10835         amd64_native_gregset_supplies_p.
10836         * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
10837         (amd64bsd_store_inferior_registers): Likewise.
10838
10839 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10840
10841         * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
10842         Replace current_gdbarch by gdbarch. Update caller.
10843
10844 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10845
10846         * dbxread.c (repeated_header_complaint, dbx_symfile_init)
10847         (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
10848         (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
10849         (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
10850         (stabsect_build_psymtabs): Fix indentation.
10851
10852 2008-01-15  Michael Snyder  <msnyder@specifix.com>
10853
10854         * corelow.c (core_xfer_partial): Comment, cut/paste error.
10855
10856 2008-01-14  Pierre Muller  <muller@ics.u-strasbg.fr>
10857
10858         * win32-nat.c (win32_create_inferior): Restore code calling
10859         CloseHandle on ProcessInformation structure.
10860
10861 2008-01-13  Nick Hudson  <nick.hudson@dsl.pipex.com>
10862
10863         * configure.ac: Check for void * as 3 argument of ptrace.
10864         * configure: regenerate.
10865
10866 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
10867
10868         * alpha-tdep.c (alpha_heuristic_proc_start)
10869         (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
10870         current_gdbarch by gdbarch.
10871
10872         (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
10873         current architecture by frame_info. Update alpha_heuristic_proc_start
10874         call.
10875
10876         (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
10877         get_frame_arch to get at the current architecture by frame_info. Update
10878         alpha_sigtramp_register_address call.
10879
10880         * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
10881         current_gdbarch by gdbarch. Update caller.
10882         (convert_to_extended, convert_from_extended): Add endianess parameter
10883         for comparison. Update caller.
10884         (arm_extract_return_value, arm_store_return_value): Use
10885         get_regcache_arch to get at the current architecture.
10886
10887         * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
10888         current_gdbarch by gdbarch. Update caller.
10889         (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
10890         gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.
10891
10892         * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
10893         gdbarch as parameter. Update caller.
10894         (h8300_init_frame_cache): Add gdbarch as parameter. Replace
10895         current_gdbarch by gdbarch. Update caller.
10896
10897         * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
10898         update caller. Replace current_gdbarch by gdbarch.
10899
10900         * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
10901         the current architecture. Replace current_gdbarch by gdbarch.
10902         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
10903         (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
10904         expression. Add gdbarch as parameter and replace current_gdbarch with
10905         it. Update caller.
10906         (M6811_TDEP): Remove.
10907         (m68hc11_frame_prev_register): Use get_frame_arch to get at the current
10908         architecture.
10909         (m68hc11_scan_prologue): Add gdbarch as parameter. Replace
10910         current_gdbarch by gdbarch. Update caller.
10911
10912         * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
10913         update caller.
10914         (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
10915         by gdbarch.
10916
10917         * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
10918         caller. Relace current_gdbarch by gdbarch.
10919         (altivec_register_p, spe_register_p): Likewise.
10920         * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
10921         parameter.
10922         * ppc-linux-nat.c (fetch_register, store_register): Update caller of
10923         altivec_register_p and spe_register_p.
10924
10925         * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
10926         caller. Replace current_gdbarch by gdbarch.
10927         (score_analyze_prologue): use get_frame_arch to get at the current
10928         architecture.
10929
10930         * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
10931         * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
10932         current_gdbarch by gdbarch. Update caller.
10933         (sparc_frame_cache): Use get_frame_arch to get at the current
10934         architecture.
10935         * sparce64-tdep.c (sparc64_skip_prologue): Update call of
10936         sparc_analyze_prologue.
10937
10938         * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
10939         parameter.
10940
10941 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
10942
10943         * exec.c: #include "arch-utils.h"
10944          (print_section_info): Use gdbarch_from_bfd to get at the
10945         current architecture. Replace current_gdbarch. Fix indention. Replace
10946         deprecated_print_address_numeric by paddress.
10947         * Makefile.in (exec.o) Add dependency to arch-utils.h.
10948
10949         * valprint.c (val_print_string): Replace
10950         deprecated_print_address_numeric.
10951         * tracepoint.c (trace_mention, scope_info): Likewise.
10952         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
10953         (print_symbol, print_partial_symbols, maintenance_info_psymtabs)
10954         (maintenance_check_symtabs): Likewise.
10955         * symfile.c (list_overlays_command): Likewise.
10956         * stack.c (frame_info, print_block_frame_labels): Likewise.
10957         * printcmd.c (print_address, print_address_demangle)
10958         (address_info): Likewise.
10959         * corefile.c (memory_error): Likewise.
10960         * infcmd.c (jump_command): Likewise.
10961         * breakpoint.c (insert_bp_location, describe_other_breakpoints)
10962         (mention, delete_breakpoint): Likewise.
10963         * c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
10964         * dwarf2read.c (dump_die): Likewise.
10965         * ada-valprint.c (ada_val_print_1): Likewise.
10966         * f-valprint.c (f_val_print): Likewise.
10967         * linux-fork.c (info_forks_command): Likewise.
10968         * m32r-com.c (m32r_load_section, m32r_load)
10969         (m32r_upload_command): Likewise.
10970
10971         * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
10972
10973 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
10974
10975         * gdbarch.sh (skip_prologue): Add gdbarch
10976         as parameter.
10977         * gdbarch.{c,h}: Regenerate.
10978
10979         * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
10980         * amd64-tdep.c (amd64_skip_prologue): Likewise.
10981         * avr-tdep.c (avr_skip_prologue): Likewise.
10982         * cris-tdep.c (cris_skip_prologue): Likewise.
10983         * frv-tdep.c (frv_skip_prologue): Likewise.
10984         * h8300-tdep.c (h8300_skip_prologue): Likewise.
10985         * hppa-tdep.c (hppa_skip_prologue): Likewise.
10986         * i386-tdep.c (i386_skip_prologue): Likewise.
10987         * ia64-tdep.c (ia64_skip_prologue): Likewise.
10988         * iq2000-tdep.c (iq2000_skip_prologue): Likewise.
10989         * m32r-tdep.c (m32r_skip_prologue): Likewise.
10990         * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
10991         * m68k-tdep.c (m68k_skip_prologue): Likewise.
10992         * m88k-tdep.c (m88k_skip_prologue): Likewise.
10993         * mep-tdep.c (mep_skip_prologue): Likewise.
10994         * mips-tdep.c (mips_skip_prologue): Likewise.
10995         * mn10300-tdep.c (mn10300_skip_prologue): Likewise.
10996         * mt-tdep.c (mt_skip_prologue): Likewise.
10997         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
10998         * score-tdep.c (score_skip_prologue): Likewise.
10999         * sh64-tdep.c (sh64_skip_prologue): Likewise.
11000         * sh-tdep.c (sh_skip_prologue): Likewise.
11001         * sparc64-tdep.c (sparc64_skip_prologue): Likewise.
11002         * sparc-tdep.c (sparc32_skip_prologue): Likewise.
11003         * spu-tdep.c (spu_skip_prologue): Likewise.
11004         * v850-tdep.c (v850_skip_prologue): Likewise.
11005         * vax-tdep.c (vax_skip_prologue): Likewise.
11006         * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
11007         * xtensa-tdep.c (xtensa_skip_prologue): Likewise.
11008
11009         * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
11010         current_gdbarch by gdbarch.
11011         * m32c-tdep.c (m32c_skip_prologue): Likewise.
11012         * s390-tdep.c (s390_skip_prologue): Likewise.
11013
11014 2008-01-10  Doug Evans  <dje@google.com>
11015
11016         * defs.h (struct continuation_arg): Fix typo in comment.
11017         * target.c (target_translate_tls_address): Fix comment spelling error.
11018
11019 2008-01-09  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11020
11021         * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
11022         (DOUBLEST_SCAN_FORMAT): Likewise.
11023         * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
11024         * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
11025         * c-exp.y (parse_number): Likewise.
11026         * jv-exp.y (parse_number): Likewise.
11027         * objc-exp.y (parse_number): Likewise.
11028         * p-exp.y (parse_number): Likewise.
11029
11030 2008-01-09  Joel Brobecker  <brobecker@adacore.com>
11031
11032         * gdbtypes.c (create_array_type): Add handling of null Ada arrays.
11033         (check_typedef): Likewise.
11034
11035 2008-01-09  Luis Machado  <luisgpm@br.ibm.com>
11036
11037         * printcmd.c (printf_command): Add seen_big_h, seen_big_d and
11038         seen_double_big_d, treat the new H, D, and DD modifiers as length
11039         modifiers.
11040
11041 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11042
11043         * dwarf2read.c (read_enumeration_type): Add comment.
11044
11045 2008-01-08  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11046
11047         * config.in: Regenerate.
11048
11049 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11050
11051         * ada-lang.c (ada_convert_actual): Renames convert_actual.
11052         Make non-static.
11053         (ada_convert_actuals): Delete.
11054         * ada-lang.h (ada_convert_actual): Add declaration.
11055         (ada_convert_actuals): Remove declaration.
11056         * infcall.c: #include "ada-lang.h".
11057         (value_arg_coerce): Add new parameter sp.  Update function
11058         documetnation.  Add handling of Ada function call parameters.
11059         * Makefile.in (infcall.o): Update dependencies.
11060
11061 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
11062
11063         * ada-lang.c (ensure_lval): Fix value lval kind.
11064         (convert_actual): Add handling for arguments passed by reference.
11065
11066 2008-01-08  Doug Evans  <dje@google.com>
11067
11068         * dbxread.c (read_dbx_symtab): Fix indentation.
11069
11070 2008-01-07  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11071
11072         * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
11073         (valarith.o): Depend on dfp.h.
11074         (valops.o): Likewise.
11075         * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
11076         (set_decnumber_context): New function.
11077         (decimal_check_errors): Likewise.
11078         (decimal_from_number): Likewise.
11079         (decimal_to_number): Likewise.
11080         (decimal_from_string): Use set_decnumber_context and
11081         decimal_check_errors.
11082         (decimal_from_integral): New function.
11083         (decimal_from_floating): Likewise.
11084         (decimal_to_double): Likewise.
11085         (promote_decimal): Likewise.
11086         (decimal_binop): Likewise.
11087         (decimal_is_zero): Likewise.
11088         (decimal_compare): Likewise.
11089         (decimal_convert): Likewise.
11090         * dfp.h (decimal_from_integral): New prototype.
11091         (decimal_from_floating): Likewise.
11092         (decimal_to_double): Likewise.
11093         (decimal_binop): Likewise.
11094         (decimal_is_zero): Likewise.
11095         (decimal_compare): Likewise.
11096         (decimal_convert): Likewise.
11097         * eval.c (evaluate_subexp_standard): Remove expect_type argument from
11098         call to value_from_decfloat.
11099         * valarith.c: Include dfp.h.
11100         (value_args_as_decimal): New function.
11101         (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
11102         (value_logical_not): Likewise.
11103         (value_equal): Likewise.
11104         (value_less): Likewise.
11105         (value_pos): Likewise.
11106         (value_neg): Formatting fix.
11107         * valops.c: Include dfp.h.
11108         (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
11109         * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
11110         (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
11111         (value_from_decfloat): Remove expect_type argument.
11112         * value.h (value_from_decfloat): Update prototype.
11113
11114 2008-01-07  Vladimir Prus  <vladimir@codesourcery.com>
11115
11116         Ignore change in name of dynamic linker during
11117         execution on Solaris.  This also unbreaks pending breakpoints.
11118
11119         * solist.h (struct target_so_ops): New field same.
11120         * solib-svr4.c (svr4_same): New.
11121         (_initialize_svr4_solib): Register svr4_same.
11122         * solib.c (update_solib_list): Use ops->same, if available.
11123
11124 2008-01-06  Christopher Faylor  <me+cygwin@cgf.cx>
11125
11126         * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
11127         when using MS-DOS paths.
11128
11129 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11130
11131         * NEWS: Mention --pid and --core command line behaviour changes.
11132
11133 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11134
11135         * main.c (captured_main): Remove 'count' varible and the
11136         ALIGN_STACK_ON_ENTRY block that used it.  Error out if --core and
11137         --pid options were issued simultaneously.  If an explicit pid
11138         option was passed, don't fallback to core file.  Detect extra
11139         arguments better in the presence of explicit pid or core
11140         arguments.
11141
11142 2008-01-05  Joel Brobecker  <brobecker@adacore.com>
11143
11144         * ada-lang.c (ada_which_variant_applies): Correctly compute
11145         the value of the discriminant when the variant record is packed.
11146
11147 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11148
11149         * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
11150         that are used to differentiate homonyms.
11151
11152 2008-01-04  Jerome Guitton  <guitton@adacore.com>
11153
11154         * ada-lang.c (decode_packed_array_type): Avoid a seg fault
11155         when the type is an anonymous pointer type.
11156         (ada_check_typedef): Avoid a seg fault when the type is null.
11157         * ada-typeprint.c (print_array_type): Add support for pointer
11158         to packed arrays.
11159
11160 2008-01-04  Paul N. Hilfinger  <hilfinger@adacore.com>
11161
11162         * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.
11163
11164 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11165
11166         * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
11167         EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.
11168
11169 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11170
11171         * ada-exp.y (chop_separator): New function.
11172         (write_selectors): Rewrite to re-use chop_separator.
11173         (ada_nget_field_index, get_symbol_field_type): New functions.
11174         (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
11175         expressions.
11176
11177 2008-01-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11178
11179         * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
11180         of SYMBOL_VALUE when working with function symbols.
11181
11182 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11183
11184         * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
11185         expressions.  These expressions do not need to be rewriten.
11186
11187 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11188
11189         * dwarf2read.c (read_enumeration_type): Flag type as stub if
11190         the given die is a declaration.
11191
11192 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11193
11194         * ada-lang.c (ada_array_bound_from_type): Make non-static.
11195         Handle properly the case when the index type is an enumerated type.
11196         Do not return the subtype of the bounds type, just return the
11197         bounds type directly - this is not needed and is more consistent
11198         with what we do for arrays when no XA parallel type exists.
11199
11200 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11201
11202         * ada-lang.c (static_unwrap_type): Add forward declaration.
11203         (template_to_static_fixed_type): Fields of dynamic types sometimes
11204         also need to be unwrapped. Take this into account.
11205         (ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
11206         (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
11207         * ada-typeprint.c (ada_print_type): Get the typename from
11208         the original type, not the base type.
11209
11210 2008-01-03  Jerome Guitton  <guitton@adacore.com>
11211
11212         * ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
11213         (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
11214         Update calls to ada_to_fixed_type.
11215         (ada_template_to_fixed_record_type_1): Ditto, but without looking
11216         for the tag.
11217         (ada_to_fixed_type): Add check_tag parameter; do not look for
11218         tag if null.  When looking for a tag, use a fixed record type.
11219         * ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
11220         * ada-valprint.c (printable_val_type, ada_value_print): Update
11221         calls to ada_to_fixed_type.
11222
11223 2008-01-03  Luis Machado  <luisgpm@br.ibm.com>
11224
11225         * doublest.c (convert_floatformat_to_doublest): Call
11226         floatformat_to_doublest instead of floatformat_to_double and use
11227         DOUBLEST variables.
11228         (convert_doublest_to_floatformat): Call floatformat_from_doublest
11229         instead of floatformat_from_double and use DOUBLEST variables.
11230
11231 2008-01-03  Nick Hudson  <nick.hudson@dsl.pipex.com>
11232
11233         * MAINTAINERS (Write After Approval): Add self.
11234
11235 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11236
11237         * symfile.c (set_initial_language): Make non-static.
11238         * symfile.h (set_initial_language): Add declaration.
11239         * language.c: #include "symfile.h".
11240         (set_language): Call set_initial_language if the frame language
11241         could not be determined.
11242
11243 2008-01-03  Paul N. Hilfinger  <hilfinger@adacore.com>
11244
11245         * eval.c (evaluate_subexp_for_address): Provide frame address to
11246         locate_var_value only if it will be needed.
11247
11248 2008-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
11249
11250         * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.
11251
11252 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11253
11254         * ada-lang.c (ada_evaluate_subexp): Modify the value returned
11255         when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
11256         This is needed to make sure that any other treatment applied
11257         to the resulting value does not fail for spurious reason,
11258         such as trying to take the address of this value.
11259
11260 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11261
11262         * ada-lang.c (ada_value_equal): Dereference reference types when
11263         comparing arrays.
11264
11265 2008-01-01  Daniel Jacobowitz  <dan@codesourcery.com>
11266
11267         Updated copyright notices for most files.
11268
11269 2008-01-01  Christopher Faylor  <me+gdb@cgf.cx>
11270
11271         * win32-nat.c (psapi_module_handle): Remove static.
11272         (get_module_name): Rename from psapi_get_dll_name.  Revamp slightly to
11273         return first module found if base_address is zero.  Don't initialize
11274         psapi function pointers here.  Convert to cygwin paths when
11275         appropriate.
11276         (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
11277         executable name.  Use get_module_name when that fails or when
11278         !__CYGWIN__.
11279         (_initialize_psapi): New function.  Initialize psapi stuff before it is
11280         needed or issue a warning if it is not found.  Move psapi_module_handle
11281         here.
11282
11283 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11284
11285         * ada-lang.c (ada_remove_trailing_digits): New function.
11286         (ada_remove_po_subprogram_suffix): New function.
11287         (ada_decode): Improve. Move the description of the algorithm
11288         directly inside the code, instead of in the function global
11289         description.
11290
11291 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11292
11293         * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
11294         and always print the dereferenced value.
11295
11296 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11297
11298         * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
11299         of the case where the first argument is a reference.
11300         (ada_evaluate_subexp, case BINOP_ADD): Likewise.
11301
11302 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11303
11304         Implement support for Ada interface types.
11305
11306         * ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
11307         (ada_is_ignored_field): Ignore fields that are a dispatch table
11308         of a tagged type.
11309
11310 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11311
11312         * top.c (print_gdb_version): Update copyright year.
11313
11314 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11315
11316         * ChangeLog-2007: New ChangeLog rotation.
11317         * ChangeLog: Reset for 2008.
11318         * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
11319         ChangeLog-2007.
11320
11321 For older changes see ChangeLog-2007.
11322 \f
11323 Local Variables:
11324 mode: change-log
11325 left-margin: 8
11326 fill-column: 74
11327 version-control: never
11328 coding: utf-8
11329 End: