* remote.c (remote_detach_1): Don't delete the inferior here.
[external/binutils.git] / gdb / ChangeLog
1 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
2
3         * remote.c (remote_detach_1): Don't delete the inferior here.
4         (process_stop_reply): Ditto.
5         (extended_remote_kill): Ditto.
6
7 2008-12-12  Pedro Alves  <pedro@codesourcery.com>
8
9         * remote.c (read_ptid): If we don't know about any inferior yet,
10         use the pid of magic_null_ptid.
11         (remote_start_remote): In the non-stop mode case, don't set
12         inferior_ptid to magic_null_ptid here.
13
14 2008-12-11  Daniel Jacobowitz  <dan@codesourcery.com>
15             Pedro Alves  <pedro@codesourcery.com>
16
17         * infcmd.c (step_1): Use step_once in the synchronous case too.
18         (step_1_continuation): Wrap line.
19         (step_once): Adjust comment.  Only install the continuation in
20         async mode.
21
22 2008-12-11  Pedro Alves  <pedro@codesourcery.com>
23
24         * infrun.c (handle_inferior_event): On a TARGET_WAITKIND_EXITED or
25         TARGET_WAITKIND_SIGNALLED, switch inferior_ptid to the event ptid.
26         * linux_thread_db.c (thread_db_wait): On a TARGET_WAITKIND_EXITED
27         or TARGET_WAITKIND_SIGNALLED, return the ptid the beneath target
28         returned.
29         * inf-ptrace.c (inf_ptrace_wait): Return inferior_ptid instead of
30         minus_one_ptid if the inferior disappeared.
31         * rs6000-nat.c (rs6000_wait): Likewise.
32         * spu-linux-nat.c (spu_child_wait): Likewise.
33
34 2008-12-11  Tom Tromey  <tromey@redhat.com>
35
36         PR macros/2564:
37         * c-exp.y (macro_original_text, expansion_obstack,
38         expression_macro_scope): New globals.
39         (scan_macro_expansion): New function.
40         (scanning_macro_expansion): Likewise.
41         (finished_macro_expansion): Likewise.
42         (scan_macro_cleanup): Likewise.
43         (c_parse): Find macro scope.  Initialize obstack.
44         * c-lang.h (scan_macro_expansion, scanning_macro_expansion,
45         finished_macro_expansion, expression_macro_lookup_func,
46         expression_macro_lookup_baton): Remove.
47         * c-lang.c (scan_macro_expansion, scanning_macro_expansion,
48         finished_macro_expansion, expression_macro_lookup_func,
49         expression_macro_lookup_baton): Remove.
50         (macro_original_text, macro_expanded_text,
51         c_preprocess_and_parse): Remove.
52         (c_language_defn, cplus_language_defn, asm_language_defn,
53         minimal_language_defn): Use c_parse.
54
55 2008-12-10  Pedro Alves  <pedro@codesourcery.com>
56
57         * infcmd.c (until_next_command, finish_backward): Use get_frame_pc
58         instead of read_pc.
59
60 2008-12-09  Tom Tromey  <tromey@redhat.com>
61
62         PR gdb/1815:
63         * cli/cli-decode.c (delete_cmd): Forward declare.
64         (delete_cmd): Now static.  Change return type.  Remove command
65         from alias chain.  Rewrite.
66         (add_cmd): Initialize new fields.  Update cmd_pointer on all
67         aliases.
68         (add_alias_cmd): Put command on alias chain.
69         * command.h (delete_cmd): Don't declare.
70         * cli/cli-decode.h (delete_cmd): Don't declare.
71         (struct cmd_list_element) <aliases, alias_chain>: New fields.
72
73 2008-12-09  Tom Tromey  <tromey@redhat.com>
74
75         * config.in, configure: Rebuild.
76         * configure.ac: Check for locale.h, setlocale.  Call
77         AM_LC_MESSAGES.
78         * acinclude.m4: Include lcmessage.m4.
79
80 2008-12-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
81
82         * remote.c (remote_parse_stop_reply): Use REG only after its NULL check.
83
84 2008-12-08  Joel Brobecker  <brobecker@adacore.com>
85
86         * python/python-value.c (values_in_python): Add specific initialization
87         to NULL to work-around a MacOS linker bug.
88
89 2008-12-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
90
91         Fix loc_type of `bp_location's created by update_watchpoint.
92         * breakpoint.c (allocate_bp_location): Remove the bp_type parameter.
93         Replace bp_type by bpt->type.  Update prototype.  All callers updated.
94         (add_location_to_breakpoint):  Remove the bp_type parameter.
95         Replace bp_type by b->type.  All callers updated.
96         (set_breakpoint_location_function): Replace bptype by b->type.
97
98 2008-12-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
99
100         * breakpoint.c (update_global_location_list): Fix the comment.
101
102 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
103
104         * infcmd.c (step_1, step_once): Look up the stepping range based
105         on the current frame's PC, not on stop_pc.
106
107 2008-12-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
108
109         Fix compilation on 32-bit host configurations.
110         * ia64-tdep.c (ia64_breakpoint_from_pc): Suffix a constant by `LL'.
111
112 2008-12-05  Tristan Gingold  <gingold@adacore.com>
113
114         * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn): New function.
115         (amd64_darwin_sstep_at_sigreturn): New function.
116         (darwin_set_sstep): The sigreturn is a special case: the trace flag
117         must be set in the mcontext structure.
118
119 2008-12-05  Pedro Alves  <pedro@codesourcery.com>
120
121         * infcmd.c (step_once): Remove dead code.
122
123 2008-12-04  Doug Evans  <dje@google.com>
124
125         * infcall.c (call_function_by_hand): Clean up use of local dummy_addr.
126
127 2008-12-02  Doug Evans  <dje@google.com>
128
129         * infrun.c (handle_inferior_event): Remove redundant resetting of
130         stepping_past_singlestep_breakpoint.
131
132 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
133
134         * target.h (target_get_osdata): Describe.
135         * osdata.h (make_cleanup_osdata_free): Declare.
136         * osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is
137         not defined.
138         (osdata_free_cleanup): New.
139         (make_cleanup_osdata_free): New.
140         (get_osdata): Fix leak.
141         (info_osdata_command): Use make_cleanup_osdata_free.
142         (info_processes_command): Delete.
143         (_initialize_osdata): Drop undocumented "info processes" alias.
144         * mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.
145
146 2008-12-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
147
148         Fix resolving external references to TLS variables.
149         * findvar.c: Include `objfiles.h'.
150         (read_var_value <LOC_UNRESOLVED>): New variable `obj_section'.  Handle
151         SEC_THREAD_LOCAL variables.
152         * printcmd.c (address_info <LOC_UNRESOLVED>): Handle SEC_THREAD_LOCAL
153         variables.
154
155 2008-12-02  Doug Evans  <dje@google.com>
156
157         * infrun.c (handle_inferior_event): Delete unused local tp.
158
159 2008-12-02  Pedro Alves  <pedro@codesourcery.com>
160             Vladimir Prus  <vladimir@codesourcery.com>
161
162         Implement -list-thread-groups --available
163
164         * Makefile.in (XMLFILES): Add osdata.dtd.
165         (SFILES): Add osdata.c.
166         (COMMON_OBS): Add osdata.o.
167         * linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h.
168         (linux_nat_xfer_osdata): New function.
169         (linux_xfer_partial): Handle TARGET_OBJECT_OSDATA.
170         * osdata.c: New file.
171         * osdata.h: New file.
172         * remote.c (PACKET_qXfer_osdata): New packet enum.
173         (remote_protocol_features): Add "qXfer:osdata:read".
174         (remote_read_qxfer): Handle TARGET_OBJECT_OSDATA.
175         (extended_remote_can_run): New.
176         (init_extended_remote_ops): Set to_can_run to
177         extended_remote_can_run.
178         (_initialize_remote): Add packet config command for
179         "qXfer:osdata:read".
180         * xml-support.c (obstack_xml_printf): New function.
181         * xml-support.h (obstack_xml_printf): Declare.
182         * target.c (target_get_osdata): New function.
183         * target.h (enum target_object): Add TARGET_OBJECT_OSDATA.
184         (target_os_data): Declare.
185         * features/osdata.dtd: New file.
186         * mi/mi-main.c (mi_list_thread_groups): Handle the --available
187         option.
188
189 2008-12-01  Doug Evans  <dje@google.com>
190
191         * infrun.c (proceed): Delete unused local stop_signal.
192
193 2008-11-27  Tristan Gingold  <gingold@adacore.com>
194
195         * NEWS: Add entry for new native configuration: Darwin.
196         * configure.host: Add Darwin host.
197         * configure.tgt: Add Darwin target.
198         * defs.h (enum gdb_osabi): Add GDB_OSABI_DARWIN.
199         * osabi.c (gdb_osabi_names): Add name for Darwin abi.
200         * i386-darwin-nat.c: New file.
201         * i386-darwin-tdep.c: New file.
202         * machoread.c: New file.
203         * darwin-nat-info.c: New file.
204         * darwin-nat.c: New file.
205         * darwin-nat.h: New file.
206         * darwin.defs: New file.
207         * config/i386/darwin.mh: New file.
208
209 2008-11-26  Tristan Gingold  <gingold@adacore.com>
210
211         * MAINTAINERS: Add myself for write after approval privileges.
212
213 2008-11-26  Jerome Guitton  <guitton@adacore.com>
214
215         * value.h (allocate_value_lazy): New function declaration.
216         (value_free): Remove macro, make it a function.
217         * value.c (value): Move actual content outside of the memory space
218         of the struct; add a pointer to this actual content.
219         (allocate_value_lazy, allocate_value_contents): New function.
220         (allocate_value): Reimplement using these two new functions.
221         (value_contents_raw, value_contents_all_raw): If no memory
222         has been allocated yet for the actual content, allocate it.
223         (value_contents_all): Resync with struct value's changes.
224         (value_free): New function.
225         (value_copy, value_primitive_field): Use new function
226         allocate_value_lazy to allocate lazy values.
227         (value_change_enclosing_type): Resync with struct value's changes.
228         As the value is not reallocated, remove the special handling for
229         the value chain (now obsolete).
230         * valops.c (value_at_lazy): Use new function allocate_value_lazy.
231         (value_fetch_lazy): Allocate value content. Use allocate_value_lazy
232         to allocate lazy values.
233         (value_slice): Use allocate_value_lazy to allocate lazy values.
234
235 2008-11-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
236
237         Fix automatic restoration of breakpoints memory for ia64.
238         * ia64-tdep.c: New #if check on BREAKPOINT_MAX vs. BUNDLE_LEN.  
239         (ia64_memory_insert_breakpoint): New comment part for SHADOW_CONTENTS
240         content.  Remove variable instr.  New variable cleanup.  Disable
241         automatic breakpoints restoration.  PLACED_SIZE and SHADOW_LEN are now
242         set larger, to BUNDLE_LEN - 2.  Variable `bundle' type update.  Return
243         error if even just final target_write_memory has failed.
244         (ia64_memory_remove_breakpoint): Rename variables bundle to bundle_mem
245         and instr to instr_saved.  New variables bundle_saved and
246         instr_breakpoint.  Comment new reasons why we need to disable automatic
247         restoration of breakpoints.  Assert PLACED_SIZE and SHADOW_LEN.  New
248         check of the original memory content.  Return error if even just final
249         target_write_memory has failed.
250         (ia64_breakpoint_from_pc): Implement the emulation of permanent
251         breakpoints compatible with current bp_loc_is_permanent.
252         (template_encoding_table): Make it `const'.
253         * breakpoint.c (bp_loc_is_permanent): Support unsupported software
254         breakpoints.  New variables `cleanup' and `retval'.
255
256 2008-11-24  Tom Tromey  <tromey@redhat.com>
257
258         * ada-lang.c (value_from_contents_and_address): Move...
259         * value.c: ... here.
260         * ada-lang.h (value_from_contents_and_address): Move
261         declaration...
262         * value.h: ... here.
263
264 2008-11-24  Paul Pluzhnikov  <ppluzhnikov@google.com>
265
266         * valprint.c (val_print_array_elements): Pass correct
267         element address to val_print.
268         
269 2008-11-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
270
271         Fix access of an already freed memory.
272         * parse.c (parse_field_expression): Call xstrdup on `*name'.
273         * completer.c (expression_completer): Free fieldname.
274
275 2008-11-24  Daniel Jacobowitz  <dan@codesourcery.com>
276
277         PR gdb/2474
278         * remote.c (remote_read_description_p): New function.
279         (remote_start_remote): Try to fetch the target description
280         before adding shared libraries.  Try again later if the
281         target is running but stopped.
282         (remote_open_1): Mark extended targets as exited by default.
283         (remote_read_description): Check target_has_execution.
284
285 2008-11-24  Jerome Guitton  <guitton@adacore.com>
286
287         * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Use
288         the frame address in block instead of the return address to
289         locate the mdebug PDR of the frame.
290
291 2008-11-21  Joel Brobecker  <brobecker@adacore.com>
292
293         Remove the unused BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
294
295         * breakpoint.h (enum bpstat_what_main_action): Remove
296         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
297         * breakpoint.c (bpstat_what): Delete catch_shlib_event from enum class.
298         Remove the BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK column from
299         variable table.
300         * infrun.c (wait_for_inferior): Remove handling of
301         BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
302
303 2008-11-21  Tom Tromey  <tromey@redhat.com>
304
305         * configure: Rebuild.
306         * configure.ac: Merge calls to AC_CHECK_FUNCS, AC_CHECK_HEADERS,
307         AC_CHECK_DECLS, and AC_CHECK_MEMBERS.
308
309 2008-11-21  Tom Tromey  <tromey@redhat.com>
310
311         * python/python-internal.h (PyGILState_Ensure): New define.
312         (PyGILState_Release): Likewise.
313         (PyEval_InitThreads): Likewise.
314         (PyThreadState_Swap): Likewise.
315         (PyEval_InitThreads): Likewise.
316         * python/python.c (_initialize_python): Initialize threads.
317         Release GIL.
318         (eval_python_from_control_command): Acquire GIL.
319         (python_command): Likewise.
320         * python/python-internal.h (make_cleanup_py_restore_gil):
321         Declare.
322         * python/python-utils.c (py_gil_restore): New function.
323         (make_cleanup_py_restore_gil): Likewise.
324
325 2008-11-20  Doug Evans  <dje@google.com>
326
327         * frame.c (frame_debug_got_null_frame): Remove file arg.
328         All callers updated.
329
330 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
331
332         * infrun.c (resume): If following a fork, also reset regcache,
333         gdbarch and pc.
334
335 2008-11-20  Doug Evans  <dje@google.com>
336
337         * printcmd.c (sym_info): Don't print the offset if it's zero.
338
339 2008-11-20  Pedro Alves  <pedro@codesourcery.com>
340
341         * infrun.c (resume): If following a fork, reread the current
342         thread.  Avoid dereferencing a possibly dangling pointer.
343
344 2008-11-19  Doug Evans  <dje@google.com>
345
346         * inferior.h (proceed_to_finish): Delete, unused.
347         (stop_registers): Tweak comment.
348         * infrun.c (stop_registers): Tweak comment.
349
350 2008-11-19  Kevin Buettner  <kevinb@redhat.com>
351
352         * frv-tdep.c (frv_skip_main_prologue): New function.
353         (frv_gdbarch_init): Register frv_skip_main_prologue.
354         * solib-frv.c (fetch_loadmap): Return early when no segments are
355         found.
356         (frv_relocate_main_executable): Return early when both interpreter
357         and executable loadmap addresses are zero.
358
359 2008-11-19  Bob Wilson  <bob.wilson@acm.org>
360         
361         * xtensa-config.c (rmap): Remove entries for ar32 through ar63.  Add
362         threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7,
363         excsave5, excsave6, excsave7, cpenable, and vecbase registers.
364         (xtensa_submask0, xtensa_submask1, xtensa_submask2)
365         (xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6)
366         (xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10)
367         (xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14)
368         (xtensa_submask15): Adjust register numbers.
369         * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
370         (xtensa_regmap_table): Add entry for scompare1.
371         * regformats/reg-xtensa.dat: Remove ar32 through ar63.  Add threadptr
372         and scompare1.
373         
374 2008-11-19  Pedro Alves  <pedro@codesourcery.com>
375
376         * remote.c (escape_buffer): New.
377         (putpkt_binary, read_frame, getpkt_or_notif_sane_1): Use it.  Make
378         sure debug output printing a packet buffer goes through a single
379         fprintf_unfiltered call.
380         * utils.c (vfprintf_unfiltered): If outputting timestamps, end
381         output with a newline if it wasn't going to already.
382
383 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
384
385         * maint.c (maintenance_translate_address): Fix a buglet.
386         
387 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
388
389         * features/Makefile (rs6000/powerpc-isa205-32l-expedite,
390         rs6000/powerpc-isa205-altivec32l-expedite,
391         powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite,
392         rs6000/powerpc-isa205-altivec64l-expedite,
393         powerpc-isa205-vsx64l-expedite): New variables.
394         * regformats/rs6000/powerpc-isa205-32l.dat: Generate.
395         * regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate.
396         * regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate.
397         * regformats/rs6000/powerpc-isa205-64l.dat: Generate.
398         * regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate.
399         * regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate.
400
401 2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
402
403         * ppc-linux-nat.c (ppc_register_u_addr): Add special case to return
404         offset for full 64-bit slot of FPSCR when in 32-bits.
405         (ppc_linux_read_description): Return target description with 64-bit
406         FPSCR when inferior is running on an ISA 2.05 or later processor.
407         * ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Call
408         initialize_tdec_powerpc_isa205_32l,
409         initialize_tdec_powerpc_isa205_altivec32l,
410         initialize_tdec_powerpc_isa205_vsx32l,
411         initialize_tdec_powerpc_isa205_64l,
412         initialize_tdec_powerpc_isa205_altivec64l and
413         initialize_tdec_powerpc_isa205_vsx64l.
414         * ppc-linux-tdep.h: Add external declaration for
415         tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l,
416         tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_64l,
417         tdesc_powerpc_isa205_altivec64l and tdesc_powerpc_isa205_vsx64l.
418         * features/rs600/powerpc-fpu-isa205.xml: New file.
419         * features/rs600/powerpc-isa205-32l.xml: New file.
420         * features/rs600/powerpc-isa205-64l.xml: New file.
421         * features/rs600/powerpc-isa205-altivec32l.xml: New file.
422         * features/rs600/powerpc-isa205-altivec64l.xml: New file.
423         * features/rs600/powerpc-isa205-vsx32l.xml: New file.
424         * features/rs600/powerpc-isa205-vsx64l.xml: New file.
425         * features/rs600/powerpc-isa205-32l.c: Generate.
426         * features/rs600/powerpc-isa205-64l.c: Generate.
427         * features/rs600/powerpc-isa205-altivec32l.c: Generate.
428         * features/rs600/powerpc-isa205-altivec64l.c: Generate.
429         * features/rs600/powerpc-isa205-vsx32l.c: Generate.
430         * features/rs600/powerpc-isa205-vsx64l.c: Generate.
431
432 2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
433
434         * objfiles.h: New MULTI_OBJFILE_P macro.
435         * printcmd.c (sym_info): Print object name.
436         * maint.c (maintenance_translate_address): Likewise.
437         
438 2008-11-18  Joel Brobecker  <brobecker@adacore.com>
439
440         * NEWS: Document the removal of "catch load" and "catch unload".
441
442 2008-11-17  Doug Evans  <dje@google.com>
443
444         * infcall.c (call_function_by_hand): Fix punctuation and capitalization
445         on error messages.
446
447 2008-11-17  Ulrich Weigand  <uweigand@de.ibm.com>
448
449         PR gdb/2250
450         * infrun.c (clear_proceed_status_thread): New function.
451         (clear_proceed_status_callback): New function.
452         (clear_proceed_status): In all-stop mode, clear per-thread
453         proceed status of *all* threads, not only the current.
454         (handle_inferior_event): In all-stop mode, if we're stepping
455         one thread, but got some inferior event in another thread
456         that does not cause GDB to break to the user interface,
457         ensure the interrupted stepping operation continues in the
458         original thread.
459         (currently_stepping): Move thread-related tests to ...
460         (currently_stepping_thread): ... this new function.
461         (currently_stepping_callback): New function.
462
463 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
464
465         Implement =thread-selected notification.
466
467         * mi/mi-common.h (struct mi_interp): New, moved from ...
468         * mi/mi-interp.c: ...here.
469         * mi/mi-main.c (mi_execute_command): If the thread changed
470         as result of command, report that.
471
472 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
473
474         Implement continue/interrupt of thread groups.
475
476         * mi/mi-main.c (proceed_thread_callback): New.
477         (mi_cmd_exec_continue): If --thread-group is specified, resume all
478         threads in that group.
479         (interrupt_thread_callback): New.
480         (mi_cmd_exec_interrupt): If --thread-group is specified, interrupt
481         all threads in that group.
482
483 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
484
485         Implement '-target-detach pid'.
486
487         * infcmd.c (detach_command): Make nonstatic.
488         * inferior.h (detach_command): Declare.
489         * mi/mi-cmds.c (mi_cmds): Don't route -target-detach via CLI.
490         * mi/mi-cmds.h (mi_cmd_target_detach): Declare.
491         * mi/mi-main.c (find_thread_of_process, mi_cmd_target_detach): New.
492
493 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
494
495         Include group-id in thread-created notification.
496
497         * mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include
498         group id in the output.
499
500 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
501
502         Notification for attach/detach.
503
504         * inferior.c: Call the process observers.
505         * mi/mi-interp.c (mi_new_inferior, mi_inferior_exit): New.
506         (mi_interpreter_init): Register the above.
507
508 2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>
509
510         Implement -list-thread-groups.
511
512         * thread.c (print_thread_info): New parameter pid, to print
513         threads of specific process.
514         * gdbthread.h (print_thread_info): New parameter pid.
515         * mi/mi-cmds.c (mi_cmds): Register -list-thread-groups.
516         * mi/mi-cmds.h (mi_cmd_list_thread_groups): New.
517         * mi/mi-main.c (mi_cmd_thread_info): Adjust.
518         (print_one_process, mi_cmd_list_thread_groups): New.
519
520 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
521
522         Remove some unused macros related to the old load/unload catchpoints.
523
524         * breakpoint.c (SOLIB_LOADED_LIBRARY_PATHNAME)
525         (SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_CREATE_CATCH_LOAD_HOOK)
526         (SOLIB_CREATE_CATCH_UNLOAD_HOOK): Delete. No longer used.
527
528 2008-11-16  Joel Brobecker  <brobecker@adacore.com>
529
530         Remove support for catch load and catch unload commands.
531
532         * breakpoint.h (enum bptype): Remove bp_catch_load and bp_catch_unload.
533         (struct breakpoint): Remove fields dll_pathname and
534         triggered_dll_pathname.
535         (bpstat_get_triggered_catchpoints, ep_is_shlib_catchpoint): Delete.
536         * breakpoint.c (ep_is_catchpoint): Remove handling of
537         bp_catch_load and bp_catch_unload.
538         (print_it_typical, bpstat_check_location, bpstat_what)
539         (print_one_breakpoint_location, print_one_breakpoint_location)
540         (user_settable_breakpoint, allocate_bp_location)
541         (set_raw_breakpoint_without_location, mention, delete_breakpoint,
542         (breakpoint_re_set_one, disable_command, enable_command): Likewise.
543         (ep_is_shlib_catchpoint, bpstat_get_triggered_catchpoints)
544         (catch_load_command_1, catch_unload_command_1): Delete.
545         (_initialize_breakpoint): Remove the "catch load" and "catch unload"
546         command creation.
547         * infrun.c (handle_inferior_event): Remove the handling of
548         load/unload catchpoint events.
549
550 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
551
552         From  Jerome Guitton  <guitton@adacore.com>
553         * dwarf2read.c (dwarf2_debug_line_missing_end_sequence_complaint):
554         New function.
555         (dwarf_decode_lines): Detect null file numbers. Detect the end of
556         the line program sequence when no end sequence is emitted.
557
558 2008-11-15  Joel Brobecker  <brobecker@adacore.com>
559
560         * ada-lang.c (ada_evaluate_subexp): Improve handling of integer
561         type dereferencing.
562
563 2008-11-15  Daniel Jacobowitz  <dan@codesourcery.com>
564
565         * NEWS: Mention sparc64-linux-gnu gdbserver support.
566
567 2008-11-14  Daniel Gutson  <dgutson@codesourcery.com>
568
569         * configure.tgt (sparc64-*-linux*): Added gdbserver support.
570         * regformats/reg-sparc64.dat: New file.
571
572 2008-11-14  Tom Tromey  <tromey@redhat.com>
573
574         PR mi/2549:
575         * mi/mi-main.c (get_register): Use get_formatted_print_options.
576
577 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
578
579         * printcmd.c: define PRINTF_HAS_LONG_LONG only if not yet defined.
580
581 2008-11-13  Ulrich Weigand  <uweigand@de.ibm.com>
582
583         * auxv.c (fprint_target_auxv): Handle AT_BASE_PLATFORM and
584         AT_EXECFN.  Re-sort AT_SECURE.
585
586 2008-11-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
587
588         * monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'.
589
590 2008-11-13  Joel Brobecker  <brobecker@adacore.com>
591
592         * ia64-tdep.c: Remove commented out #define.
593
594 2008-11-12  Joel Brobecker  <brobecker@adacore.com>
595
596         From Joel Sherrill  <joel.sherrill@oarcorp.com>
597         * remote-sim.c (gdbsim_mourn_inferior): Use "target" parameter
598         instead of the "gdbsim_ops" global.
599
600 2008-11-11  Doug Evans  <dje@google.com>
601
602         * infcall.c (call_function_by_hand): Handle inferior exit.
603
604 2008-11-11  Thiago Jung Bauermann  <bauerman@br.ibm.com>
605
606         * remote-sim.c (gdbsim_create_inferior, gdbsim_mourn_inferior): Add
607         missing struct target_ops argument.
608
609 2008-11-11  Joel Sherrill <joel.sherrilL@oarcorp.com>
610
611         * MAINTAINERS: Add myself for write after approval privileges.
612
613 2008-11-10  Tom Tromey  <tromey@redhat.com>
614
615         * gdbtypes.c (copy_type_recursive): Clear new fields.
616
617 2008-11-10  Tom Tromey  <tromey@redhat.com>
618
619         * cli/cli-cmds.c (source_script): Clean up full_pathname.  Run
620         cleanups on early return.
621
622 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
623
624         Kill pthread_ops_hack
625
626         * target.h (struct target_ops): Make to_attach, to_detach,
627         to_create_inferior and to_mourn_inferior accept a pointer
628         to struct target_ops.
629         (target_attach, target_create_inferior, target_create_inferior):
630         Convert from macros to function.  Find the right target to
631         invoke a method of.
632         (find_default_attach, find_default_create_inferior): New parameter
633         ops.
634         * corefile.c (core_file_command): Pass target to to_detach.
635         * corelow.c (core_detach): Add 'ops' parameter.
636         * fork-child.c (fork_inferior): Return the pid.  Allow
637         init_trace_fun to be NULL.
638         * inf-ptrace (ptrace_ops_hack): Remove.
639         (inf_ptrace_him): Remove, moving all logic into....
640         (inf_ptrace_create_inferior): ... here.  Push the target
641         passed as parameter.
642         (inf_ptrace_mourn_inferior, inf_ptrace_attach, inf_ptrace_detach):
643         Push/pop target passed as parameter, no ptrace_ops_hack.
644         (inf_ptrace_target): Don't remember result.
645         * inferior.h (fork_inferior): Adjust prototype.
646         * linux-nat.c (linux_nat_create_inferior, linux_nat_attach)
647         (linux_nat_detach, linux_nat_mourn_inferior): New parameter ops.
648         Pass it to linux_ops target.
649         * linux-thread-db.c (thread_db_detach, thread_db_mourn_inferior):
650         New parameter ops. Pass it to the target beneath.
651         * remote.c (remote_mourn, extended_remote_mourn, remote_detach)
652         (extended_remote_create_inferior): New parameter ops. Pass it
653         further.
654         * target.c (debug_to_attach, debug_to_detach)
655         (debug_to_mourn_inferior): New parameter ops.
656         (target_create_inferior): New.
657         (update_current_target): Do not inherit to_attach, to_detach,
658         to_create_inferiour, to_mourn_inferior.  Do not default
659         to_detach and to_mourn_inferior.
660         (target_detach): Find the right target to use.
661         (target_mourn_inferior): New.
662         (find_default_attach, find_default_create_inferior): New parameter
663         ops.  Pass the found target when calling its method.
664         (init_dummy_target): Provide fallback definition of to_detach.
665         (target_attach): New.
666         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
667         (debug_to_mourn_inferiour): New parameter ops.
668         * aix-thread.c: Adjust.
669         * bsd-uthread.c: Adjust.
670         * gnu-nat.c: Adjust.
671         * go32-nat.c: Adjust.
672         * hpux-thread.c: Adjust.
673         * inf-ttrace.c: Ajust.
674         * monitor.c: Adjust.
675         * nto-procfs.c: Adjust.
676         * procfs.c: Adjust.
677         * remote-m32r-sdi.c: Adjust.
678         * remote-mips.c: Adjust.
679         * remote-sim.c: Adjust.
680         * rs6000-nat.c: Adjust.
681         * sol-thread.c: Adjust.
682         * win32-nat.c: Adjust.
683         * dec-thread.c: Adjust.
684
685 2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>
686
687         * thread.c (print_thread_info): Eliminate now useless checks
688         for exited threads.
689
690 2008-11-06  Pedro Alves  <pedro@codesourcery.com>
691
692         * i386-dicos-tdep.c (i386_dicos_init_abi): Set decr_pc_after_break
693         to 0.
694
695 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
696
697         * remote.c (notice_new_inferiors): Add a new inferior only when
698         we're going to add a new thread.
699
700 2008-11-05  Pedro Alves  <pedro@codesourcery.com>
701
702         * defs.h (add_inferior_continuation)
703         (do_all_inferior_continuations)
704         (discard_all_inferior_continuations): Declare.
705         * utils.c (add_inferior_continuation)
706         (do_all_inferior_continuations)
707         (discard_all_inferior_continuations): New.
708         * inferior.h (struct inferior) <continuations>: New field.
709         * inferior.c (free_inferior): Discard all the inferior
710         continuations.
711         * inf-loop.c (inferior_event_handler): Do all current inferior
712         continuations.
713         * infcmd.c (attach_command): Register an inferior continuation
714         instead of a thread continuation.
715         * infrun.c (handle_inferior_event): If stop_soon is
716         STOP_QUIETLY_NO_SIGSTOP, also expect a TARGET_SIGNAL_0.
717
718 2008-11-04  Pedro Alves  <pedro@codesourcery.com>
719
720         * inf-loop.c (inferior_event_handler): On INF_ERROR and
721         INF_REG_EVENT throwing, don't call target_async or pop_target.
722         Call pop_all_targets_above.
723         * remote.c (remote_close): Call remote_terminal_ours.  Don't call
724         signal or target_async.
725
726 2008-11-04  Daniel Jacobowitz  <dan@codesourcery.com>
727
728         * eval.c (evaluate_subexp_standard): Assert that there is at
729         least one array dimension.
730
731 2008-11-03  Vladimir Prus  <vladimir@codesourcery.com>
732
733         Make attach_command exception-safe
734         * infcmd.c (attach_command): Call async_enable_stdin
735         if exception is thrown.
736
737 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
738
739         * gdbarch.sh (has_global_solist): Mention global breakpoints.
740         * gdbarch.h: Regenerate.
741
742 2008-11-03  Pedro Alves  <pedro@codesourcery.com>
743
744         * remote.c (remote_start_remote): If the solib list is global,
745         fetch libraries and insert breakpoints after connecting.
746         * infcmd.c (post_create_inferior): If the solist is shared between
747         inferiors, no need to refetch it on every new inferior.
748         (detach_command): If the shared library list is shared between
749         inferiors, then don't clear it on every inferior detach.
750         * gdbarch.sh (has_global_solist): New.
751         * i386-dicos-tdep.c (i386_dicos_init_abi): Set
752         gdbarch_has_global_solist.
753         * target.c (target_pre_inferior): If the shared library list is
754         shared between inferiors, then don't clear it here, neither
755         invalidate the memory regions or clear the target description.
756         (target_detach): If the shared library list is shared between
757         inferiors, then don't remove breakpoints from the target here.
758         (target_disconnect): Comment.
759         * solib.c (update_solib_list): Check for null_ptid.
760         * breakpoint.c (insert_breakpoints, update_global_location_list):
761         If the shared library list is shared between inferiors, insert
762         breakpoints even if there's no execution.
763         (breakpoint_init_inferior): If the shared library list is shared
764         between inferiors, don't delete breakpoints or mark them
765         uninserted here.
766
767         * gdbarch.c, gdbarch.h: Regenerate.
768
769 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
770
771         * inferior.h (inferior_ignoring_leading_exec_events): Delete
772         declaration.
773
774 2008-10-31  Pedro Alves  <pedro@codesourcery.com>
775
776         * inferior.h (write_inferior_status_register): Delete.
777         * infrun.c (write_inferior_status_register): Delete.
778
779 2008-10-30  Tom Tromey  <tromey@redhat.com>
780
781         * value.c (coerce_array): Use check_typedef.
782
783 2008-10-30  Tom Tromey  <tromey@redhat.com>
784
785         * cli/cli-logging.c (handle_redirections): Make a cleanup.
786         * reggroups.c (maintenance_print_reggroups): Make a cleanup.
787         * regcache.c (regcache_print): Make a cleanup.
788         * maint.c (maintenance_print_architecture): Make a cleanup.
789         * dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.
790
791 2008-10-30  Tom Tromey  <tromey@redhat.com>
792
793         * utils.c (make_cleanup_close): Use make_cleanup_dtor.
794         (do_close_cleanup): Don't free 'fd'.
795
796 2008-10-30  Tom Tromey  <tromey@redhat.com>
797
798         * source.c (symtab_to_fullname): Test 'r >= 0'.
799         (psymtab_to_fullname): Likewise.
800         (get_filename_and_charpos): Make a cleanup.
801         (forward_search_command): Likewise.
802         (reverse_search_command): Likewise.
803         * exec.c (exec_file_attach): Close scratch_chan on failure.
804         * nto-procfs.c (procfs_open): Make a cleanup.
805         (procfs_pidlist): Likewise.
806         (do_closedir_cleanup): New function.
807
808 2008-10-30  Andreas Schwab  <schwab@suse.de>
809
810         * infcmd.c (construct_inferior_arguments): Handle newlines
811         specially.
812
813 2008-10-30  Joel Brobecker  <brobecker@adacore.com>
814
815         * breakpoint.h (enum bptype): Delete bp_catch_exec.
816         * breakpoint.c (insert_catchpoint): Remove handling for
817         bp_catch_exec breakpoint kinds.
818         (insert_bp_location, update_breakpoints_after_exec, remove_breakpoint)
819         (ep_is_catchpoint, print_it_typical, bpstat_check_location),
820         (bpstat_check_location, bpstat_what, print_one_breakpoint_location)
821         (print_one_breakpoint_location, user_settable_breakpoint)
822         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
823         (allocate_bp_location, mention, breakpoint_re_set_one)
824         (disable_command, enable_command): Likewise.
825         (create_exec_event_catchpoint): Delete.
826         (insert_catch_exec, remove_catch_exec, breakpoint_hit_catch_exec)
827         (print_it_catch_exec, print_one_catch_exec, print_mention_catch_exec):
828         New functions.
829         (catch_exec_breakpoint_ops): New static global.
830         (catch_exec_command_1): Use create_catchpoint instead of
831         create_exec_event_catchpoint to create the exec catchpoint.
832
833 2008-10-28  Tom Tromey  <tromey@redhat.com>
834
835         * Makefile.in (SUBDIR_CLI_OBS): Don't mention cli-utils.o.
836         (SUBDIR_CLI_DEPS): Don't mention cli-utils.c.
837         (HFILES_NO_SRCDIR): Don't mention cli-utils.h.
838         (cli-utils.o): Remove.
839         * cli/cli-utils.c: Remove.
840         * cli/cli-utils.h: Remove.
841
842 2008-10-28  Tom Tromey  <tromey@redhat.com>
843
844         * varobj.c (value_get_print_value): Include valprint.h.
845         (value_get_print_value): Use get_formatted_print_options.
846         * value.h (struct value_print_options): Declare.
847         (value_print, val_print, common_val_print, val_print_string):
848         Update.
849         * value.c: Include valprint.h.
850         (show_values): Use get_user_print_options.
851         (show_convenience): Likewise.
852         * valprint.h (prettyprint_arrays, prettyprint_structs): Don't
853         declare.
854         (struct value_print_options): New type.
855         (vtblprint, unionprint, addressprint, objectprint, print_max,
856         inspect_it, repeat_count_threshold, output_format,
857         stop_print_at_null): Don't declare.
858         (user_print_options, get_user_print_options,
859         get_raw_print_options, get_formatted_print_options): Declare.
860         (print_array_indexes_p): Don't declare.
861         (maybe_print_array_index, val_print_array_elements): Update.
862         * valprint.c (print_max): Remove.
863         (user_print_options): New global.
864         (get_user_print_options, get_raw_print_options,
865         get_formatted_print_options): New functions.
866         (print_array_indexes, repeat_count_threshold, stop_print_at_null,
867         prettyprint_structs, prettyprint_arrays, unionprint,
868         addressprint): Remove.
869         (val_print): Remove format, deref_ref, pretty arguments; add
870         options.  Update.
871         (common_val_print): Likewise.
872         (print_array_indexes_p): Remove.
873         (maybe_print_array_index): Remove format, pretty arguments; add
874         options.  Update.
875         (val_print_array_elements): Remove format, deref_ref, pretty
876         arguments; add options.  Update.
877         (val_print_string): Add options argument.  Update.
878         (_initialize_valprint): Use user_print_options.
879         (output_format): Remove.
880         (set_output_radix_1): Use user_print_options.
881         * typeprint.c: Include valprint.h.
882         (objectprint): Don't declare.
883         (whatis_exp): Use get_user_print_options.
884         * tui/tui-regs.c: Include valprint.h.
885         (tui_register_format): Use get_formatted_print_options.
886         * tracepoint.c: Include valprint.h.
887         (addressprint): Don't declare.
888         (trace_mention): Use get_user_print_options.
889         (tracepoints_info): Likewise.
890         * stack.c (print_frame_args): Use get_raw_print_options.
891         (print_frame_info): Use get_user_print_options.
892         (print_frame): Likewise.
893         * sh64-tdep.c: Include valprint.h
894         (sh64_do_register): Use get_formatted_print_options.
895         * scm-valprint.c (scm_inferior_print): Remove format, deref_ref,
896         pretty arguments; add options.
897         (scm_scmlist_print): Likewise.  Update.
898         (scm_scmval_print): Likewise.
899         (scm_val_print): Likewise.
900         (scm_value_print): Remove format, pretty arguments; add options.
901         Update.
902         * scm-lang.h (scm_value_print, scm_val_print, scm_scmval_print):
903         Update.
904         * scm-lang.c (scm_printstr): Add options argument.
905         * python/python-value.c: Include valprint.h.
906         (valpy_str): Use get_user_print_options.
907         * printcmd.c: Include valprint.h.
908         (addressprint): Don't declare.
909         (inspect_it): Remove.
910         (print_formatted): Remove format option; add options.  Update.
911         (print_scalar_formatted): Likewise.
912         (print_address_demangle): Use get_user_print_options.
913         (do_examine): Use get_formatted_print_options.
914         (print_command_1): Likewise.
915         (output_command): Use get_formatted_print_options.
916         (do_one_display): Likewise.
917         (print_variable_value): Use get_user_print_options.
918         * p-valprint.c (pascal_val_print): Remove format, deref_ref,
919         pretty arguments; add options.  Update.
920         (pascal_value_print): Remove format, pretty arguments; add
921         options.  Update.
922         (vtblprint, objectprint): Don't declare.
923         (pascal_static_field_print): Remove.
924         (pascal_object_print_value_fields): Remove format, pretty
925         arguments; add options.  Update.
926         (pascal_object_print_static_field): Likewise.
927         (_initialize_pascal_valprint): Use user_print_options.  Update.
928         * p-lang.h (pascal_val_print, pascal_value_print,
929         pascal_printstr, pascal_object_print_value_fields): Update.
930         (vtblprint, static_field_print): Don't declare.
931         * p-lang.c (pascal_printstr): Add options argument.  Update.
932         * objc-lang.c (objc_printstr): Add options argument.  Update.
933         * mt-tdep.c: Include valprint.h.
934         (mt_registers_info): Use get_raw_print_options.
935         * mips-tdep.c: Include valprint.h.
936         (mips_print_fp_register): Use get_formatted_print_options.
937         (mips_print_register): Likewise.
938         * mi/mi-main.c: Include valprint.h.
939         (get_register): Use get_user_print_options.
940         (mi_cmd_data_evaluate_expression): Likewise.
941         (mi_cmd_data_read_memory): Use get_formatted_print_options.
942         * mi/mi-cmd-stack.c: Include valprint.h.
943         (list_args_or_locals): Use get_raw_print_options.
944         * m2-valprint.c (print_function_pointer_address): Add addressprint
945         argument.
946         (m2_print_long_set): Remove format, pretty arguments.
947         (m2_print_unbounded_array): Remove format, deref_ref, pretty
948         arguments; add options.  Update.
949         (print_unpacked_pointer): Remove format argument; add options.
950         Now static.  Update.
951         (print_variable_at_address): Remove format, deref_ref, pretty
952         arguments; add options.  Update.
953         (m2_print_array_contents): Likewise.
954         (m2_val_print): Likewise.
955         * m2-lang.h (m2_val_print): Update.
956         * m2-lang.c (m2_printstr): Add options argument. Update.
957         * language.h (struct value_print_options): Declare.
958         (struct language_defn) <la_printstr>: Add options argument.
959         <la_val_print>: Remove format, deref_ref, pretty argument; add
960         options.
961         <la_value_print>: Remove format, pretty arguments; add options.
962         <la_print_array_index>: Likewise.
963         (LA_VAL_PRINT, LA_VALUE_PRINT, LA_PRINT_STRING,
964         LA_PRINT_ARRAY_INDEX): Update.
965         (default_print_array_index): Update.
966         * language.c (default_print_array_index): Remove format, pretty
967         arguments; add options.  Update.
968         (unk_lang_printstr): Add options argument.
969         (unk_lang_val_print): Remove format, deref_ref, pretty arguments;
970         add options.
971         (unk_lang_value_print): Remove format, pretty arguments; add
972         options.
973         * jv-valprint.c (java_value_print): Remove format, pretty
974         arguments; add options.  Update.
975         (java_print_value_fields): Likewise.
976         (java_val_print): Remove format, deref_ref, pretty arguments; add
977         options.  Update.
978         * jv-lang.h (java_val_print, java_value_print): Declare.
979         * infcmd.c: Include valprint.h.
980         (print_return_value): Use get_raw_print_options.
981         (default_print_registers_info): Use get_user_print_options,
982         get_formatted_print_options.
983         (registers_info): Use get_formatted_print_options.
984         * gdbtypes.h (struct value_print_options): Declare.
985         (print_scalar_formatted): Update.
986         * f-valprint.c (f77_print_array_1): Remove format, deref_ref,
987         pretty arguments; add options.  Update.
988         (f77_print_array): Likewise.
989         (f_val_print): Likewise.
990         * f-lang.h (f_val_print): Update.
991         * f-lang.c (f_printstr): Add options argument.  Update.
992         (c_value_print): Update declaration.
993         * expprint.c: Include valprint.h.
994         (print_subexp_standard): Use get_raw_print_options,
995         get_user_print_options.
996         * eval.c: Include valprint.h.
997         (objectprint): Don't declare.
998         (evaluate_subexp_standard): Use get_user_print_options.
999         * cp-valprint.c (vtblprint, objectprint, static_field_print):
1000         Remove.
1001         (cp_print_value_fields): Remove format, pretty arguments; add
1002         options.  Update.
1003         (cp_print_value): Likewise.
1004         (cp_print_static_field): Likewise.
1005         (_initialize_cp_valprint): Use user_print_options.  Update.
1006         * c-valprint.c (print_function_pointer_address): Add addressprint
1007         argument.
1008         (c_val_print): Remove format, deref_ref, pretty arguments; add
1009         options.  Update.
1010         (c_value_print): Add options argument.  Update.
1011         * c-lang.h (c_val_print, c_value_print, c_printstr): Update.
1012         (vtblprint, static_field_print): Don't declare.
1013         (cp_print_value_fields): Update.
1014         * c-lang.c (c_printstr): Add options argument.  Update.
1015         * breakpoint.c: Include valprint.h.
1016         (addressprint): Don't declare.
1017         (watchpoint_value_print): Use get_user_print_options.
1018         (print_one_breakpoint_location): Likewise.
1019         (breakpoint_1, print_it_catch_fork, print_it_catch_vfork, mention,
1020         print_exception_catchpoint): Likewise.
1021         * auxv.c (fprint_target_auxv): Don't declare addressprint.  Use
1022         get_user_print_options.
1023         * ada-valprint.c (struct ada_val_print_args): Remove format,
1024         deref_ref, and pretty; add options.
1025         (print_optional_low_bound): Add options argument.
1026         (val_print_packed_array_elements): Remove format and pretty
1027         arguments; add options.  Update.
1028         (printstr): Add options argument.  Update.
1029         (ada_printstr): Likewise.
1030         (ada_val_print): Remove format, deref_ref, pretty arguments; add
1031         options argument.  Update.
1032         (ada_val_print_stub): Update.
1033         (ada_val_print_array): Remove format, deref_ref, pretty arguments;
1034         add options.  Update.
1035         (ada_val_print_1): Likewise.
1036         (print_variant_part): Likewise.
1037         (ada_value_print): Remove format, pretty arguments; add options.
1038         Update.
1039         (print_record): Likewise.
1040         (print_field_values): Likewise.
1041         * ada-lang.h (ada_val_print, ada_value_print, ada_printstr):
1042         Update.
1043         * ada-lang.c (ada_print_array_index): Add options argument; remove
1044         format and pretty arguments.
1045         (print_one_exception): Use get_user_print_options.
1046
1047 2008-10-28  Tom Tromey  <tromey@redhat.com>
1048
1049         * cli/cli-script.c (do_fclose_cleanup): Remove.
1050         (script_from_file): Use make_cleanup_fclose.
1051         * xml-tdesc.c (do_cleanup_fclose): Remove.
1052         (fetch_xml_from_file): Use make_cleanup_fclose.
1053         * tracepoint.c (tracepoint_save_command): Use
1054         make_cleanup_fclose.  Always free pathname.
1055         * source.c (print_source_lines_base): Use make_cleanup_fclose.
1056         * remote.c (fclose_cleanup): Remove.
1057         (remote_file_put): Use make_cleanup_fclose.
1058         (remote_file_get): Likewise.
1059         * linux-nat.c (linux_nat_find_memory_regions): Use
1060         make_cleanup_fclose.
1061         (linux_nat_info_proc_cmd): Likewise.
1062         (linux_proc_pending_signals): Likewise.
1063         * fbsd-nat.c (fbsd_find_memory_regions): Use make_cleanup_fclose.
1064         Free file name.
1065         * cli/cli-dump.c (do_fclose_cleanup): Remove.
1066         (make_cleanup_fclose): Remove.
1067         * defs.h (make_cleanup_fclose): Declare.
1068         * utils.c (do_fclose_cleanup): New function.
1069         (make_cleanup_fclose): Likewise.
1070
1071 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1072
1073         * inflow.c (kill_command): If the target claims there is still
1074         execution, don't clear the thread list.
1075
1076 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1077
1078         * cp-name-parser.y: Include defs.h instead of config.h.
1079         (parse_escape): Rename to ...
1080         (cp_parse_escape): ... this.
1081         (yylex): Update.
1082         (xfree) [TEST_CPNAMES]: New.
1083
1084 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1085
1086         * CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
1087         2.13 and configure.in.
1088
1089 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1090
1091         * target.h (struct target_ops) <to_supports_multi_process>: New
1092         field.
1093         (target_supports_multi_process): New define.
1094         * target.c (update_current_target): Inherit and de_fault
1095         to_supports_multi_process.
1096         * infcmd.c (attach_command): Allow attaching to multiple processes
1097         if the target supports it.
1098         (detach_command): If the target claims there is still execution,
1099         don't clear the thread list.
1100         * remote.c (remote_supports_multi_process): New.
1101         (init_remote_ops): Register remote_supports_multi_process.
1102
1103 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1104
1105         * Makefile.in (.y.c, .l.c): sed free to xfree.
1106
1107 2008-10-27  Pedro Alves  <pedro@codesourcery.com>
1108
1109         * Makefile.in (INSTALLED_LIBS, CLIBS): Remove reference to
1110         $(TM_CLIBS).
1111         (CDEPS): Remove reference to $(TM_CDEPS).
1112
1113 2008-10-26  Michael Snyder  <msnyder@vmware.com>
1114
1115         * infrun.c (handle_inferior_event): Handle dynamic symbol
1116         resolution in reverse.
1117
1118 2008-10-25  Joel Brobecker  <brobecker@adacore.com>
1119
1120         * infrun.c: Minor comment reformatting.
1121
1122 2008-10-25  Pedro Alves  <pedro@codesourcery.com>
1123
1124         * ada-exp.y (write_object_renaming): Use malloc instead of
1125         xmalloc.
1126         * p-exp.y (pop_current_type): Use free instead of xfree.
1127
1128 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1129
1130         * fork-child.c (startup_inferior): Only set threads not-executing
1131         after getting all the pending execs.  On TARGET_WAITKIND_IGNORE,
1132         keep waiting, don't resume.  On all other cases but
1133         TARGET_WAITKIND_SIGNALLED and TARGET_WAITKIND_EXITED, switch to
1134         the event ptid.
1135
1136 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1137
1138         Remote non-stop mode support.
1139
1140         * remote.c (pending_stop_reply): New.
1141         (struct remote_state) <non_stop_aware, support_vCont_t>: New
1142         fields.
1143         (remote_async_inferior_event_token)
1144         (remote_async_get_pending_events_token): New.
1145         (notice_new_inferiors): New, abstracted out from record_currthread.
1146         (record_currthread): Call it.
1147         (remote_threads_info): Default threads to running in non-stop
1148         mode.  In non-stop mode, only qfThreadInfo is supported.
1149         (remote_close): Discard all pending stop_replies.  Close the event
1150         sources.
1151         (set_stop_requested_callback): New.
1152         (remote_start_remote): Implement non-stop mode startup.  In
1153         all-stop, don't clear the thread list here.
1154         (remote_non_stop_feature): New.
1155         (remote_protocol_features): Add a "QNonStop" feature.
1156         (remote_open_1): Clear cached_wait_status and non_stop_aware.
1157         Clear the thread list here.
1158         (remote_detach_1): Discard pending stop replies of the process we
1159         detached from.
1160         (extended_remote_attach_1): Implement non-stop mode.
1161         (remote_vcont_probe): Recognize `vCont;t'.
1162         (remote_vcont_resume): Implement non-stop mode.
1163         (remote_resume): Don't set waiting_for_stop_reply in non-stop
1164         mode.
1165         (remote_stop_ns): New.
1166         (remote_stop): Rename to ...
1167         (remote_stop_as): ... this.  If we have a cached wait status,
1168         don't bother interrupting the remote.
1169         (remote_stop): Reimplement as wrapper around remote_stop_as and
1170         remote_stop_ns.
1171         (interrupt_query): Don't query in async mode.
1172         (struct cached_reg, cahed_reg_t): New.
1173         (struct stop_reply): New.
1174         (stop_reply_queue): New.
1175         (stop_reply_xmalloc, stop_reply_xfree)
1176         (discard_pending_stop_replies, do_stop_reply_xfree)
1177         (queued_stop_reply, push_stop_reply, peek_stop_reply)
1178         (remote_parse_stop_reply, remote_get_pending_stop_replies)
1179         (process_stop_reply): New.
1180         (remote_wait_ns): New.
1181         (remote_wait_as): Use remote_parse_stop_reply.  Invalidate the
1182         notion of current general thread is a process exit was reported.
1183         (remote_wait): Call remote_wait_ns in non-stop mode.
1184         (handle_notification): New.
1185         (putpkt_binary): Handle notifications.  Don't care for
1186         waiting_for_stop_reply in non-stop mode.
1187         (getpkt_sane): Rename to ...
1188         (getpkt_or_notif_sane_1): ... this.  Add `expecting_notif'
1189         argument.  Handle it.  Handle notifications.
1190         (getpkt_sane): Reimplement as wrapper around getpkt_or_notif_sane_1.
1191         (getpkt_or_notif_sane): New.
1192         (select_new_thread_callback): Check for exited state instead of
1193         comparing the ptid against minus_one_ptid.
1194         (extended_remote_create_inferior_1): Query the remote about the
1195         current thread.
1196         (remote_supports_non_stop): New.
1197         (init_remote_ops): Register it.
1198         (remote_async_inferior_event_handler): New.
1199         (remote_async_get_pending_events_handler): New.
1200
1201         * infcmd.c (proceed_thread_callback): Comment.
1202         (proceed_after_attach_callback, proceed_after_attach): New.
1203         (attach_command_post_wait): In background attach, resume all
1204         threads, but only if they are unsignalled, and not explicitly
1205         stopped.  In foreground attach, in non-stop mode, make sure to
1206         stop all threads of the just attached to process.
1207         (attach_command): In non-stop mode: If doing a background attach,
1208         stop at least one thread.  If a foreground attach, stop all
1209         threads.
1210
1211 2008-10-24  Pedro Alves  <pedro@codesourcery.com>
1212
1213         * event-loop.h: Mention async_event_handlers.
1214         (async_event_handler): Forward declare.
1215         (async_event_handler_func): New typedef.
1216         (create_async_event_handler, delete_async_event_handler)
1217         (mark_async_event_handler): Declare.
1218         * event-loop.c (event_data): New.
1219         (event_handler_func): Take an event_data instead of an integer.
1220         (struct gdb_event): Replace the integer file descriptor by a
1221         generic event_data.
1222         (async_event_handler): New.
1223         (async_handler_ready): Delete.
1224         (async_event_handler_list): New.
1225         (create_event): New.
1226         (create_file_event): Use it.
1227         (process_event): Adjust.
1228         (gdb_do_one_event): Poll from the event sources in round-robin
1229         fashion across calls.  Be sure to consult all sources before
1230         blocking.
1231         (handle_file_event): Take an event_data instead of an integer.
1232         Adjust.
1233         (gdb_wait_for_event): Add `block' argument.  Handle it.
1234         (mark_async_signal_handler): Remove unneeded cast.
1235         (invoke_async_signal_handler): Rename to ...
1236         (invoke_async_signal_handlres): ... this.  Return true if any was
1237         handled.
1238         (check_async_ready): Delete
1239         (create_async_event_handler): New.
1240         (mark_async_event_handler): New.
1241         (struct async_event_handler_data): New.
1242         (invoke_async_event_handler): New.
1243         (check_async_event_handlers): New.
1244         (delete_async_event_handler): New.
1245         (handle_timer_event): Adjust.
1246
1247 2008-10-24  Doug Evans  <dje@google.com>
1248
1249         * dwarf2read.c (typename_concat): Don't segv if prefix or suffix
1250         is NULL.  Simplify obs == NULL case.
1251
1252 2008-10-24  Hui Zhu  <teawater@gmail.com>
1253             Pedro Alves  <pedro@codesourcery.com>
1254
1255         * infrun.c (can_use_displaced_stepping): Change type to
1256         const char pointer.
1257         (can_use_displaced_stepping_auto): New string.
1258         (can_use_displaced_stepping_on): New string.
1259         (can_use_displaced_stepping_off): New string.
1260         (can_use_displaced_stepping_enum): New array.
1261         (show_can_use_displaced_stepping): In auto mode, also show
1262         the current effect of the option.
1263         (use_displaced_stepping): Return non-zero if displaced
1264         stepping is auto, and can be used with GDBARCH, and in
1265         non-stop mode.  Return non-zero if displaced stepping is on,
1266         and can be used with GDBARCH.  Return zero otherwise.
1267         (_initialize_infrun): Make the "set displaced-stepping"
1268         command an enum command.  Change its class to class_run.
1269         Place it in the top level set list.  Extend help to describe
1270         the auto mode.
1271
1272 2008-10-23  Pedro Alves  <pedro@codesourcery.com>
1273
1274         * defs.h: Mention ptid_is_pid.
1275         * inferior.h (ptid_is_pid): Declare.
1276         * gdbthread.h (struct thread_info) <stop_requested>: New field.
1277         (set_stop_requested): Declare.
1278         * infcmd.c (interrupt_target_1): Call set_stop_requested.
1279         * infrun.c (clear_proceed_status): Clear stop_requested.
1280         (infrun_thread_stop_requested_callback,
1281         infrun_thread_stop_requested): New.
1282         (handle_inferior_event): If a TARGET_SIGNAL_TRAP is reported on a
1283         thread that had an explicit stop request, pretend we got a
1284         TARGET_SIGNAL_0.  Always stop if the thread had an explicit stop
1285         request.
1286         (print_stop_reason): In the SIGNAL_RECEIVED case, if we're not
1287         outputting to MI, and we got a TARGET_SIGNAL_0, print "# Stopped",
1288         instead of mentioning signal 0.
1289         (ptid_is_pid): New.
1290         * thread.c (set_stop_requested): New.
1291
1292         * linux-nat.c (queued_waitpid): Rename to ...
1293         (queued_waitpid_1): ... this.  Add `peek' argument.  Handle it.
1294         (queued_waitpid): New, as wrapper to queued_waitpid_1.
1295         (push_waitpid): Push the SIGTRAP to the local event queue, to the
1296         kernel's.
1297         (send_sigint_callback): Delete.
1298         (linux_nat_stop_lwp): New.
1299         (linux_nat_stop): Use it.
1300
1301 2008-10-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
1302
1303         * python/python-value (valpy_getitem): Fix heap corruption.
1304         
1305 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1306
1307         * nto-procfs.c (do_attach): Form proper ptid including pid and tid.
1308         (procfs_create_inferior): Fetch list of threads.
1309
1310 2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>
1311
1312         * nto-procfs.c (procfs_files_info): Fix a typo.
1313         (procfs_create_inferior): Make attach_flag per-inferior.
1314
1315 2008-10-23  Tom Tromey  <tromey@redhat.com>
1316
1317         * python/python-value.c (value_to_value_object): Initialize
1318         owned_by_gdb field.
1319         (valpy_new): Likewise.
1320         
1321 2008-10-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1322             Joel Brobecker  <brobecker@adacore.com>
1323
1324         * ada-tasks.c (task_states, long_task_states): Use constant N_()
1325         initializer.  Define the strings as const.
1326         (short_task_info, info_task): Translate the strings above.
1327
1328 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1329
1330         * NEWS: Add entry for new feature (Ada tasking support).
1331
1332 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1333
1334         * configure.ac: On alpha-osf, error out if enable_tui is set to
1335         "yes", and set enable_tui to "no" if previously set to "auto".
1336         Check for waddstr only if TUI support was requested. Move the
1337         part of the configure script that updates various Makefile
1338         variables up, together with the check for waddstr.
1339         * configure: Regenerate.
1340
1341 2008-10-22  Joel brobecker  <brobecker@adacore.com>
1342
1343         * gdbtypes.c (copy_type): New function.
1344         * gdbtypes.h (copy_type): Add declaration.
1345         * ada-lang.c (ada_to_fixed_type_1): If there is a parallel XVZ
1346         variable, then use it.
1347
1348 2008-10-22  Joel Brobecker  <brobecker@adacore.com>
1349
1350         * target.h (struct target_ops): Add new field to_get_ada_task_ptid.
1351         (target_get_ada_task_ptid): New macro.
1352         * target.c (default_get_ada_task_ptid): New function.
1353         (update_current_target): Inherit field default_get_ada_task_ptid.
1354         (update_current_target): Make default_get_ada_task_ptid the default
1355         value for field to_get_ada_task_ptid.
1356         * ada-lang.h (struct task_control_block): Delete. Never used.
1357         (struct task_ptid, task_ptid_t, struct task_entry, task_list):
1358         Likewise.
1359         (struct ada_task_info): New.
1360         (ada_task_is_alive, ada_find_printable_frame)
1361         (ada_task_list_iterator_ftype, iterate_over_live_ada_tasks): Add
1362         declarations.
1363         (ada_build_task_list): Update prototype.
1364         (init_task_list, ada_is_exception_breakpoint): Remove prototypes.
1365         * ada-lang.c (ada_find_printable_frame): Make non-static.
1366         * ada-tasks.c: New file.
1367         * Makefile.in (SFILES): Add ada-tasks.c.
1368         (COMMON_OBS): Add ada-tasks.o.
1369         * linux-thread-db.c (thread_db_find_thread_from_tid)
1370         (thread_db_get_ada_task_ptid): New functions.
1371         (init_thread_db_ops): Set thread_db_ops.to_get_ada_task_ptid.
1372
1373 2008-10-22  Tom Tromey  <tromey@redhat.com>
1374
1375         PR gdb/2506:
1376         * c-exp.y (string_exp): New production.
1377         (exp): Use it.
1378
1379 2008-10-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1380
1381         * mips-tdep.c (mips_n32n64_fp_arg_chunk_p): Update TYPE_FIELD_STATIC
1382         removed before.
1383
1384 2008-10-20  Joel Brobecker  <brobecker@adacore.com>
1385
1386         * NEWS: Add entry mentioning thread-support on Tru64
1387
1388 2008-10-19  Joel Brobecker  <brobecker@adacore.com>
1389
1390         * dec-thread.c: New file.
1391         * config/alpha/alpha-osf3.mh (NATDEPFILES): Add dec-thread.o.
1392         (NAT_CLIBS): Define.
1393
1394 2008-10-19  Hui Zhu  <teawater@gmail.com>
1395
1396         * infrun.c (handle_inferior_event): Set "stop_pc" when
1397         TARGET_WAITKIND_NO_HISTORY.
1398
1399 2008-10-19  Pedro Alves  <pedro@codesourcery.com>
1400
1401         * python/python-value.c (value_object_methods)
1402         (value_object_as_number, value_object_as_mapping): Move to bottom
1403         of file.
1404         (valpy_dealloc, valpy_new, valpy_length, valpy_getitem)
1405         (valpy_setitem, valpy_str, valpy_add, valpy_subtract)
1406         (valpy_multiply, valpy_divide, valpy_remainder, valpy_power)
1407         (valpy_negative, valpy_positive, valpy_absolute, valpy_nonzero)
1408         (valpy_richcompare, valpy_dereference): Don't forward-declare.
1409         (valpy_length) [HAVE_LIBPYTHON2_4]: Change return type to `int'.
1410
1411 2008-10-18  Pedro Alves  <pedro@codesourcery.com>
1412
1413         * infrun.c (adjust_pc_after_break): Do nothing if executing in
1414         reverse.
1415
1416 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1417
1418         * infcmd.c (GO_USAGE): Delete.
1419         (go_command): Adjust.
1420
1421 2008-10-17  Michael Snyder  <msnyder@vmware.com>
1422         Target interface for reverse debugging.
1423         * target.h (enum target_waitkind): 
1424         Add new wait event, TARGET_WAITKIND_NO_HISTORY.
1425         (struct target_ops): New method to_can_execute_reverse.
1426         (target_can_execute_reverse): New macro.
1427         * target.c (update_current_target): Inherit to_can_execute_reverse.
1428
1429         Remote interface for reverse debugging.
1430         * remote.c (remote_can_execute_reverse): New target method.
1431         (remote_resume): Check for reverse exec direction, and send 
1432         appropriate command to target.
1433         (remote_wait_as): Check target response for NO_HISTORY status.
1434         Also check for empty reply (target doesn't understand "bs" or "bc).
1435         (remote_vcont_resume): Jump out if attempting reverse execution.
1436
1437         Event handling interface for reverse debugging.
1438         * infrun.c (execution_direction): New state variable.
1439         (enum inferior_stop_reason): Add NO_HISTORY reason.
1440         (handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY.
1441         Handle stepping over a function call in reverse.
1442         Handle stepping thru a line range in reverse.
1443         Handle setting a step-resume breakpoint in reverse.
1444         Handle stepping into a function in reverse.
1445         Handle stepping between line ranges in reverse.
1446         (print_stop_reason): Print reason for NO_HISTORY.
1447         (step_into_function): Rename to handle_step_into_function.
1448         (handle_step_into_function_backward): New function.
1449         (set_exec_direction_func, show_exec_direction_func): New funcs.
1450         (proceed): No need to singlestep over a breakpoint
1451         when resuming in reverse.
1452         
1453         * inferior.h (enum exec_direction_kind): New enum.
1454         (execution_direction): Export new execution state variable.
1455
1456         * breakpoint.c (make_breakpoint_silent): New function.
1457         * breakpoint.h (make_breakpoint_silent): Export.
1458         * infcmd.c (finish_command): Check for reverse exec direction.
1459         (finish_backward): New function, handle finish cmd in reverse.
1460
1461         User interface for reverse execution.
1462         * Makefile.in (reverse.c): New file.
1463         * reverse.c: New file.  User interface for reverse execution.
1464
1465 2008-10-17  Pedro Alves  <pedro@codesourcery.com>
1466
1467         * remote.c (record_currthread): Add inferior before child threads.
1468         (remote_threads_info): Check for exited threads.  Mention
1469         notification order.
1470
1471 2008-10-16  Joel Brobecker  <brobecker@adacore.com>
1472
1473         * breakpoint.h (enum bptype): New enum bp_catchpoint.
1474         Delete bp_catch_fork and bp_catch_vfork.
1475         (struct breakpoint_ops): Add new methods "insert", "remove"
1476         and "breakpoint_hit".
1477         * breakpoint.c (create_fork_vfork_event_catchpoint)
1478         (create_fork_event_catchpoint, create_vfork_event_catchpoint): Remove.
1479         (insert_catchpoint): Remove handling of bp_catch_fork and
1480         bp_catch_vfork catchpoints, and handle them as bp_catchpoint
1481         catchpoints instead.
1482         (insert_bp_location, update_breakpoints_after_exec)
1483         (remove_breakpoint, bpstat_check_location, bpstat_what)
1484         (allocate_bp_location): Likewise.
1485         (print_it_typical, print_one_breakpoint_location, mention): Remove
1486         handling of bp_catch_fork and bp_catch_vfork breakpoints.
1487         (ep_is_catchpoint, user_settable_breakpoint)
1488         (breakpoint_address_is_meaningful, adjust_breakpoint_address)
1489         (breakpoint_re_set_one, disable_command, enable_command):
1490         Remove use of bp_catch_fork and bp_catch_vfork.  Add handling of
1491         bp_catchpoint breakpoints.
1492         (insert_catch_fork, remove_catch_fork, breakpoint_hit_catch_fork)
1493         (print_it_catch_fork, print_one_catch_fork, print_mention_catch_fork):
1494         New functions.
1495         (catch_fork_breakpoint_ops): New static constant.
1496         (insert_catch_vfork, remove_catch_vfork, breakpoint_hit_catch_vfork)
1497         (print_it_catch_vfork, print_one_catch_vfork)
1498         (print_mention_catch_vfork): New functions.
1499         (catch_vfork_breakpoint_ops): New static constant.
1500         (create_catchpoint, create_fork_vfork_event_catchpoint): New functions.
1501         (catch_fork_command_1): Use create_fork_vfork_event_catchpoint
1502         to create the fork and vfork catchpoints.
1503         (gnu_v3_exception_catchpoint_ops): Set new breakpoint_ops fields.
1504         * ada-lang.c (catch_exception_breakpoint_ops): Set new breakpoint_ops
1505         fields.
1506         (catch_exception_unhandled_breakpoint_ops): Likewise.
1507         (catch_assert_breakpoint_ops): Likewise.
1508
1509 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1510
1511         * remote.c (set_general_process): New.
1512         (remote_check_symbols): Use it.
1513
1514 2008-10-16  Pedro Alves  <pedro@codesourcery.com>
1515
1516         * remote.c (push_remote_target): Delete.
1517         * target.h (push_remote_target): Delete declaration.
1518
1519 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1520
1521         * remote.c (remote_close): Unregister remote_desc from the event
1522         loop.  Always restore the SIGINT handler.  Discard all inferiors
1523         here.
1524         (remote_detach_1, remote_disconnect): Don't unregister the file
1525         descriptor from the event loop here.
1526         (interrupt_query, readchar, getpkt_sane): Pop the target instead
1527         of morning the current inferior.
1528         (remote_kill): Don't unregister the file descriptor from the event
1529         loop here.
1530         (remote_mourn_1): Don't discard inferiors here.
1531
1532 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1533
1534         * breakpoint.c (breakpoint_init_inferior): Clean up the moribund
1535         locations list.
1536         (moribund_breakpoint_here_p): Record the moribund
1537         location in the moribund_locations vector.
1538         * breakpoint.h (moribund_breakpoint_here_p): Declare.
1539         (displaced_step_fixup): Check if the breakpoint the thread was
1540         trying to step over has been removed since having been placed in
1541         the displaced stepping queue.
1542         (adjust_pc_after_break): In non-stop mode, check for a moribund
1543         breakpoint at the stop pc.
1544         (handle_inferior_event): Don't retire moribund breakpoints on
1545         TARGET_WAITKIND_IGNORE.
1546
1547 2008-10-15  Pedro Alves  <pedro@codesourcery.com>
1548
1549         * infrun.c (displaced_step_prepare): Switch thread temporarily
1550         while we're here.
1551         (displaced_step_fixup): Make sure target_resume sees ptid as
1552         inferior_ptid.  Add debug output.
1553
1554 2008-10-14  Pedro Alves  <pedro@codesourcery.com>
1555
1556         Remove dead code.
1557
1558         * breakpoint.c (show_breakpoint_hit_counts): Delete.
1559         (print_one_breakpoint_location): Adjust.
1560         (breakpoint_clear_ignore_counts): Delete.
1561         * breakpoint.h (breakpoint_clear_ignore_counts): Remove
1562         declaration.
1563         * target.c (generic_mourn_inferior): Don't clear ignore
1564         counts (never reached).
1565
1566 2008-10-10  Doug Evans  <dje@google.com>
1567
1568         * dwarf2read.c (comp_unit_head): Use unsigned int consistently
1569         for dwarf section offsets and sizes.
1570         (dwarf2_cu): Ditto.
1571         (dwarf2_per_cu_data): Ditto.
1572         (create_all_comp_units): Change offset to unsigned int.
1573         (load_full_comp_unit,find_partial_die_in_comp_unit,find_partial_die,
1574         dwarf2_find_containing_comp_unit,dwarf2_find_comp_unit): Ditto.
1575
1576         * dwarf2read.c (read_initial_length): Delete cu_header arg.
1577         All callers updated.
1578         (read_checked_initial_length_and_offset): New function.
1579         (read_offset_1): New function.
1580         (read_offset): Call it.
1581         (dwarf_decode_line_header): Call read_checked_initial_length_and_offset
1582         instead of read_initial_length.  Call read_offset_1 instead of
1583         read_offset.
1584
1585         * dwarf2read.c (dwarf2_get_ref_die_offset): Remove unused arg `cu'.
1586         All callers updated.
1587
1588         * dwarf2read.c (dwarf_attr_name): Unconditionally support all
1589         DW_AT_MIPS_* except DW_AT_MIPS_fde which collides with
1590         DW_AT_HP_block_index.
1591
1592 2008-10-10  Pedro Alves  <pedro@codesourcery.com>
1593
1594         * remote.c (remote_start_remote): Always tell the stub if we're in
1595         extended-remote.
1596
1597 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1598
1599         * remote.c (remote_wait): Rename to...
1600         (remote_wait_as): ... this.  Don't loop here.  If the remote
1601         didn't stop, return TARGET_WAITKIND_IGNORE.
1602         (remote_wait): New, reimplemented on top of remote_wait_as.
1603
1604 2008-10-09  Thomas Schwinge  <tschwinge@gnu.org>
1605
1606         * Makefile.in (gnu-nat.o): Revert the 2008-09-10 change, as the problem
1607         is fixed upstream.
1608
1609         * reply_mig_hack.awk: Use the `BAD_TYPECHECK' macro.
1610
1611         * MAINTAINERS (Write After Approval): Add myself.
1612
1613 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1614
1615         Make it compile without warnings.
1616
1617         * procfs.c (create_procinfo): Initialize `parent'.
1618         (dead_procinfo): Pass a constant string as format to error.
1619         (procfs_address_to_host_pointer): Add cast to gdb_type *.
1620         (procfs_find_LDT_entry): Adjust format string to long int
1621         ptid.tid.
1622         (procfs_xfer_partial): Adjust prototype.  Add gdb_byte* cast.
1623         (procfs_xfer_memory): Adjust prototype.
1624         (info_mappings_callback, info_proc_mappings): Adjust to not pass a
1625         variable as printf_filtered format.
1626         (procfs_make_note_section): Change type of auxv local to gdb_byte.
1627         * Makefile.in: Remove special rule.
1628
1629 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1630             Daniel Jacobowitz  <dan@codesourcery.com>
1631
1632         * remote.c (remote_open_1): Move acknowledging any pending ack,
1633         querying supported features, activating noack mode, finding the
1634         target description, enabling extended remote, and checking remote
1635         symbols from here ...
1636         (remote_start_remote): ... to here.
1637         (remote_open_1): Don't pop the target if it is already gone.
1638         * target.c (unpush_target): Check for the dummy target.
1639
1640 2008-10-09  Pedro Alves  <pedro@codesourcery.com>
1641
1642         * ser-mingw.c: Include "command.h".
1643         (pipe_windows_open): Declare locals at the beginning of the scope.
1644
1645 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1646
1647         * remote.c (struct remote_state) <waiting_for_stop_reply>: New
1648         field.
1649         (remote_open_1): Clear waiting_for_stop_reply.
1650         (remote_resume): Set waiting_for_stop_reply.
1651         (remote_wait): Clear or set waiting_for_stop_reply accordingly.
1652         (putpkt_binary): If we're in async mode and waiting for a stop
1653         reply, bail out with an error.
1654         (extended_remote_mourn_1): Clear waiting_for_stop_reply.
1655
1656 2008-10-08  Pedro Alves  <pedro@codesourcery.com>
1657
1658         * remote.c (remote_get_thread_info): If the remote doesn't support
1659         the query, bail out.
1660
1661 2008-10-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
1662
1663         Convert static_kind into loc_kind enum.
1664         * gdbtypes.h (enum field_loc_kind): New.
1665         (union field_location): New field dwarf_block.
1666         (struct field): Rename static_kind as loc_kind.
1667         (FIELD_STATIC_KIND): Rename to ...
1668         (FIELD_LOC_KIND): ... here.
1669         (TYPE_FIELD_STATIC_KIND): Rename to ...
1670         (TYPE_FIELD_LOC_KIND): ... here and use there now new FIELD_LOC_KIND.
1671         (TYPE_FIELD_STATIC_HAS_ADDR): Remove.
1672         (TYPE_FIELD_STATIC): Remove.
1673         (TYPE_FIELD_BITPOS): Reformat.
1674         (SET_FIELD_BITPOS): New.
1675         (FIELD_PHYSADDR): Rename to ...
1676         (FIELD_STATIC_PHYSADDR): ... here.
1677         (TYPE_FIELD_STATIC_PHYSADDR): Follow the FIELD_PHYSADDR rename.
1678         (SET_FIELD_PHYSADDR): Use new FIELD_LOC_KIND.
1679         (FIELD_PHYSNAME): Rename to ...
1680         (FIELD_STATIC_PHYSNAME): ... here.
1681         (TYPE_FIELD_STATIC_PHYSNAME): Follow the FIELD_PHYSNAME rename.
1682         (SET_FIELD_PHYSNAME): Use new FIELD_LOC_KIND.
1683         (FIELD_DWARF_BLOCK, TYPE_FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK): New.
1684         (field_is_static): New declaration.
1685         * gdbtypes.c (field_is_static): New function.
1686         (copy_type_recursive): Update throughout.
1687         * amd64-tdep.c, c-typeprint.c, coffread.c, cp-valprint.c, dwarf2read.c,
1688         eval.c, jv-typeprint.c, jv-valprint.c, mdebugread.c, p-typeprint.c,
1689         p-valprint.c, valops.c, value.c, varobj.c: Update throughout.
1690
1691 2008-10-07  Thomas Schwinge  <tschwinge@gnu.org>
1692             Pedro Alves  <pedro@codesourcery.com>
1693
1694         * gnu-nat.h: Rename `current_inferior' to `gnu_current_inf' to
1695         avoid a name collision.
1696         * gnu-nat.c: Likewise.
1697         * i386gnu-nat.c: Likewise.
1698
1699 2008-10-07  Joel Brobecker  <brobecker@adacore.com>
1700
1701         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Add handling
1702         of arguments that are references.
1703
1704 2008-10-06  Doug Evans  <dje@google.com>
1705
1706         * dwarf2read.c (dwarf2_die_debug): New static global.
1707         (dump_die_shallow): Renamed from dump_die, New args f, indent.
1708         Print to specified file, indented by the specified amount.
1709         (dump_die_for_error): New fn.  Point all existing callers of
1710         dump_die here.
1711         (dump_die_die_1,dump_die): New fns, replaces ...
1712         (dump_die_list): ... deleted.
1713         (read_die_and_children_1): Old contents of read_die_and_children
1714         moved here.
1715         (read_die_and_children): Rewrite.
1716         (read_die_and_siblings): Call read_die_and_children_1 instead of
1717         read_die_and_children.
1718         (_initialize_dwarf2_read): New option "debug dwarf2-die".
1719         * gdbinit.in (pdie): New macro.
1720
1721         * dwarf2read.c (offset_in_cu_p): New function.
1722         (find_partial_die,follow_die_ref): Use it.
1723
1724         * symmisc.c (maintenance_info_symtabs): Watch for ^c.
1725         (maintenance_info_psymtabs): Ditto.
1726
1727 2008-10-05  Michael Snyder  <msnyder@vmware.com>
1728
1729         * infrun.c (handle_inferior_event): Fix typo in comment.
1730
1731 2008-10-04  Vladimir Prus  <vladimir@codesourcery.com>
1732
1733         * mi/mi-interp.c (mi_on_resume): Flush raw_stdout.
1734
1735 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1736
1737         PR gdb/2384:
1738         * gdbtypes.c (get_vptr_fieldno): baseclass and basetype may have
1739         different lifetimes.
1740         
1741 2008-10-03  Joel Brobecker  <brobecker@adacore.com>
1742
1743         * solib-osf.c: Include "solib.h".
1744
1745 2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
1746         
1747         * utils.c, defs.h (gdb_buildargv): New fn. Wrap buildargv
1748         and check for out-of-memory condition.
1749         * exec.c (exec_file_command): Call it.
1750         * infrun.c (handle_command, xdb_handle_command): Likewise.
1751         * interps.c (interpreter_exec_cmd): Likewise.
1752         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
1753         * procfs.c (info_proc_cmd): Likewise.
1754         * remote-mips.c (common_open): Likewise.
1755         * remote-sim.c (gdbsim_kill, gdbsim_create_inferior)
1756         (gdbsim_open): Likewise.
1757         * remote.c (extended_remote_run, remote_put_command)
1758         (remote_get_command, remote_delete_command): Likewise.
1759         * ser-mingw.c (pipe_windows_open): Likesise.
1760         * source.c (add_path, show_substitute_path_command)
1761         (unset_substitute_path_command, set_substitute_path_command):
1762         Likewise.
1763         * stack.c (backtrace_command): Likewise.
1764         * symfile.c (symbol_file_command, generic_load)
1765         (add_symbol_file_command): Likesise.
1766         * symmisc.c (maintenance_print_symbols, maintenance_print_psymbols)
1767         (maintenance_print_msymbols): Likewise.
1768
1769 2008-10-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1770
1771         Replace TYPE_ARRAY_{UPPER,LOWER}_BOUND_TYPE by a bit if {un,}defined.
1772         * c-typeprint.c (c_type_print_varspec_suffix), m2-typeprint.c
1773         (m2_array), p-typeprint.c (pascal_type_print_varspec_prefix),
1774         valops.c (value_cast), varobj.c (c_number_of_children): Replace
1775         TYPE_ARRAY_UPPER_BOUND_TYPE compared to BOUND_CANNOT_BE_DETERMINED by
1776         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1777         * parse.c (follow_types): Use TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1778         * f-valprint.c (f77_get_dynamic_upperbound): Replace with ...
1779         (f77_get_upperbound): ... this function handling now only
1780         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
1781         (f77_get_dynamic_lowerbound): Replace with ...
1782         (f77_get_lowerbound): ... this function handling now only
1783         TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED.
1784         (f77_get_dynamic_length_of_aggregate, f77_create_arrayprint_offset_tbl):
1785         Update their callers.
1786         * eval.c (evaluate_subexp_standard): Update their callers.
1787         * f-lang.h (f77_get_dynamic_upperbound, f77_get_upperbound)
1788         (f77_get_dynamic_lowerbound, f77_get_lowerbound): Update their
1789         prototypes.
1790         (BOUND_FETCH_OK, BOUND_FETCH_ERROR): Remove.
1791         * f-typeprint.c (f_type_print_varspec_suffix, f_type_print_base): Remove
1792         the lower_bound_was_default variable.  Update the
1793         f77_get_dynamic_upperbound, f77_get_upperbound and
1794         TYPE_ARRAY_UPPER_BOUND_TYPE calls.
1795         * gdbtypes.c (print_bound_type): Remove the function.
1796         (recursive_dump_type): Remove its calls printing UPPER_BOUND_TYPE and
1797         LOWER_BOUND_TYPE.
1798         * gdbtypes.h (enum array_bound_type): Remove.
1799         (struct main_type): Remove the fields upper_bound_type and
1800         lower_bound_type.  Comment the new overload of the field artificial.
1801         (TYPE_ARRAY_UPPER_BOUND_TYPE): Replace by ...
1802         (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED): ... this macro.
1803         (TYPE_ARRAY_LOWER_BOUND_TYPE): Replace by ...
1804         (TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): ... this macro.
1805
1806 2008-10-02  Tom Tromey  <tromey@redhat.com>
1807
1808         * Makefile.in (HFILES_NO_SRCDIR): Remove gdb-events.h, gstdint.h.
1809
1810 2008-10-02  Daniel Jacobowitz  <dan@codesourcery.com>
1811
1812         * mips-linux-tdep.c (mips_linux_in_dynsym_resolve_code): Update
1813         comments.
1814         (mips_linux_skip_resolver): Also use glibc_skip_solib_resolver.
1815         (mips_linux_init_abi): Do not override skip_trampoline_code.
1816         * configure.tgt (mips*-*-linux*): Add glibc-tdep.o.
1817         * mips-tdep.c (mips32_scan_prologue): Stop scanning at branches.
1818         (mips_stub_frame_sniffer): Use the stub frame sniffer for PIC stubs.
1819         (mips_skip_mips16_trampoline_code): Rename from
1820         mips_skip_trampoline_code.
1821         (mips_skip_pic_trampoline_code, mips_skip_trampoline_code): New.
1822         * infrun.c (handle_inferior_event): Do not pass zero to
1823         in_solib_dynsym_resolve_code.
1824
1825 2008-10-02  Pierre Muller  <muller@ics.u-strasbg.fr>
1826             Pedro Alves  <pedro@codesourcery.com>
1827
1828         * win32-nat.c (do_initial_win32_stuff): Set inferior_ptid.
1829
1830
1831 2008-10-01  Tom Tromey  <tromey@redhat.com>
1832
1833         * symtab.c (search_symbols): Update.
1834         * symtab.h (domain_enum_tag) <METHODS_DOMAIN>: Remove.
1835
1836 2008-10-01  Tom Tromey  <tromey@redhat.com>
1837
1838         * symfile.c (syms_from_objfile): Update.
1839         (reread_symbols): Update.
1840         * objfiles.h (OBJF_SYMS): Remove.
1841         (OBJF_REORDERED): Renumber.
1842         (OBJF_SHARED): Likewise.
1843         (OBJF_READNOW): Likewise.
1844         (OBJF_USERLOADED): Likewise.
1845
1846 2008-10-01  Tom Tromey  <tromey@redhat.com>
1847
1848         * symtab.c (find_pc_sect_psymtab): Use MSYMBOL_TYPE.
1849         (find_pc_sect_symtab): Likewise.
1850         * symmisc.c (dump_msymbols): Use MSYMBOL_TYPE.
1851         * solib-som.c (som_solib_desire_dynamic_linker_symbols): Use
1852         MSYMBOL_TYPE, not SYMBOL_TYPE.
1853         * parse.c (write_exp_msymbol): Use MSYMBOL_TYPE.
1854         * objc-lang.c (find_methods): Use MSYMBOL_TYPE.
1855         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Use
1856         MSYMBOL_TYPE.
1857         * m2-exp.y (yylex): Use SYMBOL_CLASS.
1858
1859 2008-10-01  Tom Tromey  <tromey@redhat.com>
1860
1861         * xcoffread.c (RECORD_MINIMAL_SYMBOL): Update.
1862         (scan_xcoff_symtab): Update.
1863         * mdebugread.c (record_minimal_symbol): Update.
1864         (parse_partial_symbols): Update.
1865         * elfread.c (record_minimal_symbol): Update.
1866         * dbxread.c (record_minimal_symbol): Update.
1867         * coffread.c (record_minimal_symbol): Update.
1868         * sh64-tdep.c (MSYMBOL_IS_SPECIAL): Redefine.
1869         (sh64_elf_make_msymbol_special): Update.
1870         * mips-tdep.c (mips_elf_make_msymbol_special): Use
1871         MSYMBOL_TARGET_FLAG_1.
1872         (mips_elf_make_msymbol_special): Likewise.
1873         (msymbol_is_special): Likewise.
1874         * minsyms.c (prim_record_minimal_symbol_and_info): Update.
1875         (install_minimal_symbols): Likewise.
1876         (prim_record_minimal_symbol): Update.
1877         (prim_record_minimal_symbol_and_info): Remove 'info' argument.
1878         * m68hc11-tdep.c (MSYMBOL_SET_RTC): Redefine.
1879         (MSYMBOL_SET_RTI): Redefine.
1880         (MSYMBOL_IS_RTC): Redefine.
1881         (MSYMBOL_IS_RTI): Redefine.
1882         * arm-tdep.c (MSYMBOL_SET_SPECIAL): Redefine.
1883         (MSYMBOL_IS_SPECIAL): Redefine.
1884         * symtab.h (struct minimal_symbol) <info>: Remove.
1885         <target_flag_1, target_flag_2>: New fields.
1886         (MSYMBOL_INFO): Remove.
1887         (MSYMBOL_TARGET_FLAG_1): New macro.
1888         (MSYMBOL_TARGET_FLAG_2): Likewise.
1889         (prim_record_minimal_symbol_and_info): Update.
1890
1891 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1892
1893         * ada-lang.c (is_digits_suffix): Delete unused function.
1894
1895 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
1896
1897         * ada-lang.c (ada_modulus): Correct to avoid sign problem with
1898         moduli >= 2**31.
1899
1900 2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>
1901
1902         * ada-lang.c (ada_lookup_struct_elt_type): Handle case of a "naked"
1903         variant branch.
1904         (empty_record): Use INIT_CPLUS_SPECIFIC, since this field is not
1905         supposed to be null.  Fixes debugger segfaults.
1906         (is_unchecked_variant): New function.
1907         (to_fixed_variant_branch_type): Modify to leave unchecked unions
1908         untouched.
1909         (ada_template_to_fixed_record_type_1): Fix comment.
1910
1911 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1912
1913         * ada-lang.c (standard_exc): New static constant.
1914         (ada_exception_catchpoint_cond_string): Add special handling
1915         for the predefined exceptions.
1916
1917 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1918
1919         * ada-lang.c (ADA_RETAIN_DOTS): Delete this dead macro.  Update
1920         the code accordingly.
1921
1922 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1923
1924         * ada-lang.c (ada_evaluate_subexp) [UNOP_IND]: Remove strange
1925         treatment of expect_type. Return the correct type when dereferencing
1926         an integer.
1927
1928 2008-09-30  Tom Tromey  <tromey@redhat.com>
1929
1930         PR gdb/2484:
1931         * symtab.c (struct add_macro_name_data): New struct.
1932         (add_macro_name): New function.
1933         (default_make_symbol_completion_list): Complete macro names.
1934         * scm-lang.c (scm_language_defn): Update.
1935         * p-lang.c (pascal_language_defn): Update.
1936         * objc-lang.c (objc_language_defn): Update.
1937         * macrotab.h (macro_callback_fn): Add user_data argument.
1938         (macro_for_each): Likewise.
1939         (macro_for_each_in_scope): Declare.
1940         * macrotab.c: (struct macro_for_each_data): New struct.
1941         (foreach_macro): Use it.
1942         (macro_for_each): Likewise.
1943         (foreach_macro_in_scope): New function.
1944         (macro_for_each_in_scope): Likewise.
1945         * macrocmd.c (print_one_macro): Add argument.
1946         (macro_list_command): Pass NULL to macro_for_each.
1947         * m2-lang.c (m2_language_defn): Update.
1948         * language.h (struct language_defn) <la_macro_expansion>: New
1949         field.
1950         (macro_expansion): New enum.
1951         * language.c (unknown_language_defn): Update.  Fix order of
1952         initializers.
1953         (auto_language_defn): Likewise.
1954         (local_language_defn): Update.
1955         * jv-lang.c (java_language_defn): Update.
1956         * f-lang.c (f_language_defn): Update.
1957         * c-lang.c (c_language_defn): Update.
1958         (cplus_language_defn): Likewise.
1959         (asm_language_defn): Likewise.
1960         (minimal_language_defn): Likewise.
1961         * ada-lang.c (ada_language_defn): Update.
1962
1963 2008-09-30  Joel Brobecker  <brobecker@adacore.com>
1964
1965         * dwarf2read.c (dwarf2_get_subprogram_pc_bounds): New function.
1966         (get_scope_pc_bounds): Use it.
1967
1968 2008-09-27  Tom Tromey  <tromey@redhat.com>
1969
1970         * NEWS: Update.
1971         * macrocmd.c (extract_identifier): Add is_parameter argument.
1972         (macro_define_command): Update.
1973         (macro_undef_command): Likewise.
1974         * macroexp.c (stringify): New function.
1975         (find_parameter): Likewise.
1976         (gather_arguments): Add nargs argument.  Handle varargs.
1977         (substitute_args): Add is_varargs and va_arg_name arguments.
1978         Handle varargs, splicing, stringification.  Use find_parameter.
1979         (expand): Handle varargs.
1980
1981 2008-09-27  Tom Tromey  <tromey@redhat.com>
1982
1983         * scm-lang.c (scm_language_defn): Update.
1984         * p-typeprint.c (pascal_print_typedef): New function.
1985         * p-lang.h: (pascal_print_typedef): Declare.
1986         * p-lang.c (pascal_language_defn): Update.
1987         * objc-lang.c (objc_language_defn): Update.
1988         * m2-typeprint.c (m2_print_typedef): New function.
1989         * m2-lang.h (m2_print_typedef): Declare.
1990         * m2-lang.c (m2_language_defn): Update.
1991         * language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal):
1992         Remove.
1993         (struct language_defn) <la_print_typedef>: New field.
1994         (default_print_typedef): Declare.
1995         (LA_PRINT_TYPEDEF): New define.
1996         * language.c (unknown_language_defn): Update.
1997         (auto_language_defn): Update.
1998         (local_language_defn): Update.
1999         * jv-lang.c (java_language_defn): Update.
2000         * f-lang.c (f_language_defn): Update.
2001         * c-typeprint.c (c_print_typedef): New function.
2002         * c-lang.h (c_print_typedef): Declare.
2003         * c-lang.c (c_language_defn): Update.
2004         (cplus_language_defn): Update.
2005         (asm_language_defn): Update.
2006         (minimal_language_defn): Update.
2007         * ada-lang.c (ada_language_defn): Update.
2008         * typeprint.c (default_print_typedef): New function.
2009
2010 2008-09-27  Tom Tromey  <tromey@redhat.com>
2011
2012         * jv-exp.y (insert_exp): Define using ISO syntax.
2013         (copy_exp): Likewise.
2014         (push_expression_name): Likewise.
2015         (push_fieldnames): Likewise.
2016         (java_type_from_name): Likewise.
2017         (yyerror): Likewise.
2018         (yylex): Likewise.
2019         (parse_number): Likewise.
2020
2021 2008-09-26  Joel Brobecker  <brobecker@adacore.com>
2022
2023         * MAINTAINERS (GLOBAL MAINTAINERS): Add Pedro Alves.
2024
2025 2008-09-25  Stephan Springl  <springl-gdb@bfw-online.de> (tiny change)
2026
2027         * stack.c (print_frame_args): Fix typos in comments.
2028
2029 2008-09-25  Sérgio Durigan Júnior  <sergiodj@linux.vnet.ibm.com>
2030
2031         * linux-nat.c (get_pending_status): Fix argument to WIFSTOPPED.
2032
2033 2008-09-24  Vladimir Prus  <vladimir@codesourcery.com>
2034
2035         * remote-sim.c (gdbsim_create_inferior): Fix missing parenthesis.
2036         
2037 2008-09-24  Andreas Schwab  <schwab@suse.de>
2038
2039         * frame.c (get_frame_register_bytes): Take pseudo registers into
2040         account.  Avoid excessive function calls.
2041
2042 2008-09-23  Doug Evans  <dje@google.com>
2043
2044         * dcache.c (state_chars): New static global.
2045         (ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
2046         All uses updated.
2047         (dcache_info): Print cache state as mnemonically useful letters instead
2048         of magic numbers.
2049
2050         * dwarf2read.c (comp_unit_head): Reorganize for better packing.
2051
2052 2008-09-22  Tom Tromey  <tromey@redhat.com>
2053
2054         * symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
2055         printf_filtered.
2056
2057 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2058
2059         * infrun.c (follow_exec): Don't do a generic mourn.  Instead
2060         inline the required bits.
2061         * breakpoint.h (enum inf_context): Add inf_execd.
2062
2063 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2064
2065         * infrun.c (handle_inferior_event): In the follow exec case,
2066         context-switch before doing anything else.
2067
2068 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2069
2070         * top.c (any_thread_of, kill_or_detach): New functions.
2071         (quit_target): Iterate over all inferiors, killing or detaching
2072         accordingly.
2073
2074 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2075
2076         Remove the attach_flag global, and make it per-inferior.
2077
2078         * inferior.h (attach_flag): Delete.
2079         (inferior_process): Declare.
2080         * solib.c (update_solib_list): Adjust.
2081         * gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
2082         * inf-ptrace.c (inf_ptrace_detach): Adjust.
2083         (inf_ptrace_files_info): Get it from the current inferior.
2084         * inf-ttrace.c (inf_ttrace_attach): Adjust.
2085         (inf_ttrace_files_info): Get it from the current
2086         inferior.
2087         * inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
2088         (clear_sigint_trap): Get it from the current process.
2089         * remote.c (extended_remote_attach_1)
2090         (extended_remote_create_inferior_1): Adjust.
2091         * top.c (quit_confirm, quit_target): Get it from the current inferior.
2092         * procfs.c (do_detach): Adjust.
2093         (procfs_wait): Get it from the event inferior.
2094         (procfs_files_info): Get it from the current inferior.
2095         * nto-procfs.c (procfs_files_info): Likewise.
2096         (procfs_attach): Adjust.  Set the attach_flag here.
2097         (do_attach): Don't set it here.
2098         (procfs_detach): Don't clear it.
2099         (procfs_mourn_inferior): Don't clear it.
2100         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2101         * target.c (attach_flag): Delete.
2102         (generic_mourn_inferior): Don't clear it.
2103         * win32-nat.c (get_win32_debug_event): Get it from the event
2104         process.
2105         (do_initial_win32_stuff): Add attaching argument.  Set attach_flag
2106         in the inferior accordingly.
2107         (win32_attach): Don't set the attach_flag here.  Pass 1 to
2108         do_intial_win32_stuff.
2109         (win32_files_info): Get it from the current inferior.
2110         (win32_create_inferior): Dont clear attach_flag here.  Pass 0 to
2111         do_intial_win32_stuff.
2112
2113 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2114
2115         Make the stop_soon global be per-inferior instead.
2116
2117         * infcmd.c (attach_command_post_wait): Adjust.
2118         (attach_command): Likewise.
2119
2120         * inferior.h (stop_soon): Delete.
2121         (struct inferior): Add stop_soon member.
2122
2123         * infrun.c (stop_soon): Delete.
2124         (clear_proceed_status, start_remote)
2125         (fetch_inferior_event, handle_inferior_event): Adjust.
2126         (signal_stop_state): Don't check stop_soon here.  Check in callers
2127         instead.
2128         (save_inferior_status, restore_inferior_status): Adjust.
2129
2130         * linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
2131         signals to common code if starting up the inferior.
2132         
2133         * inferior.h (struct inferior_info): Added stop_soon member.
2134         * inferior.c (add_inferior) Clear stop_soon.
2135
2136         * mips-tdep.c (heuristic_proc_start): Adjust.
2137         * nto-procfs.c (procfs_create_inferior): Adjust.
2138         * solib-irix.c (irix_solib_create_inferior_hook): Adjust.
2139         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2140         * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
2141         * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
2142
2143         * win32-nat.c (do_initial_win32_stuff): Adjust.
2144
2145         * alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
2146
2147 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2148
2149         Implement remote multi-process extensions.
2150
2151         * remote.c (struct remote_state): Add extended and
2152         multi_process_aware fields.
2153         (remote_multi_process_p): New.
2154         (PACKET_vKill): New.
2155         (record_currthread): Use thread_change_ptid.  Notice new
2156         inferiors.
2157         (set_thread, remote_thread_alive): Use write_ptid.
2158         (write_ptid, read_ptid): New.
2159         (remote_current_thread, remote_threads_extra_info): Use them.
2160         (remote_threads_info): Likewise.  Detect new inferiors.
2161         (remote_start_remote): Add inferior to inferior list.
2162         (remote_multi_process_feature): New.
2163         (remote_protocol_features): Add "multiprocess" feature.
2164         (remote_query_supported): Pass "multiprocess+" as supported
2165         features.
2166         (remote_open_1): Clear multi_process_aware.  Set extended
2167         accordingly.
2168         (remote_detach_1): Detach current process.  Use extended packet
2169         format for extended-remote multi-process.  Detach process from the
2170         inferior list.  Only mourn after printing output.
2171         (extended_remote_attach_1): Add process to the inferior list.
2172         (remote_vcont_resume): Use write_ptid to pass the thread ids.
2173         (remote_wait): Use read_ptid.  Implement the extended
2174         multi-process extension format of the 'W' and 'X' reply packets.
2175         Remove exited inferiors from inferior list.
2176         (remote_xfer_memory): Set general thread.
2177         (remote_vkill): New.
2178         (extended_remote_kill): New.
2179         (remote_mourn_1): Discard all inferiors.
2180         (select_new_thread_callback): New.
2181         (extended_remote_mourn_1): If there are more processes to debug,
2182         switch to a thread in another process, and don't pop the target.
2183         (extended_remote_create_inferior_1): Add the new process to the
2184         inferior list.
2185         (remote_stopped_by_watchpoint): Indenting.
2186         (remote_xfer_partial): Set the general thread.
2187         (remote_pid_to_str): If the remote is multi-process aware, print
2188         the process id as well as the thread id.
2189         (remote_get_thread_local_address): Use write_ptid.
2190         (init_extended_remote_ops): Register extended_remote_kill.
2191         (_initialize_remote): Register new packets.  Change
2192         magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
2193         member to 42000.
2194
2195         * thread.c (thread_change_ptid): Also account for the inferior pid
2196         changing.
2197
2198         * inferior.h (discard_all_inferiors): Declare.
2199         * inferior.c (discard_all_inferiors): New.
2200
2201 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2202
2203         * gnu-nat.c (gnu_attach): Add process to inferiors table.
2204         (gnu_detach): Remove it.
2205         * go32-nat.c (go32_create_inferior): Add process to gdb's inferior
2206         table.
2207         * inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
2208         to inferior table accordingly.
2209         (inf_ptrace_attach): Add new process to inferior table.
2210         (inf_ptrace_detach): Remove it.
2211         * inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
2212         to inferior table accordingly.
2213         (inf_ttrace_attach): Add process to inferior table.
2214         (inf_ttrace_detach): Remove it.
2215         * linux-fork.c (init_fork_list): Delete any left over inferior.
2216         (linux_fork_mourn_inferior, detach_fork_command): Also delete
2217         processes from inferior list.
2218         * monitor.c (monitor_open): Add process to inferior list.
2219         (monitor_close): Remove it.
2220         * nto-procfs.c (procfs_attach): Add process to inferior list.
2221         Find threads after pushing the target.
2222         (procfs_detach): Remove process from inferior list.
2223         (procfs_create_inferior): Add process to inferior list.
2224         * procfs.c (procfs_detach): Remove process from inferior list.
2225         (do_attach): Add process to inferior list.
2226         * remote-sim.c (sim_create_inferior): Add process to inferior list.
2227         (gdbsim_close): Remove it.
2228         * target.c (generic_mourn_inferior): If inferior_ptid is not
2229         null_ptid, remove the corresponding inferior from inferior list.
2230         * win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
2231         (win32_detach): Remove it.
2232         * linux-nat.c (linux_child_follow_fork): Delete and add inferiors
2233         to inferior list accordingly.
2234         * fork-child.c (fork_inferior): Add process to inferior list.
2235         * corelow.c (CORELOW_PID): Define.
2236         (core_close): Remove core from inferior list.
2237         (core_open): Add it.
2238
2239 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2240
2241         * inferior.h: Forward declare struct ui_out.
2242         Forward declare struct private_inferior.
2243         (struct inferior): New.
2244         (init_inferior_list, add_inferior, add_inferior_silent)
2245         (delete_inferior, delete_inferior_silent, detach_inferior)
2246         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
2247         (valid_inferior_id, find_inferior_pid): New functions.
2248         (inferior_callback_func): New typedef.
2249         (iterate_over_inferiors, print_inferior, have_inferiors)
2250         (current_inferior): New functions.
2251         * inferior.c: New file.
2252
2253         * Makefile.in (SFILES): Add inferior.c.
2254         (COMMON_OBS): Add inferior.o.
2255
2256 2008-09-22  Jonathan Larmour  <jifl@eCosCentric.com>
2257
2258         * arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
2259         instead of determining symbol and line info directly.
2260         * MAINTAINERS: Update my email address.
2261
2262 2008-09-22  Daniel Jacobowitz  <dan@codesourcery.com>
2263
2264         * symtab.c (skip_prologue_using_sal): Treat two consecutive lines
2265         at the same address as a prologue marker.  Do not skip an entire
2266         function.
2267
2268 2008-09-22  Andrew Stubbs  <ams@codesourcery.com>
2269
2270         * frame.c (get_frame_register_bytes): Comment improvments.
2271
2272 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
2273
2274         * linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
2275         all-stop mode.
2276
2277 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2278
2279         * MAINTAINERS: Update my email address.
2280
2281 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
2282
2283         * frame.c (get_frame_register_bytes): Detect bad debug info.
2284
2285 2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
2286
2287         Fix a crash on uninitialized ECS->EVENT_THREAD for a newly found thread.
2288         * infrun.c (wait_for_inferior): Move this ECS->EVENT_THREAD
2289         initialization ...
2290         (fetch_inferior_event): ... and this ECS->EVENT_THREAD initialization
2291         ...
2292         (handle_inferior_event): ... here after the add_thread call together
2293         with the local adjust_pc_after_break and reinit_frame_cache calls.
2294
2295 2008-09-16  David Daney  <ddaney@avtrex.com>
2296
2297         * breakpoint.c (bpstat_stop_status): Clear breakpoint_at for
2298         all hardware bpstats.
2299
2300 2008-09-16  Joel Brobecker  <brobecker@adacore.com>
2301
2302         * gstdint.h: Delete.
2303
2304 2008-09-15  Mark Kettenis  <kettenis@gnu.org>
2305
2306         * infcall.c (generic_push_dummy_code): Remove.
2307         (push_dummy_code): Unconditionally call gdbarch_push_dummy_code.
2308
2309 2008-09-15  Doug Evans  <dje@google.com>
2310
2311         * dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
2312         (struct attribute): Ditto.
2313
2314 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2315
2316         * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind_cache): Record
2317         HPPA_IPSW_REGNUM and HPPA_SAR_REGNUM values.
2318
2319         * hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
2320         "#if 0" "#endif".  Fix mapping of DWARF DBX registers to GDB registers.
2321         Correct arguments and improve comments.
2322         (hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum.  Delete
2323         disabled code.
2324         * hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating
2325         point DBX register, change error to warning, and improve comments.
2326
2327 2008-09-14  Doug Evans  <dje@google.com>
2328
2329         * dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.
2330
2331 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2332
2333         * hppa-linux-tdep.c (hppa_linux_supply_fpregset): Correct iteration.
2334
2335 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2336
2337         * defs.h (GCC_GENERATED_STDINT_H): Define.
2338
2339 2008-09-13  Tom Tromey  <tromey@redhat.com>
2340
2341         * varobj.c (varobj_set_display_format): Use xfree.
2342         * tracepoint.c (stringify_collection_list): Use xfree.
2343         * remote-fileio.c (remote_fileio_reset): Use xfree.
2344         * mipsread.c (read_alphacoff_dynamic_symtab): Use xfree.
2345         * dfp.c (decimal_from_floating): Use xfree, xstrprintf.  Don't use
2346         asprintf.
2347         * cp-support.c (mangled_name_to_comp): Use xfree.
2348
2349 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2350
2351         * ada-lang.c (remove_extra_symbols): Remove stub symbols if
2352         the associated complete symbol is also in the list.
2353         (ada_add_local_symbols, ada_add_non_local_symbols): New functions,
2354         extracted out from ada_lookup_symbol_list.
2355         (ada_lookup_symbol_list): Use them.  Remove the search through
2356         the minimal symbols.
2357
2358 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
2359
2360         * dwarf2read.c (add_partial_subprogram): New procedure.
2361         (scan_partial_symbols): Use it.
2362         (load_partial_dies): Read in children of subprogram and lexical
2363         blocks for Ada compilation units.
2364
2365 2008-09-13  Tom Tromey  <tromey@redhat.com>
2366
2367         * symfile.c (build_id_verify): Free 'found'.
2368         (find_separate_debug_file): Use xfree, not free.
2369
2370 2008-09-12  Doug Evans  <dje@google.com>
2371
2372         * corefile.c (write_memory): Remove unnecessary copying.
2373
2374         * sol-thread.c (_initialize_sol_thread): Add FIXME regarding
2375         order of _initialize_* fns.
2376
2377         * dwarf2read.c (comp_unit_head): Rename first_die_ptr to
2378         first_die_offset.  All uses updated.
2379         Delete unused members cu_head_ptr, next.
2380         Move members base_known, base_address to ...
2381         (dwarf2_cu) ... here.  All uses updated.
2382
2383 2008-09-12  Pedro Alves  <pedro@codesourcery.com>
2384
2385         * Makefile.in (generated_files): Add $(NAT_GENERATED_FILES).
2386         * config/i386/i386gnu.mh (NAT_GENERATED_FILES): New.
2387
2388 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2389
2390         * fork-child.c (startup_inferior): Use target_wait and target_resume
2391         directly instead of calling wait_for_inferior / resume.
2392
2393         * infcmd.c (kill_if_already_running): Do not call no_shared_libraries
2394         or init_wait_for_inferior.
2395         (run_command_1): Call init_wait_for_inferior.
2396
2397 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2398
2399         * gdbtypes.h (builtin_type_void_data_ptr, builtin_type_void_func_ptr,
2400         builtin_type_CORE_ADDR, builtin_type_char, builtin_type_short,
2401         builtin_type_int, builtin_type_long, builtin_type_signed_char,
2402         builtin_type_unsigned_char, builtin_type_unsigned_short,
2403         builtin_type_unsigned_int, builtin_type_unsigned_long,
2404         builtin_type_float, builtin_type_double, builtin_type_long_double,
2405         builtin_type_complex, builtin_type_double_complex, builtin_type_string,
2406         builtin_type_bool, builtin_type_long_long,
2407         builtin_type_unsigned_long_long): Remove macros.
2408
2409         (builtin_type_f_character, builtin_type_f_integer,
2410         builtin_type_f_integer_s2, builtin_type_f_logical,
2411         builtin_type_f_logical_s1, builtin_type_f_logical_s2,
2412         builtin_type_f_real, builtin_type_f_real_s8, builtin_type_f_real_s16,
2413         builtin_type_f_complex_s8, builtin_type_f_complex_s16,
2414         builtin_type_f_complex_s32): Likewise.
2415
2416         (builtin_type_m2_char, builtin_type_m2_int, builtin_type_m2_card,
2417         builtin_type_m2_real, builtin_type_m2_bool): Likewise.
2418
2419         (struct builtin_f_type, builtin_f_type): Move to f-lang.h.
2420         (struct builtin_m2_type, builtin_m2_type): Move to m2-lang.h.
2421
2422         * f-lang.h (struct builtin_f_type, builtin_f_type): Move here.
2423         * m2-lang.h (struct builtin_m2_type, builtin_m2_type): Move here.
2424
2425 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2426
2427         * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Use builtin types of
2428         target_gdbarch instead of builtin_type_void_data_ptr.
2429         (LM_DYNAMIC_FROM_LINK_MAP, LM_NEXT, LM_NAME,
2430         IGNORE_FIRST_LINK_MAP_ENTRY, scan_dyntag, elf_locate_base,
2431         solib_svr4_r_map, solib_svr4_r_brk, solib_svr4_r_ldsomap,
2432         open_symbol_file_object): Likewise.
2433         * nto-tdep.c (LM_ADDR): Likewise.
2434
2435 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2436
2437         * bsd-uthread.c (bsd_uthread_read_memory_address): New function.
2438         (bsd_uthread_fetch_registers, bsd_uthread_store_registers,
2439         bsd_uthread_wait, bsd_uthread_find_new_threads): Use it.
2440
2441 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2442
2443         * procfs.c (procfs_address_to_host_pointer): Use target_gdbarch
2444         and its associated types to perform pointer conversion.
2445         (procfs_can_use_hw_breakpoint): Likewise.
2446         (procfs_auxv_parse): Remove unused variable.
2447
2448 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2449
2450         * auxv.c (default_auxv_parse): Use gdbarch_ptr_bit (target_gdbarch)
2451         instead of builtin_type_void_data_ptr.
2452         * target.c (default_region_ok_for_hw_watchpoint): Likewise.
2453
2454 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2455
2456         * expprint.c (print_subexp_standard): Compare against builtin type
2457         associated with exp->gdbarch instead of builtin_type_char.
2458
2459         * f-valprint.c (f_val_print): Use extract_unsigned_integer to
2460         extract values of arbitrary logical type.  Handle arbitrary
2461         complex types.
2462
2463         * printcmd.c (float_type_from_length): New function.
2464         (print_scalar_formatted, printf_command): Use it.
2465
2466 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2467
2468         * valops.c: Include "objfiles.h" and "symtab.h".
2469         (find_function_in_inferior): New argument OBJF_P.  Use it to return
2470         objfile where function is defined.  Use per-objfile arch types
2471         instead of builtin_type_ to define default return type.
2472
2473         * linux-fork.c (checkpoint_command): Update calls.  Use per-objfile
2474         architecture to define inferior call argument types.
2475         * gcore.c (derive_heap_segment): Likewise.
2476         * objc-lang.c (value_nsstring): Likewise.
2477         * scm-lang.c (scm_lookup_name): Likewise.
2478         * scm-valprint.c (scm_inferior_print): Likewise.
2479         * valops.c (value_allocate_space_in_inferior): Likewise.
2480
2481         * eval.c (evaluate_subexp_standard): Update calls.
2482         * objc-lang.c (lookup_objc_class, print_object_command): Likewise.
2483
2484         * linux-fork.c: Include "objfiles.h".
2485         * scm-lang.c: Include "objfiles.h".
2486         * scm-valprint.c: Include "objfiles.h".
2487
2488 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2489
2490         * gdbarch.sh (name_of_malloc): Remove.
2491         * gdbarch.c, gdbarch.h: Re-generate.
2492         * valops.c (value_allocate_space_in_inferior): Do not call
2493         gdbarch_name_of_malloc.
2494
2495 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2496
2497         * valarith.c (value_x_unop): Use builtin_type_int8 as type for
2498         UNOP_POSTINCREMENT/UNOP_POSTDECREMENT constant 0 argument.
2499         (value_bit_index): Use extract_unsigned_integer
2500         instead of unpack_long to read single byte.
2501
2502 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2503
2504         * infcall.c (value_arg_coerce): Add GDBARCH parameter.  Use its
2505         associates types instead of builtin_type_ macros.
2506         (find_function_addr): Leave output VALUE_TYPE NULL if unknown.
2507         (call_function_by_hand): Use per-architecture "int" type as
2508         fall-back if find_function_addr returns NULL VALUE_TYPE.
2509         Update call to value_arg_coerce.
2510
2511 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2512
2513         * cp-abi.h (cplus_method_ptr_size): Add TO_TYPE parameter.
2514         (cplus_make_method_ptr): Add TYPE parameter.
2515         * cp-abi.c (cplus_method_ptr_size): Add TO_TYPE parameter.  Pass it
2516         on to current_cp_abi.method_ptr_size callback.
2517         (cplus_make_method_ptr): Add TYPE parameter.  Pass it on to
2518         current_cp_abi.make_method_ptr callback.
2519
2520         * gdbtypes.c (lookup_methodptr_type): Pass target type
2521         argument to cplus_method_ptr_size.
2522         * valops.c (value_cast): Pass type argument to cplus_make_method_ptr.
2523         (value_struct_elt_for_reference): Likewise.
2524
2525         * gnu-v3-abi.c (get_class_arch): New function.
2526         (vtable_address_point_offset): Add GDBARCH parameter.  Use it
2527         instead of current_gdbarch.  Update all callers.
2528         (gnuv3_get_vtable): Likewise.
2529         (gnuv3_get_virtual_fn): Likewise.
2530         (gnuv3_decode_method_ptr): Likewise.
2531         (gnuv3_rtti_type): Call get_class_arch to determine architecture.
2532         Use it instead of current_gdbarch.
2533         (gnuv3_virtual_fn_field): Likewise.
2534         (gnuv3_baseclass_offset): Likewise.
2535         (gnuv3_print_method_ptr): Likewise.
2536         (gnuv3_method_ptr_to_value): Likewise.
2537         (gnuv3_method_ptr_size): Add TYPE parameter.  Use it to determine
2538         class architecture.  Use architecture types instead of builtin types.
2539         (gnuv3_make_method_ptr): Likewise.
2540
2541         * cp-valprint.c (cp_print_class_member): Expect pointer type
2542         instead of class type.  Use its length when extracting value.
2543         * c-valprint.c (c_val_print): Update call to cp_print_class_member.
2544
2545 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2546
2547         * stack.c (return_command): Use frame architecture to determine
2548         default integer return type.
2549
2550         * f-valprint.c (f77_get_dynamic_lowerbound): Use frame architecture
2551         to determine pointer types.
2552         (f77_get_dynamic_upperbound): Likewise.
2553
2554         * objc-lang.c (OBJC_FETCH_POINTER_ARGUMENT): Remove.
2555         (resolve_msgsend): Use architecture of current frame to determine
2556         pointer types.  Inline OBJC_FETCH_POINTER_ARGUMENT.
2557         (resolve_msgsend_stret, resolve_msgsend_super,
2558         resolve_msgsend_super_stret): Likewise.
2559
2560 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2561
2562         * alpha-tdep.c (alpha_register_type): Use builtin_type (gdbarch)
2563         instead of builtin_type_ macros.
2564         * amd64-tdep.c (amd64_register_type): Likewise.
2565         (amd64_get_longjmp_target): Likewise.
2566         * arm-tdep.c (arm_register_type): Likewise.
2567         * avr-tdep.c (avr_register_type): Likewise.
2568         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
2569         * frv-tdep.c (frv_register_type): Likewise.
2570         * h8300-tdep.c (h8300_register_type): Likewise.
2571         * hppa-tdep.c (hppa32_convert_from_func_ptr_addr, 
2572         hppa_skip_trampoline_code): Likewise.
2573         * i386-tdep.c (i386_register_type): Likewise.
2574         (i386_unwind_pc, i386_sse_type): Likewise.
2575         * ia64-tdep.c (ia64_register_type): Likewise.
2576         * m32r-tdep.c (m32r_register_type): Likewise.
2577         * m68k-tdep.c (m68k_register_type, m68k_unwind_pc): Likewise.
2578         * m88k-tdep.c (m88k_register_type): Likewise.
2579         * mep-tdep.c (mep_register_type): Likewise.
2580         * mips-tdep.c (mips_pseudo_register_type): Likewise.
2581         * mn10300-tdep.c (mn10300_register_type): Likewise.
2582         * mt-tdep.c (mt_copro_register_type): Likewise.
2583         * rs6000-tdep.c (rs6000_builtin_type_vec64): Likewise.
2584         (rs6000_convert_register_p, rs6000_register_to_value,
2585         rs6000_value_to_register): Likewise.
2586         * s390-tdep.c (s390_register_type): Likewise.
2587         * sh64-tdep.c (sh64_register_type): Likewise.
2588         (sh64_build_float_register_type, sh64_do_fp_register): Likewise.
2589         * sh-tdep.c (sh_sh2a_register_type, sh_sh3e_register_type,
2590         sh_sh4_build_float_register_type, sh_sh4_register_type,
2591         sh_default_register_type): Likewise.
2592         * sparc64-tdep.c (sparc64_register_type): Likewise.
2593         * sparc-tdep.c (sparc32_register_type): Likewise.
2594         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
2595         * v850-tdep.c (v850_register_type): Likewise.
2596         * vax-tdep.c (vax_register_type): Likewise.
2597         * xtensa-tdep.c (xtensa_register_type, xtensa_unwind_pc,
2598         xtensa_push_dummy_call): Likewise.
2599
2600         * std-regs.c (value_of_builtin_frame_fp_reg,
2601         value_of_builtin_frame_pc_reg): Likewise.
2602         * target-descriptions.c (tdesc_register_type): Likewise.
2603
2604 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2605
2606         * ada-lang.c (ada_coerce_to_simple_array_type): Use builtin_type_int32
2607         instead of builtin_type_int as default unspecified integral type.
2608         (ada_index_type, ada_array_bound_from_type, ada_variant_discrim_type,
2609         assign_component, to_fixed_range_type): Likewise.
2610         * ada-typeprint.c (print_range, print_range_bound,
2611         print_range_type_named): Likewise.
2612         * ada-valprint.c (print_optional_low_bound, ada_val_print_1): Likewise.
2613         * eval.c (evaluate_subexp_standard): Likewise.
2614         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2615         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
2616         build_gdb_vtable_type): Likewise.
2617         * jv-lang.c (java_array_type): Likewise.
2618         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Likewise.
2619         * m2-valprint.c (m2_print_long_set): Likewise.
2620         * parse.c (follow_types): Likewise.
2621         * p-typeprint.c (pascal_type_print_base): Likewise.
2622         * valops.c (value_one, value_array, value_string,
2623         value_bitstring): Likewise.
2624         * value.c (allocate_repeat_value, value_from_string): Likewise.
2625         * varobj.c (c_describe_child): Likewise.
2626         * mt-tdep.c (mt_register_type): Likewise.
2627         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
2628         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
2629
2630 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2631
2632         * defs.h (struct gdbarch): Add forward declaration.
2633         (set_next_address): Add GDBARCH argument.
2634         * printcmd.c (set_next_address): Use it to find pointer type.
2635         * breakpoint.c (breakpoint_1): Update call.
2636         * source.c (line_info): Likewise.
2637         * findcmd.c (find_command): Use current_gdbarch to find pointer type.
2638
2639         * breakpoint.c (set_breakpoint_count): Use platform-neutral
2640         types for internal variable values.
2641         * infrun.c (handle_inferior_event): Likewise.
2642         * source.c (forward_search_command, reverse_search_command): Likewise.
2643         * tracepoint.c (set_tracepoint_count, set_traceframe_num,
2644         set_tracepoint_num, set_traceframe_context): Likewise.
2645
2646 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2647
2648         * gdbtypes.h (struct builtin_type): Remove builtin_true_char
2649         and builtin_true_unsigned_char.
2650         (builtin_type_true_char): Remove macro, add extern declaration.
2651         (builtin_type_true_unsigned_char): Add extern declaration.
2652         * gdbtypes.c (builtin_type_true_char): New global variable.
2653         (builtin_type_true_unsigned_char): Likewise.
2654         (_initialize_gdbtypes): Initialize them.
2655         (gdbtypes_post_init): Do not initialize builtin_true_char
2656         and builtin_true_unsigned_char members of struct builtin_type.
2657
2658         * printcmd.c (print_scalar_formatted): Do not use builtin_type;
2659         use builtin_type_true_unsigned_char instead.
2660
2661         * ada-valprint.c (ada_val_print_1): Use builtin_type_true_char
2662         instead of builtin_type_char for internal string.
2663
2664 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2665
2666         * gdbtypes.h (builtin_type_void): Remove macro, add declaration.
2667         (builtin_type_f_void): Remove macro.
2668         * gdbtypes.c (builtin_type_void): New global variable.
2669         (_initialize_gdbtypes): Initialize it.
2670
2671         * gnu-v3-abi.c (build_gdb_vtable_type): Do not call
2672         lookup_pointer_type or lookup_function_type on builtin_type_void.
2673         * printcmd.c (set_next_address): Likewise.
2674         * objc-lang.c (value_nsstring): Likewise.
2675         * mt-tdep.c (mt_copro_register_type): Likewise.
2676         * xtensa-tdep.c (xtensa_register_type): Likewise.
2677
2678         * symfile.c (syms_from_objfile): Remove special handling
2679         of builtin_type_void and builtin_type_char.
2680
2681 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2682
2683         * eval.c (evaluate_subexp_standard): Use exp->gdbarch types instead
2684         of builtin_type_ macros when handling OP_OBJC_ operations.
2685         * objc-lang.c (print_object_command): Likewise.
2686
2687 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2688
2689         * ada-valprint.c: Include "objfiles.h".
2690         (ada_val_print_1): Use the gdbarch associated with the objfile whether
2691         a System.Address type is defined to retrieve the proper pointer type
2692         to use to print it.
2693
2694 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2695
2696         * ada-lang.c (value_pos_atr): Add TYPE argument.  Use it as
2697         result type instead of builtin_type_int.
2698         (value_subscript_packed): Use pos_atr instead of value_pos_atr.
2699         (ada_value_subscript): Update call to value_pos_atr.
2700         (ada_value_ptr_subscript): Likewise.
2701         (ada_evaluate_subexp): Likewise.
2702
2703 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2704
2705         * ada-lang.c (cast_to_fixed): Do not cast to builtin_type_double.
2706         (cast_from_fixed_to_double): Rename to ...
2707         (cast_from_fixed): ... this.  Add TYPE parameter.  Use it instead
2708         of builtin_type_double.
2709         (ada_value_cast): Use cast_from_fixed instead of casting result
2710         of cast_from_fixed_to_double.
2711         (ada_evaluate_subexp): Update calls to cast_from_fixed_to_double. 
2712
2713 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2714
2715         * valops.c (value_ind): No longer allow dereferencing an
2716         integer type.
2717         * eval.c (evaluate_subexp_standard): Handle deferencing an
2718         integer type here.
2719         * ada-lang.c (ada_evaluate_subexp): Likewise.
2720
2721 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2722
2723         * ada-valprint.c (ada_val_print_1): When implicitly dereferencing
2724         a reference type, pass the reference type directly to unpack_pointer.
2725         * c-valprint.c (c_val_print): Likewise.
2726         * f-valprint.c (f_val_print): Likewise.
2727         * m2-valprint.c (print_variable_at_address, m2_val_print): Likewise.
2728         * p-valprint.c (pascal_val_print): Likewise.
2729
2730 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2731
2732         * eval.c (evaluate_subexp_standard): Use builtin_type_int8
2733         to construct the EVAL_SKIP dummy return value.
2734         * ada-lang.c (ada_evaluate_subexp): Likewise.
2735         * jv-lang.c (evaluate_subexp_java): Likewise.
2736         * m2-lang.c (evaluate_subexp_modula2): Likewise.
2737         * scm-lang.c (evaluate_exp): Likewise.
2738
2739 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2740
2741         * value.h (coerce_enum, coerce_number): Remove prototypes.
2742         * value.c (coerce_enum, coerce_number): Remove.
2743         * valarith.c (value_x_binop): Do not call coerce_enum.
2744         (value_x_unop): Likewise.
2745         (value_logical_not): Call coerce_array instead of coerce_number.
2746
2747 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2748
2749         * ax-gdb.c: Include "language.h".
2750         (gen_frame_args_address): Add GDBARCH parameter; use it
2751         instead of current_gdbarch.
2752         (gen_frame_locals_address): Likewise.
2753         (gen_var_ref): Add GDBARCH parameter.  Update calls to
2754         gen_frame_args_address and gen_frame_locals_address.  Use
2755         pointer type from gdbarch.
2756         (gen_usual_unary): Add EXP parameter.  Use integer type
2757         from exp->gdbarch.
2758         (gen_usual_arithmetic): Likewise.
2759         (gen_integral_promotions): Likewise.
2760         (gen_add, gen_sub): Remove.
2761         (gen_ptradd, gen_ptrsub, gen_ptrdiff): New functions.
2762         (gen_logical_not): Use passed-in boolean result type
2763         instead of builtin_type_int.
2764         (gen_complement): Do not call gen_usual_unary or
2765         gen_integral_promotions.
2766         (gen_struct_ref): Call require_rvalue instead of gen_usual_unary.
2767         (gen_repeat): Add EXP parameter.  Update call to gen_expr.
2768         Use builtin_type_int32 as internal range type.
2769         (gen_sizeof): Add EXP and SIZE_TYPE parameters.  Use SIZE_TYPE
2770         as result type.  Update call to gen_expr.
2771         (gen_expr): Add EXP parameter.  Update calls to gen_expr,
2772         gen_repeat, gen_var_ref, gen_usual_unary, gen_usual_arithmetic,
2773         and gen_integral_promotions.  Call gen_ptradd, gen_ptrsub,
2774         gen_ptrdiff, or gen_binop instead of gen_add or gen_sub.
2775         Use exp->gdbarch instead of current_gdbarch.
2776         Call language_bool_type to determine result type of UNOP_LOGICAL_NOT.
2777
2778 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2779
2780         * eval.c (evaluate_subexp_standard): Add calls to binop_promote
2781         and unop_promote before calling value_binop et. al.
2782         * ada-lang.c (ada_evaluate_subexp): Add calls to binop_promote
2783         and unop_promote before calling value_binop et. al.
2784
2785         * valarith.c (value_binop): Do not call binop_promote or unop_promote.
2786         (value_pos): Do not call unop_promote.
2787         (value_neg, value_complement): Likewise.
2788
2789 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2790
2791         * value.h (unop_promote, binop_promote): Add prototypes.
2792         * eval.c (unop_promote, binop_promote): New functions.
2793         * valarith.c (unop_result_type, binop_result_type): Remove.
2794         (value_binop): Call binop_promote or unop_promote.
2795         Inline remaining parts of binop_result_type.  Remove special
2796         code to truncate integer values for unsigned operations.
2797         (value_pos): Call unop_promote.  Inline remaining parts of
2798         unop_result_type.
2799         (value_neg, value_complement): Likewise.
2800
2801 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2802
2803         * value.h (value_add, value_sub): Remove.
2804         (value_ptradd, value_ptrsub, value_ptrdiff): Add prototypes.
2805         * valarith.c (value_add, value_sub): Remove.
2806         (value_ptradd, value_ptrsub, value_ptrdiff): New functions.
2807         (find_size_for_pointer_math): Add assertion.  Update comment.
2808         (value_binop): Update comment.
2809
2810         * eval.c (ptrmath_type_p): New function.
2811         (evaluate_subexp_standard): Replace value_add and value_sub
2812         by value_ptradd, value_ptrsub, value_ptrdiff or value_binop.
2813         Use builtin_type_uint8 instead of builtin_type_char to hold
2814         the increment for BINOP_{PRE,POST}{IN,DE}CREMENT operations.
2815         * valarith.c (value_subscript): Replace value_add by
2816         value_ptradd.  Replace value_sub by value_binop.
2817         * ada-lang.c (ada_value_ptr_subscript): Likewise.
2818         (ada_tag_name_2): Replace value_add by value_ptradd.
2819         (ada_evaluate_subexp): Replace value_add and value_sub by
2820         value_binop.
2821         * m2-lang.c (evaluate_subexp_modula2): Replace value_add
2822         by value_ptradd.
2823         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
2824         * gnu-v3-abi.c (gnuv3_method_ptr_to_value): Likewise.
2825
2826 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2827
2828         * eval.c (evaluate_subexp_for_sizeof): Use builtin_int type of
2829         the expression architecture instead of builtin_type_int as the
2830         sizeof return type.
2831
2832 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2833
2834         * expression.h (enum exp_opcode): Document OP_COMPLEX to take
2835         a type parameter as expression element.
2836         * eval.c (evaluate_subexp_standard) [OP_COMPLEX]: Retrieve result
2837         type as expression element.
2838         * f-exp.y: Pass in type when buildin OP_COMPLEX expression.
2839         * parse.c (operator_length_standard): Update length of OP_COMPLEX.
2840
2841 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2842
2843         * language.h (struct language_arch_info): New members
2844         bool_type_default and bool_type_symbol.
2845         (lang_bool_type): Remove prototype.
2846         (LA_BOOL_TYPE): Remove macro.
2847         (language_bool_type): Add prototype.
2848         * language.c (lang_bool_type): Remove.
2849         (language_bool_type): New function.
2850
2851         * value.h (value_in): Change return value to int.
2852         * value.c (value_in): Return int instead of struct value *.
2853
2854         * eval.c (evaluate_subexp_standard): Call language_bool_type instead
2855         of using LA_BOOL_TYPE.  Update call to value_in.
2856         * ada-lang.c (ada_evaluate_subexp): Call language_bool_type instead
2857         of using LA_BOOL_TYPE or builtin_type_int for boolean values.
2858
2859         * language.c (unknown_language_arch_info): Set bool_type_default member
2860         of struct language_arch_info.
2861         * ada-lang.c (ada_language_arch_info): Set bool_type_symbol and
2862         bool_type_default members of struct language_arch_info.
2863         * c-lang.c (c_language_arch_info): Set bool_type_default member
2864         of struct language_arch_info.
2865         (cplus_language_arch_info): Set bool_type_symbol and bool_type_default
2866         members of struct language_arch_info.
2867         * f-lang.c (f_language_arch_info): Set bool_type_symbol and
2868         bool_type_default members of struct language_arch_info.
2869         * jv-lang.c (java_language_arch_info): Set bool_type_symbol and
2870         bool_type_default members of struct language_arch_info.
2871         * m2-lang.c (m2_language_arch_info): Set bool_type_symbol and
2872         bool_type_default members of struct language_arch_info.
2873         * p-lang.c (p_language_arch_info): Set bool_type_symbol and
2874         bool_type_default members of struct language_arch_info.
2875
2876 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2877
2878         * jv-lang.c (enum java_primitive_types): New type.
2879         (java_language_arch_info): New function.
2880         (java_language): Use it instead of c_language_arch_info.
2881
2882 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2883
2884         * value.h (value_bitstring_subscript): New prototype.
2885         * valarith.h (value_bitstring_subscript): New function.
2886         (value_subscript): No longer handle TYPE_CODE_BITSTRING.
2887         * eval.c (evaluate_subexp_standard): Call value_bitstring_subscript
2888         instead of value_subscript to handle TYPE_CODE_BITSTRING.
2889
2890 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2891
2892         * expression.h (struct expression): New member GDBARCH.
2893         * parse.c (parse_exp_in_context): Initialize it.
2894         * parser-def.h (parse_gdbarch, parse_language): New macros.
2895
2896         * ada-exp.y (parse_type): New macro.
2897         Replace builtin_type_ macros by using parse_type.
2898         Replace current_language by parse_language.
2899         * ada-lex.l (processInt): Replace current_gdbarch by parse_gdbarch.
2900         Replace builtin_type_ macros.
2901
2902         * c-exp.y (parse_type): New macro.
2903         Replace builtin_type_ macros by using parse_type.
2904         (parse_number): Replace current_gdbarch by parse_gdbarch.
2905         (yylex): Replace current_language by parse_language.
2906
2907         * f-exp.y (parse_type, parse_f_type): New macros.
2908         Replace builtin_type_ macros by using parse_{f_,}type.
2909         (parse_number): Replace current_gdbarch by parse_gdbarch.
2910         (yylex): Replace current_language by parse_language.
2911
2912         * jv-exp.y (parse_type): New macro.
2913         (parse_number): Replace builtin_type_ macros by using parse_type.
2914
2915         * m2-exp.y (parse_type, parse_m2_type): New macros.
2916         Replace builtin_type_ macros by using parse_{m2_,}type.
2917
2918         * objc-exp.y (parse_type): New macro.
2919         Replace builtin_type_ macros by using parse_type.
2920         (parse_number): Replace current_gdbarch by parse_gdbarch.
2921         (yylex): Replace current_language by parse_language.
2922
2923         * p-exp.y (parse_type): New macro.
2924         Replace builtin_type_ macros by using parse_type.
2925         (parse_number): Replace current_gdbarch by parse_gdbarch.
2926         (yylex): Replace current_language by parse_language.
2927
2928 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
2929
2930         * parser-defs.h (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE
2931         and DATA_SYMBOL_TYPE arguments.
2932         * parse.c (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE and
2933         DATA_SYMBOL_TYPE arguments.  Replace use of builtin_type_CORE_ADDR.
2934         (write_dollar_variable): Update call.
2935
2936         * ada-exp.y (write_var_or_type): Update call.
2937         * c-exp.y: Likewise.
2938         * f-exp.y: Likewise.
2939         * jv-exp.y: Likewise.
2940         * m2-exp.y: Likewise.
2941         * objc-exp.y: Likewise.
2942         * p-exp.y: Likewise.
2943
2944 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
2945
2946         * ada-lang.c (ada_parent_type): Add handling of the case where
2947         the _parent field is a pointer and/or has a parallel XVS type.
2948         (ada_evaluate_subexp) [OP_VAR_VALUE]: When doing an
2949         EVAL_AVOID_SIDE_EFFECTS evaluation of a tagged type, return
2950         the type of the tag instead of doing forcing an EVAL_NORMAL
2951         expression evaluation.
2952
2953 2008-09-10  Paul N. Hilfinger  <hilfinger@adacore.com> 
2954             Joel Brobecker  <brobecker@adacore.com>
2955
2956         * ada-lang.c (is_digits_suffix): New function.
2957         (is_dot_digits_suffix): Remove.
2958         (ada_lookup_symbol_list): Remove digits suffix from minimal symbols
2959         before looking up in symbol table, and do not use wild matches on them.
2960         (wild_match): Reimplement for speed and to allow matching of operator
2961         symbols.
2962         (is_valid_name_for_wild_match): Return zero for names that do not
2963         follow the GNAT encoding.
2964
2965         (is_name_suffix): Fix typo in comment.
2966         (to_record_with_fixed_variant_part): Ditto.
2967
2968 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
2969
2970         * Makefile.in (gnu-nat.o): New rule.
2971
2972 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
2973
2974         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Use
2975         archecture-neutral builtin_type_int32 instead of builtin_type_int.
2976
2977 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
2978
2979         * ada-lang.c (ada_evaluate_subexp) [BINOP_ADD, BINOP_SUB]:
2980         Add special handling for pointer types.
2981
2982 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
2983
2984         * inf-ttrace.c (inf_ttrace_follow_fork): Declare locals at the
2985         right scope level.
2986         (inf_ttrace_resume, inf_ttrace_wait): Typos.
2987
2988 2008-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
2989
2990         * ada-lang.c (ada_array_length): Use builtin_type_int32 instead
2991         of builtin_type_int.
2992         (ada_evaluate_subexp) [UNOP_IN_RANGE]: Use operand range type
2993         instead of builtin_type_int.
2994
2995 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
2996
2997         * infrun.c (normal_stop): Run hook-stop last.
2998
2999 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3000
3001         * gnu-nat.c (gnu_pid_to_exec_file): Delete.
3002         (init_gnu_ops): Don't register it.
3003
3004 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
3005
3006         * gnu-nat.c (gnu_attach): Push target before fetching the list of
3007         threads.
3008
3009 2008-09-08  Daniel Jacobowitz  <dan@codesourcery.com>
3010
3011         * valops.c (value_cast_structs): Return NULL for failure.
3012         (value_cast): Handle NULL from value_cast_structs.
3013         (value_fetch_lazy): Call check_typedef.  Remove unused variable.
3014
3015 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3016
3017         * inferior.h (context_switch_to): Delete.
3018         * infrun.c (context_switch): Don't save and load infrun state.
3019         (context_switch_to): Delete.
3020
3021         * infcmd.c (proceed_thread_callback): Replace context_switch_to
3022         calls by switch_to_thread calls.
3023
3024         * gdbthread.h (save_infrun_state, load_infrun_state): Delete.
3025         * thread.c (main_thread_state, main_thread_executing): Delete.
3026         (inferior_thread): Delete references to them.
3027         (add_thread_silent): Fix case where we're adding a thread with the
3028         same ptid as an exited thread.  Remove references to
3029         context-switching.
3030         (load_infrun_state, save_infrun_state): Delete.
3031         (thread_alive, is_thread_state, any_running, is_executing)
3032         (set_executing): Remove the special handling for targets that
3033         don't register any thread.
3034         (restore_current_thread, thread_apply_all_command)
3035         (do_captured_thread_select): Unconditionally call
3036         switch_to_thread.
3037
3038         * mi/mi-main.c (mi_cmd_execute): Check for exited threads.
3039         Call switch_to_thread instead of context_switch_to.
3040
3041 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3042
3043         Remove global continuations in favour of a per-thread
3044         continuations.
3045
3046         * gdbthread.h (struct thread_info): Add comments around
3047         continuations and intermediate_continuations.
3048         (save_infrun_state, load_infrun_state): Delete continuations and
3049         intermediate_continuations arguments.
3050         * infrun.c (context_switch): Don't context-switch the continuations.
3051         * thread.c (clear_thread_inferior_resources): Discard all
3052         continuations of the thread we're clearing.
3053         (save_infrun_state, load_infrun_state): Delete continuations and
3054         intermediate_continuations arguments, and the code referencing
3055         them.
3056         * utils.c: Include "gdbthread.h".
3057         (cmd_continuation, intermediate_continuation): Delete.
3058         (add_continuation): Add thread_info* argument.  Install the
3059         continuation on it.
3060         (restore_thread_cleanup): New.
3061         (do_all_continuations_ptid, do_all_continuations_thread_callback):
3062         New.
3063         (do_all_continuations): Reimplement.
3064         (discard_all_continuations_thread_callback,
3065         discard_all_continuations_thread): New.
3066         (discard_all_continuations): Reimplement.
3067         (add_intermediate_continuation): Add thread_info* argument.
3068         Install the continuation on it.
3069         (do_all_intermediate_continuations_thread_callback)
3070         (do_all_intermediate_continuations_thread): New.
3071         (do_all_intermediate_continuations): Reimplement.
3072         (discard_all_intermediate_continuations_thread_callback): New.
3073         (discard_all_intermediate_continuations_thread): New.
3074         (discard_all_intermediate_continuations): Reimplement.
3075
3076         * breakpoint.c (until_break_command): Install the continuation on
3077         the current thread.
3078
3079         * defs.h (cmd_continuation, intermediate_continuation): Delete.
3080         (struct thread_info): Forward declare.
3081         (add_continuation, add_intermediate_continuation): Add
3082         thread_info* argument.
3083         (do_all_continuations_thread, discard_all_continuations_thread)
3084         (do_all_intermediate_continuations_thread)
3085         (discard_all_intermediate_continuations_thread): Declare.
3086         * inf-loop.c (inferior_event_handler): In non-stop only run
3087         continuations on the thread that stopped.  In all-stop, run
3088         continuations on all threads.
3089         * infcmd.c (step_once, finish_command): Adjust.
3090
3091 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3092
3093         Remove the global stop_step in favour of a per-thread
3094         stop_step.
3095
3096         * inferior.h (stop_step): Delete.
3097
3098         * gdbthread.h (struct thread_info): Add comments to stop_step.
3099         (save_infrun_state, load_infrun_state): Remove stop_step argument.
3100         * thread.c (load_infrun_state, save_infrun_state): Remove
3101         stop_step argument, and references to it.
3102
3103         * infrun.c (clear_proceed_status): Clear stop_step.
3104         (fetch_inferior_event): Adjust.
3105         (context_switch): Don't context-switch stop_step.
3106         (handle_inferior_event): Adjust.
3107         (normal_stop): Adjust.
3108         (save_inferior_status, restore_inferior_status): Adjust.
3109
3110         * infcmd.c (stop_step): Delete.
3111         (step_1, step_1_continuation, step_once, until_next_command):
3112         Adjust.
3113
3114 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3115
3116         Remove the global step_multi in favour of a per-thread
3117         step_multi.
3118
3119         * inferior.h (step_multi): Delete.
3120         * gdbthread.h (struct thread_info): Add comments around
3121         step_multi.
3122         (save_infrun_state, load_infrun_state): Remove step_multi
3123         parameter.
3124         * thread.c (load_infrun_state, save_infrun_state): Remove
3125         step_multi argument, and references to it.
3126         * infcmd.c (step_multi): Delete.
3127         (step_1): Adjust.
3128         (step_1_continuation, until_next_command): Adjust.
3129         * infrun.c (fetch_inferior_event): Adjust.
3130         (context_switch): Don't context-switch step_multi.
3131         (print_stop_reason, normal_stop): Adjust.
3132
3133 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3134
3135         Remove the global stop_signal in favour of a per-thread
3136         stop_signal.
3137
3138         * inferior.h (stop_signal): Delete.
3139         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3140         stop_signal argument.
3141         * thread.c (load_infrun_state, save_infrun_state): Remove
3142         stop_signal argument.  Don't reference it.
3143
3144         * infcmd.c (stop_signal): Delete.
3145         (program_info): Adjust.
3146         * infrun.c (resume): Clear stop_signal.
3147         (proceed): Adjust.  Pass the last stop_signal to the thread we're
3148         resuming.
3149         (context_switch): Don't context-switch stop_signal.
3150         (handle_inferior_event, keep_going): Adjust.
3151         (save_inferior_status, restore_inferior_status): Adjust.
3152
3153         * fbsd-nat.c: Include "gdbthread.h".
3154         (find_signalled_thread, find_stop_signal): New.
3155         (fbsd_make_corefile_notes): Use it.
3156         * fork-child.c (startup_inferior): Adjust.
3157
3158         * linux-nat.c (get_pending_status): Adjust.
3159         (linux_nat_do_thread_registers): Adjust.
3160         (find_signalled_thread, find_stop_signal): New.
3161         (linux_nat_do_thread_registers): Add stop_signal parameter.
3162         (struct linux_nat_corefile_thread_data): Add stop_signal member.
3163         (linux_nat_corefile_thread_callback): Pass stop_signal.
3164         (linux_nat_do_registers): Delete.
3165         (linux_nat_make_corefile_notes): Use find_stop_signal.  Assume
3166         there's always a thread.
3167
3168         * procfs.c (find_signalled_thread, find_stop_signal): New.
3169         (find_stop_signal): New.
3170         (procfs_do_thread_registers): Add stop_signal parameter.
3171         (struct procfs_corefile_thread_data): Add stop_signal member.
3172         (procfs_corefile_thread_callback): Pass args->stop_signal.
3173         (procfs_make_note_section): Find the last stop_signal.
3174
3175         * solib-irix.c: Include gdbthread.h.
3176         (irix_solib_create_inferior_hook): Adjust.
3177         * solib-osf.c: Include gdbthread.h.
3178         (osf_solib_create_inferior_hook): Adjust.
3179         * solib-sunos.c: Include gdbthread.h.
3180         (sunos_solib_create_inferior_hook): Adjust.
3181         * solib-svr4.c: Include gdbthread.h.
3182         (svr4_solib_create_inferior_hook): Adjust.
3183
3184         * win32-nat.c (do_initial_win32_stuff): Adjust.
3185
3186 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3187
3188         * gdbthread.h (struct thread_info): Add comments around
3189         proceed_to_finish.
3190         (save_infrun_state, load_infrun_state): Remove proceed_to_finish
3191         argument.
3192         * thread.c (load_infrun_state, save_infrun_state): Delete
3193         proceed_to_finish argument and references to it.
3194
3195         * infcall.c (call_function_by_hand): Adjust.
3196         * infcmd.c (finish_command): Adjust.
3197         * infrun.c (proceed_to_finish): Delete.
3198         (clear_proceed_status): Adjust.
3199         (context_switch): Don't context-switch proceed_to_finish.
3200         (normal_stop, save_inferior_status, restore_inferior_status):
3201         Adjust.
3202
3203 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3204
3205         * inferior.h (stop_bpstat): Delete.
3206
3207         * breakpoint.h (bpstat_do_actions): Remove bpstat* argument.
3208         
3209         * breakpoint.c (bpstat_do_actions): Rename to ...
3210         (bpstat_do_actions_1): ... this.  Make static.  Change return type
3211         to int.  Return true if a breakpoint proceeded.
3212         (bpstat_do_actions): New, as wrapper around bpstat_do_actions_1.
3213         (delete_breakpoint): Don't reference the global stop_bpstat; it's
3214         gone.
3215
3216         * gdbthread.h (struct thread_info): Add stop_bpstat.
3217         (save_infrun_state, load_infrun_state): Remove stop_bpstat
3218         argument.
3219         * thread.c (load_infrun_state, save_infrun_state): Remove
3220         stop_bpstat argument, and the code referencing it.
3221
3222         * infcall.c: Include "gdbthread.h".
3223         (call_function_by_hand): Adjust.
3224         * exceptions.c: Include "gdbthread.h".
3225         (throw_exception): Adjust.
3226         * infcmd.c (stop_bpstat): Delete.
3227         (continue_command): In all-stop, set the ignore count on the
3228         thread that reported the stop.  In non-stop, set it on the current
3229         thread.
3230         (finish_command_continuation): Adjust.
3231         (program_info): Adjust.
3232         * infrun.c (clear_proceed_status): Adjust.
3233         (context_switch): Don't context-switch stop_bpstat.
3234         (handle_inferior_event): Adjust.
3235         (normal_stop): Adjust.
3236         (save_inferior_status, restore_inferior_status): Adjust.
3237
3238         * inf-loop.c (inferior_event_handler): Remove parameter to
3239         bpstat_do_actions call.
3240         * top.c (command_loop): Remove parameter to bpstat_do_actions
3241         call.  Call it unconditionally.
3242         * event-top.c (command_handler): Ditto.
3243         * python/python.c (execute_gdb_command): Ditto.
3244
3245 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3246
3247         * inferior.h (step_over_calls): Delete.
3248
3249         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
3250         step_over_calls argument.
3251         * thread.c (save_infrun_state, load_infrun_state): Remove
3252         step_over_calls argument.  Adjust.
3253
3254         * infcmd.c (step_over_calls): Delete.
3255         (step_1): Adjust.
3256         * infrun.c (clear_proceed_status): Adjust.
3257         (context_switch): Don't context-switch step_over_calls.
3258         (handle_inferior_event, save_inferior_status)
3259         (restore_inferior_status): Adjust.
3260
3261 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3262
3263         Remove context switching in favour of accessing thread_info fields
3264         directly.
3265
3266         * infrun.c (stepping_over_breakpoint, step_resume_breakpoint):
3267         Delete.
3268         (struct thread_stepping_state): Delete.
3269         (gtss, tss): Delete.
3270         (follow_inferior_reset_breakpoints, follow_exec)
3271         (resume, clear_proceed_status): Adjust.
3272         (prev_pc): Delete.
3273         (proceed, start_remote, init_wait_for_inferior): Adjust.
3274         (struct execution_control_state): Add event_thread member.
3275         (delete_step_resume_breakpoint_callback)
3276         (delete_step_thread_step_resume_breakpoint)
3277         (delete_step_thread_step_resume_breakpoint_cleanup)
3278         (delete_step_thread_step_resume_breakpoint): New.
3279         (wait_for_inferior, init_execution_control_state): Use
3280         delete_step_thread_step_resume_breakpoint_cleanup.
3281         (wait_for_inferior): Set the event_thread.
3282         (fetch_inferior_event): Ditto.  Delete the step-resume breakpoint
3283         with delete_step_thread_step_resume_breakpoint.
3284         (init_thread_stepping_state): Change parameter type to
3285         thread_info.  Adjust.
3286         (context_switch): Don't context switch prev_pc,
3287         stepping_over_breakpoint, step_resume_breakpoint,
3288         step_range_start, step_range_end, step_frame_id,
3289         tss->stepping_over_breakpoint,
3290         tss->stepping_through_solib_after_catch,
3291         tss->stepping_through_solib_catchpoints, tss->current_line, or
3292         tss->current_symtab.
3293         (adjust_pc_after_break, handle_inferior_event)
3294         (currently_stepping, step_into_function)
3295         (insert_step_resume_breakpoint_at_sal)
3296         (insert_longjmp_resume_breakpoint, keep_going): Adjust.
3297         (clear_stepping_state): New.
3298         (normal_stop): Adjust.
3299         (save_inferior_status, restore_inferior_status): Adjust.
3300
3301         * gdbthread.h (struct thread_info): Comments describing the
3302         members moved here.  Add step_after_step_resume_breakpoint.
3303         (delete_step_resume_breakpoint): Add thread_info argument.
3304         (save_infrun_state, load_infrun_state): Remove prev_pc,
3305         trap_expected, step_resume_breakpoint, step_range_start,
3306         step_range_end, step_frame_id, another_trap,
3307         stepping_through_solib_after_catch,
3308         stepping_through_solib_catchpoints, current_line and
3309         current_symtab function arguments.
3310         (inferior_thread): Declare.
3311
3312         * thread.c (inferior_thread): New.
3313         (delete_step_resume_breakpoint): Add a thread_info parameter and
3314         rewrite.
3315         (load_infrun_state, save_infrun_state): Remove prev_pc,
3316         trap_expected, step_resume_breakpoint, step_range_start,
3317         step_range_end, step_frame_id, stepping_over_breakpoint,
3318         stepping_through_solib_after_catch,
3319         stepping_through_solib_catchpoints, current_line and
3320         current_symtab args.  Remove code referencing them.
3321
3322         * infcmd.c (step_range_start, step_range_end, step_frame_id):
3323         Delete.
3324         (step_1, step_once, until_next_command): Adjust.
3325
3326         * inferior.h (step_range_start, step_range_end, step_frame_id):
3327         Delete.
3328
3329         * linux-nat.c (linux_child_follow_fork): If following the child,
3330         move the step state to it.  Adjust.
3331         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
3332         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
3333
3334 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3335
3336         * bsd-uthread.c (bsd_uthread_find_new_threads): Claim the main
3337         thread.
3338
3339 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3340
3341         * corelow.c (add_to_thread_list): If this is the first time we
3342         hear about thread info, update inferior_ptid.
3343         (core_open): Clear the thread list and set inferior_ptid before
3344         acknowledging a new inferior.  Find threads before fetching
3345         register info.  Give an upper target layer a chance to find and
3346         claim new threads.  Print core generation and stop signal info
3347         after finding new threads.
3348         (get_core_register_section): Look at the lwp member of
3349         inferior_ptid for detecting if we have threads info, instead of
3350         the pid member.
3351         (core_pid_to_str): New.
3352         (init_core_ops): Register core_pid_to_str.
3353
3354 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3355
3356         * spu-linux-nat.c (spu_child_post_startup_inferior)
3357         (spu_child_post_attach): Don't add the main thread here.
3358
3359 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3360
3361         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
3362
3363         * gnu-nat.c (inf_validate_procs): If this is the first time we're
3364         seeing a thread id, extend the main thread's ptid.  If we still
3365         have pending execs, don't be verbose about new threads.
3366         (gnu_wait, gnu_resume, gnu_attach, gnu_thread_alive)
3367         (gnu_pid_to_str, cur_thread, sig_thread_cmd): Adjust.
3368         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers):
3369         Adjust.
3370
3371 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3372
3373         * procfs.c (to_attach): Create a procinfo for the current lwp.
3374         Add it to gdb's thread list.
3375         (procfs_fetch_registers, procfs_store_registers): Assume there's
3376         always an lwp.
3377         (procfs_wait): Don't add the main thread here.
3378         (procfs_init_inferior): Create a procinfo for the main lwp here.
3379         Change main thread's ptid with thread_change_ptid.
3380         (procfs_notice_thread): Check for exited threads.
3381         (procfs_corefile_thread_callback): Remove check for the main
3382         process.
3383         (procfs_make_note_section): Assume there is always a thread.
3384
3385         * sol-thread.c (sol_thread_attach): Clear sol_thread_active before
3386         attaching.  Change the main thread ptid with thread_change_ptid.
3387         (sol_thread_detach): Clear sol_thread_active.
3388         (sol_thread_wait): Check for exited threads.
3389         (sol_thread_create_inferior): Clear sol_thread_active before
3390         creating a new inferior.  Change the main thread ptid with
3391         thread_change_ptid.
3392         (sol_thread_mourn_inferior): Clear sol_thread_active.
3393         (sol_find_new_threads_callback): Check for exited threads.
3394
3395 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3396
3397         * inf-ttrace.c (inf_ttrace_wait): On TTEVT_LWP_CREATE and
3398         LWP_TERMINATE, resume the caller thread.  On TTEVT_LWP_CREATE,
3399         TTEVT_LWP_EXIT and TTEVT_LWP_TERMINATE, don't stop the whole
3400         process, and return TARGET_WAITKIND_IGNORE.
3401
3402 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3403
3404         * inf-ttrace.c: Include <signal.h>
3405         (inf_ttrace_delete_dead_threads_callback): New.
3406         (inf_ttrace_resume_lwp): New.
3407         (inf_ttrace_resume_callback, inf_ttrace_resume): Rewrite.  Don't
3408         delete dying threads until they are really dead.
3409         (inf_ttrace_wait): After stopping the whole process, delete any
3410         dying thread that is really dead by now.
3411         (inf_ttrace_thread_alive): Return 1.
3412         (inf_ttrace_extra_thread_info): New.
3413         (inf_ttrace_target): Register inf_ttrace_extra_thread_info.
3414
3415 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3416
3417         * inf-ttrace.c (inf_ttrace_follow_fork): Register the main thread
3418         of the child fork.
3419         (inf_ttrace_attach): Add the main thread.
3420         (inf_ttrace_resume_callback): Check for exited threads.  Adjust
3421         for always a thread.
3422         (inf_ttrace_wait): Decorate the main thread's ptid with lwp info
3423         using thread_change_ptid, and set its private data.  Don't add the
3424         main thread here.
3425         (inf_ttrace_pid_to_str): Adjust.
3426
3427 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3428
3429         * bsd-uthread.c (bsd_uthread_wait): Decorate the main thread with
3430         thread_change_ptid.  Check for exited threads.
3431         (bsd_uthread_find_new_threads): Check for exited threads.
3432
3433 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3434
3435         * inf-ptrace.c: Include "gdbthread.h".
3436         (inf_ptrace_attach): Add the main thread here.
3437         * linux-nat.c (linux_nat_attach): Don't add the main thread here.
3438         Decorate the main thread id with the lwp id.
3439
3440 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
3441
3442         * linux-nat.c (linux_nat_wait): Update inferior_ptid's ptid with
3443         thread_change_ptid.  Don't add or mark the main thread as running
3444         and executing here.
3445         * fork-child.c (fork_inferior): Add the main thread here.
3446
3447 2008-09-08  Jerome Guitton  <guitton@adacore.com>
3448
3449         * rs6000-tdep.c (rs6000_fetch_instruction)
3450         (rs6000_skip_stack_check): New functions.
3451         (skip_prologue): Skip stack check sequence.
3452         
3453 2008-09-08  David Daney  <ddaney@avtrex.com>
3454
3455         * dummy-frame.h (frame.h): Include it.
3456         (struct frame_id): Remove declaration.
3457
3458 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3459
3460         * spu-tdep.c (spu_push_dummy_code): New function.
3461         (spu_gdbarch_init): Install it.
3462
3463 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3464
3465         * gdbarch.sh (gdbarch_dump): Use core_addr_to_string_nz
3466         instead of paddr_nz.
3467         * gdbarch.c: Regenerate.
3468
3469         * target.c (target_xfer_partial, debug_print_register): Use
3470         core_addr_to_string_nz instead of paddr_nz.
3471
3472 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3473
3474         * rs6000-tdep.c (rs6000_gdbarch_init): Setup displaced stepping
3475         *before* calling gdbarch_init_osabi.
3476         (rs6000_aix_init_osabi): Disable displaced stepping.
3477
3478 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3479
3480         * target.c (update_current_target): Do not inherit to_open
3481         or to_close.
3482         (pop_target): Call target_close on target_stack instead
3483         of current_target.
3484         (pop_all_targets_above): Likewise.
3485
3486 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3487
3488         * gnu-v3-abi.c (gnuv3_decode_method_ptr): New function.
3489         (gnuv3_print_method_ptr): Use it.
3490         (gnuv3_method_ptr_to_value): Likewise.
3491
3492 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3493
3494         * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to
3495         register_area callback function.
3496         * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
3497         Use it instead of current_gdbarch.
3498         * nto-procfs.c (procfs_store_registers): Update call.
3499
3500 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3501
3502         * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
3503         regcache architecture instead of current_gdbarch.
3504
3505 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3506
3507         * mep-tdep.c (struct mep_prologue): Add gdbarch member.
3508         (check_for_saved): Use it instead of current_gdbarch.
3509         (is_arg_spill): Add gdbarch paramter.  Use it instead
3510         of current_gdbarch.
3511         (mep_analyze_prologue): Add gdbarch parameter.  Pass it
3512         to is_arg_spill and check_for_saved.
3513         (mep_skip_prologue, mep_analyze_frame_prologue): Update calls.
3514
3515 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3516
3517         * hppa-tdep.c (internalize_unwinds): Use objfile architecture
3518         instead of current_gdbarch.
3519
3520 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3521
3522         * m68k-tdep.h (m68kbsd_fpreg_offset): Add gdbarch parameter.
3523         * m68kbsd-tdep.c (m68kbsd_fpreg_offset): Add gdbarch paramter.
3524         Use it instead of current_gdbarch.
3525         (m68kbsd_supply_fpregset): Update call.
3526         * m68kbsd-nat.c (m68kbsd_supply_fpregset): Likewise.
3527         (m68kbsd_collect_fpregset): Likewise.
3528
3529 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3530
3531         * cris-tdep.c (cris_version, cris_mode): Remove.
3532         (crisv32_single_step_through_delay): Use tdep->cris_mode.
3533         (cris_breakpoint_from_pc): Likewise.
3534         (cris_frame_unwind_cache): Use tdep->cris_version.
3535         (crisv32_scan_prologue): Likewise.
3536         (cris_spec_reg_applicable): Add gdbarch argument.
3537         Use tdep->cris_version.
3538         (cris_register_size, cris_special_register_name): Update calls.
3539         (cris_special_register_name): Add gdbarch argument.
3540         (cris_register_name, crisv32_register_name): Update calls.
3541
3542 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3543
3544         * m68hc11-tdep.c (gdb_print_insn_m68hc11): Use info->arch
3545         instead of current_gdbarch.
3546
3547         * sh64-tdep.c (gdb_print_insn_sh64): Remove.
3548         (sh64_gdbarch_init): Install print_insn_sh64 directly.
3549         * sh-tdep.c (gdb_print_insn_sh): Remove.
3550         (sh_gdbarch_init): Install print_insn_sh directly.
3551
3552         * mips-tdep.c (gdb_print_insn_mips): Do not check mips_abi
3553         from current_gdbarch.
3554         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): New functions.
3555         (mips_gdbarch_init): Install them instead of gdb_print_insn_mips
3556         depending on mips_abi.
3557
3558 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3559
3560         * gdbarch.sh (addr_bits_remove): Change type to 'm'.
3561         (smash_text_address): Likewise.
3562         * gdbarch.c, gdbarch.h: Regenerate.
3563
3564         * arch-utils.c (core_addr_identity): Add gdbarch parameter.
3565         * arch-utils.h (core_addr_identity): Likewise.
3566         * arm-tdep.c (arm_addr_bits_remove): Likewise.
3567         (arm_smash_text_address): Likewise.
3568         * hppa-tdep.c (hppa_smash_text_address): Likewise.
3569         * m88k-tdep.c (m88k_addr_bits_remove): Likewise.
3570         * s390-tdep.c (s390_addr_bits_remove): Likewise.
3571
3572         * mips-tdep.c (mips_addr_bits_remove): Add gdbarch parameter.
3573         Use it instead of current_gdbarch.
3574
3575         * arm-tdep.c (arm_prologue_prev_register, arm_unwind_pc,
3576         arm_dwarf2_prev_register): Update calls.
3577         * m88k-tdep.c (m88k_unwind_pc): Update call.
3578
3579 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3580
3581         * dwarf2expr.h (dwarf2_read_address): Add gdbarch argument.
3582         * dwarf2expr.c (dwarf2_read_address): Add gdbarch argument.
3583         Call gdbarch_integer_to_address directly instead of converting
3584         to value and back.  Update comment.
3585         (execute_stack_op): Update call site.
3586         * dwarf2loc.c (find_location_expression): Likewise.
3587         (locexpr_describe_location): Update
3588
3589         * dwarf2expr.h (struct dwarf_expr_context): Add gdbarch member.
3590         * dwarf2-frame.c (execute_stack_op): Initialize ctx->gdbarch.
3591         * dwarf2loc. (dwarf2_evaluate_loc_desc): Likewise.
3592         (dwarf2_loc_desc_needs_frame): Likewise.
3593
3594 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3595
3596         * breakpoint.h (struct bp_location): Change type of section
3597         member to "struct obj_section *".
3598         * tracepoint.h (struct tracepoint): Likewise.
3599         * symtab.h (struct general_symbol_info): Replace bfd_section
3600         member with obj_section.
3601         (struct symtab_and_line): Change type of section member to
3602         "struct obj_section *".
3603         (SYMBOL_BFD_SECTION): Remove macro, replace by ...
3604         (SYMBOL_OBJ_SECTION): ... this.
3605
3606         * minsym.c (prim_record_minimal_symbol_and_info): Record symbol
3607         section as obj_section instead of bfd_section.
3608
3609         * ada-lang.c (ada_decode_symbol): Use gsymbol->obj_section
3610         directly instead of looking of obj_section from bfd_section.
3611
3612         * objfiles.h (find_pc_sect_section): Remove.
3613         * objfiles.c (find_pc_sect_section): Remove.
3614         (find_pc_section): Inline find_pc_sect_section code.
3615
3616         * symfile.h (find_pc_overlay): Return struct obj_section *.
3617         (find_pc_mapped_section): Likewise.
3618         (section_is_overlay, section_is_mapped): Change type of section
3619         argument to struct obj_section *.
3620         (pc_in_mapped_range, pc_in_unmapped_range): Likewise.
3621         (overlay_mapped_address, overlay_unmapped_address): Likewise.
3622         (symbol_overlayed_address): Likewise.
3623         * symtab.h (symbol_overlayed_address): Likewise.
3624         * symfile.c (overlay_is_mapped): Remove.
3625         (section_is_mapped): Inline overlay_is_mapped code.  Update.
3626         (overlay_invalidate_all): Update.
3627         (section_is_overlay): Change section argument to type
3628         "struct obj_section *".  Use bfd_ methods.
3629         (pc_in_unmapped_range): Likewise.  Handle relocated sections.
3630         (pc_in_mapped_range): Likewise.  Handle relocated sections.
3631         (sections_overlap): Likewise.
3632         (overlay_unmapped_address): Likewise.
3633         (overlay_mapped_address): Likewise.
3634         (symbol_overlayed_address): Likewise.
3635         (find_pc_overlay): Return struct obj_section *.
3636         (find_pc_mapped_section): Likewise.
3637         (list_overlays_command): Update.
3638         (map_overlay_command, unmap_overlay_command): Update.
3639         (simple_overlay_update): Update.
3640
3641         * block.h (blockvector_for_pc_sect): Change section argument
3642         to type "struct obj_section *".
3643         (block_for_pc_sect): Likewise.
3644         * block.c (blockvector_for_pc_sect): Change section argument
3645         to type "struct obj_section *".
3646         (block_for_pc_sect): Likewise.
3647         * symtab.h (find_pc_sect_function, find_pc_sect_psymtab,
3648         find_pc_sect_symtab, find_pc_sect_psymbol, find_pc_sect_line,
3649         lookup_minimal_symbol_by_pc_section, find_function_start_pc): Likewise.
3650         (matching_bfd_sections): Rename to ...
3651         (matching_obj_sections): ... this.  Update argument types.
3652         * blockframe.c (find_pc_sect_function): Likewise.
3653         * breakpoint.c (describe_other_breakpoints): Likewise.
3654         (breakpoint_has_pc, check_duplicates_for): Likewise.
3655         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3656         (lookup_minimal_symbol_by_pc_section): Likewise.
3657         * symtab.c (find_pc_sect_psymtab_closer): Likewise.
3658         (find_pc_sect_psymtab, find_pc_sect_psymbol, find_pc_sect_symtab,
3659         find_pc_sect_line, find_function_start_pc): Likewise.
3660         (matching_bfd_sections): Rename to ...
3661         (matching_obj_sections): ... this.  Update argument types.
3662
3663         * blockframe.c (find_pc_partial_function): Update to section
3664         type changes.  No longer call find_pc_sect_section.
3665         (cache_pc_function_section): Change to type "struct obj_section *".
3666         * breakpoint.c (resolve_sal_pc): Update to section type changes.
3667         * exec.c (xfer_memory): Likewise.
3668         * findvar.c (read_var_value): Likewise.
3669         * infcmd.c (jump_command): Likewise.
3670         * linespec.c (minsym_found): Likewise.
3671         * maint.c (maintenance_translate_address): Likewise.
3672         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
3673         (lookup_solib_trampoline_symbol_by_pc): Likewise.
3674         * parse.c (write_exp_msymbol): Likewise.
3675         * printcmd.c (build_address_symbolic): Likewise.
3676         (address_info, sym_info): Likewise.
3677         * symmisc.c (dump_msymbols, print_symbol): Likewise.
3678         * symtab.c (fixup_section): Likewise.
3679         (fixup_symbol_section, fixup_psymbol_section): Likewise.
3680         (find_pc_line, find_function_start_sal): Likewise.
3681         * target.c (memory_xfer_partial): Likewise.
3682         * hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline): Likewise.
3683         * spu-tdep.c (spu_overlay_update): Likewise.
3684
3685 2008-09-04  Doug Evans  <dje@google.com>
3686
3687         * defs.h (plongest,pulongest): Renamed from paddr_u,paddr_d.
3688         Change argument of pulongest from CORE_ADDR to ULONGEST.
3689         All callers updated.
3690         * utils.c (plongest): Renamed from paddr_d.
3691         (pulongest): Renamed from paddr_u, change arg type to ULONGEST.
3692         * remote-mips.c (send_srec): Use paddr_nz instead of paddr_u in
3693         `CORE_ADDR addr' arg of error message.
3694
3695 2008-09-03  Angela Marie Thomas <angela@releasedominatrix.com>
3696
3697         * ser-tcp.c (ser_tcp_send_break): New function.
3698         (_initialize_ser_tcp): Use ser_tcp_send_break.
3699         * ser-tcp.h (ser_tcp_send_break): New prototype.
3700
3701 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3702
3703         * spu-tdep.c (spu_push_dummy_call): Update all stack pointer slots
3704         when allocating stack frame for inferior call.
3705
3706 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
3707
3708         * spu-tdep.c (spu_frame_unwind_cache): Do not attempt to unwind
3709         SP or return address if we failed to find a valid frame.
3710
3711 2008-09-03  Aleksandar Ristovski  <aristovski@qnx.com>
3712
3713         * breakpoint.c (breakpoint_init_inferior): Mark as not inserted only
3714         non-permanent breakpoints.
3715         (bpstat_stop_status): Change enable_state to bp_disabled only for
3716         non-permanent breakpoints.
3717         (bp_loc_is_permanent): New function.
3718         (create_breakpoint): Check if the location points to a permanent
3719         breakpoint and if it does, make breakpoint permanent.
3720         (update_breakpoint_locations): Make sure new locations of permanent
3721         breakpoints are properly initialized.
3722         * i386-tdep.c (i386_skip_permanent_breakpoint): New function.
3723         (i386_gdbarch_init): Set gdbarch_skip_permanent_breakpoint.
3724
3725 2008-09-02  Pedro Alves  <pedro@codesourcery.com>
3726
3727         * breakpoint.c (insert_breakpoints, update_global_location_list):
3728         Check breakpoints_always_inserted_mode instead of
3729         always_inserted_mode directly.
3730
3731 2008-09-02  Andreas Schwab  <schwab@suse.de>
3732
3733         * ia64-tdep.c (ia64_get_dyn_info_list): Use obj_section_addr.
3734
3735 2008-09-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
3736
3737         Stay compatible after the GCC PR fortran/29635 fix.
3738         * dwarf2read.c (process_die <DW_TAG_imported_module>)
3739         (process_die <DW_TAG_imported_module>): Do not assert anything about
3740         these unsupported tags.
3741
3742 2008-08-29  Tom Tromey  <tromey@redhat.com>
3743
3744         * maint.c (_initialize_maint_cmds): Fix typo.
3745
3746 2008-08-29  Tom Tromey  <tromey@redhat.com>
3747
3748         * dwarf2read.c (dwarf2_build_psymtabs_hard): Copy dirname on
3749         obstack.
3750
3751 2008-08-27  Ulrich Weigand  <uweigand@de.ibm.com>
3752
3753         * remote.c: Include "gdb_stat.h".
3754
3755 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3756
3757         * dummy-frame.h (dummy_frame_pop): Add prototype.
3758         * dummy-frame.c: Include "observer.h".
3759         (dummy_frame_push): Do not check for stale frames.
3760         (dummy_frame_pop): New function.
3761         (cleanup_dummy_frames): New function.
3762         (_initialize_dummy_frame): Install it as inferior_created observer.
3763
3764         * frame.h (struct frame_id): Update comments.
3765         (frame_id_inner): Remove prototype.
3766         * frame.c (frame_id_inner): Make static.  Add comments.
3767         (frame_find_by_id): Update frame_id_inner safety net check to avoid
3768         false positives for targets using non-contiguous stack ranges.
3769         (get_prev_frame_1): Update frame_id_inner safety net check.
3770         (frame_pop): Call dummy_frame_pop when popping a dummy frame.
3771
3772         * stack.c (return_command): Directly pop the selected frame.
3773         * infrun.c (handle_inferior_event): Remove dead code.
3774         * i386-tdep.c (i386_push_dummy_call): Update comment.
3775
3776 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3777
3778         * breakpoint.c (remove_breakpoint): Do not fail if unable to remove
3779         breakpoint from shared library.
3780
3781 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3782
3783         * solib-svr4.c (read_program_header): New function.
3784         (scan_dyntag_auxv): New function.
3785         (elf_locate_base): Use it if scan_dyntag fails.
3786         (find_program_interpreter): New function.
3787         (enable_break): Use it instead of .interp section.
3788
3789 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3790
3791         * remote.h (remote_filename_p, remote_bfd_open): Add prototypes.
3792         * remote.c (remote_bfd_iovec_open, remote_bfd_iovec_close,
3793         remote_bfd_iovec_pread, remote_bfd_iovec_stat, remote_filename_p,
3794         remote_bfd_open): New functions.
3795         (remote_hostio_send_command): Fail safely if remote connection
3796         is not set up.
3797
3798         * solist.h (solib_open): Remove prototype.
3799         (solib_bfd_open): Add prototype.
3800         * solib.c: Include "remote.h".
3801         (solib_open): Remove, replace by ...
3802         (solib_bfd_open): ... this new function.  Handle remote BFDs.
3803         (solib_map_sections): Replace solib_open by solib_bfd_open.
3804         * solib-frv.c: Include "exceptions.h".
3805         (enable_break2): Replace solib_open by solib_bfd_open.
3806         * solib-svr4.c: Include "exceptions.h".
3807         (enable_break): Replace solib_open by solib_bfd_open.
3808
3809         * symfile.c: Include "remote.h".
3810         (build_id_verify): Handle remote BFDs.
3811         (separate_debug_file_exists): Use BFD to access file.  Handle
3812         remote BFDs.
3813         (symfile_bfd_open): Handle remote BFDs.
3814         (reread_symbols): Handle remote BFDs.
3815
3816         * NEWS: Mention "remote:" argument prefix to "set sysroot".
3817
3818 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3819
3820         * gdbarch.sh (target_gdbarch): New global variable.
3821         (deprecated_current_gdbarch_select_hack): Set it.
3822         * gdbarch.c, gdbarch.h: Regenerate.
3823
3824         * arch-utils.c (gdbarch_update_p): Use target_gdbarch instead
3825         of current_gdbarch.
3826         * target-descriptions.c (target_find_description): Likewise.
3827         * arm-tdep.c (arm_update_current_architecture): Likewise.
3828         (show_fp_model, arm_show_abi, arm_show_fallback_mode, 
3829         arm_show_force_mode): Likewise.
3830         * mips-tdep.c (show_mask_address, show_mipsfpu_command,
3831         show_mips_abi): Likewise.
3832         * mep-tdep.c (me_module_register_set, current_me_module): Likewise.
3833
3834         * target.c (target_translate_tls_address): Use target_gdbarch
3835         instead of current_gdbarch.
3836         * remote.c (struct packet_reg): Likewise.
3837         (get_remote_arch_state, packet_reg_from_regnum,
3838         packet_reg_from_pnum, remote_check_symbols, remote_wait,
3839         remote_address_masked, remote_insert_breakpoint,
3840         remote_insert_hw_breakpoint, remote_read_description): Likewise.
3841         * remote-m32r-sdi.c (m32r_resume, m32r_wait): Likewise.
3842         * remote-mips.c (mips_open, mips_common_breakpoint): Likewise.
3843         * cris-tdep.c (cris_can_use_hardware_watchpoint): Likewise.
3844
3845         * solib.c (solib_open, solib_map_sections, solib_read_symbols,
3846         solib_add, info_sharedlibrary_command, solib_address, 
3847         solib_create_inferior_hook, in_solib_dynsym_resolve_code,
3848         solib_global_lookup): Likewise.
3849         * solib-frv.c (enable_break2, frv_relocate_main_executable): Likewise.
3850         * solib-irix.c (irix_current_sos, irix_open_symbol_file_object):
3851         Likewise.
3852         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
3853         * solib-svr4.c (exec_entry_point, enable_break, svr4_free_so,
3854         set_solib_svr4_fetch_link_map_offsets, svr4_fetch_link_map_offsets):
3855         Likewise.
3856         * nto-tdep.c (nto_find_and_open_solib, nto_init_solib_absolute_prefix,
3857         nto_truncate_ptr): Likewise.
3858         * mips-linux-tdep.c (mips_linux_in_dynsym_stub): Likewise.
3859
3860 2008-08-26  Luis Machado  <luisgpm@br.ibm.com>
3861
3862         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections) New structure.
3863         (ppc_linux_vmx_regset_sections): New structure.
3864         (ppc_linux_fp_regset_sections): New structure.
3865         (ppc_linux_init_abi): Select core-file regset  based on target
3866         features.
3867
3868 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
3869
3870         * target.c (debug_print_register): Use regcache_raw_collect
3871         instead of regcache_cooked_read.  Only handle raw registers.
3872
3873 2008-08-25  Pedro Alves  <pedro@codesourcery.com>
3874
3875         * cp-name-parser.y: Include config.h before system headers.
3876
3877 2008-08-25  Ulrich Weigand  <uweigand@de.ibm.com>
3878
3879         * m88k-tdep.c: Update for unwinder changes.
3880
3881 2008-08-24  Tom Tromey  <tromey@redhat.com>
3882
3883         * s390-tdep.c (s390_address_class_type_flags): Use
3884         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1.
3885         (s390_address_class_type_flags_to_name): Likewise.
3886         (s390_address_class_name_to_type_flags): Likewise.
3887
3888 2008-08-24  Tom Tromey  <tromey@redhat.com>
3889
3890         * rs6000-tdep.c (rs6000_builtin_type_vec128): Don't use
3891         TYPE_FLAGS.
3892         * features/rs6000/powerpc-vsx32l.c
3893         (initialize_tdesc_powerpc_vsx32l): Update.
3894         * features/rs6000/powerpc-vsx32.c
3895         (initialize_tdesc_powerpc_vsx32): Update.
3896         * features/rs6000/powerpc-vsx64.c
3897         (initialize_tdesc_powerpc_vsx64): Update.
3898         * features/rs6000/powerpc-vsx64l.c
3899         (initialize_tdesc_powerpc_vsx64l): Update.
3900         * target-descriptions.c (maint_print_c_tdesc_cmd): Emit
3901         TYPE_VECTOR, not TYPE_FLAGS.
3902
3903 2008-08-24  Tom Tromey  <tromey@redhat.com>
3904
3905         * xml-tdesc.c (tdesc_end_union): Update.
3906         * stabsread.c (define_symbol): Update.
3907         (read_type): Update.
3908         (read_struct_type): Update.
3909         (read_enum_type): Update.
3910         * spu-tdep.c (spu_builtin_type_vec128): Update.
3911         * sh-tdep.c (sh_push_dummy_call_fpu): Update.
3912         (sh_push_dummy_call_nofpu): Update.
3913         * mdebugread.c (parse_symbol): Update.
3914         (parse_symbol): Update.
3915         (parse_symbol): Update.
3916         (upgrade_type): Update.
3917         * jv-lang.c (java_lookup_class): Update.
3918         * iq2000-tdep.c (iq2000_pointer_to_address): Update.
3919         * i386-tdep.c (i386_mmx_type): Update.
3920         (i386_sse_type): Update.
3921         * gdbtypes.h (enum type_flag_value): New enum.
3922         (enum type_instance_flag_value): New enum.
3923         (TYPE_FLAG_UNSIGNED, TYPE_FLAG_NOSIGN, TYPE_FLAG_STUB,
3924         TYPE_FLAG_TARGET_STUB, TYPE_FLAG_STATIC, TYPE_FLAG_PROTOTYPED,
3925         TYPE_FLAG_INCOMPLETE, TYPE_FLAG_VARARGS, TYPE_FLAG_VECTOR,
3926         TYPE_FLAG_FIXED_INSTANCE, TYPE_FLAG_STUB_SUPPORTED,
3927         TYPE_FLAG_NOTTEXT): Now enum constants.
3928         (TYPE_FLAG_CONST, TYPE_FLAG_VOLATILE, TYPE_FLAG_CODE_SPACE,
3929         TYPE_FLAG_DATA_SPACE, TYPE_FLAG_ADDRESS_CLASS_1,
3930         TYPE_FLAG_ADDRESS_CLASS_2): Remove.
3931         (TYPE_INSTANCE_FLAG_CONST, TYPE_INSTANCE_FLAG_VOLATILE,
3932         TYPE_INSTANCE_FLAG_CODE_SPACE, TYPE_INSTANCE_FLAG_DATA_SPACE,
3933         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1,
3934         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2): New constants.
3935         (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB, TYPE_TARGET_STUB,
3936         TYPE_STATIC, TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_VARARGS,
3937         TYPE_VECTOR, TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED,
3938         TYPE_NOTTEXT): Update.
3939         (TYPE_FLAG_ADDRESS_CLASS_ALL): Remove.
3940         (TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL): New define.
3941         (TYPE_VOLATILE, TYPE_CODE_SPACE, TYPE_DATA_SPACE,
3942         TYPE_ADDRESS_CLASS_1, TYPE_ADDRESS_CLASS_2,
3943         TYPE_ADDRESS_CLASS_ALL): Update.
3944         (struct main_type) <flags>: Remove.
3945         <flag_unsigned, flag_nosign, flag_stub, flag_target_stub,
3946         flag_static, flag_prototyped, flag_incomplete, flag_varargs,
3947         flag_vector, flag_stub_supported, flag_nottext,
3948         flag_fixed_instance>: New fields.
3949         <nfields, vptr_fieldno>: Move earlier.
3950         (TYPE_FLAGS): Remove.
3951         * gdbtypes.c (make_pointer_type): Update.
3952         (address_space_name_to_int): Update.
3953         (address_space_int_to_name): Update.
3954         (make_type_with_address_space): Update.
3955         (make_cv_type): Update.
3956         (create_range_type): Update.
3957         (get_discrete_bounds): Update.
3958         (create_set_type): Update.
3959         (make_vector_type): Update.
3960         (smash_to_method_type): Update.
3961         (check_typedef): Update.
3962         (check_stub_method): Update.
3963         (init_type): Individually assign flag fields.
3964         (recursive_dump_type): Don't print entire TYPE_FLAGS field.  Do
3965         print TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED, and TYPE_NOTTEXT.
3966         (copy_type_recursive): Copy the entire main type.  Don't use
3967         TYPE_FLAGS.
3968         * features/rs6000/powerpc-altivec64l.c
3969         (initialize_tdesc_powerpc_altivec64l): Update.
3970         * features/rs6000/powerpc-altivec64.c
3971         (initialize_tdesc_powerpc_altivec64): Update.
3972         * features/rs6000/powerpc-altivec32l.c
3973         (initialize_tdesc_powerpc_altivec32l): Update.
3974         * features/rs6000/powerpc-altivec32.c
3975         (initialize_tdesc_powerpc_altivec32): Update.
3976         * features/rs6000/powerpc-7400.c (initialize_tdesc_powerpc_7400):
3977         Update.
3978         * features/arm-with-iwmmxt.c (initialize_tdesc_arm_with_iwmmxt):
3979         Update.
3980         * dwarf2read.c (read_structure_type): Update.
3981         (read_enumeration_type): Likewise.
3982         (process_enumeration_scope): Likewise.
3983         (read_tag_pointer_type): Likewise.
3984         (read_subroutine_type): Likewise.
3985         (read_subroutine_type): Likewise.
3986         (read_base_type): Likewise.
3987         * coffread.c (coff_read_enum_type): Update.
3988         * ada-valprint.c (adjust_type_signedness): Update.
3989         * ada-typeprint.c (print_record_field_types): Update.
3990         * ada-lang.c (packed_array_type): Update.
3991         (empty_record): Don't reset TYPE_FLAGS.
3992         (ada_template_to_fixed_record_type_1): Update.
3993         (ada_template_to_fixed_record_type_1): Likewise.
3994         (template_to_static_fixed_type): Likewise.
3995         (to_record_with_fixed_variant_part): Likewise.
3996         (to_fixed_record_type): Likewise.
3997         (to_fixed_array_type): Likewise.
3998         (to_static_fixed_type): Likewise.
3999
4000 2008-08-23  Jim Blandy  <jimb@redhat.com>
4001
4002         PR macros/607:
4003         * symmisc.c (print_symbol_bcache_statistics): Include statistics
4004         for the macro bcache.
4005
4006 2008-08-23  Tom Tromey  <tromey@redhat.com>
4007
4008         * macrotab.h (struct macro_definition) <kind>: Shrink to one bit.
4009         (argc): Now 31 bits.
4010
4011 2008-08-22  Tom Tromey  <tromey@redhat.com>
4012
4013         * NEWS: Move macro entries back under "New commands".
4014
4015 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4016
4017         * breakpoint.c (create_overlay_event_breakpoint): Rename to ...
4018         (create_overlay_event_breakpoint_1): ... this.  Add OBJFILE parameter.
4019         (create_overlay_event_breakpoint): Loop over all objfiles to install
4020         multiple instances of the overlay event breakpoint if present.
4021
4022 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4023
4024         * spu-tdep.c (spu_overlay_new_objfile): Only consider SPU objfiles.
4025         (info_spu_event_command): Command only supported on SPU architecture.
4026         (info_spu_signal_command): Likewise.
4027         (info_spu_mailbox_command): Likewise.
4028         (info_spu_dma_command): Likewise.
4029         (info_spu_proxydma_command): Likewise.
4030
4031 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
4032
4033         * infrun.c (adjust_pc_after_break): Do not call get_thread_regcache
4034         if the thread has already exited.
4035
4036 2008-08-22  Pedro Alves  <pedro@codesourcery.com>
4037
4038         * infrun.c (proceed): Move back setting previous_inferior_ptid
4039         from here ...
4040         (wait_for_inferior): ... to here.
4041         (fetch_inferior_event): ... and here.
4042
4043 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4044
4045         * gdbarch.sh: Include "regcache.h" into gdbarch.c.
4046         (deprecated_current_gdbarch_select_hack): Call registers_changed
4047         instead of reinit_frame_cache.
4048         * gdbarch.c: Regenerate.
4049
4050 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4051
4052         * elfread.c (elf_symtab_read): Do not relocate thread-local symbols.
4053
4054 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4055
4056         * xcoffread.c (SYMNAME_ALLOC): Correct syntax.
4057
4058 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4059
4060         * findvar.c (locate_var_value): Do not call get_frame_arch
4061         with a NULL frame argument.
4062
4063 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4064
4065         * frame.h (frame_map_regnum_to_name): Remove prototype.
4066         (frame_map_name_to_regnum): Remove prototype.
4067         * frame.c (frame_map_regnum_to_name): Remove.
4068         (frame_map_name_to_regnum): Remove.
4069         (frame_unwind_register_value): Use user_reg_map_regnum_to_name
4070         instead of frame_map_regnum_to_name.
4071         * ax-gdb.c: Include "user-regs.h".
4072         (gen_expr): Use user_reg_map_name_to_regnum instead of
4073         frame_map_name_to_regnum.
4074         * eval.c:  Include "user-regs.h".
4075         (evaluate_subexp_standard): Use user_reg_map_name_to_regnum
4076         instead of frame_map_name_to_regnum.
4077         * infcmd.c (registers_info): Likewise.
4078         * parse.c: Include "user-regs.h".
4079         (write_dollar_variable): Use user_reg_map_name_to_regnum
4080         instead of frame_map_name_to_regnum.
4081         * tracepoint.c: Include "user-regs.h".
4082         (encode_actions): Use user_reg_map_name_to_regnum
4083         instead of frame_map_name_to_regnum.
4084         * valops.c: Include "user-regs.h".
4085         (value_fetch_lazy): Use user_reg_map_regnum_to_name instead
4086         of frame_map_regnum_to_name.
4087
4088 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
4089
4090         * ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read
4091         and manually relocate .opd contents from BFD instead of reading
4092         them from target memory.
4093
4094 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4095
4096         * dwarf2read.c (processing_current_prefix): Delete static
4097         variable.
4098         (process_full_comp_unit): Do not set processing_current_prefix.
4099         (dwarf2_full_name): New function.
4100         (read_func_scope): Do not set processing_current_prefix.  Use
4101         determine_prefix.
4102         (read_structure_type): Do not set processing_current_prefix.  Remove
4103         unused inner cleanup.
4104         (process_structure_scope): Do not set processing_current_prefix.
4105         (read_enumeration_type): Use dwarf2_full_name.
4106         (determine_class_name): Return a const char *.  Put the result
4107         on the objfile obstack.  Use dwarf2_full_name.
4108         (read_namespace_type): New function.
4109         (read_namespace): Do not create the type here.  Use
4110         determine_prefix.
4111         (read_typedef): Use dwarf2_full_name.  Do not pass the name
4112         to init_type.
4113         (read_base_type): Do not pass the name to init_type.  Handle
4114         TYPE_FLAG_NOSIGN.
4115         (read_unspecified_type): Do not pass the name to init_type.
4116         (new_symbol): Use dwarf2_full_name instead of
4117         processing_current_prefix.
4118         (read_type_die): Do not set processing_current_prefix.  Handle
4119         DW_TAG_namespace.
4120         (determine_prefix): Handle specifications.  Return the result
4121         on the objfile obstack.  Handle unions correctly.
4122
4123 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4124
4125         * buildsym.c (add_symbol_to_list): Do not call
4126         cp_scan_for_anonymous_namespaces here.
4127         (finish_block): Do not call cp_set_block_scope here.
4128         * cp-namespace.c (processing_has_namespace_info)
4129         (processing_current_prefix): Delete.
4130         (cp_initialize_namespace): Do not initialize
4131         processing_has_namespace_info.
4132         (cp_scan_for_anonymous_namespaces): Use SYMBOL_DEMANGLED_NAME.  Do
4133         not check processing_has_namespace_info.
4134         (cp_set_block_scope): Take prefix and namespace info flag as
4135         arguments.  Honor namespaces regardless of a demangled name.
4136         * cp-support.h (processing_has_namespace_info)
4137         (processing_current_prefix): Delete declarations.
4138         (cp_set_block_scope): Update prototype.
4139         * dwarf2read.c (processing_has_namespace_info)
4140         (processing_current_prefix): New static variables.
4141         (read_file_scope): Initialize processing_has_namespace_info.
4142         (read_func_scope): Call cp_set_block_scope for C++.
4143         (new_symbol): Call cp_scan_for_anonymous_namespaces for C++.
4144         * symtab.c (symbol_demangled_name): Accept a const argument.
4145         * symtab.h (symbol_demangled_name): Update prototype.
4146
4147 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
4148
4149         * ax-gdb.c (gen_var_ref): Use SYMBOL_LINKAGE_NAME.
4150         * blockframe.c (find_pc_partial_function): Likewise.
4151         * buildsym.c (find_symbol_in_list): Likewise.
4152         * c-valprint.c (c_val_print): Likewise.
4153         * coffread.c (patch_opaque_types, process_coff_symbol): Likewise.
4154         (coff_read_enum_type): Likewise.  Use SYMBOL_SET_LINKAGE_NAME.
4155         * cp-support.c (cp_remove_params): Renamed from remove_params and
4156         made global.
4157         (overload_list_add_symbol): Update call to remove_params.
4158         * cp-support.h (cp_remove_params): Declare.
4159         * dwarf2read.c (process_enumeration_scope): Use SYMBOL_LINKAGE_NAME.
4160         (dwarf2_const_value): Use SYMBOL_PRINT_NAME.
4161         * expprint.c (dump_subexp_body_standard): Likewise.
4162         * f-valprint.c (info_common_command, there_is_a_visible_common_named):
4163         Use SYMBOL_LINKAGE_NAME to find symbols and SYMBOL_PRINT_NAME
4164         for messages.
4165         * findvar.c (read_var_value): Use SYMBOL_LINKAGE_NAME.
4166         * gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise.
4167         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
4168         (hppa_hpux_skip_trampoline_code): Use SYMBOL_LINKAGE_NAME to find
4169         symbols and SYMBOL_PRINT_NAME for messages.
4170         * jv-lang.c (add_class_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4171         * linespec.c (decode_line_2): Use SYMBOL_LINKAGE_NAME.
4172         * mdebugread.c (parse_symbol): Use SYMBOL_LINKAGE_NAME and
4173         SYMBOL_SET_LINKAGE_NAME.
4174         (mylookup_symbol): Use SYMBOL_LINKAGE_NAME.
4175         * minsyms.c (add_minsym_to_demangled_hash_table): Use
4176         SYMBOL_SEARCH_NAME.
4177         (lookup_minimal_symbol): Use SYMBOL_LINKAGE_NAME or
4178         SYMBOL_MATCHES_SEARCH_NAME, depending on the pass.
4179         * objfiles.h (ALL_OBJFILE_MSYMBOLS): Use SYMBOL_LINKAGE_NAME.
4180         * printcmd.c (build_address_symbolic): Use SYMBOL_LINKAGE_NAME.
4181         (address_info): Use SYMBOL_PRINT_NAME for messages and
4182         SYMBOL_LINKAGE_NAME for lookups.
4183         * sol-thread.c (info_cb): Use SYMBOL_PRINT_NAME for messages.
4184         * stabsread.c (patch_block_stabs, define_symbol)
4185         (read_type, read_enum_type, common_block_end)
4186         (cleanup_undefined_types_1, scan_file_globals): Use
4187         SYMBOL_LINKAGE_NAME, SYMBOL_SET_LINKAGE_NAME, ALL_OBJFILE_MSYMBOLS,
4188         and SYMBOL_PRINT_NAME.
4189         * stack.c (print_frame_args): Use SYMBOL_LINKAGE_NAME.
4190         (print_frame, frame_info): Use SYMBOL_PRINT_NAME for output.  Use
4191         cp_remove_params instead of cplus_demangle.
4192         (print_block_frame_labels, print_frame_arg_vars): Use
4193         SYMBOL_LINKAGE_NAME.
4194         * symmisc.c (dump_msymbols): Use ALL_OBJFILE_MSYMBOLS and
4195         SYMBOL_LINKAGE_NAME.
4196         (dump_symtab_1, print_symbol, print_partial_symbols)
4197         (maintenance_check_symtabs): Use SYMBOL_LINKAGE_NAME.
4198         * symtab.h (DEPRECATED_SYMBOL_NAME): Delete.
4199         (SYMBOL_SET_LINKAGE_NAME): New.
4200         (SYMBOL_SET_NAMES): Add a comment.
4201         * tracepoint.c (set_traceframe_context, validate_actionline)
4202         (collect_symbol, scope_info): Use SYMBOL_LINKAGE_NAME for
4203         lookups and SYMBOL_PRINT_NAME for output.
4204         * typeprint.c (typedef_print): Use SYMBOL_LINKAGE_NAME.
4205         * xcoffread.c (process_xcoff_symbol): Use SYMBOL_SET_LINKAGE_NAME.
4206
4207 2008-08-21  Pedro Alves  <pedro@codesourcery.com>
4208
4209         * arm-tdep.c (arm_pc_is_thumb): Use obj_section_addr.
4210         * hppa-hpux-tdep.c (hppa_hpux_find_dummy_bpaddr): Likewise.
4211         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Use
4212         obj_section_addr and obj_section_endaddr.
4213         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Likewise.
4214         * hppabsd-tdep.c (hppabsd_find_global_pointer): Likewise.
4215         * ia64-tdep.c (ia64_find_global_pointer): Likewise.
4216         (find_extant_func_descr): Likewise.
4217         * solib-frv.c (frv_relocate_main_executable): Use
4218         obj_section_addr.
4219         * xstormy16-tdep.c (xstormy16_find_jmp_table_entry): Use
4220         obj_section_addr and obj_section_endaddr.
4221
4222 2008-08-21  Paul N. Hilfinger  <hilfinger@adacore.com>
4223
4224         * NEWS: Amplify last entry on boolean types in Ada.
4225
4226 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4227
4228         * dwarf2read.c (die_specification, dwarf2_extension, follow_die_ref):
4229         Make the dwarf2_cu * parameter output as well as input.  Update it if
4230         we follow a reference to another CU.
4231         (read_func_scope, determine_class_name, namespace_name, dwarf2_attr)
4232         (die_type, die_containing_type): Update calls to changed functions.
4233         Use the returned CU along with the returned DIE.
4234         (read_namespace): Use dwarf2_attr instead of dwarf2_extension.
4235
4236 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4237
4238         * dwarf2read.c (queue_comp_unit): Take an objfile argument.  Read
4239         in the DIEs here.
4240         (process_queue): Do not read in the DIEs here.
4241         (psymtab_to_symtab_1): Update call to queue_comp_unit.
4242         (read_full_die): Do not call queue_comp_unit from here.
4243         (maybe_queue_comp_unit): New function.
4244         (follow_die_ref): Use it.
4245
4246 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4247
4248         * dwarf2read.c (struct attribute): Move earlier.
4249         (struct die_info): Change attrs to a trailing array.
4250         (dwarf_alloc_die): Take the number of attributes.  Allocate space
4251         for them.
4252         (read_full_die): Update call to dwarf_alloc_die.  Do not manually
4253         allocate attributes.
4254
4255 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4256
4257         * dwarf2read.c (REF_HASH_SIZE): Delete.
4258         (struct dwarf2_cu): Replace die_ref_table with die_hash.
4259         (struct die_info): Remove next_ref.
4260         (store_in_ref_table): Remove offset argument.  Rewrite to use
4261         htab_find_slot_with_hash.
4262         (die_hash, die_eq): New.
4263         (read_comp_unit): Allocate the die_hash.
4264         (read_die_and_children): Update call to store_die_ref.
4265         (follow_die_ref): Rewrite to use htab_find_with_hash.
4266
4267 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4268
4269         * dwarf2read.c (free_die_list, copy_die): Delete.
4270         (dwarf_alloc_die): Take a CU argument.  Allocate the new DIE
4271         on the obstack.
4272         (read_full_die): Update call to dwarf_alloc_die.  Allocate
4273         attributes on the CU obstack.
4274         (free_one_comp_unit): Do not call free_die_list.
4275
4276 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
4277
4278         * dwarf2read.c (read_die_and_children): Ignore NULL DIEs.
4279         (read_die_and_siblings): Likewise.  Do not add padding DIEs to the
4280         sibling list.
4281         (read_full_die): Do not allocate DIEs for abbrev 0.
4282         (follow_die_ref): Correct error message.
4283
4284 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4285
4286         * linespec.c (symtab_from_filename): Also throw NOT_FOUND_ERROR if
4287         there are no symbols loaded, instead of throwing a generic error.
4288         (decode_variable): Likewise.
4289
4290 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
4291
4292         * objfiles.h (struct obj_section): Remove addr and endaddr fields.
4293         (obj_section_offset, obj_section_addr, obj_section_endaddr): New
4294         macros.
4295         * objfiles.c (add_to_objfile_sections): Don't set addr, endaddr
4296         and offset.  Use size_t instead of unsigned long.
4297         (build_objfile_section_table): Use size_t instead of unsigned
4298         long.
4299         (objfile_relocate): Don't relocate s->addr and s->endaddr, they're
4300         gone.
4301         (find_pc_sect_section): Use obj_section_addr and
4302         obj_section_endaddr.
4303         * symfile.c (symfile.c): Remove code that maps sections
4304         offsets in "addr" to the object's sections.
4305         * blockframe.c (find_pc_partial_function): Use obj_section_endaddr.
4306         * gcore.c (gcore_create_callback): Use obj_section_addr and
4307         obj_section_endaddr.
4308         * maint.c (print_objfile_section_info): Likewise.
4309         * printcmd.c (sym_info): Use obj_section_addr and
4310         obj_section_endaddr.
4311         * symtab.c (fixup_section): Likewise.
4312
4313 2008-08-20  Mark Kettenis  <kettenis@gnu.org>
4314
4315         * sparc-tdep.c: Make some comments catch up with reality.
4316
4317 2008-08-20  Vladimir Prus  <vladimir@codesourcery.com>
4318
4319         * NEWS: Mention 'set target-async'
4320
4321 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4322
4323         * infrun.c (resume): If the thread is placed to the deferred step
4324         queue, mark it as running.
4325
4326 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4327
4328         Make sure target supports non-stop.
4329         * infcmd.c (run_command_1, attach_command): If non-stop mode
4330         is requested, verify the target supports it.
4331         * linux-nat.c (linux_nat_supports_non_stop): New.
4332         (linux_nat_add_target): Register the above.
4333         * target.c (find_default_supports_non_stop)
4334         (target_supports_non_stop): New.
4335         (init_dummy_target): Register find_default_supports_non_stop.
4336         * target.h (struct target_ops): New field to_supports_non_stop.
4337         (target_supports_non_stop): New.
4338
4339 2008-08-19  Pedro Alves  <pedro@codesourcery.com>
4340             Vladimir Prus  <vladimir@codesourcery.com>
4341
4342         * target.c (target_async_permitted, target_async_permitted_1)
4343         (set_maintenance_target_async_permitted)
4344         (show_maintenance_target_async_permitted): New.
4345         (initialize_targets): Register 'set target-async'.
4346         * target.h (target_async_permitted): Declare.
4347         * linux-nat.c (linux_nat_async_enabled)
4348         (linux_nat_async_permitted, set_maintenance_linux_async_permitted)
4349         (show_maintenance_linux_async_permitted): Remove.
4350         (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p)
4351         (get_pending_events, linux_nat_async): Use target_async_permitted.
4352         (linux_nat_set_async_mode): Remove, moving the only used bits
4353         into...
4354         (linux_nat_setup_async): This.
4355         (_initialize_linux_nat): Do not register 'maint set linux-async'.
4356         Use linux_nat_setup_async.
4357         * remote.c (remote_async_permitted, remote_async_permitted_set)
4358         (set_maintenance_remote_async_permitted)
4359         (show_maintenance_remote_async_permitted): Remove.
4360         (remote_open_1, remote_terminal_inferior, remote_can_async_p)
4361         (remote_is_async_p): Use target_async_permitted.
4362         (_initialize_remote): Don't register 'main set remote-async'.
4363         * mi/mi-cmds.c (mi_cmds): Register -list-target-features.
4364         * mi/mi-cmds.h (mi_cmd_list_target_features): New.
4365         * mi/mi-main.c (mi_cmd_list_target_features): New.
4366
4367 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
4368
4369         * target.c (maybe_kill_then_attach)
4370         (maybe_kill_then_create_inferior): Remove.
4371         (update_current_target): Do not default to_attach,
4372         to_create_inferiour, to_is_async_p.
4373
4374 2008-08-19  Paul N. Hilfinger  <hilfinger@adacore.com>
4375         
4376         Changes for supporting boolean types in debugging data.
4377         * ada-lang.c (discrete_type_high_bound,discrete_type_low_bound): Change 
4378         API to return LONGEST values rather than struct values.
4379         (ada_evaluate_subexp): Change to use new API of discrete_type_low_bound
4380         and discrete_type_high_bound.
4381         (to_fixed_range_type): Create a range type in cases where 
4382         argument is base type and its limits are representable as ints.
4383         (ada_is_modular_type): Correct so that base type must be integral.
4384         * ada-lex.l (TRUEKEYWORD,FALSEKEYWORD): Make 'true' and 'false' 
4385         keywords when they appear alone, since we are phasing out 
4386         direct representation of these identifiers in debugging data.
4387         * ada-exp.y: Define 'true' and 'false' as primaries.
4388         (type_boolean): New function.
4389         (type_int,type_long,type_long_long,type_floattype_double)
4390         (type_long_double): Remove uses of current_gdbarch for consistency
4391         with type_boolean.
4392         (write_int): Change comment to indicate that it might write boolean 
4393         constant as well.
4394         * ada-typeprint.c (ada_print_type): Print '(false, true)' for boolean
4395         type, since will no longer be represented as enumerated type in 
4396         debugging data.
4397         * ada-valprint.c (print_optional_low_bound): Handle boolean case
4398         as well.
4399         * NEWS: Note support boolean types.
4400         
4401 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4402
4403         * bsd-uthread.c (bsd_uthread_close): New.
4404         (bsd_uthread_deactivate): Don't cleanup here, just unpush the
4405         target.
4406         (bsd_uthread_solib_loaded): Fix typo.
4407         (bsd_uthread_target): Register bsd_uthread_close.
4408
4409 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4410
4411         * corelow.c (core_open): Assume there was no upper layer left
4412         behind from a previous inferior.
4413         * target.c (pop_all_targets): Rename to ...
4414         (pop_all_targets_above): ... this.  Add a target stratum
4415         parameter.  Use it instead of hardcoding the dummy_stratum.
4416         (pop_all_targets): New, defer to pop_all_targets_above.
4417         (target_preopen): Use pop_all_targets_above.
4418         * target.h (pop_all_targets_above): Declare.
4419
4420 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
4421
4422         * gdbthread.h (thread_change_ptid): Declare.
4423         * infrun.c (infrun_thread_ptid_changed): New.
4424         (_initialize_infrun): Attach infrun_thread_ptid_changed to the
4425         thread_ptid_changed observer.
4426         * regcache.c (regcache_thread_ptid_changed): New.
4427         (_initialize_regcache): Attach regcache_thread_ptid_changed to the
4428         thread_ptid_changed observer.
4429         * thread.c (thread_change_ptid): New.
4430
4431 2008-08-18  Tom Tromey  <tromey@redhat.com>
4432
4433         * symfile.c (reread_symbols): Update.
4434         * solib-sunos.c (allocate_rt_common_objfile): Update.
4435         * objfiles.c (allocate_objfile): Update.
4436         * objfiles.h (struct objfile) <md, mmfd, deprecated_obj_private>:
4437         Remove.
4438
4439 2008-08-18  Tom Tromey  <tromey@redhat.com>
4440
4441         * gdbtypes.c (copy_type_recursive): Allocate 'stored' on objfile's
4442         obstack.
4443
4444 2008-08-18  Daniel Jacobowitz  <dan@codesourcery.com>
4445
4446         * rs6000-tdep.c (struct rs6000_framedata): Add gpr_mask, used_bl,
4447         lr_register.
4448         (rs6000_in_function_epilogue_p): Check for bctr.
4449         (skip_prologue): Initialize lr_register.  Set lr_reg to a register
4450         number.  Set gpr_mask and used_bl.  Continue scanning while some
4451         expected registers are not saved.  Set lr_register if LR is not
4452         stored.
4453         (rs6000_frame_cache): Handle gpr_mask and lr_register.
4454
4455 2008-08-17  Tom Tromey  <tromey@redhat.com>
4456
4457         PR gdb/1535:
4458         * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): New macros.
4459         (ep_find_event_name_end): Remove.
4460         (catch_fork_temporary, catch_vfork_temporary,
4461         catch_fork_permanent, catch_vfork_permanent): New constants.
4462         (catch_vfork, catch_fork): Remove.
4463         (catch_fork_command_1): Add 'command' argument.  Remove
4464         'fork_kind' and 'tempflag'.  Handle NULL 'arg'.  Update switch for
4465         all cases.
4466         (catch_exec_command_1): Add 'command' argument; remove
4467         'tempflag'.  Handle NULL 'arg'.
4468         (catch_load_command_1): Likewise.
4469         (catch_unload_command_1): Likewise.
4470         (catch_ada_exception_command): Likewise.
4471         (catch_assert_command): Likewise.
4472         (catch_catch_command): New function.
4473         (catch_throw_command): Likewise.
4474         (catch_command_1): Remove.
4475         (catch_command): Just call error.
4476         (tcatch_command): Likewise.
4477         (catch_cmdlist): New global.
4478         (tcatch_cmdlist): Likewise.
4479         (add_catch_command): New function.
4480         (_initialize_breakpoint): Create "catch" and "tcatch" as prefix
4481         commands.  Create all catch sub-commands.
4482
4483 2008-08-17  Pedro Alves  <pedro@codesourcery.com>
4484
4485         * gdbthread.h: Add comments.
4486         * stack.c (get_selected_block): Return 0 on an exited thread.
4487         * top.c (execute_command): Check for is_stopped, not !is_running.
4488         * event-top.c (command_handler): Likewise.
4489
4490 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4491
4492         * mi/mi-main.c (mi_cmd_exec_next, mi_cmd_exec_next_instruction)
4493         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
4494         (mi_cmd_exec_finish): Remove "return".
4495
4496 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4497
4498         * target.h (pop_all_targets): Declare.
4499         * target.c (pop_all_targets): New.
4500         * top.c (quit_target): Pop all targets instead of just closing the
4501         current.
4502
4503 2008-08-16  Vladimir Prus  <vladimir@codesourcery.com>
4504             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4505
4506         * cli-script.c (read_next_line): Add parse_commands argument.
4507         (recurse_read_control_structure): Adapt to new read_next_line
4508         signature.
4509         (read_command_lines): Add parse_commands argument.
4510         (define_command): Adapt to new read_command_lines signature.
4511         (document_command): Likewise.
4512         * breakpoint.c (commands_command): Likewise.
4513         * defs.h (read_command_lines): Adjust function prototype.
4514
4515 2008-08-16  Paul N. Hilfinger  <hilfinger@adacore.com>
4516
4517         * ada-lang.c (pos_atr): Account for the possibility that the 
4518         argument may be a reference.
4519
4520 2008-08-16  Paul N. Hilfinger  <hilfingr@adacore.com>
4521
4522         * xcoffread.c (scan_xcoff_symtab): Do not include global symbols
4523         ('F' format) for @FIX names generated by the loader, retaining only
4524         the minimal symbols (and no partial symbol tables) for these names.
4525         Fixes warning messages about symbols that are found in partial 
4526         symbol tables, but not full symbol tables.
4527
4528 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
4529
4530         * infrun.c (fetch_inferior_event): Only call normal_stop if not
4531         stopping quietly.
4532
4533 2008-08-15  Luis Machado  <luisgpm@br.ibm.com>
4534
4535         * rs6000-tdep: Include "features/rs6000/powerpc-vsx32.c".
4536         Include "features/rs6000/powerpc-vsx64.c".
4537         (ppc_supply_vsxregset): New function.
4538         (ppc_collect_vsxregset): New function.
4539         (IS_VSX_PSEUDOREG): New macro.
4540         (IS_EFP_PSEUDOREG): New macro.
4541         (vsx_register_p): New function.
4542         (ppc_vsx_support_p): New function.
4543         (rs6000_builtin_type_vec128): New function.
4544         (rs6000_register_name): Hide upper halves of vs0~vs31.  Return
4545         correct names for VSX registers and EFPR registers.
4546         (rs6000_pseudo_register_type): Return correct types for VSX
4547         and EFPR registers.
4548         (rs6000_pseudo_register_reggroup_p): Return correct group for
4549         VSX and EFPR registers.
4550         (ppc_pseudo_register_read): Rename to dfp_pseudo_register_read.
4551         (ppc_pseudo_register_write): Rename to dfp_pseudo_register_write.
4552         (vsx_pseudo_register_read): New function.
4553         (vsx_pseudo_register_write): New function.
4554         (efpr_pseudo_register_read): New function.
4555         (efpr_pseudo_register_write): New function.
4556         (rs6000_pseudo_register_read): Call new VSX and EFPR read functions.
4557         (rs6000_pseudo_register_write): Call new VSX and EFPR write functions.
4558         (rs6000_gdbarch_init): Declare have_vsx.
4559         Initialize new upper half VSX registers.
4560         Initialize VSX-related and EFPR-related pseudo-registers variables.
4561         Adjust the number of pseudo registers accordingly.
4562
4563         * ppc-linux-nat.c: Define PTRACE_GETVSXREGS, PTRACE_SETVSXREGS
4564         and SIZEOF_VSRREGS.
4565         (gdb_vsxregset_t): New type.
4566         (have_ptrace_getsetvsxregs): New variable.
4567         (fetch_vsx_register): New function.
4568         (fetch_register): Handle VSX registers.
4569         (fetch_vsx_registers): New function.
4570         (fetch_ppc_registers): Handle VSX registers.
4571         (store_ppc_registers): Handle VSX registers.
4572         (store_vsx_register): New function.
4573         (store_register): Handle VSX registers.
4574         (store_vsx_registers): New function.
4575         (ppc_linux_read_description): Handle VSX-enabled inferiors.
4576         (gdb_vsxregset_t): New type.
4577         (supply_vsxregset): New function.
4578         (fill_vsxregset): New function.
4579
4580         * ppc-tdep.h (vsx_register_p): New prototype.
4581         (vsx_support_p): New prototype.
4582         (ppc_vsr0_regnum): New variable.
4583         (ppc_vsr0_upper_regnum): Likewise.
4584         (ppc_efpr0_regnum): Likewise.
4585         (ppc_builtin_type_vec128): New type.
4586         (ppc_num_vsrs): New constant.
4587         (ppc_num_vshrs): New constant.
4588         (ppc_num_efprs): Likewise.
4589         Define POWERPC_VEC_VSX PPC_VSR0_UPPER_REGNUM and PPC_VSR31_UPPER_REGNUM.
4590         (ppc_supply_vsxregset): New prototype.
4591         (ppc_collect_vsxregset): New prototype.
4592
4593         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-vsx32l.c"
4594         Include "features/rs6000/powerpc-vsx64l.c".
4595         (_initialize_ppc_linux_tdep): Initialize VSX-enabled targets.
4596         (ppc_linux_regset_sections): Add new ".reg-ppc-vsx" field.
4597         (ppc32_linux_vsxregset): New 32-bit VSX-enabled regset.
4598         (ppc_linux_regset_from_core_section): Handle VSX core section.
4599         (ppc_linux_core_read_description): Support VSX-enabled core files.
4600
4601         * ppc-linux-tdep.h: Declare *tdesc_powerpc_vsx32l
4602         Declare tdesc_powerpc_vsx64l
4603
4604         * corelow.c (get_core_register_section): Support VSX-enabled
4605         core files.
4606
4607         * features/rs6000/power-vsx.xml: New VSX descriptions.
4608         * features/rs6000/powerpc-vsx32.xml: New file.
4609         * features/rs6000/powerpc-vsx32l.xml: New file.
4610         * features/rs6000/powerpc-vsx64.xml: New file.
4611         * features/rs6000/powerpc-vsx64l.xml: New file.
4612         * features/rs6000/powerpc-vsx32.c: New file (generated).
4613         * features/rs6000/powerpc-vsx32l.c: New file (generated).
4614         * features/rs6000/powerpc-vsx64.c: New file (generated).
4615         * features/rs6000/powerpc-vsx64l.c: New file (generated).
4616         * features/Makefile: Updated with new descriptions.
4617         * regformats/rs6000/powerpc-vsx32l.dat: New file (generated).
4618         * regformats/rs6000/powerpc-vsx64l.dat: New file (generated).
4619
4620 2008-08-15  Vladimir Prus  <vladimir@codesourcery.com>
4621
4622         * ia64-linux.nat (_initialize_ia64_linux_nat): Don't
4623         call linux_target twice.
4624
4625 2008-08-14  Aleksandar Ristovski  <aristovski@qnx.com>
4626
4627         * nto-tdep.c (lm_info): Updated struct lm_info definition from
4628         solib-svr4.c
4629         (LM_ADDR): Use l_addr if available; if not, use link map and set 
4630         l_addr.
4631
4632 2008-08-14  Tom Tromey  <tromey@redhat.com>
4633
4634         * macrocmd.c (macro_define_command): Check for NULL argument.
4635         (macro_undef_command): Likewise.
4636
4637 2008-08-14  Pedro Alves  <pedro@codesourcery.com>
4638
4639         * infcmd.c (continue_1): Add an ERROR_NO_INFERIOR call.
4640
4641 2008-08-13  Pedro Alves  <pedro@codesourcery.com>
4642
4643         * breakpoint.c (always_inserted_auto, always_inserted_on)
4644         (always_inserted_off, always_inserted_enums): New.
4645         (always_inserted_mode): Change type to char* and point to
4646         always_inserted_auto.
4647         (show_always_inserted_mode): In auto mode, also show the current
4648         effect of the option.
4649         (breakpoints_always_inserted_mode): Adjust for the new auto mode.
4650         (_initialize_breakpoint): Make the "set breakpoints
4651         always-inserted" command an enum command.  Extend help to describe
4652         the auto mode.
4653
4654 2008-08-13  Ulrich Weigand  <uweigand@de.ibm.com>
4655
4656         * spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status
4657         query valid) bit.  Ignore bits outside the condition field.
4658         (info_spu_proxydma_command): Ignore bits outside the field.
4659
4660 2008-08-12  Michael Snyder  <msnyder@vmware.com>
4661
4662         * MAINTAINERS: Update my email address.
4663
4664 2008-08-12  Ulrich Weigand  <uweigand@de.ibm.com>
4665
4666         * ppc-linux-nat.c (ppc_linux_get_hwcap): Really get AT_HWCAP.
4667
4668 2008-08-12  Pedro Alves  <pedro@codesourcery.com>
4669
4670         Add no-ack mode to the remote protocol --- optionally stop ACKing
4671         packets and responses when we have a reliable communication
4672         medium.
4673
4674         Based on Apple's GDB, by Jason Molenda <jmolenda@apple.com>
4675
4676         * remote.c (struct remote_state): Add noack_mode field.
4677         (PACKET_QStartNoAckMode): New.
4678         (remote_start_remote): Don't any outstanding packet here.
4679         (remote_open_1): Clear noack_mode.  Ack any outstanding packet
4680         here.  Activate noack mode if requested.
4681         (remote_protocol_features): Add QStartNoAckMode.
4682         (remote_open_1):
4683         (putpkt_binary): Don't send ack in noack mode.
4684         (read_frame): Don't recompute the checksum in noack mode.
4685         (getpkt_sane): Skip sending ack if in noack mode.
4686         (_initialize_remote): Add set/show remote noack mode.
4687         * NEWS:  Note the new features.
4688
4689 2008-08-11  Kevin Buettner  <kevinb@redhat.com>
4690
4691         * rs6000-tdep.c (BL_MASK, BL_INSTRUCTION, BL_DISPLACEMENT_MASK):
4692         New macros.
4693         (rs6000_skip_main_prologue): New function.
4694         (rs6000_gdb_arch_init): Register rs6000_skip_main_prologue.
4695
4696 2008-08-11  Sandra Loosemore  <sandra@codesourcery.com>
4697
4698         * MAINTAINERS (Write After Approval):  Add self.
4699
4700 2008-08-11  Stan Shebs  <stan@codesourcery.com>
4701
4702         ARM BE8 support.
4703         * disasm.c (gdb_disassemble_info): Set endian_code.
4704         * gdbarch.sh (gdbarch_info): New field byte_order_for_code.
4705         * gdbarch.h, gdbarch.c: Regenerate.
4706         * arch-utils.c (initialize_current_architecture): Set the
4707         default byte_order_for_code.
4708         (gdbarch_info_init): Ditto.
4709         (gdbarch_info_fill): Ditto.
4710         * arm-tdep.c (SWAP_INT, SWAP_SHORT): New macros.
4711         (thumb_analyze_prologue): Swap halfword if code endianness is
4712         different from general endianness.
4713         (arm_skip_prologue): Similarly.
4714         (arm_scan_prologue): Ditto.
4715         (thumb_get_next_pc): Ditto.
4716         (arm_get_next_pc): Ditto.
4717         (arm_gdbarch_init): Set byte_order_for_code from BE8 flag,
4718         choose correct endianness for breakpoints.
4719
4720 2008-08-10  Pedro Alves  <pedro@codesourcery.com>
4721
4722         * bsd-kvm.c: Include "gdbthread.h".
4723         (bsd_kvm_ptid): New.
4724         (bsd_kvm_open): Add a main thread.
4725         (bsd_kvm_close): Delete it.
4726         (bsd_kvm_thread_alive): New.
4727         (bsd_kvm_pid_to_str): New.
4728         (bsd_kvm_add_target): Register bsd_kvm_thread_alive and
4729         bsd_kvm_pid_to_str.
4730         (bsd_kvm_add_target): Initialize bsd_kvm_ptid.
4731
4732 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4733
4734         * buildsym.c (start_subfile): Properly cast sentinel in concat
4735         call.
4736         * cp-name-parser.y: Include "config.h".
4737         * xml-tdesc.c (fetch_xml_from_file): Properly cast sentinel in
4738         concat call.
4739         * gdb_select.h: Include sys/time.h if sys/select.h is not
4740         available.
4741
4742 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4743
4744         * go32-nat.c: Include "gdbthread.h".
4745         (go32_stop, go32_kill_inferior): Delete the main thread.
4746         (go32_create_inferior): Add it.
4747         (go32_thread_alive, go32_pid_to_str): New.
4748         (init_go32_ops): Register go32_thread_alive and go32_pid_to_str.
4749
4750 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
4751
4752         * go32-nat.c (fetch_register, store_register): Pass the regcache
4753         gdbarch to i386_fp_regnum_p and i386_fpc_regnum_p.
4754         (go32_xfer_memory): Change type of myaddr parameter to gdb_byte.
4755         (struct seg_descr, struct seg_descr): pack the whole struct
4756         instead of each member individually.
4757
4758 2008-08-09  Andreas Schwab  <schwab@suse.de>
4759
4760         * python/python.c (_initialize_python): Use unabbreviated commands
4761         in prefix name.
4762
4763 2008-08-09  Daniel Jacobowitz  <dan@codesourcery.com>
4764
4765         * Makefile.in (stamp-h): Also create .deps.
4766
4767 2008-08-09  Tom Tromey  <tromey@redhat.com>
4768
4769         * Makefile.in (generated_files): Add GNULIB_H.
4770
4771 2008-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4772
4773         * solib-pa64.c (pa64_solib_create_inferior_hook): Don't set
4774         DT_HP_DEBUG_PRIVATE.  Add warning if DT_HP_DEBUG_PRIVATE is not set.
4775         Revise comment.
4776         (pa64_current_sos): Remove map private warning warning.
4777         * solib-som.c: Include string.h and sys/utsname.h.
4778         (get_hpux_major_release): New function.
4779         (som_solib_create_inferior_hook): Read dynamic linker header.  Warn
4780         about shared library private mapping on HP-UX 11 and later.  Only force
4781         private mapping of shared libraries on HP-UX 10 and earlier.
4782         (link_map_start): Delete warning.
4783
4784 2008-08-09  Xuepeng Guo  <xuepeng.guo@intel.com>
4785             H.J. Lu  <hongjiu.lu@intel.com>
4786             Mark Kettenis <kettenis@gnu.org>
4787
4788         * amd64-tdep.c (amd64_frame_cache): Add saved_sp_reg.
4789         (amd64_init_frame_cache): Initialize saved_sp_reg.
4790         (amd64_analyze_stack_align): New.
4791         (amd64_analyze_prologue): Call it.
4792         (amd64_frame_cache): Use saved_sp_reg if it is invalid.  Don't set
4793         %rip to 8 when halfway aligning the stack.
4794
4795         * amd64-tdep.h (amd64_regnum): Add AMD64_R9_REGNUM to
4796         AMD64_R14_REGNUM.
4797
4798         * i386-tdep.c (i386_frame_cache): Remove stack_align.  Add
4799         saved_sp_reg.
4800         (i386_alloc_frame_cache): Remove stack_align.  Initialize
4801         saved_sp_reg to -1.
4802         (i386_analyze_stack_align): Rewrite.
4803         (i386_frame_cache): Use saved_sp_reg if it is valid.
4804
4805 2008-08-09  Ulrich Weigand  <uweigand@de.ibm.com>
4806
4807         * target.c: Include "solib.h".
4808         (target_pre_inferior): Call no_shared_libraries.
4809         * infcmd.c (run_command_1): Do not call objfile_purge_solibs
4810         or clear_solib.
4811         (attach_command): Do not call clear_solib.
4812
4813 2008-08-09  Mark Kettenis  <kettenis@gnu.org>
4814
4815         * i386obsd-nat.c (i386obsd_supply_pcb): Supply the right bytes for
4816         the %eip register.
4817
4818 2008-08-08  Tom Tromey  <tromey@redhat.com>
4819
4820         * Makefile.in (python.o): Remove dependencies.  Use COMPILE and
4821         POSTCOMPILE.
4822         (python-utils.o): Likewise.
4823
4824 2008-08-08  Andreas Schwab  <schwab@suse.de>
4825
4826         * corefile.c (_initialize_core): Remove spurious paren from set
4827         gnutarget doc string.
4828
4829 2008-08-08  Luis Machado  <luisgpm@br.ibm.com>
4830
4831         * ppc-linux-nat.c: Include "auxv.h" and "elf/common.h".
4832         Define PPC_FEATURE_BOOKE.
4833         (ppc_linux_get_hwcap): New function.
4834         (ppc_linux_region_ok_for_hw_watchpoint): Handle PowerPC 440
4835         4-bytes alignment restrictions.
4836         (ppc_linux_insert_watchpoint): Handle PowerPC 440-specific
4837         positioning of the read/write flags.
4838         (ppc_linux_watchpoint_addr_within_range): Handle PowerPC 440
4839         4-bytes alignment.
4840
4841 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
4842
4843         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
4844
4845         * win32-nat.c (win32_add_thread): Change thread argument type to
4846         ptid_t.  Adjust.
4847         (win32_add_thread): Adjust.
4848         (win32_delete_thread): Change thread argument type to ptid_t.
4849         Adjust.
4850         (win32_fetch_inferior_registers, win32_store_inferior_registers)
4851         (win32_resume, get_win32_debug_event, get_win32_debug_event)
4852         (win32_wait, win32_pid_to_exec_file, win32_pid_to_str): Adjust.
4853         (init_win32_ops): Put to_magic last.
4854         (win32_win32_thread_alive): Adjust.
4855
4856 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
4857
4858         * remote-m32r-sdi.c (m32r_thread_alive, m32r_pid_to_str): New.
4859         (init_m32r_ops): Register m32r_thread_alive and m32r_pid_to_str.
4860
4861 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
4862
4863         * remote-m32r-sdi.c: Include "gdbthread.h".
4864         (remote_m32r_ptid): New.
4865         (m32r_close): Delete the main thread.
4866         (m32r_resume): Set inferior_ptid toA remote_m32r_ptid. Add the
4867         main thread.
4868         (m32r_kill, m32r_load, sdireset_command): Delete the main thread.
4869         (_initialize_remote_m32r): Initialize remote_m32r_ptid.
4870
4871 2008-08-07  Tom Tromey  <tromey@redhat.com>
4872             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4873
4874         * aclocal.m4, configure: Rebuild.
4875         * configure.in: Call ZW_CREATE_DEPDIR,
4876         ZW_PROG_COMPILER_DEPENDENCIES, AC_PROG_MAKE_SET.
4877         (MAKE, GMAKE): New substs.
4878         * acinclude.m4: Include depstand.m4.
4879         * Makefile.in (DEPMODE, DEPDIR, COMPILE.post, COMPILE.pre,
4880         COMPILE, POSTCOMPILE, depcomp): New variables.
4881         Remove all _h variables.
4882         Remove many .o targets.
4883         ($(srcdir)/copying.c): avoid backslash-newline after comment
4884         sign (@maintainer_mode_true@).
4885         (HFILES_NO_SRCDIR): Regenerate.
4886         (generated_files): New variable.
4887         (all_gdbtk_cflags): Likewise.
4888         (.c.o): Rewrote.
4889         (init.o, version.o, copying.o): Remove.
4890         (distclean): Remove DEPDIR.
4891         (test-cp-name-parser.o, hpux-thread.o, main.o, monitor.o,
4892         printcmd.o, procfs.o, v850ice.o): Rewrite.
4893         (cli-cmds.o, cli-decode.o, cli-dump.o, cli-interp.o, cli-logging.o,
4894         cli-script.o, cli-setshow.o, cli-utils.o): Likewise.
4895         (gdbtk.o, gdbtk-bp.o, gdbtk-cmds.o, gdbtk-hooks.o, gdbtk-interp.o,
4896         gdbtk-main.o, gdbtk-register.o, gdbtk-stack.o, gdbtk-varobj.o,
4897         gdbtk-wrapper.o): Likewise.
4898         (mi-cmd-break.o, mi-cmd-disas.o, mi-cmd-env.o, mi-cmd-file.o,
4899         mi-cmds.o, mi-cmd-stack.o, mi-cmd-target.o, mi-cmd-var.o,
4900         mi-console.o, mi-getopt.o, mi-interp.o, mi-main.o, mi-out.o,
4901         mi-parse.o, mi-symbol-cmds.o, mi-common.o, signals.o, tui.o,
4902         tui-command.o, tui-data.o, tui-disasm.o, tui-file.o, tui-hooks.o,
4903         tui-interp.o, tui-io.o, tui-layout.o, tui-main.o, tui-out.o,
4904         tui-regs.o, tui-source.o, tui-stack.o, tui-win.o, tui-windata.o,
4905         tui-wingeneral.o, tui-winsource.o): Likewise.
4906         (all_object_files): New variable.
4907         ($(all_object_files)): New target.
4908         Include dependency files, when using GNU Make.
4909
4910 2008-08-07  Ulrich Weigand  <uweigand@de.ibm.com>
4911
4912         * spu-tdep.c (info_spu_dma_cmdlist): Only show entries with
4913         the valid bit set.  Ensure display order respects partial
4914         order defined by dependency bits.
4915
4916 2008-08-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4917
4918         * solib-pa64.c (read_dld_descriptor): Return zero if load map is not
4919         setup.
4920
4921 2008-08-06  Mark Kettenis  <kettenis@gnu.org>
4922
4923         * i386obsd-nat.c (i386obsd_supply_pcb): Adjust for changes in
4924         OpenBSD 4.3.
4925
4926 2008-08-06  Vladimir Prus  <vladimir@codesourcery.com>
4927             Tom Tromey  <tromey@redhat.com>
4928             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4929             Doug Evans  <dje@google.com>
4930
4931         * Makefile.in (SUBDIR_PYTHON_OBS, SUBDIR_PYTHON_SRCS,
4932         SUBDIR_PYTHON_DEPS, SUBDIR_PYTHON_LDFLAGS, SUBDIR_PYTHON_CFLAGS,
4933         PYTHON_CFLAGS): New.
4934         (python_h, python_internal_h): New.
4935         (cli-script.o): Depend on python.h
4936         (python.o, python-utils.o): New.
4937         * cli/cli-script.c (print_command_lines): Handle python_control.
4938         (execute_control_command): Handle python_control.
4939         (execute_control_command_untraced): New function.
4940         (while_command): Call execute_control_command_untraced.
4941         (if_command): Likewise.
4942         (get_command_line): Remove static attribute.
4943         (read_next_line): Handle "python".
4944         (recurse_read_control_structure): Handle python_control.
4945         (read_command_lines): Handle python_control.
4946         Include python.h.
4947         * cli/cli-script.h (get_command_line): Add prototype.
4948         (execute_control_command_untraced): Likewise.
4949         * configure.ac: Add --with-python.
4950         * defs.h (enum command_control_type) <python_control>: New
4951         constant.
4952         * python/python-internal.h: New file.
4953         * python/python.c: New file.
4954         * python/python.h: New file.
4955         * python/python-utils.c: New file.
4956         * NEWS: Mention Python scripting support and its new commands.
4957
4958 2008-08-06  Ulrich Weigand  <uweigand@de.ibm.com>
4959
4960         * spu-tdep.c (spu_gdbarch_init): Call set_gdbarch_frame_red_zone_size.
4961
4962 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
4963
4964         * MAINTAINERS (Write After Approval): Add self.
4965
4966 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
4967
4968         * breakpoint.c (hw_breakpoint_used_count): Use breakpoint_enabled.
4969         (insert_breakpoint_locations): Likewise.
4970
4971 2008-08-05  Phil Muldoon  <pmuldoon@redhat.com>
4972
4973         * breakpoint.c (create_longjmp_breakpoint): Remove unused struct
4974         breakpoint.
4975         (set_longjmp_breakpoint): Likewise.
4976
4977 2008-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4978
4979         PR build/2490
4980         * solib-pa64.c: Only compile if both HAVE_ELF_HP_H and __LP64__ are
4981         defined.
4982
4983 2008-08-05  Tom Tromey  <tromey@redhat.com>
4984
4985         * bcache.c (deprecated_bcache_added): Initialize obstack.
4986         (bcache_xmalloc): Don't initialize obstack.
4987         (bcache_xfree): Conditionally free obstack.
4988         (bcache_memory_used): Update.
4989
4990 2008-08-05  Tom Tromey  <tromey@redhat.com>
4991
4992         * symfile.c (add_psymbol_to_bcache): Return a const pointer.  Use
4993         bcache_full.
4994         (append_psymbol_to_list): Accept a const pointer.
4995         (add_psymbol_to_list): Fix const correctness.
4996         * bcache.h: (deprecated_bcache_added, deprecated_bcache): Remove.
4997         (bcache_full): Declare.
4998         * bcache.c (bcache_data, deprecated_bcache): Remove.
4999         (bcache): Use bcache_full.
5000         (bcache_full): Rename from deprecated_bcache_added.  Change return
5001         type.
5002
5003 2008-08-04  Stan Shebs  <stan@codesourcery.com>
5004
5005         * solib-svr4.c (BKPT_AT_SYMBOL): Remove, always defined.
5006         (bkpt_names): Remove SOLIB_BKPT_NAME, never defined.
5007         (enable_break): Remove test of BKPT_AT_SYMBOL.
5008
5009 2008-08-02  Keith Seitz  <keiths@redhat.com>
5010
5011         * acinclude.m4: Include ../config/tcl.m4 to pick up
5012         standard Tcl configury bits.
5013         Remove all Tcl, Tk, Itcl, Itk, etc definitions.
5014         * configure.ac: Don't check if ../itcl exists when building
5015         gdbtk. It could be installed.
5016         Rewrite gdbtk configury to allow for using system-supplied
5017         Tcl and Tk. Gdbtk no longer requires build-time access to
5018         itcl and itk.
5019         * Makefile.in: Remove everything related to itcl and itk.
5020         Rewrite the Tcl bits for gdbtk to correspond to rewrite of
5021         configure.ac.
5022         Remove v850ice.o build rule.
5023         (ALL_TCL_CFLAGS): New convenience defintion. Change all
5024         gdbtk sources to use it.
5025         * configure: Regenerate.
5026
5027 2008-07-31  Stan Shebs  <stan@codesourcery.com>
5028
5029         * coffread.c (coff_symtab_read): Remove FUNCTION_EPILOGUE_SIZE.
5030
5031 2008-07-30  Stan Shebs  <stan@codesourcery.com>
5032
5033         * objfiles.c (TARGET_KEEP_SECTION): Remove.
5034         (add_to_objfile_sections): Remove use.
5035
5036 2008-07-29  Tom Tromey  <tromey@redhat.com>
5037
5038         * cli/cli-decode.c (lookup_cmd_1): Use memcpy.
5039         (lookup_cmd_composition): Likewise.
5040
5041 2008-07-29  Tom Tromey  <tromey@redhat.com>
5042
5043         * cli/cli-cmds.c (edit_command): Remove unused variables.  Delete
5044         dead code.  Fix indentation.
5045
5046 2008-07-29  Stan Shebs  <stan@codesourcery.com>
5047
5048         * main.c (captured_main): Remove long-unused #if 0 blocks.
5049
5050 2008-07-28  Tom Tromey  <tromey@redhat.com>
5051
5052         * annotate.h (deprecated_annotate_starting_hook): Remove.
5053         (deprecated_annotate_stopped_hook): Remove.
5054         (deprecated_annotate_exited_hook): Remove.
5055         * Makefile.in (annotate.o): Depend on observer_h.
5056         * top.c (deprecated_delete_breakpoint_hook): Remove.
5057         (deprecated_create_breakpoint_hook): Likewise.
5058         (deprecated_modify_breakpoint_hook): Likewise.
5059         * interps.c (clear_interpreter_hooks): Update for removed hooks.
5060         * breakpoint.c (mention): Don't call removed hook.
5061         (delete_breakpoint): Likewise.
5062         (disable_breakpoint): Likewise.
5063         (do_enable_breakpoint): Likewise.
5064         * annotate.c: Include observer.h.
5065         (breakpoint_changed): Change type of argument.
5066         (_initialize_annotate): Register observers.
5067         (deprecated_annotate_starting_hook): Remove.
5068         (deprecated_annotate_stopped_hook): Remove.
5069         (deprecated_annotate_exited_hook): Remove.
5070         (annotate_starting): Update for hook removal.
5071         (annotate_stopped): Likewise.
5072         (annotate_exited): Likewise.
5073         * defs.h (deprecated_delete_breakpoint_hook): Remove.
5074         (deprecated_create_breakpoint_hook): Likewise.
5075         (deprecated_modify_breakpoint_hook): Likewise.
5076
5077 2008-07-28  Tom Tromey  <tromey@redhat.com>
5078
5079         * main.c (captured_main): Don't use BEFORE_MAIN_LOOP_HOOK.
5080
5081 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5082
5083         * configure.ac: Check for the GNU/Linux ptrace signature.
5084         * configure: Regenerated.
5085
5086 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5087
5088         * linux-nat.c (resume_callback): Add more debugging output.
5089         (linux_nat_has_pending_sigint): New function, based on
5090         linux_nat_has_pending.
5091         (set_ignore_sigint, maybe_clear_ignore_sigint): New functions.
5092         (stop_wait_callback): Remove flush_mask handling.  Honor
5093         ignore_sigint.  Call maybe_clear_ignore_sigint.  Pass NULL
5094         to recursive calls.
5095         (linux_nat_has_pending, flush_callback): Remove.
5096         (linux_nat_filter_event): Check for ignore_sigint.
5097         (linux_nat_wait): Remove flush_mask support and call to
5098         flush_callback.  Use set_ignore_sigint and maybe_clear_ignore_sigint.
5099         * linux-nat.h (struct lwp_info): Add ignore_sigint field.
5100
5101 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5102
5103         * linux-nat.c (count_events_callback, select_event_lwp_callback): Only
5104         report events from resumed threads.
5105
5106 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
5107
5108         * mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
5109         (mips_linux_init_abi): Set tdep->syscall_next_pc.
5110         * mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
5111         mips-tdep.h.
5112         (mips32_next_pc): Handle the syscall instruction.
5113         * mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
5114         from mips-tdep.c.  Add syscall_next_pc to gdbarch_tdep.
5115
5116 2008-07-26  Tom Tromey  <tromey@redhat.com>
5117
5118         PR gdb/1158:
5119         * valops.c (value_struct_elt): Treat function-valued field as a
5120         static method.
5121
5122 2008-07-26  Tom Tromey  <tromey@redhat.com>
5123
5124         PR gdb/1136:
5125         * macroexp.c (get_punctuator) <punctuators>: Rearrange to put
5126         longer tokens first.
5127
5128 2008-07-26  Vladimir Prus  <vladimir@codesourcery.com>
5129
5130         Kill cmd_async_ok.
5131         * cli/cli-decode.h (CMD_ASYNC_OK, set_cmd_async_ok)
5132         (get_cmd_async_ok): Remove.
5133         * cli/cli-decode.c (set_cmd_async_ok, get_cmd_async_ok): Remove.
5134         * cli/cli-cmds.c (init_cli_cmds): Don't use set_cmd_async_ok.
5135         * infcmd.c (_initialize_infcmd): Likewise.
5136         * thread.c (_initialize_thread): Likewise.
5137
5138 2008-07-25  Joseph Myers  <joseph@codesourcery.com>
5139
5140         * mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
5141         128-bit long doubles in even-odd pairs of FPRs.  Do not
5142         right-align float arguments for big-endian.
5143         (mips_n32n64_return_value): Apply return value convention for
5144         structs containing one or two floating-point values to soft-float
5145         as well as hard-float.  Handle 128-bit long doubles in such
5146         structs.
5147         (mips_o32_push_dummy_call): Only skip one integer register for a
5148         float argument passed in an FPR.
5149
5150 2008-07-25  Tom Tromey  <tromey@redhat.com>
5151
5152         * tui/tui-hooks.c: Include observer.h.
5153         (tui_event_default, tui_old_event_hooks, tui_event_hooks):
5154         Remove.
5155         (tui_bp_created_observer, tui_bp_deleted_observer,
5156         tui_bp_modified_observer): New globals.
5157         (tui_install_hooks): Use observers, not events.
5158         (tui_remove_hooks): Likewise.
5159         * mi/mi-cmd-break.c: Include observer.h, not gdb-events.h.
5160         (mi_breakpoint_observers_installed, mi_can_breakpoint_notify): New
5161         globals.
5162         (breakpoint_notify): Check mi_can_breakpoint_notify.
5163         (breakpoint_hooks): Remove.
5164         (mi_cmd_break_insert): Attach observers.  Don't use events.
5165         * tracepoint.c: Include observer.h, not gdb-events.h.
5166         (tracepoint_operation, trace_pass_command): Notify observer.
5167         * interps.c: Don't include gdb-events.h.
5168         (clear_interpreter_hooks): Don't call clear_gdb_event_hooks.
5169         * gdbarch.c: Rebuild.
5170         * gdbarch.sh: Emit include for observer.h, not gdb-events.h.
5171         (deprecated_current_gdbarch_select_hack): Notify observer.
5172         * breakpoint.h: Don't include gdb-events.h.
5173         * breakpoint.c: Don't include gdb-events.h.
5174         (condition_command): Notify observer.
5175         (commands_command): Likewise.
5176         (commands_from_control_command): Likewise.
5177         (mention, delete_breakpoint, set_ignore_count): Likewise.
5178         (disable_breakpoint, do_enable_breakpoint): Likewise.
5179         * Makefile.in (gdb_events_h): Remove.
5180         (breakpoint_h): Update.
5181         (COMMON_OBS): Remove gdb-events.o.
5182         (gdb-events.o): Remove.
5183         (breakpoint.o, gdbarch.o, interps.o, tracepoint.o, gdbtk-bp.o,
5184         gdbtk-hooks.o, mi-cmd-break.o, tui-hooks.o): Update.
5185         * gdb-events.c: Remove.
5186         * gdb-events.h: Remove.
5187         * gdb-events.sh: Remove.
5188
5189 2008-07-24  Pedro Alves  <pedro@codesourcery.com>
5190
5191         * remote.c (remote_threads_extra_info): Don't query the remote
5192         server about info on the internally added main thread.
5193
5194 2008-07-24  Aleksandar Ristovski  <aristovski@qnx.com>
5195
5196         * nto-procfs.c (procfs_attach): Populate initial thread list.
5197         (procfs_wait): Return new pid, built from the inferior status.
5198
5199 2008-07-23  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5200
5201         * configure.ac (CONFIG_INITS): Delete long obsoleted variable.
5202         * configure: Regenerate.
5203
5204 2008-07-23  Aleksandar Ristovski  <aristovski@qnx.com>
5205
5206         * nto-procfs.c (procfs_xfer_memory): Changed signature.
5207         (procfs_resume): Workaround for dereferencing type-punned pointer
5208         warning.
5209         * nto-tdep.c (nto_parse_redirection): Change signature to be const
5210         correct.
5211         * nto-tdep.h (nto_parse_redirection): Likewise.
5212
5213 2008-07-21  Stan Shebs  <stan@codesourcery.com>
5214
5215         Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
5216         * gdbarch.sh: Adjust comment to refer to
5217         in_solib_dynsym_resolve_code().
5218         * gdbarch.h, gdbarch.c: Update.
5219         * solib-osf.c: Ditto.
5220         * infrun.c: Ditto.
5221         (handle_inferior_event): Use in_solib_dynsym_resolve_code
5222         unconditionally.
5223         * config/mips/nm-irix5.h: Remove undef of
5224         IN_SOLIB_DYNSYM_RESOLVE_CODE.
5225
5226 2008-07-21  Tom Tromey  <tromey@redhat.com>
5227
5228         * symfile.c (reread_symbols): Don't pass argument to observer.
5229         * exec.c (exec_file_attach): Don't pass argument to observer.
5230         * ada-lang.c (ada_executable_changed_observer): Remove argument.
5231         * symtab.c (symtab_observer_executable_changed): Remove argument.
5232         * observer.sh: Handle functions with no arguments.
5233
5234 2008-07-20  Sergei Poselenov  <sposelenov@emcraft.com>
5235             Chris Demetriou  <cgd@google.com>
5236
5237         * elfread.c (elf_symfile_segments): Fix the check that each loadable
5238         section fits within an ELF segment to handle ELF segments that hit
5239         the end of the address space.
5240
5241 2008-07-20  Chris Demetriou  <cgd@google.com>
5242
5243         * MAINTAINERS (Write After Approval): Add self.
5244
5245 2008-07-18  Tom Tromey  <tromey@redhat.com>
5246
5247         PR gdb/855:
5248         * NEWS: Add entry for macro commands.
5249         * Makefile.in (macrocmd.o): Add gdb_string.h.
5250         * macroscope.h (user_macro_scope): Declare.
5251         (default_macro_scope): Update documentation.
5252         (macro_user_macros): Declare.
5253         * c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
5254         Use user_macro_scope.
5255         (null_macro_lookup): Remove.
5256         * macrotab.h (macro_callback_fn): Declare.
5257         (macro_for_each): Likewise.
5258         (macro_allow_redefinitions): Likewise.
5259         * macrotab.c (foreach_macro): New function
5260         (macro_for_each): Likewise.
5261         (struct macro_table) <redef_ok>: New field.
5262         (macro_allow_redefinitions): New function.
5263         (new_macro_table): Update.
5264         (macro_define_function): Likewise.
5265         (macro_define_object): Likewise.
5266         * macroscope.c (user_macro_scope): New function.
5267         (default_macro_scope): Use it.
5268         (macro_user_macros): New global.
5269         (standard_macro_lookup): Look in macro_user_macros.
5270         (_initialize_macroscope): New function.
5271         * macroexp.h (macro_is_whitespace, macro_is_digit,
5272         macro_is_identifier_nondigit): Declare.
5273         * macroexp.c (macro_is_whitespace): Rename.  No longer static.
5274         (macro_is_digit): Likewise.
5275         (macro_is_identifier_nondigit): Likewise.
5276         (get_identifier): Update.
5277         (get_pp_number): Likewise.
5278         (get_token): Likewise.
5279         * macrocmd.c (skip_ws): New function.
5280         (extract_identifier): Likewise.
5281         (free_macro_definition_ptr): Likewise.
5282         (user_macros): Remove.
5283         (macro_define_command): Implement.
5284         (_initialize_macrocmd): Update.
5285         (macro_undef_command): Implement.
5286         (print_one_macro): New function.
5287         (macro_list_command): Implement.
5288
5289 2008-07-18  Joseph Myers  <joseph@codesourcery.com>
5290
5291         * configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
5292         in BFD ELF check.
5293         * configure: Regenerate.
5294
5295 2008-07-17  Paul Pluzhnikov  <ppluzhnikov@google.com>
5296
5297         * auxv.c (fprint_target_auxv): Stop at AT_NULL.
5298
5299 2008-07-15  Andreas Schwab  <schwab@suse.de>
5300
5301         * valops.c (value_cast_pointers): Follow typedefs when checking
5302         result of coercion.
5303
5304 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5305
5306         * block.c (block_function): Renamed to ...
5307         (block_linkage_function): ... this.  All callers changed.
5308         * block.h (block_function): Renamed to ...
5309         (block_linkage_function): ... this.
5310
5311 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5312
5313         * mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.
5314
5315 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5316
5317         * frame.c (frame_sp_unwind): Delete.
5318         (get_frame_sp): Do not use it.
5319         * frame.h (frame_sp_unwind): Delete prototype.
5320
5321 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5322
5323         * ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.
5324
5325 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5326
5327         * dwarf2-frame.c (dwarf2_frame_cache): Update comment.
5328         * frame.c (frame_unwind_address_in_block): Delete.
5329         (get_frame_address_in_block): Do not use it.  Check the type
5330         of the next frame first.
5331         (frame_cleanup_after_sniffer): Update comment.
5332         * frame.h (frame_unwind_address_in_block): Delete prototype.
5333         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
5334
5335 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5336
5337         * frame.c (frame_func_unwind): Delete.
5338         (get_frame_func): Do not use it.
5339         * frame.h (frame_func_unwind): Delete prototype.
5340         * hppa-tdep.c (hppa_frame_cache): Update comment.
5341         * rs6000-tdep.c (rs6000_frame_cache): Update comment.
5342
5343 2008-07-14  Stan Shebs  <stan@codesourcery.com>
5344
5345         * remote-sim.c (init_gdbsim_ops): Remove
5346         TARGET_REDEFINE_DEFAULT_OPS.
5347
5348 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
5349
5350         * findvar.c (read_var_value): Remove unused variable.
5351
5352 2008-07-15  Luis Machado  <luisgpm@br.ibm.com>
5353
5354         * infrun.c (handle_inferior_event): Tag threads as stopped
5355         before inserting breakpoints.
5356
5357 2008-07-15  Hui Zhu  <teawater@gmail.com>
5358
5359         * MAINTAINERS: Added myself to section Write After Approval.
5360
5361 2008-07-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
5362
5363         PR gdb/2477
5364         * cp-abi.c (value_virtual_fn_field): Handle invalid pointers.
5365
5366 2008-07-14  Pedro Alves  <pedro@codesourcery.com>
5367
5368         * i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
5369         (i386_dicos_push_dummy_code): New.
5370         (i386_dicos_init_abi): Don't register i386_dicos_frame_align.
5371         Register i386_dicos_push_dummy_code.
5372
5373 2008-07-14  Markus Deuling  <deuling@de.ibm.com>
5374
5375         * mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
5376         (mips_n32n64_push_dummy_call, mips_o64_return_value)
5377         (mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
5378
5379         (MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
5380         (fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
5381         (mips_n32n64_fp_arg_chunk_p): Update caller.
5382
5383         (mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
5384         (mips_n32n64_push_dummy_call): Update caller.
5385
5386         (MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
5387         current_gdbarch.
5388         (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
5389         (mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
5390
5391
5392         (MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
5393         current_gdbarch.
5394         (mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
5395         (mips_o64_push_dummy_call): Update caller.
5396
5397         (MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
5398         (fp_register_arg_p, mips_dump_tdep): Update caller.
5399
5400         (set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
5401         (mips16_scan_prologue, mips32_scan_prologue): Update caller.
5402
5403         (reset_saved_regs): Make static.  Add gdbarch as parameter.  Replace
5404         current_gdbarch.
5405         (mips32_scan_prologue): Update caller.
5406
5407         (heuristic_proc_start): Add gdbarch as parameter. Replace
5408         current_gdbarch.
5409         (mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
5410
5411         * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
5412         (mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
5413         the current architecture. Update call to getregs_supplies.
5414         (getregs_supplies): Add gdbarch as parameter and replace
5415         current_gdbarch.
5416
5417         * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
5418         get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
5419         NBSD_MIPS_JB_ELEMENT_SIZE.
5420         (NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
5421         replace current_gdbarch.
5422
5423         * remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
5424         current_gdbarch.
5425         (mips_fetch_registers, mips_store_registers): Update call
5426         to mips_map_regno.
5427         (mips_load): Use get_regcache_arch to get at the current_architecture
5428         and replace current_gdbarch.
5429
5430 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5431
5432         * thread.c (restore_selected_frame): On fail to restore, select
5433         the innermost frame, and don't crash when warning the user.
5434
5435 2008-07-13  Hui Zhu  <teawater@gmail.com>
5436
5437         * symtab.c (expand_line_sal): Fix a memory leak.
5438
5439 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
5440
5441         * utils.c (struct continuation): Define as inheriting struct
5442         cleanup.
5443         (add_continuation, do_all_continuations)
5444         (discard_all_continuations, add_intermediate_continuation)
5445         (do_all_intermediate_continuations)
5446         (discard_all_intermediate_continuations): Adjust.
5447
5448 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5449
5450         Skip varobj in running threads.
5451         * mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
5452         thread is not stopped, skip the varobj.
5453         * Makefile.in: Update dependencies.
5454
5455 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5456
5457         Enable all commands while inferiour is running
5458         * mi/mi-main.c (mi_cmd_execute): Don't check if
5459         inferiour is executing.
5460
5461 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5462
5463         Allow all CLI command even if target is executing.
5464         * gdb/top.c (execute_command_1): Don't check if the inferiour
5465         is running.
5466
5467 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
5468
5469         * mi/mi-main.c (mi_cmd_execute): Remove unused variable.
5470         Fix printing of frame, when frame is wrong.
5471
5472 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5473
5474         * spu-tdep.c (spu_frame_unwind_cache): Do not error if
5475         backchain is unreadable.
5476
5477 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
5478
5479         * spu-linux-nat.c: Include "gdbthread.h".
5480         (spu_child_post_startup_inferior): Register main thread.
5481         (spu_child_post_attach): Likewise.
5482         * Makefile.in (spu-linux-nat.o): Update dependencies.
5483
5484 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5485
5486         Rewrite continuations internals on top of cleanups and plug
5487         continuation arguments leaks.
5488
5489         * defs.h (struct continuation): Make it opaque.
5490         (add_continuation, add_intermediate_continuation): Drop the int
5491         argument of the continuation hook argument.  Add
5492         continuation_free_args argument.
5493         (do_all_continuations, do_all_intermediate_continuations): Drop
5494         the error_p argument.
5495
5496         * utils.c (add_continuation): Drop the int argument of the
5497         continuation hook argument.  Add continuation_free_args argument.
5498         Reimplement on top of cleanups.
5499         (do_all_continuations): Drop error argument.  Reimplement on top
5500         of cleanups.
5501         (discard_all_continuations): Reimplement on top of cleanups.
5502         (add_intermediate_continuation): Drop the int argument of the
5503         continuation hook argument.  Add continuation_free_args argument.
5504         Reimplement on top of cleanups.
5505         (do_all_intermediate_continuations): Drop error argument.
5506         Reimplement on top of cleanups.
5507         (discard_all_intermediate_continuations): Reimplement on top of
5508         cleanups.
5509
5510         * breakpoint.c (until_break_command_continuation): Drop error
5511         argument.  Add xfree as continuation argument deleter.
5512
5513         * inf-loop.c (inferior_event_handler): On error, discard all
5514         continuations.  Adjust to new do_all_intermediate_continuations
5515         and do_all_continuations interfaces.
5516
5517         * infcmd.c (step_1_continuation): Drop error_p argument.  Adjust.
5518         Pass xfree as continuation argument deleter.
5519         (finish_command_continuation): Drop error_p argument.  Adjust.
5520         (finish_command_continuation_free_arg): New.
5521         (finish_command): Pass finish_command_continuation_free_arg as
5522         continuation argument deleter.  Adjust to new do_all_continuations
5523         interfaces.
5524         (attach_command_continuation): Drop error_p argument.
5525         (attach_command_continuation_free_args): New.
5526         (attach_command): Pass attach_command_continuation_free_args as
5527         continuation argument deleter.
5528
5529         * interps.c (interp_set): Adjust to new do_all_continuations
5530         interfaces.
5531
5532         * event-top.c (stdin_event_handler): In error, also discard the
5533         intermediate continuations.
5534
5535 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5536
5537         Replace struct continuation_args by void* and per command structs.
5538
5539         * top.c (execute_command): Remove unused arg1 and arg2 locals.
5540
5541         * breakpoint.c (struct until_break_command_continuation_args):
5542         New.
5543         (until_break_command_continuation): Take a void* instead of a
5544         continuations_arg.  Adjust.
5545         (until_break_command): Adjust to use struct
5546         until_break_command_continuation_args instead of struct
5547         continuation_arg.
5548
5549         * infcmd.c (struct step_1_continuation_args): New.
5550         (step_1_continuation): Take a void* instead of a
5551         continuations_arg.  Adjust to use struct step_1_continuation_args.
5552         (step_once): Adjust to use struct step_1_continuation_args.
5553
5554         (struct finish_command_continuation_args): New.
5555         (finish_command_continuation): Take a void* instead of a
5556         continuations_arg.  Adjust to use struct
5557         finish_command_continuation_args.
5558         (finish_command): Adjust to use struct
5559         finish_command_continuation_args.
5560         (struct attach_command_continuation_args): New.
5561         (attach_command_continuation): Take a void* instead of a
5562         continuations_arg.  Adjust to use struct
5563         attach_command_continuation_args.
5564         (attach_command): Adjust to use struct
5565         attach_command_continuation_args.
5566
5567         * defs.h (struct continuation_arg): Delete.
5568         (struct continuation): Replace the struct continuation_arg*
5569         parameter of continuation_hook by a void*.  Replace "arg_list"
5570         member by a new "args" member with void* type.
5571         (add_continuation, add_intermediate_continuation): Replace struct
5572         continuation_arg type usages by void* usages.
5573
5574         * utils.c (add_continuation, do_all_continuations)
5575         (add_intermediate_continuation)
5576         (do_all_intermediate_continuations): Replace struct
5577         continuation_arg type usages by void* usages.  Pass "args" instead
5578         of "arg_list".
5579
5580 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
5581
5582         * infrun.c (struct thread_stepping_state): Delete sal member.
5583         (init_thread_stepping_state): Add local sal.  Use it instead of
5584         tss->sal.
5585         (handle_inferior_event): New local stop_pc_sal.  Use it instead of
5586         tss->sal.
5587         (step_into_function): Add local stop_func_sal.  Use it instead of
5588         tss->sal.
5589
5590 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5591
5592         Implement -exec-continue/-exec-interrupt --all.
5593         * infcmd.c (continue_1): New, extracted from
5594         (continue_command): ...here.
5595         (interrupt_target_1): New, extracted from
5596         (interrupt_target_command): ...here.
5597         * inferior.h (continue_1, interrupt_target_1): New.
5598         * mi/mi-main.c (mi_cmd_exec_continue)
5599         (mi_cmd_exec_interrupt): Handle --all.
5600
5601 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5602
5603         Implement --thread and --frame.
5604         * gdbthread.h (find_thread_id): Declare.
5605         * thread.c (find_thread_id): Make non-static.
5606         * mi/mi-main.c (mi_cmd_execute): Switch to the right
5607         thread and frame, if necessary.
5608         * mi/mi-parse.c (mi_parse): Handle --thread and --frame.
5609         * mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
5610
5611 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5612
5613         * infrun.c (resume): Discard cleanups on early exit path.
5614
5615 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5616
5617         * infrun.c (normal_stop): For MI, report which threads
5618         were stopped.
5619
5620 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
5621
5622         Report thread state in -thread-info output.
5623         * thread.c (print_thread_info): Add new field "state".
5624
5625 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5626
5627         * infrun.c (handle_inferior_event): Also ignore a
5628         TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
5629
5630 2008-07-11  Tom Tromey  <tromey@redhat.com>
5631
5632         * completer.c (complete_line_internal): New function, from
5633         complete_line.  Add 'for_help' parameter.
5634         (complete_line): Use it.
5635         (command_completer): Move later.  Rewrite.
5636
5637 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5638
5639         * thread.c (thread_apply_command): Move making the cleanup out of
5640         the loop.
5641
5642 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5643
5644         Exited threads.
5645
5646         * thread.c (enum thread_state): New.
5647         (thread_state main_thread_running): Delete, in favor of...
5648         (thread_state main_thread_state): ... this.  Update throughout.
5649         (clear_thread_inferior_resources): New, split from free_thread.
5650         (free_thread): Call clear_thread_inferior_resources.
5651         (init_thread_list): Set main thread to stopped state.
5652         (add_thread_silent): Take care of PTID reuses.
5653         (delete_thread): If deleting inferior_ptid or a thread with
5654         refcount > 0, mark it as exited, but still keep it in the list.
5655         Only notify of thread exits, if we haven't done so yet.
5656         (iterate_over_threads): Make it safe to delete threads while
5657         iterating over them.
5658         (do_captured_list_thread_ids): Don't account for exited threads.
5659         (thread_alive): Check for the THREAD_EXITED state, and don't set
5660         ptid to -1 on exited threads.
5661         (set_running): Update to account for extra possible states.
5662         (is_thread_state): New.
5663         (is_stopped, is_exited): New.
5664         (is_running): Implement in terms of is_thread_state.
5665         (any_running): Update.
5666         (print_thread_info): Update.  Account for exited threads.  Don't
5667         warn about missed frame restoring here, its done in the cleanup.
5668         (switch_to_thread): Don't read from a thread that has gone.
5669         (restore_current_thread): In non-stop mode, do a full context
5670         switch.
5671         (restore_selected_frame): Add a frame_level argument.  Rewrite.
5672         (struct current_thread_cleanup): Add selected_frame_level and
5673         was_stopped members.
5674         (do_restore_current_thread_cleanup): Check if thread was stopped
5675         and still is, and if the target has registers, stack and memory
5676         before restoring the selected frame.  Don't delete the cleanup
5677         argument here.
5678         (restore_current_thread_cleanup_dtor): New.
5679         (make_cleanup_restore_current_thread): Remove all arguments.
5680         Rewrite.
5681         (thread_apply_all_command): Update.  Prune threads.
5682         (thread_apply_command): Update.
5683         (thread_command): Account for currently selected exited thread.
5684         (do_captured_thread_select): Check for a running thread.  Prune
5685         threads.
5686         (_initialize_thread): Make "info threads", "thread", "thread
5687         apply", and "thread apply all" appliable without a selected thread.
5688         * gdbthread.h (struct thread_info): Replace running_ by state_.
5689         Add refcount.
5690         (is_exited, is_stopped): Declare.
5691         (make_cleanup_restore_current_thread): Remove all arguments.
5692         * infrun.c: Include "event-top.h".
5693         (fetch_inferior_event): In non-stop mode, restore selected thread
5694         and frame after handling the event and running breakpoint
5695         commands.  Display GDB prompt if needed.
5696         (normal_stop): In non-stop mode, don't print thread switching
5697         notice.
5698         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
5699         (get_cmd_no_selected_thread_ok): New.
5700         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
5701         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
5702         Declare.
5703         * cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
5704         no-selected-thread ok.
5705         * top.c (execute_command): Check for non no-selected-thread-ok
5706         commands.
5707         * linux-nat.c (struct saved_ptids, threads_to_delete)
5708         (record_dead_thread, prune_lwps): Delete.
5709         (exit_lwp): Unconditionally delete thread.
5710         (linux_nat_resume): Remove prune_lwps call.
5711         * infcmd.c (proceed_thread_callback): Check if !is_stopped instead
5712         of is_running.  Adjust to make_cleanup_restore_current_thread
5713         interface change.
5714         * mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
5715         selected thread has exited.
5716         * inf-loop.c (inferior_event_handler): Don't display the prompt
5717         here.
5718         * varobj.c (c_value_of_root): Update.
5719         * defs.h (make_cleanup_dtor): Declare.
5720         * utils.c (make_cleanup_dtor): New.
5721
5722         * Makefile.in (infrun.o): Depend on $(event_top_h).
5723
5724 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
5725
5726         Add "continue -a" and "interrupt -a" options for non-stop mode.
5727
5728         * infcmd.c (proceed_thread_callback, do_context_switch_to): New.
5729         (continue_command): Add "-a" option.
5730         (interrupt_target_command): Add "-a" option.
5731         (_initialize_infcmd): Add extend help of continue and interrupt
5732         command to mention the new "-a" option.  Mark "continue" async ok.
5733
5734 2008-07-10  Doug Evans  <dje@google.com>
5735
5736         Add "set print symbol-loading on|off".
5737         * NEWS: Document new option.
5738         * symfile.h (print_symbol_loading): Declare.
5739         * symfile.c (print_symbol_loading): New global.
5740         (symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
5741         from ..." if print_symbol_loading.
5742         (_initialize_symfile): Add set/show print symbol-loading.
5743         * solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
5744         if print_symbol_loading.
5745
5746 2008-07-10  Pedro Alves  <pedro@codesourcery.com>
5747
5748         Non-stop linux native.
5749
5750         * linux-nat.c (linux_test_for_tracefork): Block events while we're
5751         here.
5752         (get_pending_status): Implement non-stop mode.
5753         (linux_nat_detach): Stop threads before detaching.
5754         (linux_nat_resume): In non-stop mode, always resume only a single
5755         PTID.
5756         (linux_handle_extended_wait): On a clone event, in non-stop mode,
5757         add new lwp to GDB's thread table, and mark as running, executing
5758         and stopped appropriately.
5759         (linux_nat_filter_event): Don't assume there are other running
5760         threads when a thread exits.
5761         (linux_nat_wait): Mark the main thread as running and executing.
5762         In non-stop mode, don't stop all lwps.
5763         (linux_nat_kill): Stop lwps before killing them.
5764         (linux_nat_thread_alive): Use signal 0 to detect if a thread is
5765         alive.
5766         (send_sigint_callback): New.
5767         (linux_nat_stop): New.
5768         (linux_nat_add_target): Set to_stop to linux_nat_stop.
5769
5770         * linux-nat.h (thread_db_attach_lwp): Declare.
5771
5772         * linux-thread-db.c (thread_get_info_callback): Check for new
5773         threads if we have none.
5774         (thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
5775         stopped lwp.  Check for new threads if we have none.
5776         (thread_db_attach_lwp): New.
5777         (thread_db_init): Set proc_handle.pid to inferior_ptid.
5778         (check_event): Set proc_handle.pid to the stopped lwp.
5779         (thread_db_find_new_threads): Set proc_handle.pid to any stopped
5780         lwp available, bail out if there is none.
5781
5782         * linux-fork.c (linux_fork_killall): Use SIGKILL instead of
5783         PTRACE_KILL.
5784
5785 2008-07-10  Kevin Buettner  <kevinb@redhat.com>
5786
5787         * rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
5788         `current_pc' from CORE_ADDR to ULONGEST.
5789
5790         * remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
5791         gdbsim_stop().
5792
5793 2008-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
5794
5795         * NEWS (New commands): Mention "set disable-randomization".
5796         * configure.ac: Add check for HAVE_PERSONALITY and
5797         HAVE_DECL_ADDR_NO_RANDOMIZE.
5798         * configure, config.in: Regenerate.
5799         * linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>.
5800         [HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set
5801         ADDR_NO_RANDOMIZE.
5802         (disable_randomization, show_disable_randomization)
5803         (set_disable_randomization): New.
5804         (linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables
5805         PERSONALITY_ORIG and PERSONALITY_SET.  Disable randomization upon the
5806         variable DISABLE_RANDOMIZATION.
5807         (_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable
5808         DISABLE_RANDOMIZATION.
5809
5810 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5811
5812         Adjust all targets to new target_stop interface.
5813
5814         * gnu-nat.c (gnu_stop): Add ptid argument.
5815         * go32-nat.c (go32_stop): Add ptid argument.
5816         (go32_create_inferior): Pass inferior_ptid to go32_stop.
5817         * hpux-thread.c (hpux_thread_stop): Add ptid argument.
5818         * monitor.c (monitor_stop): Add ptid argument.
5819         (monitor_open): Pass inferior_ptid to monitor_stop.
5820         (monitor_interrupt): Pass inferior_ptid to target_stop.
5821         (monitor_stop): Add ptid argument.
5822         * nto-procfs.c (nto_interrupt): Pass inferior_ptid to target_stop.
5823         (procfs_create_inferior): Add ptid argument.
5824         * procfs.c (procfs_stop): Add ptid argument.
5825         * remote-m32r-sdi.c (m32r_stop): Add ptid argument.
5826         * remote-sim.c (gdbsim_stop): Add ptid argument.
5827         * sol-thread.c (sol_thread_stop): Add ptid argument.
5828         * win32-nat.c (win32_stop): Add ptid argument.
5829
5830 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5831
5832         Non-stop inferior control.
5833
5834         * infrun.c (resume): In non-stop mode, always resume just one
5835         thread.
5836         (proceed): Don't call prepare_to_proceed in non-stop mode.
5837         (fetch_inferior_event): In non-stop mode, switch context before
5838         handling the event.
5839         (error_is_running, ensure_not_running): New.
5840         (handle_inferior_event): In non-stop mode: Mark only the event
5841         thread as stopped.  Require that the target module manages adding
5842         threads to the thread list.  Assert that there isn't a
5843         deferred_step_ptid set.  Don't switch to infwait_thread_hop_state.
5844         (normal_stop): Only mark not-running if inferior hasn't exited.
5845         In non-stop mode, only mark the event thread.
5846
5847         * thread.c:Include "cli/cli-decode.h".
5848         (print_thread_info): Don't read from a running thread.
5849         Output "(running)" if thread is running.
5850         (switch_to_thread): Don't read stop_pc if thread is executing.
5851         (do_restore_current_thread_cleanup): Don't write to a running
5852         thread.
5853         (thread_apply_all_command): Don't read from a running thread.  In
5854         non-stop mode, do a full context-switch instead of just switching
5855         threads.
5856         (thread_apply_command): In non-stop mode, do a full context-switch
5857         instead of just switching threads.
5858         (do_captured_thread_select): Likewise.  Inform user if selected
5859         thread is running.
5860         (_initialize_thread): Mark "info threads" and "thread" and
5861         async_ok.
5862
5863         * inf-loop.c (inferior_event_handler): In non-stop mode, don't
5864         unregister the target from the event loop.
5865
5866         * infcmd.c (continue_command, step_1, jump_command)
5867         (signal_command): Ensure the selected thread isn't running.
5868         (interrupt_target_command): In non-stop mode, interrupt only the
5869         selected thread.
5870
5871         * inferior.h (error_is_running, ensure_not_running): Declare.
5872
5873         * target.h (struct target_ops): Add ptid argument to the to_stop
5874         member.
5875         (target_stop): Add ptid_t argument.
5876
5877         * target.c (update_current_target): Add ptid argument to to_stop's
5878         type.
5879         (debug_to_stop): Add ptid_t argument.
5880         (debug_to_rcmd): Set to_stop_ptid.
5881
5882         * remote.c (remote_stop): Add ptid_t argument.
5883         (async_remote_interrupt): Add inferior_ptid to target_stop.
5884         * inf-ptrace.c (inf_ptrace_stop): Add ptid argument.
5885
5886         * Makefile.in (thread.o): Depend on $(cli_decode_h).
5887
5888 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5889
5890         Don't rely on ecs->wait_for_more.
5891
5892         * infrun.c (proceed): Clear the stepping state, set
5893         previous_inferior_ptid and clear infwait state.
5894         (wait_for_inferior): Don't clear the stepping state, set
5895         previous_inferior_ptid, or clear the infwait state here.
5896         (fetch_inferior_event): Don't clear the stepping state, set
5897         previous_inferior_ptid, or clear the infwait state here.  Don't
5898         condition on wait_for_more.
5899
5900 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5901
5902         Refactor infrun a bit.
5903
5904         * infrun.c (currently_stepping): Take a struct
5905         thread_stepping_state instead of an execution_control_state.
5906         (struct thread_stepping_state): New, split from
5907         execution_control_state.
5908         (gtss, tss): New globals.
5909         (proceed): Clear the stepping state, set previous_inferior_ptid
5910         and clear infwait state.
5911         (init_wait_for_inferior): Clear the stepping state,
5912         previous_inferior_ptid and infwait state.
5913         (waiton_ptid, infwait_state): New, split from
5914         execution_control_state.
5915         (struct execution_control_state): Members that persist through
5916         events moved out to either struct thred_stepping_state or made
5917         global.  Deleted unneeded wp, saved_inferior_ptid, tmpstatus.
5918         (wait_for_inferior, fetch_inferior_event): Use local
5919         execution_control_state.  Update to execution_control_state split.
5920         (init_execution_control_state): Adjust.
5921         (init_thread_stepping_state): New, extracted from
5922         init_execution_control_state.
5923         (context_switch): Take a ptid instead of an
5924         execution_control_state.
5925         (context_switch_to): Adjust.
5926         (adjust_pc_after_break): Adjust.
5927         (init_infwait_state): New.
5928         (handle_inferior_event): Adjust.
5929
5930 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5931             Vladimir Prus  <vladimir@codesourcery.com>
5932
5933         Per-thread commands.
5934
5935         * gdbthread.h: Remove unneeded forward declarations.
5936         Include "inferior.h".
5937         (struct thread_info): Add continuations,
5938         intermediate_continuations, proceed_to_finish, step_over_calls,
5939         stop_step, step_multi and stop_signal members.
5940         (save_infrun_state): Add continuations,
5941         intermediate_continuations, proceed_to_finish, step_over_calls,
5942         stop_step, step_multi, stop_signal and stop_bpstat parameters.
5943         (load_infrun_state): Add continuations,
5944         intermediate_continuations, proceed_to_finish, step_over_calls,
5945         stop_step, step_multi, stop_signal and stop_bpstat parameters.
5946
5947         * thread.c (load_infrun_state): In non-stop mode, load
5948         continuations, intermediate_continuations, proceed_to_finish,
5949         step_over_calls, stop_step, step_multi and stop_signal.
5950         (save_infrun_state): Store continuations,
5951         intermediate_continuations, proceed_to_finish, step_over_calls,
5952         stop_step, step_multi, stop_signal and stop_bpstat.
5953         (save_infrun_state): Store continuations,
5954         intermediate_continuations, proceed_to_finish, step_over_calls,
5955         stop_step, step_multi, stop_signal and stop_bpstat.
5956         (free_thread): Clear The thread's stop_bpstat.
5957
5958         * inferior.h (context_switch_to): Declare.
5959
5960         * infrun.c (ecss): New global.
5961         (context_switch): Context switch continuations,
5962         intermediate_continuations, proceed_to_finish, step_over_calls,
5963         stop_step, step_multi, stop_signal and stop_bpstat.
5964         (wait_for_inferior): Use global ecss.
5965         (async_ecss, async_ecs): Delete.
5966         (fetch_inferior_event): Use global ecss.
5967         (context_switch_to): New.
5968
5969         * top.c (execute_command): In non-stop, only check if the current
5970         thread is running, in all-stop, check if there's any thread
5971         running.
5972
5973         * breakpoint.c (bpstat_remove_breakpoint): New.
5974         (bpstat_remove_breakpoint_callback): New.
5975         (delete_breakpoint): Clear the stop_bpstats of all threads.
5976
5977         * mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
5978         current thread is running, in all-stop, check if there's any
5979         thread running.
5980
5981         * Makefile.in (gdbthread_h): Depend on $(inferior_h).
5982
5983 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5984
5985         Add non_stop global.
5986
5987         * inferior.h (non_stop): Declare.
5988         * infrun.c (non_stop, non_stop_1): New.
5989         (set_non_stop, show_non_stop): New.
5990         (_initialize_infrun): Add "set/show non-stop" command.
5991
5992 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
5993
5994         Adjust fork/vfork/exec to pass ptids around.
5995
5996         * target.h (struct target_waitstatus): Store related_pid as a ptid.
5997         (inferior_has_forked, inferior_has_vforked, inferior_has_execd):
5998         Take a ptid_t.
5999         * breakpoint.h (struct breakpoint): Change forked_inferior_pid
6000         type to ptid.
6001         * breakpoint.c (print_it_typical, bpstat_check_location)
6002         (print_one_breakpoint_location, set_raw_breakpoint_without_location)
6003         (create_fork_vfork_event_catchpoint): Adjust.
6004         * infrun.c (fork_event): Change parent_pid and child_pid types to
6005         ptid.
6006         (follow_exec, inferior_has_forked, inferior_has_vforked)
6007         (inferior_has_execd): Take a ptid_t and don't trim it.
6008         * linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
6009         * linux-nat.c (linux_child_follow_fork): Adjust.
6010         * inf-ptrace.c (inf_ptrace_wait): Adjust.
6011         * inf-ttrace.c (inf_ttrace_wait): Adjust.
6012         * win32-nat.c (get_win32_debug_event): Don't set related_pid.
6013
6014 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6015
6016         Add "executing" property to threads.
6017
6018         * inferior.h (target_executing): Delete.
6019         * gdbthread.h (struct thread_info): Add executing_ field.
6020         (set_executing, is_executing): New.
6021         * thread.c (main_thread_executing): New.
6022         (init_thread_list): Clear it and also main_thread_running.
6023         (is_running): Return false if target has no execution.
6024         (any_running, is_executing, set_executing): New.
6025
6026         * top.c: Include "gdbthread.h".
6027         (target_executing): Delete.
6028         (execute_command): Replace target_executing check by any_running.
6029         * event-top.c: Include "gdbthread.h".
6030         (display_gdb_prompt, command_handler): Replace target_executing by
6031         is_running.
6032         * inf-loop.c: Include "gdbthread.h".  Don't mark as not executing
6033         here.  Replace target_executing by is_running.
6034         * infrun.c (handle_inferior_event): Mark all threads as
6035         not-executing.
6036         * linux-nat.c (linux_nat_resume): Don't mark thread as executing
6037         here.
6038         * stack.c (get_selected_block): Return null if inferior is
6039         executing.
6040         * target.c (target_resume): Mark resumed ptid as executing.
6041         * breakpoint.c (until_break_command): Replace target_executing
6042         check by is_executing.
6043         * remote.c (remote_async_resume): Don't mark inferior as executing
6044         here.
6045         * mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
6046         by any_running.
6047
6048         * mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
6049         (mi_execute_async_cli_command): Replace target_executing by
6050         is_running.
6051
6052         * frame.c (get_current_frame): Error out if the current thread is
6053         executing.
6054         (has_stack_frames): New.
6055         (get_selected_frame, deprecated_safe_get_selected_frame): Check
6056         has_stack_frames.
6057
6058         * Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
6059         $(gdbthread_h).
6060
6061 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6062
6063         * symfile.c (load_command): Reopen the exec file and reread
6064         symbols before anything else.
6065
6066 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6067
6068         * remote-sim.c: Include gdbthread.h.
6069         (remote_sim_ptid): New global.
6070         (gdbsim_create_inferior): Silently add the main task to GDB's
6071         thread list.
6072         (gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
6073         task from GDB's thread list.
6074         (gdbsim_resume): Adjust to use remote_sim_ptid.
6075         (gdbsim_thread_alive, gdbsim_pid_to_str): New.
6076         (init_gdbsim_ops): Register gdbsim_thread_alive and
6077         gdbsim_pid_to_str.
6078         (_initialize_remote_sim): Initialize remote_sim_ptid.
6079         * Makefile.in (remote-sim.o): Depend on $(gdbthread_h).
6080
6081 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
6082
6083         * monitor (monitor_ptid): New global.
6084         (monitor_open): Silently add the main task to GDB's thread list.
6085         (monitor_close, monitor_mourn_inferior): Silently delete the main
6086         task from GDB's thread list.
6087         (monitor_thread_alive, monitor_pid_to_str): New.
6088         (init_base_monitor_ops): Register monitor_thread_alive and
6089         monitor_pid_to_str.
6090         (_initialize_remote_monitors): Initialize monitor_ptid.
6091
6092         * gdbthread.h (delete_thread_silent): Declare.
6093         * thread.c (delete_thread): Rename to ...
6094         (delete_thread_1): ... this.  Add "silent" parameter.  If silent,
6095         don't do exit notifications.
6096         (delete_thread, delete_thread_silent): New, as wrappers to
6097         delete_thread_1.
6098
6099 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6100
6101         * breakpoint.c (update_global_location_list): Add boolean
6102         "should_insert" argument.  Only insert locations if caller told it
6103         too.
6104         (update_global_location_list_nothrow): Add boolean "should_insert"
6105         argument.  Pass it to update_global_location_list.
6106         (insert_breakpoints, create_longjmp_breakpoint)
6107         (create_overlay_event_breakpoint, enable_overlay_breakpoints)
6108         (create_thread_event_breakpoint, create_solib_event_breakpoint)
6109         (create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
6110         (enable_watchpoints_after_interactive_call_stop)
6111         (set_momentary_breakpoint, create_breakpoints)
6112         (break_command_really, watch_command_1)
6113         (create_ada_exception_breakpoint, update_breakpoint_locations)
6114         (do_enable_breakpoint, enable_command): Pass true to
6115         update_global_location_list.
6116         (bpstat_stop_status, disable_overlay_breakpoints)
6117         (disable_watchpoints_before_interactive_call_start)
6118         (delete_breakpoint, disable_breakpoint, disable_command): Pass
6119         false to update_global_location_list.
6120         (update_breakpoints_after_exec): Don't temporarily disable
6121         always-inserted mode.
6122
6123 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6124
6125         * breakpoint.c (mark_breakpoints_out): Make public.
6126         (update_breakpoints_after_exec): Don't call mark_breakpoints_out
6127         here.  Update comment.
6128         * breakpoint.h (mark_breakpoints_out): Declare.
6129
6130         * linux-nat.c (linux_handle_extended_wait): On
6131         TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
6132         * inf-ttrace.c (inf_ttrace_wait): Likewise.
6133
6134 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
6135
6136         * infrun.c (follow_exec): Reset shared libraries before adding the
6137         main exec file.
6138
6139 2008-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6140
6141         * breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.
6142
6143 2008-07-07  Pedro Alves  <pedro@codesourcery.com>
6144
6145         * i386-dicos-tdep.c: Include "inferior.h".
6146         (i386_dicos_frame_align): New.
6147         (i386_dicos_init_abi): Register i386_dicos_frame_align.  Set call
6148         dummy location ON_STACK.
6149         * Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).
6150
6151 2008-07-07  Joel Brobecker  <brobecker@adacore.com>
6152
6153         * gstdint.h: New file.
6154
6155 2008-07-05  Vladimir Prus  <vladimir@codesourcery.com>
6156
6157         * mi/mi-interp.c (mi_on_resume): Don't try to report
6158         resumed thread it the thread list is empty.
6159
6160 2008-07-05  Pierre Muller  <muller@ics.u-strasbg.fr>
6161
6162         * cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
6163         completer for set to filename_completer.
6164
6165         NEWS: Mention it.
6166
6167 2008-07-04  Vladimir Prus  <vladimir@codesourcery.com>
6168
6169         Implement -target-attach.
6170         * mi/mi-cmds.c (mi_cmds): Forward -target-attach to CLI attach.
6171
6172 2008-06-21  Hui Zhu  <teawater@gmail.com>
6173
6174         * target-descriptions.c (maint_print_c_tdesc_cmd): Fix a memory leak.
6175
6176 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6177
6178         * config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.
6179         * config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete.
6180
6181         * target.h (struct target_ops): Add to_attach_no_wait member.
6182         (target_attach_no_wait): New.
6183         * target.c (update_current_target): Inherit to_attach_no_wait.
6184
6185         * infcmd.c: Replace ATTACH_NO_WAIT compile time check by
6186         target_attach_no_wait runtime check.
6187
6188         * gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops.
6189         * win32-nat.c (init_win32_ops): Set to_attach_no_wait in
6190         win32_ops.
6191
6192 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
6193
6194         * i386-tdep.c (i386_displaced_step_fixup): Condition log printing
6195         on debug_displaced being set.
6196
6197 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6198
6199         * frame.c (get_prev_frame_1): Call frame_unwind_find_by_frame
6200         directly instead of get_frame_id.
6201
6202 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6203
6204         * rs6000-tdep.c (ppc_displaced_step_fixup): New function.
6205         (deal_with_atomic_sequence): Update BC masks.
6206         (rs6000_gdbarch_init): Init displaced stepping infra-structure.
6207         Define BRANCH_MASK, B_INSN, BC_INSN, BXL_INSN, BP_MASK and BP_INSN.
6208
6209 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6210
6211         * cris-tdep.c (crisv32_single_step_through_delay): Get this frame's
6212         register, not the previous frame's.
6213
6214 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
6215
6216         * source.c (select_source_symtab): Make sure we skip namespace
6217         symtabs when showing cpp source code.
6218
6219 2008-06-30  Hans-Peter Nilsson  <hp@axis.com>
6220
6221         * MAINTAINERS (Authorized committers): Fix my email address.
6222
6223 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6224
6225         * mi/mi-cmds.c (mi_cmds): Route -exec-run, -exec-until,
6226         -target-download and -target-select via CLI, so that
6227         the quoting rules are the same as they were (unfortunately)
6228         in all prior gdb releases.
6229         * mi/mi-cmds.h (mi_cmd_exec_run, mi_cmd_exec_until)
6230         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6231         * mi/mi-main.c (mi_cmd_exec_run, mi_cmd_exec_until)
6232         (mi_cmd_target_download, mi_cmd_target_select): Remove.
6233         (mi_cmd_execute): Set current_token even for commands
6234         routed via CLI.
6235
6236 2008-06-28  Ulrich Weigand  <uweigand@de.ibm.com>
6237
6238         * alphafbsd-tdep.c: Update for unwinder changes.
6239         * alpha-linux-tdep.c: Likewise.
6240         * alphanbsd-tdep.c: Likewise.
6241         * alphaobsd-tdep.c: Likewise.
6242         * avr-tdep.c: Likewise.
6243         * cris-tdep.c: Likewise.
6244         * frv-linux-tdep.c: Likewise.
6245         * frv-tdep.c: Likewise.
6246         * h8300-tdep.c: Likewise.
6247         * hppa-linux-tdep.c: Likewise.
6248         * iq2000-tdep.c: Likewise.
6249         * m32c-tdep.c: Likewise.
6250         * m32r-linux-tdep.c: Likewise.
6251         * m32r-tdep.c: Likewise.
6252         * m68hc11-tdep.c: Likewise.
6253         * mep-tdep.c: Likewise.
6254         * mn10300-tdep.c: Likewise.
6255         * mt-tdep.c: Likewise.
6256         * score-tdep.c: Likewise.
6257         * sh64-tdep.c: Likewise.
6258         * sh-tdep.c: Likewise.
6259         * sparc64fbsd-tdep.c: Likewise.
6260         * sparc64nbsd-tdep.c: Likewise.
6261         * sparc64obsd-tdep.c: Likewise.
6262         * v850-tdep.c: Likewise.
6263         * vaxobsd-tdep.c: Likewise.
6264         * vax-tdep.c: Likewise.
6265         * xstormy16-tdep.c: Likewise.
6266
6267 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6268
6269         * mi/mi-main.c (enum captured_mi_execute_command_actions)
6270         (captured_mi_execute_command_args): Remove.
6271         (captured_mi_execute_command): Cast the closure to mi_parse
6272         pointer, not to captured_mi_execute_command_args, and don't
6273         set the action field thereof.
6274         (mi_execute_command): Pass struct mi_parse, not
6275         captured_mi_execute_command_args to captured_mi_execute_command.
6276         (mi_execute_command): Remove (dead) code for suppressing
6277         printing prompt.
6278
6279 2008-06-28  Pedro Alves  <pedro@codesourcery.com>
6280
6281         * linux-nat.c (enum sigchld_state): New.
6282         (linux_nat_async_events_state): Renamed from
6283         linux_nat_async_events_enabled.
6284         (linux_nat_event_pipe_push, my_waitpid): Adjust.
6285         (sigchld_default_action): New.
6286         (lin_lwp_attach_lwp): Adjust.  Call linux_nat_async_events
6287         unconditionally.
6288         (linux_nat_create_inferior): Set events state to sigchld_default
6289         state.
6290         (linux_nat_resume): Adjust.
6291         (linux_nat_wait): Call linux_nat_async_events unconditionally.
6292         (sigchld_handler): Adjust.
6293         (linux_nat_async_mask): Don't set SIGCHLD actions here.
6294         (get_pending_events): Adjust.
6295         (linux_nat_async_events): Rewrite to handle enum sigchld_state
6296         instead of a boolean.
6297         (linux_nat_async): Adjust.
6298         (_initialize_linux_nat): Capture default SIGCHLD action into
6299         sigchld_default_action.
6300
6301 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
6302
6303         * breakpoint.c (moribund_locations): New.
6304         (bpstat_stop_status): Process moribund locations.
6305         (update_global_location_list): Add removed
6306         locations to moribund_locations.
6307         (breakpoint_retire_moribund): New.
6308         * breakpoint.h (struct bp_location): New field
6309         events_till_retirement.
6310         (breakpoint_retire_moribund): Declare.
6311         * thread.c (thread_count): New.
6312         * infrun.c (handle_inferior_event): Call
6313         breakpoint_retire_moribund.
6314         * gdbthread.h (thread_count): Declare.
6315
6316 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6317
6318         * dfp.c (decimal_convert): Call match_endianness before and after
6319         conversion.
6320
6321 2008-06-27  Jonathan Larmour  <jifl@eCosCentric.com>
6322
6323         * remote.c (remote_insert_breakpoint): Ensure that if Z0
6324         unsupported and we fall back to memory_insert_breakpoint, we
6325         use the unmodified requested address.
6326
6327 2008-06-27  Joel Brobecker  <brobecker@adacore.com>
6328
6329         * dwarf2read.c (read_attribute_value): Issue a complaint when
6330         adjusting size attribute values of 0xffffffff as zero.
6331
6332 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
6333
6334         * i386-tdep.c (i386_16_byte_align_p): New.
6335         (i386_push_dummy_call): Determine stack space required for
6336         arguments going forwards allowing for 16-byte alignment, then push
6337         arguments going forwards.
6338
6339 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6340
6341         * infrun.c (start_remote): Don't clear thread list here.
6342         * monitor.c (monitor_open): Include "gdbthread.h".  Clear thread
6343         list here.
6344         * remote.c (record_currthread): Upgrade the main thread and its
6345         entry in the thread list if this is the first time we hear about
6346         threads.
6347         (remote_thread_alive): Consider magic_null_ptid or a ptid without
6348         a tid member always alive.
6349         (remote_find_new_threads): Don't update the main thread here.
6350         (remote_start_remote): Clear thread list here.  Always add the
6351         main thread.
6352         (extended_remote_attach_1): Add the main thread here.
6353         (extended_remote_mourn_1): Re-add the main thread here.
6354         (extended_remote_create_inferior_1): Add a main thread.
6355
6356         * Makefile.in (monitor.o): Depend on $(gdbthread_h).
6357
6358 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
6359
6360         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
6361
6362         * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
6363         globals.
6364         (general_thread, continue_thread): Change type to ptid_t.
6365         (record_currthread): Take a ptid_t parameter instead of an
6366         integer.
6367         (MAGIC_NULL_PID): Delete.
6368         (set_thread): Take a ptid_t parameter and adjust.
6369         (set_general_thread, set_continue_thread): New.
6370         (remote_thread_alive, remote_newthread_step)
6371         (remote_current_thread, remote_find_new_threads)
6372         (remote_threads_info, remote_start_remote, remote_vcont_resume)
6373         (remote_resume_1, remote_wait, extended_remote_create_inferior_1)
6374         (threadalive_test, remote_pid_to_str)
6375         (remote_get_thread_local_address): Adjust.
6376         (_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
6377         and any_thread_ptid.
6378
6379 2008-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
6380
6381         * configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
6382         * configure: Regenerated.
6383
6384 2008-06-26  Joel Brobecker  <brobecker@adacore.com>
6385
6386         * dwarf2read.c (read_attribute_value): Treat size attribute
6387         values of 0xffffffff as if the attribute value was zero.
6388
6389 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6390
6391         * linux-nat.c: Add description of overall logic.
6392
6393 2008-06-26  Daniel Jacobowitz  <dan@codesourcery.com>
6394
6395         * Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
6396         (gdb_stdint_h, gdb_stdint.h, stamp-int): Delete.  Remove
6397         all dependencies on $(gdb_stdint_h).
6398         (distclean): Do not delete gdb_stdint.h.
6399         * acinclude.m4: Do not use stdint.m4.
6400         * configure.ac: Set GNULIB_STDINT_H.  Remove tests for stdint.h,
6401         uintptr_t, and gdb_stdint.h.
6402         * defs.h: Include <stdint.h>.
6403         * gdb_thread_db.h: Assume stdint.h is already included.
6404         * breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
6405         rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
6406         include gdb_stdint.h.
6407         * configure, config.in: Regenerate.
6408
6409 2008-06-26  Joseph Myers  <joseph@codesourcery.com>
6410
6411         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
6412         decimal floating-point values in GPRs for soft-float.
6413         (do_ppc_sysv_return_value): Handle returning decimal
6414         floating-point values in GPRs for soft-float.
6415
6416 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
6417
6418         * target.c (target_read_until_error): New.
6419         * target.h (target_read_until_error): Declare.
6420         * mi/mi-main.c (mi_cmd_data_read_memory): Use
6421         target_read_until_error.
6422
6423 2008-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
6424
6425         Fix a memory leak found by Hui Zhu <teawater@gmail.com>.
6426         * c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
6427         after the DECFLOAT detection to fix a memory leak.  Remove the
6428         redundant NUM initialization.  Protect the DECFLOAT detection memory
6429         access before the P block.  Restore the P memory content for the
6430         DECFLOAT detection.
6431
6432 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6433
6434         Kill the return value for all MI command functions.
6435         * mi/mi-cmds.h (enum mi_cmd_result): Remove.
6436         (mi_cmd_argv_ftype): Change return type to void.
6437
6438         * mi/mi-main.c: Adjust all function that implement
6439         MI commands to return nothing.
6440         (struct captured_mi_execute_command_actions):
6441         Remove the rc field.
6442         (mi_cmd_execute): Return nothing.
6443         (mi_execute_async_cli_command): Return nothing.
6444         (mi_cmd_exec_interrupt): Don't print ^done here.
6445         (mi_cmd_target_select): Don't print ^connected here.
6446         (captured_mi_execute_command): Don't check for MI_CMD_DONE.
6447         Special-case -target-select and output ^connected, not ^done.
6448
6449         * mi/mi-cmd-break.c: Adjust.
6450         * mi/mi-cmd-disas.c: Adjust.
6451         * mi/mi-cmd-env.c: Adjust.
6452         * mi/mi-cmd-file.c: Adjust.
6453         * mi/mi-cmd-stack.c: Adjust.
6454         * mi/mi-cmd-target.c: Adjust.
6455         * mi/mi-cmd-var.c: Adjust.
6456         * mi/mi-interp.c: Adjust.
6457         * mi/mi-symbol-cmds.c: Adjust.
6458
6459 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
6460
6461         Emit ^running via observer.
6462         * mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
6463         ^running here.
6464         (mi_on_resume): Print ^running if not previously output.
6465         * mi/mi-main.c (running_result_record_printed): New.
6466         (captured_mi_execute_command): Reset
6467         running_result_record_printed.  Use running_result_record_printed
6468         to decide if we should skip ^done.
6469         (mi_execute_async_cli_command): Don't print ^running here.
6470         * mi/mi-main.h (current_token, running_result_record_printed):
6471         Declare.
6472
6473 2008-06-24  Michael Snyder  <msnyder@specifix.com>
6474
6475         * infrun.c (_initialize_infrun): White space and typo fix.
6476
6477 2008-06-23  Christopher Faylor  <me.gdb.changelog@cgf.cx>
6478
6479         * win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
6480         (do_initial_win32_stuff): Fix problem with inability to set breakpoints
6481         when first loading DLL with "dll" command.
6482
6483 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6484
6485         * gnu-nat.c (proc_string): Use capital T for "Thread".
6486
6487 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
6488
6489         * win32-nat.c (win32_pid_to_str): Use capital T for "Thread".
6490
6491 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6492
6493         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6494         the target cannot run.
6495
6496 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
6497
6498         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
6499         we're attaching to a running process.
6500
6501 2008-06-18  Pierre Muller  <muller@ics.u-strasbg.fr>
6502
6503         * win32-nat.c (handle_load_dll): Give dll name and load address
6504         if debug_events is on.
6505         (handle_unload_dll): Likewise.
6506
6507 2008-06-14  Vladimir Prus  <vladimir@codesourcery.com>
6508
6509         Don't suppress *running when doing finish.
6510         * infcall.c (call_function_by_hand): Set both
6511         suppress_resume_observer and suppress_stop_observer.
6512         * infcmd.c (suppress_run_stop_observers): Split into...
6513         (suppress_resume_observer, suppress_stop_observer): ...those.
6514         (finish_command_continuation): Clear suppress_stop_observer.
6515         (finish_command): Set suppress_stop_observer.
6516         * inferior.h (suppress_run_stop_observers): Split into...
6517         (suppress_resume_observer, suppress_stop_observer): ...those.
6518         * infrun.c (normal_stop): Check for suppress_stop_observer.
6519         * thread.c (set_running): Check for suppress_resume_observer.
6520
6521 2008-06-12  Pedro Alves  <pedro_alves@portugalmail.pt>
6522             Pierre Muller  <muller@ics.u-strasbg.fr>
6523
6524         * gdbarch.sh (gdbarch_skip_main_prologue): New.
6525         * gdbarch.h, gdbarch.c: Regenerate.
6526         * i386-tdep.h (i386_skip_main_prologue): Declare.
6527         * i386-tdep.c (i386_skip_main_prologue): New.
6528         * i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
6529         i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
6530         * symtab.c (find_function_start_sal): When pc points at the "main"
6531         function, call gdbarch_skip_main_prologue.
6532
6533 2008-06-11  Daniel Jacobowitz  <dan@codesourcery.com>
6534
6535         * value.c (value_primitive_field): Fetch lazy register values.
6536
6537 2008-06-11  Pedro Alves  <pedro@codesourcery.com>
6538
6539         * NEWS: Mention support removal of undocumented S AA p PID stop
6540         reply packet.
6541
6542         * remote.c (remote_wait): Remove undocumented S AA p PID support.
6543
6544 2008-06-10  Stan Shebs  <stan@codesourcery.com>
6545
6546         * MAINTAINERS: Update my affiliation and address.
6547
6548 2008-06-10  Andreas Schwab  <schwab@suse.de>
6549
6550         * top.c (print_gdb_version): Don't print final newline.
6551
6552 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6553
6554         Implement *running.
6555         * Makefile.in: Update dependencies.
6556         * gdbthread.h (struct thread_info): New field
6557         running_.
6558         (set_running, is_running): New.
6559         * thread.c (set_running, is_running): New.
6560         * inferior.h (suppress_normal_stop_observer): Rename to...
6561         (suppress_run_stop_observers): ..this.
6562         * infcmd.c (suppress_normal_stop_observer): Rename to...
6563         (suppress_run_stop_observers): ..this.
6564         (finish_command_continuation, finish_command): Adjust.
6565         * infcall.c (call_function_by_hand): Adjust.
6566         * infrun.c (normal_stop): Call set_running.
6567         * target.c (target_resume): New.  Call set_running.
6568         * target.h (target_resume): Convert from macro to
6569         a function.
6570
6571         * mi/mi-interp.c (mi_on_resume): New.
6572         (mi_interpreter_init): Register mi_on_resume.
6573
6574 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6575
6576         Use observers to report stop events in MI.
6577         * mi/mi-interp.c (mi_on_normal_stop): New.
6578         (mi_interpreter_init): Register mi_on_normal_stop.
6579         (mi_interpreter_exec_continuation): Remove.
6580         (mi_cmd_interpreter_exec): Don't register the above.
6581         * mi/mi-main.c (captured_mi_execute_command): Don't care
6582         about sync_execution.
6583         (mi_execute_async_cli_command): Don't install continuation.  Don't
6584         print *stopped.
6585         (mi_exec_async_cli_cmd_continuation): Remove.
6586
6587 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6588
6589         Suppress normal stop observer when it's problematic.
6590         * inferior.h (suppress_normal_stop_observer): New.
6591         * infcall.c (call_function_by_hand): Disable stop events when
6592         doing function calls.
6593         * infmcd.c (suppress_normal_stop_observer): New.
6594         (finish_command_continuation): Call normal_stop observer
6595         explicitly.
6596         (finish_command): Disable stop events inside proceed.
6597         * infrun.c (normal_stop): Don't call normal stop observer if
6598         suppressed of if multi-step is in progress.
6599
6600 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6601
6602         Remove stale code.
6603         * infrun.c (finish_command): Don't pass cleanup
6604         to continuation.
6605         (finish_command_continuation): Don't grab cleanup from
6606         the passed data, as we don't use, and cannot, use it anyway.
6607
6608 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
6609
6610         Introduce common cleanup for restoring integers.
6611         * defs.h (make_cleanup_restore_integer): New declaration.
6612         (struct cleanup): New field free_arg.
6613         (make_my_cleanup_2): New.
6614         * utils.c (restore_integer_closure, restore_integer)
6615         (make_cleanup_restore_integer): New.
6616         (make_my_cleanup): Initialize the free_arg field and
6617         renamed to make_my_cleanup_2.
6618         (do_my_cleanups): Call free_arg.
6619         (discard_cleanups): Call free_arg.
6620         * breakpoint.c (restore_always_inserted_mode): Remove.
6621         (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
6622
6623 2008-06-09  Doug Evans  <dje@google.com>
6624
6625         * remote.c (remote_wait): Include beginning of malformed packet
6626         in error output.
6627
6628 2008-06-09  Tom Tromey  <tromey@redhat.com>
6629
6630         * completer.c (complete_line): Don't special-case
6631         expression_completer.
6632         (expression_completer): Only pass last word to
6633         location_completer.
6634         * c-exp.y (yylex): Check 'token', not 'operator'.
6635
6636 2008-06-09  Daniel Jacobowitz  <dan@codesourcery.com>
6637
6638         * configure.ac (build_warnings): Add -Wno-format for mingw.
6639         * configure: Regenerated.
6640
6641 2008-06-07  Daniel Jacobowitz  <dan@codesourcery.com>
6642
6643         * NEWS: Make indentation consistent.  Move exec tracing entry out
6644         of remote packet list.
6645
6646 2008-06-06  Tom Tromey  <tromey@redhat.com>
6647
6648         * value.h (evaluate_subexpression_type, extract_field_op):
6649         Declare.
6650         * printcmd.c (_initialize_printcmd): Use expression_completer for
6651         'p', 'inspect', 'call'.
6652         * parser-defs.h (parse_field_expression): Declare.
6653         * parse.c: Include exceptions.h.
6654         (in_parse_field, expout_last_struct): New globals.
6655         (mark_struct_expression): New function.
6656         (prefixify_expression): Return int.
6657         (prefixify_subexp): Return int.  Use expout_last_struct.
6658         (parse_exp_1): Update.
6659         (parse_exp_in_context): Add 'out_subexp' argument.  Handle
6660         in_parse_field.
6661         (parse_field_expression): New function.
6662         * expression.h (parse_field_expression): Declare.
6663         (in_parse_field): Likewise.
6664         * eval.c (evaluate_subexpression_type): New function.
6665         (extract_field_op): Likewise.
6666         * completer.h (expression_completer): Declare.
6667         * completer.c (expression_completer): New function.
6668         (count_struct_fields, add_struct_fields): New functions.
6669         * c-exp.y (yyparse): Redefine.
6670         (COMPLETE): New token.
6671         (exp): New productions.
6672         (saw_name_at_eof, last_was_structop): New globals.
6673         (yylex): Return COMPLETE when needed.  Recognize in_parse_field.
6674         (c_parse): New function.
6675         * breakpoint.c (_initialize_breakpoint): Use expression_completer
6676         for watch, awatch, and rwatch.
6677         * Makefile.in (parse.o): Depend on exceptions_h.
6678
6679 2008-06-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
6680
6681         PR gdb/1147
6682         * gdb/valopts.c (find_overload_match): Handle references
6683         to pointers.
6684
6685 2008-06-06  Paul N. Hilfinger  <hilfinger@adacore.com>
6686
6687         * ada-lang.c (ada_value_assign): Correct big-endian case to take into
6688         account the bitsize of the 'from' operand.
6689
6690 2008-06-06  Pedro Alves  <pedro@codesourcery.com>
6691
6692         * annotate.h (annotate_thread_changed): Declare.
6693
6694 2008-06-06  Nick Roberts  <nickrob@snap.net.nz>
6695
6696         * annotate.c (annotate_thread_changed): New function.
6697         * thread.c (thread_command) : Use it.
6698         * infrun.c (normal_stop): Use it.
6699
6700 2008-06-05  Vladimir Prus  <vladimir@codesourcery.com>
6701             Nathan Sidwell  <nathan@codesourcery.com>
6702             Joseph Myers  <joseph@codesourcery.com>
6703
6704         * acinclude.m4: Include ../config/acx.m4.
6705         * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
6706         * configure, config.in: Regenerate.
6707         * main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
6708         address.
6709         * top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.
6710
6711 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6712
6713         Replace 'target async' by 'maintenance set remote-async' and
6714         'target remote' combination.
6715
6716         * remote.c (remote_async_wait): Merge into remote_wait, and
6717         remove.
6718         (remote_async_permitted, remote_async_permitted_set): New
6719         variables.
6720         (set_maintenance_remote_async_permitted)
6721         (show_maintenance_remote_async_permitted): New functions.
6722         (remote_async_ops, extended_async_remote_ops): Delete.
6723         (remote_async_open, extended_remote_async_open): Delete.
6724         (remote_open_1): Drop async_p parameter.  Update callers.  Replace
6725         async_p with remote_async_permitted checks.
6726         (extended_async_remote_attach): Delete.
6727         (remote_resume, remote_async_resume): Merge and leave remote_resume.
6728         (remote_async_terminal_inferior): Rename to...
6729         (remote_terminal_inferior): ... this, and add
6730         remote_async_termitted check.
6731         (remote_async_terminal_ours): Rename to...
6732         (remote_terminal_ours): ... this, and add remote_async_termitted
6733         check.
6734         (remote_wait, remote_async_wait): Merge and leave remote_wait
6735         only.
6736         (remote_kill, remote_async_kill): Merge and leave remote_kill
6737         only.
6738         (remote_async_mourn, extended_async_remote_mourn): Delete.
6739         (extended_remote_create_inferior_1): Drop async_p parameter.
6740         Update callers.  Always use extended_remote_ops.
6741         (extended_remote_async_create_inferior): Delete.
6742         (remote_return_zero): Delete.
6743         (init_remote_ops): Register remote_can_async_p, remote_async,
6744         remote_async_mask, remote_terminal_inferior and
6745         remote_terminal_ours.
6746         (remote_can_async_p, remote_is_async_p): Check for
6747         remote_async_permitted.
6748         (init_remote_async_ops, init_extended_async_remote_ops): Remove.
6749         (set_remote_cmd): Don't add async and extended-async targets.
6750         (_initialize_remote): Add set/show remote-async maintenance
6751         commands.
6752
6753 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6754
6755         * remote.c (kill_kludge): Delete.
6756         (remote_wait, remote_async_wait): Don't set it.
6757         (remote_kill, remote_async_kill): Don't do anything with it.
6758
6759 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
6760
6761         * linux-thread-db.c (thread_db_wait): Don't trim event ptid.
6762
6763 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6764
6765         * bcache.c (bcache_data): Call deprecated_bcache_added function.
6766         (deprecated_bcache_added): New function name. Body of function
6767         bcache_data is used here with the addition of 'added' argument.
6768         * bcache.h (deprecated_bcache_added): New function.
6769         * symfile.c (add_psymbol_to_bcache): New helper function, takes part of
6770         work from add_psymbol_to_list - initialises partial symbol and stashes
6771         it in objfile's cache.
6772         (append_psymbol_to_list): New helper function, takes other part of
6773         work from add_psymbol_to_list - adds partial symbol to the given list.
6774         (add_psymbol_to_list): Call helper functions instead of doing work
6775         here. If adding to global list, do not duplicate partial symbols in the
6776         partial symtab.
6777
6778 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
6779
6780         * breakpoint.c (print_exception_catchpoint): Put 'exception' back to
6781         'exception caught|thrown' message.
6782
6783 2008-06-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
6784
6785         * Makefile.in: Update dependencies.
6786         * dwarf2expr.c: New include "gdb_assert.h".
6787         (new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
6788         (dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
6789         (execute_stack_op): Error out on too large RECURSION_DEPTH.
6790         Increase/decrease RECURSION_DEPTH around the function.
6791
6792 2008-06-05  Daniel Jacobowitz  <dan@codesourcery.com>
6793
6794         * remote.c (get_offsets): Handle a single segment.
6795         * symfile.c (symfile_map_offsets_to_segments): Allow more bases
6796         than segments.
6797
6798 2008-06-03  Daniel Jacobowitz  <dan@codesourcery.com>
6799
6800         * solib-svr4.c (struct lm_info): Add lm_addr.
6801         (main_lm_addr): New.
6802         (svr4_default_sos): Set lm_addr.
6803         (svr4_current_sos): Set lm_addr and main_lm_addr.
6804         (svr4_fetch_objfile_link_map): Rewrite.
6805         (svr4_clear_solib): Clear main_lm_addr.
6806
6807 2008-06-03  Michael Snyder  <msnyder@redhat.com>
6808             Joseph Myers  <joseph@codesourcery.com>
6809
6810         * mips-tdep.c (mips_eabi_return_value): Replace stub that always
6811         returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
6812
6813 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
6814
6815         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.
6816
6817 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
6818
6819         * m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.
6820
6821 2008-06-01  Joel Brobecker  <brobecker@adacore.com>
6822
6823         * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
6824         treat pointers in data space as function descriptors if the
6825         target address is also in the data space.
6826
6827 2008-05-30  Joel Brobecker  <brobecker@adacore.com>
6828
6829         * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
6830         the trad-frame register value for the SP register.
6831
6832 2008-05-29  Mark Kettenis  <kettenis@gnu.org>
6833
6834         * sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.
6835
6836 2008-05-28  Joel Brobecker  <brobecker@adacore.com>
6837
6838         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
6839         that identifies function descriptors outside of the .opd section.
6840
6841 2008-05-28  Aleksandar Ristovski  <aristovski@qnx.com>
6842
6843         * breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
6844         temporary catchpoints.  In MI add missing fields 'reason', 'disp',
6845         'bkptno'.
6846         (print_mention_exception_catchpoint): Add 'Temporary' for temporary
6847         catchpoints.
6848         (handle_gnu_v3_exceptions): Use tempflag.
6849
6850 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
6851
6852         Refactor varobj_update interface.
6853         * varobj.c (varobj_update): Report changes as vector.  Also
6854         return not just a list of varobj, but a list of special structures
6855         that tell what exactly has changed.
6856         * varobj.h (enum varobj_update_error): Rename to
6857         varobj_scope_status.
6858         (struct varobj_update_result_t): New.
6859         (varobj_update): Adjust prototype.
6860         * mi/mi-cmd-var.c: Adjust for changes.
6861
6862 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
6863
6864         * varobj.c (varobj_update): Fix comment typo.
6865         Fix indentation.
6866
6867 2008-05-26  Joel Brobecker  <brobecker@adacore.com>
6868
6869         Set the symtab field of symbols read from ECOFF debugging entries.
6870         * mdebugread.c (add_symbol): Add new parameter symtab.
6871         (parse_symbol): Update calls to add_symbol throughout.
6872
6873 2008-05-27  Andreas Schwab  <schwab@suse.de>
6874
6875         * symtab.h (enum address_class): Remove LOC_REGPARM and
6876         LOC_COMPUTED_ARG.
6877         (struct symbol): Add is_argument.
6878         (SYMBOL_IS_ARGUMENT): Define.
6879
6880         * ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
6881         * buildsym.c (finish_block): Likewise.
6882         * stack.c (print_frame_args, print_block_frame_locals)
6883         (print_frame_arg_vars): Likewise.
6884         * symtab.c (lookup_block_symbol): Likewise.
6885         * tracepoint.c (add_local_symbols): Likewise.
6886         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
6887
6888         * coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
6889         * dwarf2read.c (new_symbol): Likewise.
6890         * mdebugread.c (parse_symbol): Likewise.
6891         * stabsread.c (define_symbol): Likewise.
6892
6893         * ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
6894         and LOC_COMPUTED_ARG.
6895         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
6896         * ax-gdb.c (gen_var_ref): Likewise.
6897         * eval.c (evaluate_subexp_for_address): Likewise.
6898         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
6899         * m2-exp.y (yylex): Likewise.
6900         * printcmd.c (address_info): Likewise.
6901         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
6902         * tracepoint.c (collect_symbol, scope_info): Likewise.
6903
6904 2008-05-24  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
6905
6906         * gdbarch.sh: Added new gdbarch struct
6907         core_regset_sections.
6908         * gdbarch.c: Refreshed.
6909         * gdbarch.h: Refreshed.
6910         * regset.h (core_regset_section): Declared.
6911         * linux-nat.c (linux_nat_do_thread_registers): Added
6912         support for the new gdbarch struct core_regset_sections.
6913         * utils.c (host_address_to_string): New function.
6914         * defs.h (host_address_to_string): New prototype.
6915         * i386-linux-tdep.c (i386_regset_rections): New register
6916         sections list for i386.
6917           (i386_linux_init_abi): Initialized new gdbarch struct
6918           core_regset_sections.
6919         * Makefile.in: Updated to reflect dependency changes.
6920         * ppc-linux-tdep.c (ppc_regset_sections): Register
6921         sections list for ppc.
6922           (ppc_linux_init_abi): Initialized new gdbarch struct
6923           core_regset_sections
6924
6925 2008-05-24  Andreas Schwab  <schwab@suse.de>
6926
6927         * linespec.c (decode_objc): Save current language around call to
6928         get_selected_block.
6929
6930 2008-05-23  Joel Brobecker  <brobecker@adacore.com>
6931
6932         * valprint.h (get_array_bounds): Renames get_array_low_bound.
6933         * valprint.c (get_array_bounds): Renames get_array_low_bound.
6934         Return the proper bound value if the array index type is an
6935         enumerated type. Compute the high bound if requested.
6936         (val_print_array_elements): Handle the case when the array
6937         element has a null size.
6938         * ada-valprint.c (print_optional_low_bound): Add handling
6939         for empty arrays or arrays of zero-size elements.
6940         (ada_val_print_array): New function, extracted out from
6941         ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
6942         handle empty arrays and arrays of zero-size elements.
6943         (ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
6944         code by call to ada_val_print_array.
6945         (ada_value_print): Remove handling of null array.  The handling
6946         was incomplete and is now better handled by ada_val_print_array.
6947
6948 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
6949
6950         * annotate.c (annotate_source, annotate_frame_begin): Replace
6951         deprecated_print_address_numeric with paddress.
6952         * cli/cli-cmds.c (list_command, edit_command): Likewise.
6953         * tui/tui-stack.c (tui_make_status_line): Likewise.
6954
6955         * defs.h (deprecated_print_address_numeric): Remove.
6956         * printcmd.c (deprecated_print_address_numeric): Remove.
6957         * maint.c (maint_print_section_info): Fix comment.
6958
6959 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
6960
6961         * valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
6962         print_binary_chars, print_char_chars): Add byte_order parameter and
6963         replace gdbarch_byte_order.
6964         (print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
6965         expressions and remove them.  Remove unused TWO_TO_FOURTH.
6966         (val_print_type_code_int): Introduce gdbarch_byte_order to get at the
6967         endianness.  Update call to print_hex_chars.
6968         * valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
6969         print_binary_chars, print_char_chars): Add byte_order parameter.
6970         * printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
6971         get at the endianness.  Update print_*_char calls to use byte_order.
6972
6973 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
6974
6975         * symtab.h (struct symbol): Make "aux_value" member a void pointer
6976         instead of a union.
6977         (SYMBOL_LOCATION_BATON): Update.
6978
6979 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
6980
6981         * symtab.h (enum address_class): Remove LOC_BASEREG and
6982         LOC_BASEREG_ARG.
6983         (struct symbol): Remove "basereg" member of "aux_value" union.
6984         (SYMBOL_BASEREG): Remove.
6985
6986         * ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
6987         or LOC_BASEREG_ARG.
6988         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
6989         (ada_add_block_symbols): Likewise.
6990         * ax-gdb.c (gen_var_ref): Likewise.
6991         * buildsym.c (finish_block): Likewise.
6992         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
6993         * m2-exp.y (yylex): Likewise.
6994         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
6995         * printcmd.c (address_info): Likewise.
6996         * stack.c (print_frame_args, print_block_frame_locals): Likewise.
6997         (print_frame_arg_vars): Likewise.
6998         * symmisc.c (print_symbol): Likewise.
6999         * symtab.c (lookup_block_symbol): Likewise.
7000         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
7001         (scope_info): Likewise.
7002
7003 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7004
7005         * symtab.h (enum address_class): Remove LOC_LOCAL_ARG.
7006
7007         * ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
7008         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
7009         (ada_add_block_symbols): Likewise.
7010         * ax-gdb.c (gen_var_ref): Likewise.
7011         * buildsyms.c (finish_block): Likewise.
7012         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
7013         * m2-exp.y (yylex): Likewise.
7014         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7015         * printcmd.c (address_info): Likewise.
7016         * stack.c (print_frame_args, print_frame_arg_vars): Likewise.
7017         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7018         * symtab.c (lookup_block_symbol): Likewise.
7019         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
7020         (scope_info): Likewise.
7021
7022 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
7023
7024         * symtab.h (enum address_class): Remove LOC_INDIRECT and
7025         LOC_HP_THREAD_LOCAL_STATIC.
7026
7027         * findvar.c (symbol_read_needs_frame, read_var_value): Do not
7028         handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
7029         (read_var_value): Likewise.
7030         * buildsym.c (finish_block): Likewise.
7031         * objfiles.c (objfile_relocate): Likewise.
7032         * printcmd.c (address_info): Likewise.
7033         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
7034         * tracepoint.c (scope_info): Likewise.
7035
7036 2008-05-21 Markus Deuling  <deuling@de.ibm.com>
7037            Maxim Grigoriev  <maxim2405@gmail.com>
7038
7039         * xtensa-tdep.c (xtensa_read_register): Remove.
7040         (xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
7041         argument litbase to call0_frame_cache().
7042         (call0_track_op, call0_analyze_prologue)
7043         (call0_frame_cache): Use extra argument litbase.
7044
7045 2008-05-21  Joel Brobecker  <brobecker@adacore.com>
7046
7047         * infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
7048
7049 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
7050
7051         * frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
7052
7053 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
7054
7055         * alpha-mdebug-tdep.c: Include "trad-frame.h".
7056         (struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
7057         struct trad_frame_saved_reg *.
7058         (alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
7059         trad_frame_alloc_saved_regs.  Update accesses.  Record previous
7060         value of SP as being vfp.
7061         (alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
7062         * Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
7063
7064 2008-05-21  Markus Deuling  <deuling@de.ibm.com>
7065
7066         * score-tdep.c (score_print_insn): Get the current endianess from
7067         disassemble_info instead of gdbarch_byte_order.
7068
7069 2008-05-21  Pedro Alves  <pedro@codesourcery.com>
7070
7071         * frame.c (get_prev_frame_1): Build frame id before setting
7072         this_frame->prev_p, not after.
7073
7074 2008-05-21  Nick Roberts  <nickrob@snap.net.nz>
7075
7076         * annotate.c (annotate_new_thread): New function for new-thread
7077         annotation.
7078         * annotate.h: (annotate_new_thread): New extern.
7079         * thread.c (add_thread_with_info): Use it.
7080         * Makefile.in (thread.o): Add dependency on annotate.h.
7081
7082 2008-05-20  Joel Brobecker  <brobecker@adacore.com>
7083
7084         * win32-nat.c (win32_wait): Block the control-c event while
7085         waiting for a debug event.
7086
7087 2008-05-19  Pedro Alves  <pedro@codesourcery.com>
7088
7089         * symtab.h (lookup_symbol_in_language): Update comment.
7090         * symtab.c (lookup_symbol_aux_block): Update comment.
7091         * ada-lang.c (ada_lookup_symbol_list): Update comment.
7092
7093 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7094
7095         * symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
7096         (lookup_symbol): Likewise.
7097         * symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
7098         (lookup_symbol): Likewise.
7099         (search_symbols): Update.
7100
7101         * linespec.c (find_methods, collect_methods): Update.
7102         (add_matching_methods, add_constructors): Update.
7103         (decode_compound, decode_dollar, decode_variable): Update.
7104         (lookup_prefix_sym): Update.
7105
7106         (symbol_found): Remove SYM_SYMTAB parameter.
7107         Use SYMBOL_SYMTAB (sym) instead.
7108
7109         * gdbtypes.c (lookup_typename): Update.
7110         (lookup_struct, lookup_union, lookup_enum): Update.
7111         (lookup_template_type): Update.
7112         (check_typedef): Update.
7113         * language.c (lang_bool_type): Update.
7114         * mdebugread.c (parse_procedure): Update.
7115         * mi/mi-cmd-stack.c (list_args_or_locals): Update.
7116         * parse.c (write_dollar_variable): Update.
7117         * printcmd.c (address_info): Update.
7118         * source.c (select_source_symtab): Update.
7119         * stack.c (print_frame_args, print_frame_arg_vars): Update.
7120         * valops.c (find_function_in_inferior): Update.
7121         (value_struct_elt_for_reference): Update.
7122         * value.c (value_static_field, value_fn_field): Update.
7123
7124         * alpha-mdebug-tdep.c (find_proc_desc): Update.
7125         * arm-tdep.c (arm_skip_prologue): Update.
7126         * mt-tdep.c (mt_skip_prologue): Update.
7127         * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
7128
7129         * ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
7130         * ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
7131         (add_defn_to_vec): Likewise.
7132         (ada_add_block_symbols): Likewise.
7133         (lookup_cached_symbol, cache_symbol): Likewise.
7134         (standard_lookup): Update.
7135         (ada_lookup_symbol_list): Update.
7136
7137         * c-valprint.c (c_val_print): Update.
7138         * cp-support.c (cp_lookup_rtti_type): Update.
7139         * jv-lang.c (java_lookup_class, get_java_object_type): Update.
7140         * objc-lang.c (lookup_struct_typedef, find_imps): Update.
7141         * p-valprint.c (pascal_val_print): Update.
7142         * scm-lang.c (scm_lookup_name): Update.
7143
7144         * c-exp.y: Update.
7145         * f-exp.y: Update.
7146         * jv-exp.y: Update.
7147         * m2-exp.y: Update.
7148         * objc-exp.y: Update.
7149         * p-exp.y: Update.
7150
7151 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
7152
7153         * language.h (struct language_defn): Remove SYMTAB parameter from
7154         la_lookup_symbol_nonlocal callback function pointer.
7155
7156         * ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7157         (ada_lookup_encoded_symbol): Likewise.
7158         * ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
7159         Always call fixup_symbol_section.
7160         (ada_lookup_symbol): Remove SYMTAB parameter.
7161         (ada_lookup_symbol_nonlocal): Likewise.
7162         * ada-exp.y (write_object_renaming): Update.
7163         (find_primitive_type): Likewise.
7164
7165         * cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7166         (cp_lookup_symbol_namespace): Likewise.
7167         * cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
7168         (lookup_symbol_file): Likewise.
7169         (lookup_possible_namespace_symbol): Likewise.
7170         (cp_lookup_symbol_nonlocal): Likewise.
7171         (cp_lookup_symbol_namespace): Likewise.
7172         (cp_lookup_nested_type): Update.
7173
7174         * scm-valprint.c (scm_inferior_print): Update.
7175         * valops.c (value_maybe_namespace_elt): Update.
7176
7177         * solist.h (struct target_so_ops): Remove SYMTAB parameter from
7178         lookup_lib_global_symbol callback function pointer.
7179         (solib_global_lookup): Remove SYMTAB parameter.
7180         * solib.c (solib_global_lookup): Remove SYMTAB parameter.
7181         * solib-svr4.c (elf_lookup_lib_symbol): Likewise.
7182
7183         * symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
7184         (lookup_symbol_static): Likewise.
7185         (lookup_symbol_global): Likewise.
7186         (lookup_symbol_aux_block): Likewise.
7187         (lookup_global_symbol_from_objfile): Likewise.
7188         * symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
7189         (lookup_symbol_aux_local): Likewise.
7190         (lookup_symbol_aux_block): Likewise.
7191         (lookup_symbol_aux_symtabs): Likewise.
7192         (lookup_symbol_aux_psymtabs): Likewise.
7193         (lookup_global_symbol_from_objfile): Likewise.
7194         (basic_lookup_symbol_nonlocal): Likewise.
7195         (lookup_symbol_static): Likewise.
7196         (lookup_symbol_global): Likewise.
7197
7198         (lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
7199
7200 2008-05-17  Pedro Alves  <pedro@codesourcery.com>
7201
7202         * remote.c (init_extended_remote_ops): Fix typo.
7203
7204 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7205
7206         * NEWS: Mention new DICOS x86 target configuration.
7207
7208 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
7209             Ulrich Weigand  <uweigand@de.ibm.com>
7210
7211         * minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
7212         * symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
7213
7214         * symtab.c (fixup_section): Remove prototype.  Add ADDR parameter;
7215         use it instead of ginfo->value.address.  Look up minimal symbol by
7216         address and name.  Assume OBJFILE is non-NULL.
7217         (fixup_symbol_section): Ensure we always have an objfile to look
7218         into.  Extract and pass to fixup_section the symbol's address that
7219         will match the minimal symbol's address.
7220         (fixup_psymbol_section): Likewise.
7221
7222         (find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
7223         overlays and the addrmap returned the wrong section.
7224
7225         * dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
7226         calling fixup_symbol_section.
7227
7228 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7229
7230         * minsyms.c: Include "target.h".
7231         (find_solib_trampoline_target): Handle minimal symbols pointing
7232         to function descriptors as well.
7233         * Makefile.in (minsyms.o): Update dependencies.
7234
7235         * ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
7236         (ppc64_standard_linkage1): ... this.  Fix optional instructions.
7237         (PPC64_STANDARD_LINKAGE_LEN): Rename to ...
7238         (PPC64_STANDARD_LINKAGE1_LEN): ... this.
7239         (ppc64_standard_linkage2, ppc64_standard_linkage3): New.
7240         (PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
7241         (ppc64_standard_linkage_target): Rename to ...
7242         (ppc64_standard_linkage1_target): ... this.
7243         (ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
7244         (ppc64_skip_trampoline_code): Support three variants of standard
7245         linkage stubs.  Call find_solib_trampoline_target to handle
7246         glink stubs.
7247
7248 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7249
7250         * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
7251         ppc64_sysv_abi_adjust_breakpoint_address.
7252         * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7253         * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
7254
7255 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
7256
7257         * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
7258         (ppc_linux_init_abi): Install find_solib_trampoline_target instead
7259         of ppc_linux_skip_trampoline_code.
7260
7261 2008-05-15  Daniel Jacobowitz  <dan@codesourcery.com>
7262
7263         * gdbarch.sh: Delete dwarf_reg_to_regnum.
7264         * gdbarch.c, gdbarch.h: Regenerated.
7265         * amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
7266         hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
7267         s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
7268
7269 2008-05-15  Pedro Alves  <pedro@codesourcery.com>
7270
7271         * linux-nat.c (trap_ptid): Delete.
7272         (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
7273         Adjust.
7274         * linux-thread-db.c (thread_db_wait): Adjust.
7275
7276 2008-05-15  Joel Brobecker  <brobecker@adacore.com>
7277
7278         * linespec.c (decode_line_1): Fix a couple of comments.
7279
7280 2008-05-15  Alan Modra  <amodra@bigpond.net.au>
7281
7282         * dbxread.c: Formatting.
7283         (INTERNALIZE_SYMBOL): Init n_other.
7284         (set_namestring): Take pointer to nlist arg rather than struct
7285         copy.  Update all callers.
7286
7287 2008-05-15  Andreas Schwab  <schwab@suse.de>
7288
7289         * Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
7290         (dwarf2read.o): Add $(addrmap_h).
7291
7292 2008-05-14  Ulrich Weigand  <uweigand@de.ibm.com>
7293
7294         * ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
7295         (ppc64_linux_convert_from_func_ptr_addr): ... to this.  No longer try
7296         to handle ppc32 PLT entries.
7297         (ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
7298         only on ppc64.
7299
7300 2008-05-14  Daniel Jacobowitz  <dan@codesourcery.com>
7301
7302         * elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
7303         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
7304         lookup_minimal_symbol_by_pc_section.  Prefer trampolines if requested.
7305         (lookup_minimal_symbol_by_pc_section): Use
7306         lookup_minimal_symbol_by_pc_section_1.
7307         (lookup_solib_trampoline_symbol_by_pc): Likewise.
7308
7309 2008-05-13  Joel Brobecker  <brobecker@adacore.com>
7310
7311         * findcmd.c: Add #include "gdb_stdint.h".
7312         * Makefile.in (findcmd.o): Update dependencies.
7313
7314 2008-05-11  David S. Miller  <davem@davemloft.net>
7315
7316         * sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
7317         long double size override, Linux does use 128-bit now.
7318
7319         * sparc-linux-tdep.c (PSR_SYSCALL): Define.
7320         (sparc_linux_write_pc): New function.
7321         (sparc32_linux_init_abi): Register it.
7322         * sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
7323         (sparc64_linux_write_pc): New function.
7324         (sparc64_linux_init_abi): Register it.
7325
7326         * sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
7327         dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
7328
7329 2008-05-11  Ulrich Weigand  <uweigand@de.ibm.com>
7330
7331         * rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
7332         and info.tdep_info before calling gdbarch_init_osabi.
7333
7334 2008-05-09  Joel Brobecker  <brobecker@adacore.com>
7335
7336         * ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
7337         the type of the right hand side of the assignment to the type
7338         of the left hand side if the left hand side is a convenience
7339         variable.
7340
7341 2008-05-09  Ulrich Weigand  <uweigand@de.ibm.com>
7342
7343         * NEWS: Mention gdbserver bi-arch capability.
7344
7345 2008-05-09  Doug Evans  <dje@google.com>
7346
7347         New "find" command.
7348         * NEWS: Document find command and qSearch:memory packet.
7349         * Makefile.in (SFILES): Add findcmd.c.
7350         (COMMON_OBJS): Add findcmd.o.
7351         (findcmd.o): New rule.
7352         * findcmd.c: New file.
7353         * target.h (target_ops): New member to_search_memory.
7354         (simple_search_memory): Declare.
7355         (target_search_memory): Declare.
7356         * target.c (simple_search_memory): New fn.
7357         (target_search_memory): New fn.
7358         * remote.c (PACKET_qSearch_memory): New packet kind.
7359         (remote_search_memory): New fn.
7360         (init_remote_ops): Init to_search_memory.
7361         (init_extended_remote_ops): Ditto.
7362         (_initialize_remote): Add qSearch:memory packet config command.
7363
7364 2008-05-09  Eli Zaretskii  <eliz@gnu.org>
7365
7366         * thread.c (_initialize_thread): Don't use commas and periods in
7367         first line of doc string of "set/show print thread-events".
7368
7369 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7370
7371         * alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
7372         Update for unwinder changes.
7373
7374 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7375
7376         * frame.c (get_frame_base_address, get_frame_locals_address)
7377         (get_frame_args_address): Pass the correct frame when calling
7378         frame_base_find_by_frame.
7379
7380 2008-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7381
7382         * remote.c (extended_remote_attach_1): Call target_find_description.
7383
7384 2008-05-08  Daniel Jacobowitz  <dan@codesourcery.com>
7385
7386         * remote.c (extended_remote_create_inferior_1): Clean up
7387         before marking the target running.
7388
7389 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
7390
7391         * hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
7392         changes.
7393
7394 2008-05-07  Joel Brobecker  <brobecker@adacore.com>
7395
7396         * sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
7397         sparc64-sol2-tdep.c: Update for unwinder changes.
7398
7399 2008-05-07  Daniel Jacobowitz  <dan@codesourcery.com>
7400
7401         * cp-support.c (mangled_name_to_comp): Initialize storage.
7402         (unqualified_name_from_comp): Likewise.
7403
7404 2008-05-07  Jie Zhang  <jie.zhang@analog.com>
7405
7406         * remote.c (remote_insert_breakpoint): Call get_remote_state
7407         after gdbarch_breakpoint_from_pc is called.
7408         (remote_insert_hw_breakpoint): Likewise.
7409
7410 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7411
7412         * valprint.c (val_print): Add new language parameter and use it
7413         instead of using the current_language. Update calls to val_print
7414         throughout.
7415         (common_val_print): Add new langauge parameter and pass it to
7416         val_print.
7417         * value.h (struct language_defn): Add opaque declaration.
7418         (val_print, common_val_print): Update declarations.
7419         * stack.c (print_frame_args): Update call to common_val_print
7420         using the appropriate language.
7421         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
7422         * c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
7423         mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
7424         scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
7425         #include "language.h" if necessary.
7426         Update calls to val_print and common_val_print.
7427         * Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
7428         Update dependencies.
7429
7430 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7431
7432         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
7433         pointing inside a non-executable section as function descriptors.
7434
7435 2008-05-06  Pedro Alves  <pedro@codesourcery.com>
7436
7437         * inf-loop.c (inferior_event_handler): Run all continuations and
7438         print any language change before running the breakpoint commands.
7439
7440 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
7441
7442         * frame-unwind.c (frame_unwind_got_bytes): New function.
7443         * frame-unwind.h (frame_unwind_got_bytes): Add declaration.
7444         * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
7445         for unwinder changes.
7446
7447 2008-05-05  Doug Evans  <dje@google.com>
7448
7449         * NEWS: Mention new /m modifier for disassemble command.
7450         * cli/cli-cmds.c (print_disassembly): New function.
7451         (disassemble_current_function): New function
7452         (disassemble_command): Recognize /m modifier, print mixed
7453         source+assembly.
7454         (init_cli_cmds): Update disassemble help text.
7455
7456 2008-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
7457
7458         * xtensa-tdep.c: Update for unwinder changes.
7459
7460 2008-05-05  Andreas Schwab  <schwab@suse.de>
7461
7462         Update m68k port for unwinder changes.
7463         * m68k-tdep.c (m68k_frame_cache): Expect this_frame.
7464         (m68k_frame_this_id, m68k_frame_prev_register): Update signature.
7465         (m68k_frame_unwind): Use default_frame_sniffer.
7466         (m68k_frame_sniffer): Remove.
7467         (m68k_frame_base_address): Expect this_frame.
7468         (m68k_dummy_id): Renamed from m68k_unwind_dummy_id.  Expect
7469         this_frame.
7470         (m68k_gdbarch_init): Use set_gdbarch_dummy_id,
7471         dwarf2_append_unwinders, and frame_unwind_append_unwinder.
7472         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
7473         parameter instead of pc value.
7474         (m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
7475         Expect this_frame.
7476         (m68k_linux_sigtramp_frame_this_id)
7477         (m68k_linux_sigtramp_frame_prev_register)
7478         (m68k_linux_sigtramp_frame_sniffer): Update signature.
7479         (m68k_linux_sigtramp_frame_unwind): Use
7480         m68k_linux_sigtramp_frame_sniffer.
7481         (m68k_linux_init_abi): Use frame_unwind_append_unwinder.
7482
7483         * m68klinux-nat.c (store_register): Fix typo.
7484
7485 2008-05-05  Pedro Alves  <pedro@codesourcery.com>
7486
7487         * infcmd.c (step_1): Put thread id on the stack to avoid possible
7488         NULL dereferencing.
7489
7490 2008-05-05  Luis Machado  <luisgpm@br.ibm.com>
7491
7492         * symfile.c (reread_symbols): Update objfile's entry point.
7493
7494 2008-05-05  Aleksandar Ristovski  <aristovski@qnx.com>
7495             Joel Brobecker  <brobecker@adacore.com>
7496
7497         * ada-lang.c: Update throughout to use symbol_matches_domain
7498         instead of matching the symbol domain explictly.
7499         * dwarf2read.c (add_partial_symbol): Do not add new psym for
7500         STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
7501         class as typedefs. See lookup_partial_symbol function.
7502         (new_symbol): Similar to add_partial_symbol, do not create
7503         symbol for the typedef. See lookup_block_symbol.
7504         * symtab.c (symbol_matches_domain): New function, takes care
7505         of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
7506         (lookup_partial_symbol): Use symbol_matches_domain to see if the
7507         found psym domain matches the given domain.
7508         (lookup_block_symbol): Likewise.
7509
7510 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7511
7512         * top.c (command_line_handler_continuation): Remove.
7513         (execute_command): Do not install the above.
7514
7515 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
7516
7517         * inf-loop.c (inferior_event_handler): Call bpstat_do_action,
7518         and catch all exceptions from it.
7519         * top.c (command_line_handler_continuation): Don't
7520         call bpstat_do_action here.
7521
7522 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7523
7524         * dwarf2read.c (struct dwarf2_cu): Add type_hash.
7525         (struct die_info): Remove type.
7526         (read_type_die, read_typedef, read_base_type, read_subrange_type)
7527         (read_structure_type, read_enumeration_type, read_array_type)
7528         (read_tag_pointer_type, read_tag_ptr_to_member_type)
7529         (read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
7530         (read_tag_string_type, read_subroutine_type, read_set_type)
7531         (read_unspecified_type): Delete prototypes.  Remove check for
7532         already-loaded type.  Return the new type.
7533         (set_die_type): Return the new type.
7534         (reset_die_and_siblings_types): Delete.
7535         (load_comp_unit, load_full_comp_unit): Set type_hash.
7536         (process_queue): Remove call to reset_die_and_siblings_types.
7537         (process_die): Do not read most types here.  Use read_type_die
7538         for others.
7539         (read_func_scope, dwarf2_add_member_fn): Use read_type_die.
7540         (quirk_gcc_member_function_pointer): Return the new type.
7541         (process_structure_scope, process_enumeration_scope): Use
7542         get_die_type and read the DIE's type.
7543         (read_full_die): Do not initialize die->type.
7544         (tag_type_to_type): Use read_type_die.
7545         (read_type_die): Check for already defined types.  Return the
7546         type.
7547         (determine_prefix): Use get_die_type.
7548         (set_die_type): Return the type.
7549         (get_die_type): Take a CU argument.  Check for no type_hash.
7550
7551 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
7552
7553         * dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
7554         locals.
7555
7556 2008-05-04  Pedro Alves  <pedro@codesourcery.com>
7557
7558         * breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
7559         and bp_longjmp_resume breakpoints.
7560         (breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
7561         meaningful.
7562         (create_longjmp_breakpoint): Don't create bp_longjmp_resume
7563         breakpoints.  Create bp_longjmp breakpoints as momentary
7564         breakpoints.
7565         (enable_longjmp_breakpoint): Delete.
7566         (set_longjmp_breakpoint): New.
7567         (disable_longjmp_breakpoint): Delete.
7568         (delete_longjmp_breakpoint): New.
7569         (set_longjmp_resume_breakpoint): Delete.
7570         (set_momentary_breakpoint_at_pc): New.
7571         (breakpoint_re_set_one): Don't delete bp_longjmp and
7572         bp_longjmp_resume breakpoints.
7573         (breakpoint_re_set): Don't create longjmp and longjmp-resume
7574         breakpoints.
7575
7576         * infrun.c (step_resume_breakpoint): Add comment.
7577         (struct execution_control_state): Delete handling_longjmp member.
7578         (init_execution_control_state). Don't clear handling_longjmp.
7579         (context_switch): Don't context switch handling_longjmp.
7580         (handle_inferior_event): If handling a bp_longjmp breakpoint,
7581         create a bp_longjmp_resume breakpoint, and set it as current
7582         step_resume_breakpoint, then step over the longjmp breakpoint.  If
7583         handling a bp_longjmp_resume breakpoint, don't delete the longjmp
7584         breakpoint, delete the longjmp-resume breakpoint, and stop
7585         stepping.
7586         (currently_stepping): Remove handling_longjmp from expression.
7587         (insert_step_resume_breakpoint_at_sal): Update comment.
7588         (insert_longjmp_resume_breakpoint): New.
7589
7590         * breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
7591         (enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
7592         declarations.
7593         (set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
7594         (set_longjmp_resume_breakpoint): Delete declaration.
7595
7596         * gdbthread.h (save_infrun_state): Remove handling_longjmp
7597         parameter.
7598         (load_infrun_state): Delete *handling_longjmp parameter.
7599         * thread.c (save_infrun_state): Remove handling_longjmp parameter.
7600         Update body.
7601         (load_infrun_state): Delete *handling_longjmp parameter.  Update
7602         body.
7603
7604         * infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
7605         (delete_longjmp_breakpoint_cleanup): New.
7606         (step_1): Call set_longjmp_breakpoint instead of
7607         enable_longjmp_breakpoint.  Use delete_longjmp_breakpoint_cleanup
7608         instead of disable_longjmp_breakpoint_cleanup when making cleanup.
7609         (step_1_continuation): Pass thread id in the continuation args to
7610         step_once.
7611         (step_once): Add thread parameter.  Pass thread id the the
7612         continuation.
7613
7614 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7615
7616         Set CU BASE_ADDRESS already from partial DIEs.
7617         * dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
7618         BASE_ADDRESS_TYPE.  Set these variables from DW_AT_LOW_PC and
7619         DW_AT_ENTRY_PC.  Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
7620         from these variables if it was still unset.
7621
7622         * Makefile.in: Update dependencies.
7623         * dwarf2read.c: Include "addrmap.h"
7624         (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
7625         (dwarf2_ranges_read): New prototype.
7626         (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
7627         Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
7628         HAS_RANGES_OFFSET, otherwise add there the contiguous range.
7629         (dwarf2_ranges_read): New parameter RANGES_PST, update the function
7630         comment for it.  Add the found ranges to RANGES_PST.  New variable
7631         BASEADDR, initialize it the common way.
7632         (dwarf2_get_pc_bounds): Update the caller for the new parameter.
7633         (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
7634         HAS_RANGES_OFFSET for the later processing.
7635         * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
7636         * symtab.c: Include "addrmap.h"
7637         (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
7638         Move the psymtab locator into ...
7639         (find_pc_sect_psymtab_closer): ... a new function.
7640
7641 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7642
7643         * arch-utils.c (gdbarch_update_p): Use default values for
7644         info.abfd and info.target_desc if they are NULL.
7645         (gdbarch_from_bfd): Remove assertion.
7646         (set_gdbarch_from_file): Call gdbarch_find_by_info directly,
7647         using the current target description.
7648         (gdbarch_info_fill): Do not use default values for info->abfd
7649         and info->target_desc.
7650
7651 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7652
7653         * symfile.c (reread_symbols): Reload EXEC_BFD on its change.
7654
7655 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7656
7657         * inferior.h (read_pc_pid, write_pc_pid): Remove.
7658         * regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.
7659
7660         * regcache.c (read_pc_pid): Remove, replace by ...
7661         (regcache_read_pc): ... this function.
7662         (write_pc_pid): Remove, replace by ...
7663         (regcache_write_pc): ... this function.
7664         (read_pc, write_pc): Update.
7665
7666         * infrun.c (displaced_step_prepare): Replace read_pc_pid and
7667         write_pc_pid by regcache_read_pc and regcache_write_pc.
7668         (displaced_step_fixup): Likewise.
7669         (resume): Likewise.  Use regcache arch instead of current_gdbarch.
7670         (prepare_to_proceed): Likewise.
7671         (proceed): Likewise.
7672         (adjust_pc_after_break): Likewise.
7673         (handle_inferior_event): Likewise.
7674
7675         * linux-nat.c (cancel_breakpoint): Likewise.
7676         * linux-thread-db.c (check_event): Likewise.
7677         * aix-thread.c (aix_thread_wait): Likewise.
7678         * tracepoint.c (trace_dump_command): Likewise.
7679
7680 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7681
7682         * dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
7683         SYMBOL_LOCATION_BATON.
7684
7685 2008-05-04  Vladimir Prus  <vladimir@codesourcery.com>
7686
7687         * target.h (struct target_ops): New field to_auxv_parse.
7688         * auxv.c (default_auxv_parse): New, renamed from previous
7689         target_auxv_parse.
7690         (target_auxv_parse): Try to call target method.  Fallback to
7691         default_auxv_parse if not found.
7692         * procfs.c (procfs_auxv_parse): New.
7693         (init_procfs_ops): On Solaris, in 64-bit mode, install
7694         procfs_auxv_parse.
7695
7696 2008-05-03  Adam Nemet  <anemet@caviumnetworks.com>
7697
7698         * symfile.c (add_symbol_file_command):  Use paddress rather than
7699         hex_string to print the address.
7700
7701 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7702
7703         * rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
7704         return the null frame ID to terminate the backtrace.
7705
7706 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7707
7708         * rs6000-tdep.c: Do not include "rs6000-tdep.h".
7709         (rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
7710         (SIG_FRAME_PC_OFFSET): Likewise.
7711         (SIG_FRAME_LR_OFFSET): Likewise.
7712         (SIG_FRAME_FP_OFFSET): Likewise.
7713         (rs6000_push_dummy_call): Likewise.
7714         (rs6000_return_value): Likewise.
7715         (rs6000_convert_from_func_ptr_addr): Likewise.
7716         (branch_dest, rs6000_software_single_step): Likewise.
7717         (deal_with_atomic_sequence): Rename to ...
7718         (ppc_deal_with_atomic_sequence): ... this.  Adapt all callers.
7719         Do not call branch_dest; inline required parts of that function.
7720         (rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
7721         with SYMBOL_LINKAGE_NAME.
7722         (struct reg, regsize): Delete.
7723         (read_memory_addr): Delete; inline into callers.
7724         (rs6000_skip_prologue): Move after skip_prologue.
7725         (skip_prologue): Remove prototype.
7726         (rs6000_gdbarch_init): Remove sysv_abi variable; perform all
7727         initialization as if this variable were true.  Do not install
7728         ppc64_sysv_abi_adjust_breakpoint_address.
7729
7730         * rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
7731         "gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
7732         and "breakpoint.h".
7733         (rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
7734         (SIG_FRAME_PC_OFFSET): Likewise.
7735         (SIG_FRAME_LR_OFFSET): Likewise.
7736         (SIG_FRAME_FP_OFFSET): Likewise.
7737         (rs6000_push_dummy_call): Likewise.
7738         (rs6000_return_value): Likewise.
7739         (rs6000_convert_from_func_ptr_addr): Likewise.
7740         (branch_dest, rs6000_software_single_step): Likewise.  Replace
7741         tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
7742         (rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
7743         rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
7744         Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
7745         Set tdep->lr_frame_offset.  Do not set tdep->text_segment_base.
7746
7747         * rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
7748         (AIX_TEXT_SEGMENT_BASE): New macro.
7749         * rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
7750         by AIX_TEXT_SEGMENT_BASE.
7751
7752         * ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
7753         (struct gdbarch_tdep): Remove text_segment_base member.
7754         * ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
7755         ppc64_sysv_abi_adjust_breakpoint_address.
7756
7757         * Makefile.in (rs6000-tdep.o): Update dependencies.
7758         (rs6000-aix-tdep.o): Likewise.
7759
7760 2008-05-03  Luis Machado  <luisgpm@br.ibm.com>
7761             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7762
7763         * cli/cli-decode.c (lookup_cmd_1): Fix indentation.
7764         * doublest.c (convert_typed_floating): Fix typo in comment.
7765         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
7766         * frame-unwind.h (frame_sniffer_ftype): Likewise.
7767         * frame.c (frame_unwind_address_in_block): Likewise.
7768         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
7769         * symtab.h (struct symbol): Likewise.
7770         * tramp-frame.h (struct trad_frame_cache): Likewise.
7771         * value.c (allocate_repeat_value): Likewise.
7772
7773 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7774
7775         * infrun.c (handle_inferior_event): Do not insert breakpoints at
7776         TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).
7777
7778 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
7779
7780         * parse.c (parse_exp_in_context): Don't override
7781         expression_context_pc if get_selected_block returned a valid
7782         block.
7783
7784 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
7785
7786         * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
7787         * arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
7788         * breakpoint.c (args_for_catchpoint_enable, current_exception_event):
7789         Delete.
7790         * c-typeprint.c (c_type_print_base): Delete handling of template
7791         instantiations.
7792         * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
7793         (METHOD_PTR_TO_VOFFSET): Delete.
7794         * defs.h (QUIT_FIXME): Delete.
7795         * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
7796         (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
7797         * gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
7798         ninstantiations, and instantiations.
7799         (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
7800         (TYPE_FN_FIELD_INLINED): Delete.
7801         * srec.h (SREC_BINARY): Delete.
7802         * symtab.c (symbol_init_demangled_name): Delete.
7803         * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
7804         (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
7805         (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
7806         (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
7807         (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
7808         (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
7809         * target.h (enum thread_control_capabilities): Delete tc_switch.
7810         (target_can_switch_threads): Delete.
7811
7812 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
7813
7814         * Makefile.in (objfiles.o): Update.
7815         * exec.c (exec_set_section_address): Support p->addr != 0.
7816         * objfiles.c (objfile_relocate): Update exec_ops section
7817         addresses.
7818         * symfile.c (place_section): Move exec_set_section_address call...
7819         (default_symfile_offsets): ...to here.
7820
7821 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
7822
7823         * Makefile.in (ppc_linux_tdep_h): New macro.
7824         (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
7825         (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
7826         (powerpc_e500l_c): Likewise.
7827         (ppc-linux-nat.o): Update dependencies.
7828         (ppc-linux-tdep.o): Update dependencies.
7829         (rs6000-tdep.o): Update dependencies.
7830
7831         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
7832         (ppc_linux_svr4_fetch_link_map_offsets): Remove.
7833         (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
7834         (ppc_supply_reg, ppc_collect_reg): Add prototypes.
7835         (tdesc_powerpc_e500): Remove.
7836
7837         * rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
7838         and "features/rs6000/powerpc-altivec64.c".
7839         (ppc_supply_reg, ppc_collect_reg): Make global.
7840         (variants): Use tdesc_powerpc_32 for "powerpc" and
7841         tdesc_powerpc_altivec64 for "powerpc64".
7842         (_initialize_rs6000_tdep): Initialize AltiVec descriptions.
7843
7844         * ppc-linux-tdep.h: New file.
7845
7846         * ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
7847         Include "features/rs6000/powerpc-32l.c".
7848         Include "features/rs6000/powerpc-altivec32l.c".
7849         Include "features/rs6000/powerpc-64l.c".
7850         Include "features/rs6000/powerpc-altivec64l.c".
7851         Include "features/rs6000/powerpc-e500l.c".
7852         (ppc_linux_supply_gregset): New function.
7853         (ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
7854         (ppc32_linux_gregset): Use ppc_linux_supply_gregset.
7855         (ppc64_linux_gregset): Likewise.
7856         (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
7857         (ppc_linux_trap_reg_p): New function.
7858         (ppc_linux_write_pc): New function.
7859         (ppc_linux_core_read_description): New function.
7860         (ppc_linux_init_abi): Install ppc_linux_write_pc and
7861         ppc_linux_core_read_description.  Install orig_r3 and trap
7862         registers if present in the target description.
7863         (_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
7864
7865         * ppc-linux-nat.c: Include "ppc-linux-tdep.h".
7866         (PT_ORIG_R3, PT_TRAP): Define if necessary.
7867         (ppc_register_u_addr): Handle orig_r3 and trap registers.
7868         (fetch_ppc_registers): Likewise.
7869         (store_ppc_registers): Likewise.
7870         (store_register): Likewise.
7871         (ppc_linux_read_description): Check whether AltiVec is supported.
7872         Check whether inferior is 32-bit or 64-bit.  Return the appropriate
7873         Linux target description.
7874
7875         * features/Makefile (WHICH): Use rs6000/powerpc-32l and
7876         rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
7877         Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
7878         of rs6000/powerpc-64.  Use rs6000/powerpc-e500l instead of
7879         rs6000/powerpc-e500.  Update -expedite variables accordingly.
7880
7881         * features/rs6000/power-spe.xml: Use regnum 73 for "acc".
7882         * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
7883         * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
7884         * features/rs6000/powerpc-e500.c: Regenerate.
7885         * features/rs6000/powerpc-32.c: Regenerate.
7886         * features/rs6000/powerpc-64.c: Regenerate.
7887
7888         * features/rs6000/power-linux.xml: New file.
7889         * features/rs6000/power64-linux.xml: New file.
7890         * features/rs6000/powerpc-32l.xml: New file.
7891         * features/rs6000/powerpc-altivec32l.xml: New file.
7892         * features/rs6000/powerpc-64l.xml: New file.
7893         * features/rs6000/powerpc-altivec64l.xml: New file.
7894         * features/rs6000/powerpc-e500l.xml: New file.
7895         * features/rs6000/powerpc-32l.c: New (generated) file.
7896         * features/rs6000/powerpc-altivec32l.c: New (generated) file.
7897         * features/rs6000/powerpc-64l.c: New (generated) file.
7898         * features/rs6000/powerpc-altivec64l.c: New (generated) file.
7899         * features/rs6000/powerpc-e500l.xml: New (generated) file.
7900
7901         * regformats/reg-ppc.dat: Remove.
7902         * regformats/reg-ppc64.dat: Remove.
7903         * regformats/rs6000/powerpc-32.dat: Remove.
7904         * regformats/rs6000/powerpc-64.dat: Remove.
7905         * regformats/rs6000/powerpc-e500.dat: Remove.
7906         * regformats/rs6000/powerpc-32l.dat: New (generated) file.
7907         * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
7908         * regformats/rs6000/powerpc-64l.dat: New (generated) file.
7909         * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
7910         * regformats/rs6000/powerpc-e500l.dat: New (generated) file.
7911
7912 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
7913
7914         * thread.c (delete_thread): Call observer_notify_thread_exit.
7915         * mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
7916         thread_exit observer.
7917         (mi_thread_exit): New.
7918
7919 2008-05-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
7920
7921         * breakpoint.c (create_exception_catchpoint): Remove prototype
7922         for already deleted function.
7923         * breakpoint.h (ep_is_exception_catchpoint): Likewise.
7924         * frame.h (show_stack_frame): Remove prototype.
7925         * stack.c (show_stack_frame): Remove empty, unused function.
7926         * source.c (symtab_to_fullname, print_source_lines): Small fix
7927         in comment.
7928         * value.c (show_values): Update comments to mention "show values"
7929         command instead of "info history".
7930
7931 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
7932
7933         * linespec.c: Include "target.h".
7934         (minsym_found): Handle minimal symbols pointing to function
7935         descriptors.  Use find_function_start_pc.
7936         * minsyms.c (msymbol_objfile): New function.
7937         * parse.c (write_exp_msymbol): Handle minimal symbols pointing
7938         to function descriptors.
7939         * symtab.c (fixup_section): Only use minimal symbol at the same
7940         address to determine section of a symbol.
7941         (find_function_start_pc): New function.
7942         (find_function_start_sal): Use it.
7943         * symtab.h (msymbol_objfile): Add prototype.
7944         (find_function_start_pc): Likewise.
7945         * value.c: Include "objfiles.h".
7946         (value_fn_field): Handle minimal symbols pointing to function
7947         descriptors.
7948         * Makefile.in (linespec.o): Update dependencies.
7949         (value.o): Likewise.
7950
7951 2008-05-02  Joel Brobecker  <brobecker@adacore.com>
7952
7953         * ada-lang.c (unwrap_value): Handle the case where the "F" field
7954         inside a PAD type is a bitfield.
7955
7956 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
7957
7958         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
7959         TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
7960         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
7961         Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
7962         Allow typedefs when checking for function pointer arguments.
7963         Right-align small structs passed on the stack.
7964         (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
7965         TYPE_CODE_CHAR the same as TYPE_CODE_INT.
7966         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
7967
7968 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
7969
7970         * Makefile.in (arm-tdep.o): Update.
7971         * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
7972         (struct arm_per_objfile, arm_compare_mapping_symbols): New.
7973         (arm_pc_is_thumb): Use mapping symbols.
7974         (arm_objfile_data_cleanup, arm_record_special_symbol): New.
7975         (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
7976         (_initialize_arm_tdep): Initialize arm_objfile_data_key.
7977         * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
7978         * gdbarch.sh: Add record_special_symbol.
7979         * gdbarch.c, gdbarch.h: Regenerated.
7980         * objfiles.c (struct objfile_data): Add cleanup member.
7981         (register_objfile_data_with_cleanup): New function, from
7982         register_objfile_data.
7983         (register_objfile_data): Use it.
7984         (objfile_free_data): Call clear_objfile_data.
7985         (clear_objfile_data): Call cleanup functions.
7986         * objfiles.h (register_objfile_data_with_cleanup): Declare.
7987
7988 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
7989
7990         * objfiles.c (init_entry_point_info): Handle shared libraries.
7991
7992 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
7993
7994         * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
7995         lowest_pc.
7996
7997 2008-05-02  Jim Blandy  <jimb@codesourcery.com>
7998             Pedro Alves  <pedro@codesourcery.com>
7999
8000         Implement displaced stepping.
8001
8002         * gdbarch.sh (max_insn_length): New 'variable'.
8003         (displaced_step_copy, displaced_step_fixup)
8004         (displaced_step_free_closure, displaced_step_location): New
8005         functions.
8006         (struct displaced_step_closure): Add forward declaration.
8007         * gdbarch.c, gdbarch.h: Regenerated.
8008
8009         * arch-utils.c: #include "objfiles.h".
8010         (simple_displaced_step_copy_insn)
8011         (simple_displaced_step_free_closure)
8012         (displaced_step_at_entry_point): New functions.
8013         * arch-utils.h (simple_displaced_step_copy_insn)
8014         (simple_displaced_step_free_closure)
8015         (displaced_step_at_entry_point): New prototypes.
8016
8017         * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
8018         (I386_MAX_MATCHED_INSN_LEN): ... this.
8019         (i386_absolute_jmp_p, i386_absolute_call_p)
8020         (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
8021         (i386_displaced_step_fixup): New functions.
8022         (struct i386_insn, i386_match_insn): Update.
8023         (i386_gdbarch_init): Set gdbarch_max_insn_length.
8024         * i386-tdep.h (I386_MAX_INSN_LEN): New.
8025         (i386_displaced_step_fixup): New prototype.
8026         * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
8027         Register gdbarch_displaced_step_copy,
8028         gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
8029         and gdbarch_displaced_step_location functions.
8030
8031         * infrun.c (debug_displaced): New variable.
8032         (show_debug_displaced): New function.
8033         (struct displaced_step_request): New struct.
8034         (displaced_step_request_queue, displaced_step_ptid)
8035         (displaced_step_gdbarch, displaced_step_closure)
8036         (displaced_step_original, displaced_step_copy)
8037         (displaced_step_saved_copy, can_use_displaced_stepping): New
8038         variables.
8039         (show_can_use_displaced_stepping, use_displaced_stepping)
8040         (displaced_step_clear, cleanup_displaced_step_closure)
8041         (displaced_step_dump_bytes, displaced_step_prepare)
8042         (displaced_step_clear_cleanup, write_memory_ptid)
8043         (displaced_step_fixup): New functions.
8044         (resume): Call displaced_step_prepare.
8045         (proceed): Call read_pc once, and remember the value.  If using
8046         displaced stepping, don't remove breakpoints.
8047         (handle_inferior_event): Call displaced_step_fixup.  Add some
8048         debugging output.  When we try to step over a breakpoint, but get
8049         a signal to deliver to the thread instead, ensure the step-resume
8050         breakpoint is actually inserted.  If a thread hop is needed, and
8051         displaced stepping is enabled, don't remove breakpoints.
8052         (init_wait_for_inferior): Call displaced_step_clear.
8053         (_initialize_infrun): Add "set debug displaced" command.  Add
8054         "maint set can-use-displaced-stepping" command.  Clear
8055         displaced_step_ptid.
8056         * inferior.h (debug_displaced): Declare variable.
8057         (displaced_step_dump_bytes): Declare function.
8058
8059         * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
8060         dependencies.
8061
8062 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
8063
8064         * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
8065         (arm_force_mode_string, arm_show_fallback_mode)
8066         (arm_show_force_mode): New.
8067         (arm_pc_is_thumb): Honor fallback-mode and force-mode.  Use
8068         arm_frame_is_thumb.
8069         (_initialize_arm_tdep): Add "set arm fallback-mode"
8070         and "set arm force-mode".
8071         * NEWS: Document new commands.
8072
8073 2008-05-02  Andrew Stubbs  <andrew.stubbs@st.com>
8074
8075         * main.h (batch_silent): Declare.
8076         * event-top.c: Include main.h.
8077         (gdb_setup_readline): Remove extern batch_silent declaration.
8078         * infrun.c (normal_stop): Don't print source location when running in
8079         --batch-silent mode.
8080         * Makefile.in (event-top.o): Add main.h dependency.
8081
8082 2008-05-02  Andreas Schwab  <schwab@suse.de>
8083
8084         * target.h (struct target_ops): Add
8085         to_watchpoint_addr_within_range.
8086         (target_watchpoint_addr_within_range): New function.
8087         * target.c (update_current_target): Inherit
8088         to_watchpoint_addr_within_range, defaulting to
8089         default_watchpoint_addr_within_range.
8090         (default_watchpoint_addr_within_range): New function.
8091         (debug_to_watchpoint_addr_within_range): New function.
8092         (setup_target_debug): Set to_watchpoint_addr_within_range.
8093         * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
8094         New function.
8095         (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
8096         * breakpoint.c (watchpoints_triggered): Use
8097         target_watchpoint_addr_within_range.
8098
8099 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8100
8101         * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
8102         (i[34567]86-*-dicos*, x86_64-*-dicos*):
8103         Set gdb_osabi to GDB_OSABI_DICOS.
8104
8105         * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
8106         * osabi.c (gdb_osabi_name): Add "DICOS".
8107
8108         * i386-dicos-tdep.c: New file.
8109
8110         * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
8111         (ALLDEPFILES): Add i386-dicos-tdep.c.
8112         (i386-dicos-tdep.o): New rule.
8113
8114 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
8115
8116         * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
8117         and register the fork's PTID as a thread.
8118
8119 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8120
8121         PR gdb/1665
8122         * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
8123         assign its value to the breakpoint created.
8124         (create_breakpoints): Add breakpoint_ops argument and pass it
8125         to create_breakpoint call.
8126         (break_command_really): Add breakpoint_ops argument and pass/assign
8127         appropriately.
8128         (break_command_1): Pass NULL as ops argument.
8129         (set_breakpoint): Pass NULL as ops argument.
8130         (print_one_exception_catchpoint): Print <PENDING> if no loc available.
8131         (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
8132         catch and throw catchpoints.
8133
8134 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
8135
8136         PR gdb/2343
8137         * corelow.c (core_open): Use gdbarch_target_signal_from_host to
8138         translate signal numeric value from the target to GDB's enum
8139         target_signal.
8140         * gdbarch.c, gdbarch.h: Regenerated.
8141         * gdbarch.sh: Added two new functions target_signal_from_host and
8142         target_signal_to_host.
8143         * target.h (default_target_signal_from_host,
8144         default_target_signal_to_host): New functions - declarations.
8145         * signals/signals.c (struct gdbarch): New declaration.
8146         (default_target_signal_to_host, default_target_signal_from_host): New
8147         functions.
8148
8149 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8150             Pedro Alves  <pedro@codesourcery.com>
8151
8152         Based on work by Jan Kratochvil <jan.kratochvil@redhat.com> and Jeff
8153         Johnston <jjohnstn@redhat.com>.
8154
8155         * NEWS: Mention attach to stopped process fix.
8156         * infcmd.c (detach_command, disconnect_command): Discard the thread
8157         list.
8158         * infrun.c (handle_inferior_event): Do not ignore non-SIGSTOP while
8159         attaching.  Use signal_stop_state.
8160         (signal_stop_state): Check stop_soon.
8161         * linux-nat.c (kill_lwp): Declare earlier.
8162         (pid_is_stopped, linux_nat_post_attach_wait): New.
8163         (lin_lwp_attach_lwp): Use linux_nat_post_attach_wait.  Update
8164         comments.
8165         (linux_nat_attach): Use linux_nat_post_attach_wait.
8166         (detach_callback, linux_nat_detach): Improve handling for signalled
8167         processes.
8168         (linux_nat_pid_to_str): Always print out the LWP ID if it differs
8169         from the process ID.
8170         * Makefile.in (infcmd.o): Update.
8171
8172 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
8173
8174         * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
8175         * arm-tdep.c (arm_frame_is_thumb): New.
8176         (arm_pc_is_thumb): Clarify comment.
8177         (thumb_analyze_prologue): Remove PC special case.
8178         (thumb_scan_prologue): Take a block_addr argument.  Use it for
8179         find_pc_partial_function.  Remove unused variables.
8180         (arm_scan_prologue): Use arm_frame_is_thumb.  Use the block address
8181         for find_pc_partial_function.  Remove PC special case.
8182         (arm_prologue_prev_register): Add special handling for PC and CPSR.
8183         (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
8184         (arm_get_next_pc): Use arm_frame_is_thumb.
8185         (arm_write_pc): Use CPSR_T instead of 0x20.
8186         (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
8187         * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
8188         (CPSR_T): Define.
8189         * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
8190         DWARF2_FRAME_REG_FN.
8191         * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
8192         DWARF2_FRAME_REG_FN.
8193         (struct dwarf2_frame_state_reg): Add FN to loc union.
8194
8195 2008-05-01  Nick Roberts  <nickrob@snap.net.nz>
8196
8197         * exec.c (print_section_info): Add missing '\n'.
8198
8199 2008-05-01  Vladimir Prus  <vladimir@codesourcery.com>
8200
8201         * thread.c (add_thread): Move observer call to ...
8202         (add_thread_silent): ... here.
8203
8204 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8205
8206         * rs6000-tdep.c: Update for unwinder changes.
8207         * ppcobsd-tdep.c: Likewise.
8208
8209 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8210
8211         * s390-tdep.c: Update for unwinder changes.
8212
8213 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
8214
8215         * spu-tdep.c: Update for unwinder changes.
8216
8217 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8218
8219         * hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
8220         ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
8221         sparc64-linux-tdep.c: Update for unwinder changes.
8222
8223 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8224
8225         * mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
8226         for unwinder changes.
8227         * mips-tdep.c: Likewise.
8228         (mips_stub_frame_cache): Unwind the ABI stack pointer, not the
8229         raw one.
8230
8231 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8232
8233         * arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
8234         unwinder changes.
8235
8236 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8237
8238         Update i386 and amd64 ports for unwinder changes.
8239
8240         * amd64-tdep.c (amd64_frame_cache): Expect this_frame.
8241         (amd64_frame_this_id, amd64_frame_prev_register): Update signature.
8242         (amd64_frame_unwind): Use default_frame_sniffer.
8243         (amd64_frame_sniffer): Delete.
8244         (amd64_sigtramp_frame_cache): Expect this_frame.
8245         (amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
8246         (amd64_sigtramp_frame_sniffer): Update signature.
8247         (amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
8248         (amd64_frame_base_address): Expect this_frame.
8249         (amd64_dummy_id): Renamed from amd64_unwind_dummy_id.  Expect
8250         this_frame.
8251         (amd64_init_abi): Use set_gdbarch_dummy_id and
8252         frame_unwind_append_unwinder.
8253         * i386-tdep.c (i386_frame_cache): Expect this_frame.
8254         (i386_frame_this_id, i386_frame_prev_register): Update signature.
8255         (i386_frame_unwind): Use default_frame_sniffer.
8256         (i386_frame_sniffer): Delete.
8257         (i386_sigtramp_frame_cache): Expect this_frame.
8258         (i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
8259         (i386_sigtramp_frame_sniffer): Update signature.
8260         (i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
8261         (i386_frame_base_address): Update signature.
8262         (i386_dummy_id): Rename from i386_unwind_dummy_id.  Expect this_frame.
8263         (i386_push_dummy_call): Update comment.
8264         (i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
8265         Expect this_frame.
8266         (i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
8267         and frame_unwind_append_unwinder.
8268         * amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
8269         amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
8270         i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
8271         i386nbsd-tdep.c: Update for unwinder changes.
8272
8273 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8274
8275         * trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
8276         (trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
8277         this_frame.
8278         (trad_frame_get_prev_register, trad_frame_get_register): Update signature.
8279         * trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
8280         (trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
8281         signature.
8282         * tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
8283         this_frame.
8284         (tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
8285         Update signature.
8286         * tramp-frame.h (struct tramp_frame): Update signature of init.
8287         * Makefile.in (trad-frame.o): Update.
8288
8289 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8290
8291         * dwarf2-frame.c (read_reg): Expect this_frame in the baton.
8292         (execute_stack_op): Put this_frame in the baton.
8293         (execute_cfa_program): Take this_frame.
8294         (struct dwarf2_frame_ops): Update comment for signal_frame_p.
8295         (dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
8296         (dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
8297         (dwarf2_frame_this_id): Adjust to work on this_frame.
8298         (dwarf2_signal_frame_this_id): Delete.
8299         (dwarf2_frame_prev_register): Update signature.  Use new frame
8300         unwind methods.
8301         (dwarf2_frame_sniffer): Update signature.  Expect this_frame.
8302         (dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
8303         dwarf2_frame_sniffer.
8304         (dwarf2_append_unwinders): New.
8305         (dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
8306         this_frame.
8307         * sparc-tdep.c (sparc32_dwarf2_struct_return_p)
8308         (sparc32_dwarf2_frame_init_reg): Expect this_frame.
8309         * cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
8310         * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
8311         * s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
8312         * sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
8313         * sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
8314         * dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
8315         (dwarf2_append_unwinders): Declare.
8316         (dwarf2_frame_base_sniffer): Update declaration.
8317         * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
8318         this_frame.
8319
8320 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8321
8322         Convert frame unwinders to use the current frame and
8323         "struct value".
8324
8325         * frame.c (frame_debug): Make global.
8326         (get_frame_id): Pass this frame to unwinder routines.
8327         (frame_pc_unwind): Remove unused unwind->prev_pc support.
8328         (do_frame_register_read): Do not discard the return value of
8329         frame_register_read.
8330         (frame_register_unwind): Remove debug messages.  Use
8331         frame_unwind_register_value.
8332         (frame_unwind_register_value, get_frame_register_value): New
8333         functions.
8334         (create_new_frame, get_frame_base_address, get_frame_locals_address)
8335         (get_frame_args_address, get_frame_type): Pass this frame to
8336         unwinder routines.
8337         (frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
8338         functions.
8339         * frame.h: Update comments.
8340         (frame_debug, frame_unwind_register_value, get_frame_register_value)
8341         (frame_prepare_for_sniffer): Declare.
8342         * frame-unwind.h: Update comments and parameter names.
8343         (default_frame_sniffer): Declare.
8344         (frame_prev_register_ftype): Return a struct value *.
8345         (struct frame_unwind): Remove prev_pc member.
8346         (frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
8347         (frame_unwind_append_unwinder, frame_unwind_got_optimized)
8348         (frame_unwind_got_register, frame_unwind_got_memory)
8349         (frame_unwind_got_constant, frame_unwind_got_address): Declare.
8350         * frame-base.h: Update comments and parameter names.
8351         * valops.c (value_fetch_lazy): Use get_frame_register_value.  Iterate
8352         if necessary.  Add debugging output.
8353         * sentinel-frame.c (sentinel_frame_prev_register)
8354         (sentinel_frame_this_id): Update for new signature.
8355         (sentinel_frame_prev_pc): Delete.
8356         (sentinel_frame_unwinder): Remove prev_pc.
8357         * ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
8358         prev_pc.
8359         * libunwind-frame.c (libunwind_frame_unwind): Likewise.
8360         * frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
8361         (frame_unwind_append_sniffer): Delete.
8362         (frame_unwind_append_unwinder): New function.
8363         (frame_unwind_find_by_frame): Take this frame.  Only use sniffers
8364         from unwinders.  Use frame_prepare_for_sniffer.
8365         (default_frame_sniffer, frame_unwind_got_optimized)
8366         (frame_unwind_got_register, frame_unwind_got_memory)
8367         (frame_unwind_got_constant, frame_unwind_got_address): New functions.
8368         * dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
8369         (dummy_frame_prev_register, dummy_frame_this_id): Update for new
8370         signature.
8371         * gdbarch.sh: Replace unwind_dummy_id with dummy_id.
8372         * gdbarch.c, gdbarch.c: Regenerated.
8373         * frame-base.c (default_frame_base_address)
8374         (default_frame_locals_address, default_frame_args_address): Update
8375         for new signature.
8376         (frame_base_find_by_frame): Pass this frame to unwinder routines.
8377         * infcall.c (call_function_by_hand): Update comments.
8378         * Makefile.in (frame-unwind.o): Update dependencies.
8379
8380 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8381
8382         * ada-lang.c (ada_value_primitive_packed_val): Only check
8383         value_lazy for memory lvals.
8384         * findvar.c (value_of_register_lazy): New function.
8385         (locate_var_value): Only check value_lazy for memory lvals.
8386         * valarith.c (value_subscripted_rvalue): Likewise.
8387         * valops.c (value_fetch_lazy): Handle both memory and register
8388         lvals.
8389         (search_struct_field, value_slice): Only check value_lazy for memory
8390         lvals.
8391         * value.c (struct value): Update comment for lazy.
8392         (value_primitive_field): Only check value_lazy for memory lvals.
8393         * value.h (value_lazy): Update comment.
8394         (value_of_register_lazy): Declare.
8395
8396 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
8397
8398         * corefile.c (reopen_exec_file): Close any open files.
8399
8400 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8401
8402         * ia64-tdep.c (ia64_memory_remove_breakpoint): Set
8403         show_memory_breakpoints to 1 while reading the instruction bundle.
8404
8405 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
8406
8407         * gdbarch.sh: Document the return_value method. Explain that
8408         the FUNCTYPE parameter might be NULL.
8409         * gdbarch.h: Regenerated.
8410         * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
8411         type when calling using_struct_return, as this is unnecessary
8412         on this target.
8413
8414 2008-04-28  Joel Brobecker  <brobecker@adacore.com>
8415
8416         * terminal.h (create_tty_session): Fix return type.
8417
8418 2008-04-26  Vladimir Prus  <vladimir@codesourcery.com>
8419
8420         * mi/mi-interp.c (mi_new_thread): Quote the thread id.
8421
8422 2008-04-26  Joel Brobecker  <brobecker@adacore.com>
8423
8424         * breakpoint.c (condition_command, commands_from_control_command)
8425         (break_command_really): Minor reformatting.
8426
8427 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8428
8429         * dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.
8430
8431 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8432
8433         * amd64-tdep.c (amd64_get_longjmp_target): New.
8434         (amd64_init_abi): Register amd64_get_longjmp_target as
8435         gdbarch_get_longjmp_target callback.
8436         * i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
8437
8438 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
8439
8440         * breakpoint.h (enum bpstat_what_main_action): Delete
8441         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
8442
8443         * breakpoint.c (clrs): Delete.
8444         (bpstat_what): Update table.
8445
8446         * infrun.c (handle_inferior_event): Remove
8447         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
8448
8449 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8450
8451         * mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
8452         Adjust all prototypes using mi_cmd_args_ftype to use
8453         mi_cmd_argv_ftype.
8454         (struct mi_cmd): Remove the args_func field.
8455         * mi/mi-cmds.c: Don't provide value for the args_func field.
8456         * mi/mi-main.c (mi_execute_async_cli_command)
8457         (mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
8458         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
8459         (mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
8460         (mi_cmd_exec_continue, mi_cmd_exec_interrupt)
8461         (mi_cmd_target_download): Adjust.
8462         (mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
8463         (mi_cmd_execute): Do not check for args_func.
8464         (mi_execute_async_cli_command): Adjust.
8465         * mi/mi-parse.c: Don't check for args_func.
8466
8467 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8468
8469         * breakpoint.c (bpstat_check_location)
8470         (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
8471         New, extracted from bpstat_stop_status.
8472         (bpstat_stop_status): Use the above.
8473
8474 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8475
8476         * mi/mi-main.c (last_async_command): Rename to current_token.
8477         (previous_async_command): Remove.
8478         (mi_cmd_gdb_exit): Adjust.
8479         (mi_cmd_exec_interrupt): Don't dance with previous_async_command.
8480         (mi_cmd_target_select): Adjust.
8481         (mi_cmd_execute): Don't set previous_async_command.  Free token
8482         here even in async mode.
8483         (mi_execute_async_cli_command): Adjust.
8484         (mi_exec_async_cli_cmd_continuation): Adjust.  Do not free the
8485         token.
8486         (mi_load_progress): Adjust.
8487
8488 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8489
8490         * infcmd.c (step_1_continuation): Always disable longjmp
8491         breakpoint if we're not going to do another step.
8492
8493 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8494
8495         exec_cleanup murder.
8496         * breakpoint.c (until_break_command_continuation): Add
8497         the 'error' parameter.  Directly delete the breakoint as
8498         opposed to running cleanups.
8499         (until_break_command): Install continuation only
8500         after starting the target.  Don't use exec cleanups,
8501         use ordinary cleanups.  Discard cleanups is successfully
8502         started the target in async mode.
8503         (make_cleanup_delete_breakpoint): Remove.
8504         * breakpoint.h (make_cleanup_delete_breakpoint): Remove
8505         declaration.
8506         * defs.h (do_exec_cleanups, make_exec_cleanup): Remove
8507         declarations.
8508         (struct continations): Add the 'error' parameter to the
8509         continuation_hook field.
8510         (add_continuation, do_all_continuations)
8511         (add_intermediate_continuation)
8512         (do_all_intermediate_continuations): Add the 'error' parameter.
8513         * exceptions.c (throw_exception): Don't call do_exec_cleanups.
8514         * inf-loop.c (inferior_event_handler): Instead of calling
8515         discard_all_continuations, use do_all_continuations with 1 as
8516         'error' parameter.  Pass 0 as 'error' parameter in existing uses
8517         of discard_all_continuations.
8518         * infcmd.c (step_1): Do not use exec cleanup.  For async case, discard
8519         cleanups.
8520         (step_once): Install continuation only after resuming the target.
8521         (step_1_continuation): Disable longjmp breakpoint on error.
8522         (finish_command_continuation): Add the error parameter.  Delete
8523         the finish breakpoint directly, do not use cleanups.
8524         (finish_command): Do not use exec_cleanups. Always setup
8525         continuation.  For sync case, immediately run them.
8526         (attach_command_continuation): Add the error parameter.
8527         * infrun.c (fetch_inferior_event): Do not use exec cleanups to
8528         remove step_resume_breakpoint -- adjust delete it directly.
8529         * interps.c (interp_set): Adjust call to do_all_continations.
8530         * mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
8531         do exec cleanups.
8532         * mi/mi-main.c (mi_cmd_target_select): Do not do exec
8533         cleanups.
8534         (mi_cmd_execute): Do not use exec_cleanup.
8535         (mi_execute_async_cli_command): Simplify the string concatenation
8536         logic.  Do no use exec cleanup.
8537         (mi_exec_async_cli_cmd_continuation): New parameter error.
8538         Free last_async_command.
8539         * top.c (command_line_handler_continuation): New parameter error.
8540         * utils.c (exec_cleanup_chain, make_exec_cleanup)
8541         (do_exec_cleanups): Remove.
8542         (add_continuation, do_all_continations)
8543         (add_intermediate_continuation)
8544         (do_all_intermediate_continuations): New parameter error.
8545
8546 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8547
8548         * breakpoint.h (bp_location_p): New typedef.
8549         Register a vector of bp_location_p.
8550         * breakpoint.c (always_inserted_mode)
8551         (show_always_inserted_mode): New.
8552         (unlink_locations_from_global_list): Remove.
8553         (update_global_location_list)
8554         (update_global_location_list_nothrow): New.
8555         (update_watchpoint): Don't free locations.
8556         (should_insert_location): New.
8557         (insert_bp_location): Use should_insert_location.
8558         (insert_breakpoint_locations): Copied from
8559         insert_breakpoints.
8560         (insert_breakpoint): Use insert_breakpoint_locations.
8561         (bpstat_stop_status): Call update_global_location_list
8562         when disabling breakpoint.
8563         (allocate_bp_location): Don't add to bp_location_chain.
8564         (set_raw_breakpoint)
8565         (create_longjmp_breakpoint, enable_longjmp_breakpoint)
8566         (disable_longjmp_breakpoint, create_overlay_event_breakpoint)
8567         (enable_overlay_breakpoints, disable_overlay_breakpoints)
8568         (set_longjmp_resume_breakpoint)
8569         (enable_watchpoints_after_interactive_call_stop)
8570         (disable_watchpoints_before_interactive_call_start)
8571         (create_internal_breakpoint)
8572         (create_fork_vfork_event_catchpoint)
8573         (create_exec_event_catchpoint, set_momentary_breakpoint)
8574         (create_breakpoints, break_command_1, watch_command_1)
8575         (create_exception_catchpoint)
8576         (handle_gnu_v3_exceptions)
8577         (disable_breakpoint, breakpoint_re_set_one)
8578         (create_thread_event_breakpoint, create_solib_event_breakpoint)
8579         (create_ada_exception_breakpoint): : Don't call check_duplicates.
8580         Call update_global_location_list.
8581         (delete_breakpoint): Don't remove locations and don't
8582         try to reinsert them. Call update_global_location_list.
8583         (update_breakpoint_locations): Likewise.
8584         (restore_always_inserted_mode): New.
8585         (update_breakpoints_after_exec): Temporary disable
8586         always inserted mode.
8587         * Makefile.in: Update dependencies.
8588
8589         * infrun.c (proceed): Remove breakpoints while stepping
8590         over breakpoint.
8591         (handle_inferior_event): Don't remove or insert
8592         breakpoints.
8593         * linux-fork.c (checkpoint_command): Remove breakpoints
8594         before fork and insert after.
8595         (linux_fork_context): Remove breakpoints before switch
8596         and insert after.
8597         * target.c (target_disconnect, target_detach): Remove
8598         breakpoints from target.
8599
8600
8601 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
8602
8603         * breakpoint.c (print_one_breakpoint_location): In MI
8604         mode, report the location string the breakpoint was
8605         originally created with.
8606
8607 2008-04-23  Maxim Grigoriev  <maxim2405@gmail.com>
8608
8609         * Makefile.in (xtensa-tdep.o): Update dependencies.
8610         * configure.tgt (xtensa*): Update dependencies.
8611         * xtensa-tdep.c (arreg_number): Renamed from areg_number.
8612         Local variable areg renamed to arreg.
8613         (areg_number): New function.
8614         (xtensa_pseudo_register_read, xtensa_pseudo_register_write)
8615         (xtensa_extract_return_value, xtensa_store_return_value): areg_number
8616         replaced by arreg_number.
8617         (xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
8618         (xtensa_alloc_frame_cache): Initialize cache->wd.ws.
8619         (xtensa_scan_prologue): New function.
8620         (xtensa_frame_cache): New local fp_regnum. Handle separately the case,
8621         when ENTRY instraction hasn't been executed yet. Get the frame pointer
8622         value based on prologue analysis. Fix the bugs preventing WS and
8623         AR4-AR7/A11 registers from getting right values for intermediate frames,
8624         whose registers have been already spilled.
8625         (xtensa_frame_prev_register): Fix WS register value. Use are_number
8626         and arreg_number appropriately.
8627         (xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
8628         svr4_ilp32_fetch_link_map_offsets.
8629
8630 2008-04-23  Andrew Stubbs  <andrew.stubbs@st.com>
8631
8632         * printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
8633         (printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
8634
8635 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
8636
8637         * acinclude.m4: Add override.m4.
8638         * configure: Regenerate.
8639
8640 2008-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
8641
8642         * ada-lang.c (get_selections): Variable PROMPT made non-const and
8643         initialized with a trailing space now.  Use PROMPT_ARG of
8644         COMMAND_LINE_INPUT instead of printing it ourselves.
8645
8646 2008-04-22  Joel Brobecker  <brobecker@adacore.com>
8647
8648         * NEWS: Document support for 64-bit core file.
8649
8650 2008-04-22  Corinna Vinschen  <vinschen@redhat.com>
8651
8652         * NEWS: Add information on calling convention and new SH CLI options.
8653
8654         * sh-tdep.c (sh_cc_gcc): New static string.
8655         (sh_cc_renesas): Ditto.
8656         (sh_cc_enum): New static string array.
8657         (sh_active_calling_convention): New static string pointer denoting
8658         active user chosen ABI.
8659         (sh_is_renesas_calling_convention): New function to return function
8660         specific ABI, or user choice if necessary.
8661         (sh_use_struct_convention): Rename first argument and turn around its
8662         meaning.  Check for renesas ABI and return accordingly.
8663         (sh_use_struct_convention_nofpu): New function.
8664         (sh_next_flt_argreg): Get function type as third parameter.  Check
8665         for renesas ABI and choose floating registers accordingly.
8666         (sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
8667         struct return slot accordingly.
8668         (sh_push_dummy_call_nofpu): Ditto.
8669         (sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
8670         Evaluate ABI and give to sh_use_struct_convention_nofpu.
8671         (sh_return_value_fpu):  Evaluate ABI and give to
8672         sh_use_struct_convention.
8673         (show_sh_command): New function.
8674         (set_sh_command): Ditto.
8675         (_initialize_sh_tdep): Initialize `set/show sh calling-convention
8676         CLI command.
8677
8678         * gdbarch.sh (return_value): Add func_type argument.
8679         * gdbarch.c: Regenerate.
8680         * gdbarch.h: Ditto.
8681         * eval.c (evaluate_subexp_standard): Rename local variable value_type to
8682         val_type so as not to collide with value_type function.  Call
8683         using_struct_return with additional function type argument.
8684         * infcall.c (call_function_by_hand): Call using_struct_return and
8685         gdbarch_return_value with additional function type argument.
8686         * infcmd.c (print_return_value): Take addition func_type argument.
8687         Call gdbarch_return_value with additional function type argument.
8688         (finish_command_continuation): Call print_return_value with additional
8689         function type argument.
8690         (finish_command): Ditto.
8691         * sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
8692         additional function type argument.
8693         * stack.c (return_command): Call using_struct_return and
8694         gdbarch_return_value with additional function type argument.
8695         * value.c (using_struct_return): Take additional function type argument.
8696         * value.h (using_struct_return): Accommodate declaration.
8697         * alpha-tdep.c (alpha_return_value): Add func_type argument.
8698         * amd64-tdep.c (amd64_return_value): Ditto.
8699         * arm-tdep.c (arm_return_value): Ditto.
8700         * avr-tdep.c (avr_return_value): Ditto.
8701         * cris-tdep.c (cris_return_value): Ditto.
8702         * frv-tdep.c (frv_return_value): Ditto.
8703         * h8300-tdep.c (h8300_return_value): Ditto.
8704         (h8300h_return_value): Ditto.
8705         * hppa-tdep.c (hppa32_return_value): Ditto.
8706         (hppa64_return_value): Ditto.
8707         * i386-tdep.c (i386_return_value): Ditto.
8708         * ia64-tdep.c (ia64_return_value): Ditto.
8709         * iq2000-tdep.c (iq2000_return_value): Ditto.
8710         * m32c-tdep.c (m32c_return_value): Ditto.
8711         * m32r-tdep.c (m32r_return_value): Ditto.
8712         * m68hc11-tdep.c (m68hc11_return_value): Ditto.
8713         * m68k-tdep.c (m68k_return_value): Ditto.
8714         (m68k_svr4_return_value): Ditto.
8715         * m88k-tdep.c  (m88k_return_value): Ditto.
8716         * mep-tdep.c (mep_return_value): Ditto.
8717         * mips-tdep.c (mips_eabi_return_value): Ditto.
8718         (mips_n32n64_return_value): Ditto.
8719         (mips_o32_return_value): Ditto.
8720         (mips_o64_return_value): Ditto.
8721         * mn10300-tdep.c (mn10300_return_value): Ditto.
8722         * mt-tdep.c (mt_return_value): Ditto.
8723         * ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
8724         * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
8725         (ppc_sysv_abi_broken_return_value): Ditto.
8726         (ppc64_sysv_abi_return_value): Ditto.
8727         * ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
8728         (ppc_sysv_abi_broken_return_value): Ditto.
8729         (ppc64_sysv_abi_return_value): Ditto.
8730         * ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
8731         * rs6000-tdep.c (rs6000_return_value): Ditto.
8732         * s390-tdep.c (s390_return_value): Ditto.
8733         * score-tdep.c (score_return_value): Ditto.
8734         * sh-tdep.c (sh_return_value_nofpu): Ditto.
8735         (sh_return_value_fpu): Ditto.
8736         * sh64-tdep.c (sh64_return_value): Ditto.
8737         * sparc-tdep.c (sparc32_return_value): Ditto.
8738         * sparc64-tdep.c (sparc64_return_value): Ditto.
8739         * spu-tdep.c (spu_return_value): Ditto.
8740         * v850-tdep.c (v850_return_value): Ditto.
8741         * vax-tdep.c (vax_return_value): Ditto.
8742         * xstormy16-tdep.c (xstormy16_return_value): Ditto.
8743         * xtensa-tdep.c (xtensa_return_value): Ditto.
8744
8745         * gdbtypes.h (struct type): Add calling_convention member.
8746         * dwarf2read.c (read_subroutine_type): Add calling convention read
8747         from DW_AT_calling_convention attribute to function type.
8748
8749 2008-04-22  Markus Deuling  <deuling@de.ibm.com>
8750
8751         * eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
8752         multi_f77_subscript to support values from registers.
8753         * valarith.c (value_subscripted_rvalue): Remove prototype and static.
8754         * value.h (value_subscripted_rvalue): Add prototype.
8755
8756         * f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
8757         Fix output.
8758         * f-valprint.c (f_val_print): Likewise.
8759
8760 2008-04-21  Craig Silverstein  <csilvers@google.com>
8761
8762         * dwarf2read.c (zlib_decompress_section): Define abfd in the
8763         !HAVE_ZLIB_H case.
8764
8765 2008-04-21  Pedro Alves  <pedro@codesourcery.com>
8766
8767         * symfile.c (syms_from_objfile): Don't warn if lowest loadable
8768         section is not a code section.
8769
8770 2008-04-19  Craig Silverstein  <csilvers@google.com>
8771
8772         * NEWS: Add information on compressed debug sections.
8773
8774 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8775
8776         * mi/mi-cmd-var.c (varobj_update_one): Print new
8777         value for variable objects that changed type.
8778
8779 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
8780
8781         * varobj.c (varobj_invalidate): Don't touch floating
8782         varobjs.
8783
8784 2008-04-19  Mark Kettenis  <kettenis@gnu.org>
8785
8786         * symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
8787         (multiple_symbols_cancel): Remove extra const.
8788         * symtab.h: Likewise.
8789
8790 2008-04-19  Nick Roberts  <nickrob@snap.net.nz>
8791
8792         * interps.c (top_level_interpreter): Rename static variable...
8793         (top_level_interpreter_ptr): ...to this.
8794         (top_level_interpreter): New function.
8795
8796         * interps.h: New extern for top_level_interpreter.
8797
8798         * linespec.c: Include interps.h and mi/mi-cmds.h.
8799         (decode_line_2): When using MI, always set all breakpoints in menu.
8800
8801         * Makefile.in (linespec.o, mi-interp.o): Add dependencies.
8802
8803 2008-04-18  Craig Silverstein  <csilvers@google.com>
8804
8805         * configure.ac (AC_SEARCH_LIBS): Add check for zlib.
8806         * config.in, configure: Regenerate.
8807         * dwarf2read.c: Include zlib.h if present.
8808         Modified *_SECTION macros.
8809         (section_is_p): New.
8810         (dwarf2_locate_sections): Use section_is_p instead of strcmp
8811         (dwarf2_resize_section): New.
8812         to determine whether a given section has a given name.
8813         (zlib_decompress_section): New.
8814         (dwarf2_read_section): Read the compressed section if present
8815         in the binary.
8816         * MAINTAINERS: Added myself to section Write After Approval.
8817
8818 2008-04-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8819
8820         * defs.h (exec_set_section_offsets): Remove prototype.
8821         * exec.c (exec_set_section_offsets): Remove function.
8822
8823 2008-04-18  Joel Brobecker  <brobecker@adacore.com>
8824
8825         * stabsread.c (cleanup_undefined_types_1): Add instance flags check
8826         in the search for the matching symbol.
8827
8828 2008-04-17  Marc Khouzam  <marc.khouzam@ericsson.com>
8829
8830         * breakpoint.c (update_watchpoint): Always reparse
8831         condition.
8832
8833 2008-04-17  Joel Brobecker  <brobecker@adacore.com>
8834
8835         * breakpoint.c (print_one_breakpoint_location): Make sure to print
8836         the breakpoint address only once.
8837
8838 2008-04-17  Dennis Roberts  <dennis.roberts@sunquestinfo.com>
8839
8840         * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
8841         rather than a hard-coded architecture, for xcoff executables.
8842
8843 2008-04-17  Doug Evans  <dje@google.com>
8844
8845         * buildsym.c (watch_main_source_file_lossage): New fn.
8846         (end_symtab): Call it.
8847
8848         * source.c (find_and_open_source): Add some comments clarifying
8849         handling of FULLNAME argument.  Make static.  Remove pointless
8850         xstrdup/xfree.
8851
8852 2008-04-17  Pedro Alves  <pedro@codesourcery.com>
8853
8854         * inf-loop.c (inferior_event_handler): Also run the intermediate
8855         continuations in the INF_EXEC_COMPLETE case.
8856
8857 2008-04-16  Tom Tromey  <tromey@redhat.com>
8858
8859         * cli/cli-decode.h (CMD_ASYNC_OK): New define.
8860         (set_cmd_async_ok, get_cmd_async_ok): Declare.
8861         * cli/cli-decode.c (set_cmd_async_ok): New function.
8862         (get_cmd_async_ok): New function.
8863         * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
8864         "show" as async-ok.
8865         * top.c (execute_command): Use get_cmd_async_ok.
8866         * infcmd.c: Include cli/cli-decode.h.
8867         (_initialize_infcmd): Mark "interrupt" as async-ok.
8868         * Makefile.in (infcmd.o): Depend on cli_decode_h.
8869
8870 2008-04-16  Daniel Jacobowitz  <dan@codesourcery.com>
8871
8872         PR gdb/2445
8873         * exec.c: Correct "arch-utils.h" include.
8874
8875 2008-04-15  Aleksandar Ristovski  <aristovski@qnx.com>
8876
8877         PR gdb/2424
8878         * infrun.c (normal_stop) Move breakpoint_auto_delete further down
8879         to allow printing to 'see' real reason of stop. This fixes PR 2424.
8880         * breakpoint.c (bpdisp_texst): New function. The function takes over
8881         the role of bpstats static array in print_one_breakpoint_location.
8882         (print_it_typical): Print "Temporary breakpoint" instead
8883         of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
8884         protocols, print disp field.
8885         (print_one_breakpoint_location): Removed bpdisps static definition.
8886         Call new bpstat_text function to get value for 'disp' field.
8887         (mention): Print "Temporary breakpoint" instead of just "Breakpoint".
8888
8889 2008-04-15  Daniel Jacobowitz  <dan@codesourcery.com>
8890
8891         * gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
8892         gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
8893         by rerunning gnulib-tool with --aux-dir=gnulib/extra.
8894         * gnulib/Makefile.in: Regenerate.
8895
8896 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
8897
8898         * Makefile.in (GNULIB_H): New.  Trigger all-lib.
8899         (defs_h): Use $(GNULIB_H).
8900         (all-lib): Depend on gnulib/Makefile.
8901         (gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
8902         * config.in, gnulib/Makefile.in: Regenerated.
8903
8904 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
8905
8906         * Makefile.in (LIBGNU, INCGNU): Define.
8907         (INTERNAL_CFLAGS_BASE): Add INCGNU.
8908         (INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
8909         (CLEANDIRS): New.
8910         ($(LIBGNU), all-lib): New rules.
8911         (clean, distclean, do-maintainer-clean): Use CLEANDIRS.
8912         * configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
8913         Simplify AC_CONFIG_AUX_DIR.  Generate gnulib/Makefile.
8914         * gnulib: New directory, from gnulib-tool.
8915         * configure, aclocal.m4: Regenerated.
8916
8917 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
8918
8919         * linux-thread-db.c (have_threads_callback): Check thread->private.
8920
8921 2008-04-13  Nick Roberts  <nickrob@snap.net.nz>
8922             Vladimir Prus  <vladimir@codesourcery.com>
8923
8924         Fix @-varobjs.
8925         * varobj.c (value_of_root): Update the expression for
8926         floating varobjs.
8927         * mi/mi-cmd-var.c (varobj_update_one): If type has changed,
8928         report that.
8929
8930 2008-04-09  Marc Khouzam  <marc.khouzam@ericsson.com>
8931
8932         * mi/mi-cmd-var.c: Include "mi-getopt.h".
8933         (mi_parse_format): New.  Factored out from mi_cmd_var_set_format.
8934         (mi_cmd_var_set_format): Use new mi_parse_format.
8935         (mi_cmd_var_evaluate_expression): Support for -f option to specify
8936         format.
8937         * Makefile.in (mi-cmd-var.o): Update dependencies.
8938
8939         * varobj.h (varobj_get_formatted_value): Declare.
8940         * varobj.c (my_value_of_variable): Added format parameter.
8941         (cplus_value_of_variable): Likewise.
8942         (java_value_of_variable): Likewise.
8943         (c_value_of_variable): Likewise.  Evaluate expression based
8944         on format parameter.
8945         (struct language_specific): Add format parameter to function member
8946         *value_of_variable.
8947         (varobj_get_formatted_value): New.
8948         (varobj_get_value): Added format parameter to method call.
8949
8950 2008-04-08  Joel Brobecker  <brobecker@adacore.com>
8951
8952         * stabsread.c (cleanup_undefined_types_noname): Manually set the
8953         instance flags of the undefined type before calling replace_type.
8954
8955 2008-04-08  Vladimir Prus  <vladimir@codesourcery.com>
8956
8957         * target.h (enum strata): Remove the download_stratum.
8958
8959 2008-04-07  Doug Evans  <dje@google.com>
8960
8961         * buildsym.h (last_source_file): Add dwarf info to comment.
8962         (last_source_start_addr): Ditto.
8963
8964 2008-04-07  Pedro Alves  <pedro@codesourcery.com>
8965
8966         * alphanbsd-tdep.c: Include "target.h".
8967         * mn10300-tdep.c: Include "target.h".
8968         * Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.
8969
8970 2008-04-06  Vladimir Prus  <vladimir@codesourcery.com>
8971
8972         Fix breakpoint condition that use member variables.
8973         * valops.c (check_field): Remove.
8974         (check_field_in): Rename to check_field.
8975         (value_of_this): Use la_name_of_this.
8976         * value.h (check_field): Adjust prototype.
8977
8978         * language.h (la_value_of_this): Rename to la_name_of_this.
8979         * language.c (unknown_language_defn): Specify "this" for
8980         name_of_this.
8981         (auto_language_defn): Likewise.
8982         (local_language_defn): Likewise.
8983         * ada-lang.c (ada_language_defn): Adjust comment.
8984         * c-lang.c (c_language_defn): Adjust comment.
8985         (cplus_language_defn): Specify "this" for name_of_this.
8986         (asm_language_defn): Adjust comment.
8987         (minimal_language_defn): Adjust comment.
8988         * f-lang.c (f_language_defn): Specify NULL for name_of_this.
8989         * jv-lang.c (java_language_defn): Specify "this" for name_of_this.
8990         * m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
8991         * objc-lang.c (objc_language_defn): Specify "self" for
8992         name_of_this.
8993         * p-lang.c (pascal_language_defn): Specify "this" for
8994         name_of_this.
8995         * scm-lang.c (scm_language_defn): Specify NULL for name_of_this.
8996
8997         * symtab.c (lookup_symbol_aux): Lookup "this" in the
8998         proper scope, and check for field in type of "this", without
8999         trying to create a value.
9000
9001 2008-04-04  Pedro Alves  <pedro@codesourcery.com>
9002
9003         * mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
9004         (mi_error_message): Delete declaration.
9005         * mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
9006         returning MI_CMD_ERROR.
9007         * mi/mi-main.c (mi_error_message): Delete.
9008         (mi_cmd_exec_interrupt):
9009         (mi_cmd_thread_select, mi_cmd_thread_list_ids)
9010         (mi_cmd_thread_info): Call error instead of returning
9011         MI_CMD_ERROR.
9012         (mi_cmd_data_list_register_values): Call error instead of
9013         returning MI_CMD_ERROR.  Adapt to new get_register interface.
9014         (get_register): Change return typo to void.  Call error instead of
9015         returning MI_CMD_ERROR.
9016         (mi_cmd_data_write_register_values): Call error instead of
9017         returning MI_CMD_ERROR.
9018         (mi_cmd_list_features): Return MI_CMD_DONE.
9019         (captured_mi_execute_command): Remove MI_CMD_ERROR handling.
9020         (mi_execute_command): Always print exceptions with -error.
9021
9022 2008-04-04  Joel Brobecker  <brobecker@adacore.com>
9023
9024         * NEWS: Mention new commands set/show multiple-symbols.
9025
9026 2008-04-03  Joel Brobecker  <brobecker@adacore.com>
9027
9028         * symtab.c (multiple_symbols_ask, multiple_symbols_all)
9029         (multiple_symbols_cancel): New constants.
9030         (multiple_symbols_modes, multiple_symbols_mode): New static globals.
9031         (multiple_symbols_select_mode): New function.
9032         (_initialize_symtab): Add new set/show multiple-symbols commands.
9033         * symtab.h (multiple_symbols_ask, multiple_symbols_all)
9034         (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
9035         * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
9036         setting.
9037         * linespec.c (decode_line_2): Likewise.
9038
9039 2008-04-03  Doug Evans  <dje@sebabeach.org>
9040
9041         * symtab.h (enum free_code): Delete free_contents, unused.
9042         * symmisc.c (free_symtab_block): Delete.
9043         (free_symtab, case free_code): Delete.
9044
9045 2008-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
9046
9047         * valops.c (value_cast_structs): New function. Cast related
9048         STRUCT types up/down and return cast value. The body of this
9049         function comes mostly from value_cast_pointers.
9050         (value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
9051         to value_cast_structs. Now value_cast_pointers needs only create
9052         appropriate reference after using value_cast_structs for actual
9053         casting.
9054         (value_cast): Handle references.
9055
9056 2008-04-01  Marc Khouzam  <marc.khouzam@ericsson.com>
9057
9058         * MAINTAINERS: Added myself to section Write After Approval.
9059
9060 2008-03-30  Daniel Jacobowitz  <dan@codesourcery.com>
9061
9062         * ia64-tdep.c (examine_prologue): Correct array access.
9063
9064 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
9065
9066         * cp-support.c (first_component_command): Return if no arguments.
9067
9068 2008-03-28  Carlos O'Donell  <carlos@codesourcery.com>
9069
9070         * ser-mingw.c (ser_windows_open): Open requested name.
9071
9072 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
9073
9074         * MAINTAINERS: Added myself.
9075
9076 2008-03-28  Pedro Alves  <pedro@codesourcery.com>
9077
9078         * target.c (find_default_run_target): Allow a NULL `do_mesg'
9079         parameter.  If it is NULL, don't call error.
9080         (find_default_can_async_p, find_default_is_async_p): Pass NULL as
9081         `do_mesg' parameter to find_default_run_target.  If no target was
9082         found, return 0.
9083
9084 2008-03-28  Daniel Jacobowitz  <dan@codesourcery.com>
9085
9086         * mips-linux-tdep.c: Update N32/N64 signal frame comments.
9087         (N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
9088         (N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
9089         Delete.
9090         (mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.
9091
9092 2008-03-27  Joel Brobecker  <brobecker@adacore.com>
9093
9094         GDB 6.8 released.
9095
9096 2008-03-27  Ulrich Weigand  <uweigand@de.ibm.com>
9097
9098         * features/Makefile (%.dat): Set xmltarget to the base filename
9099         of the XML source, without subdirectory.
9100         * regformats/rs6000/powerpc-32.dat: Regenerate.
9101         * regformats/rs6000/powerpc-64.dat: Regenerate.
9102         * regformats/rs6000/powerpc-e500.dat: Regenerate.
9103
9104 2008-03-27  Markus Deuling  <deuling@de.ibm.com>
9105
9106         * xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
9107         objfile arch.
9108
9109 2008-03-27  Nick Roberts  <nickrob@snap.net.nz>
9110
9111         * mi/mi-main.c (enum captured_mi_execute_command_actions):
9112         Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.
9113
9114 2008-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
9115
9116         * objfiles.h (struct objfile): New GDBARCH member.
9117         (get_objfile_arch): Add prototype.
9118         * objfiles.c: Include "arch-utils.h".
9119         (allocate_objfile): Look up gdbarch associated with bfd.
9120         (get_objfile_arch): New function.
9121         * Makefile (objfiles.o): Update dependencies.
9122
9123         * dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
9124         by objfile arch.
9125         * dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
9126         by frame arch.
9127         (locexpr_describe_location): Replace current_gdbarch by
9128         objfile arch.
9129         * dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
9130         (dwarf2_add_field): Likewise.
9131         (read_tag_pointer_type): Likewise.
9132         (read_base_type): Likewise.
9133         (new_symbol): Likewise.
9134
9135         * coffread.c (decode_type): Add OBJFILE argument.  Update callers.
9136         (decode_base_type, decode_function_type): Likewise.
9137         (coff_read_struct_type, coff_read_enum_type): Likewise.
9138         (coff_symtab_read): Replace current_gdbarch by objfile arch.
9139         (decode_base_type): Likewise.
9140         (coff_read_enum_type): Likewise.
9141         (coff_read_struct_type): Replace current_objfile by OBJFILE argument.
9142         (coff_read_enum_type): Likewise.
9143
9144         * dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
9145         (end_psymtab): Likewise.
9146         (process_one_symbol): Likewise.
9147
9148         * mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
9149         (parse_procedure): Likewise.
9150         (parse_partial_symbols): Likewise.
9151
9152         * somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.
9153
9154         * stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
9155         Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
9156         built-in types.
9157         (read_range_type): Replace current_gdbarch by objfile arch.  Replace
9158         static range_index_type by built-in type.
9159         (read_one_struct_field): Replace current_gdbarch by objfile arch.
9160         (read_enum_type): Likewise.
9161
9162         * xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
9163         objfile arch.
9164
9165 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9166
9167         * varobj.h (varobj_floating_p): Declare.
9168         * varobj.c (varobj_floating_p): New.
9169         * mi/mi-cmd-var.c (mi_cmd_var_update): When passed
9170         '@' as the name, update all floating varobjs.
9171
9172 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
9173
9174         * varobj.c (struct varobj_root): Rename use_selected_frame to
9175         floating, and clarify the meaning.
9176         (varobj_create, varobj_update,  new_root_variable): Adjust.
9177         (value_of_root): Don't use type_changed as in variable,
9178         adjust comment.
9179         (c_value_of_root): Adjust.
9180
9181 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9182
9183         * linux-nat.c (linux_nat_attach): Add the pid we attached to, to
9184         gdb's thread list.
9185         (linux_nat_wait): Add main lwp to gdb's thread list.
9186         * linux-thread-db.c (find_new_threads_callback): Also attach to
9187         already listed threads which thread_db didn't know about yet.
9188
9189 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
9190
9191         * linux-nat.c (drain_queued_events): Fix comment typo.
9192         (linux_nat_attach): In async mode, don't rely on storing a pending
9193         status.  Instead place the wait status on the pipe.
9194         (linux_nat_resume): Remove unreacheable shortcut code in async
9195         mode.
9196         (stop_wait_callback): In async mode, don't store pending status.
9197         Instead, cancel breakpoints or resend the signal appropriatelly.
9198         (cancel_breakpoint): New, refactored from
9199         cancel_breakpoints_callback.
9200         (cancel_breakpoints_callback): Call cancel_breakpoint.
9201         (pipe_to_local_event_queue): Remove special token processing.
9202         (linux_nat_wait): Issue an internal error if a pending status is
9203         found in async mode.
9204
9205 2008-03-24  Daniel Jacobowitz  <dan@codesourcery.com>
9206
9207         * inflow.c (gdb_has_a_terminal): Guard access to our_process_group.
9208
9209 2008-03-24  Nick Roberts  <nickrob@snap.net.nz>
9210             Vladimir Prus  <vladimir@codesourcery.com>
9211
9212         * varobj.c  (struct varobj_root): New component thread_id.
9213         (varobj_get_thread_id, check_scope): New functions.
9214         (c_value_of_root): Use check_scope.  Switch to the
9215         proper thread if necessary.
9216
9217         * varobj.h (varobj_get_thread_id): New extern.
9218
9219         * mi/mi-cmd-var.c (print_varobj): Add thread-id field.
9220
9221 2008-03-23  Daniel Jacobowitz  <dan@codesourcery.com>
9222
9223         PR gdb/544
9224         * top.c: Revert 2008-03-21 changes.
9225
9226 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9227
9228         * thread.c (make_cleanup_restore_current_thread): Make it
9229         globally visible.
9230         * gdbthread.h (make_cleanup_restore_current_thread): Declare.
9231         * varobj.c (varobj_update): Don't save/restore frame.
9232         (c_value_of_root): Save/restore thread and frame here,
9233         using make_cleanup_restore_current_thread.
9234         * Makefile.in: Update dependecies.
9235
9236 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
9237
9238         * varobj.c (struct varobj_root): Clarify
9239         comment on the frame field.
9240         (varobj_create): Don't set frame if we have no
9241         block.
9242
9243 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9244
9245         PR gdb/544
9246         Suggested by Jan Kratochvil:
9247         * top.c (gdb_rl_operate_and_get_next_completion): Call
9248         rl_redisplay_function.
9249         (gdb_rl_redisplay): New.
9250         (init_main): Set rl_redisplay_function.
9251
9252 2008-03-21  Thomas Mittelstaedt  <T.Mittelstaedt@cadenas.de>  (tiny change)
9253
9254         * aix-thread.c (pdc_read_regs): Fix compiler warning.
9255         (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
9256         (store_regs_kernel_thread): Likewise.
9257
9258 2008-03-21  Pedro Alves  <pedro@codesourcery.com>
9259
9260         Linux native async support.
9261
9262         * target.h (struct target_ops): Delete to_async_mask_value and add
9263         to_async_mask.
9264         (target_is_async_p, target_async): Formatting.
9265         (target_async_mask_value): Delete.
9266         (target_async_mask): Delete function declaration, and add new
9267         target macro with the same name.
9268
9269         * target.c (update_current_target): Replace to_async_mask_value by
9270         to_async_mask.  Default to_async_mask to return_one.
9271         (target_async_mask): Delete.
9272         (find_default_can_async_p, find_default_is_async_p): New.
9273         (init_dummy_target): register find_default_can_async_p and
9274         find_default_is_async_p on the dummy target.
9275
9276         * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
9277         (debug_linux_nat_async): New global.
9278         (show_debug_linux_nat_async): New function.
9279         (linux_nat_async_enabled, linux_nat_async_mask_value)
9280         (linux_nat_event_pipe, linux_nat_num_queued_events)
9281         (linux_nat_async_events_enabled): New globals.
9282         (struct waitpid_result): New struct.
9283         (waitpid_queue): New global.
9284         (queued_waitpid, push_waitpid, drain_queued_events): New.
9285         (my_waitpid): Call queued_waitpid.
9286         (linux_child_follow_fork): Disable async events during the call.
9287         (blocked_mask): Delete.
9288         (sync_sigchld_action, async_sigchld_action): New globals.
9289         (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD.  In
9290         async mode, block events during the call.
9291         (linux_nat_create_inferior): New.
9292         (linux_nat_attach): In sync mode, restore the mask states.  In
9293         async mode, wake the event loop immediatelly.
9294         (detach_callback): Drain all queued events of the lwp we're
9295         detaching from.
9296         (linux_nat_detach): Block async mode, and drain events of the main
9297         process.
9298         (linux_nat_resume): If in async mode, mask async events during the
9299         call.  If short circuiting, force event loop to wake up.  If
9300         resuming, set target_executing, and register target events in the
9301         event loop.
9302         (pipe_to_local_event_queue, local_event_queue_to_pipe): New.
9303         (linux_nat_wait): In async mode, block events during the call.
9304         Only enable/disable passing SIGINT to the inferior in sync mode.
9305         Get events from local waitpid queue.  If no interesting events was
9306         found, return to events loop.  Reregister target events in the
9307         event loop on exit.  In sync mode, no need to reblock SIGCHLD.
9308         (linux_nat_kill): Disable events on entry.
9309         (linux_nat_mourn_inferior): In sync mode, don't restore the masks
9310         here.  Detach async mode from the event loop if there are no more
9311         forks available, otherwise leave it on.
9312         (sigchld_handler): Assure this is called only in sync mode.
9313         (linux_async_permitted, linux_async_permitted_1): New globals.
9314         (set_maintenance_linux_async_permitted)
9315         (show_maintenance_linux_async_permitted): New functions.
9316         (linux_nat_is_async_p, linux_nat_can_async_p)
9317         (linux_nat_async_mask): New.
9318         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
9319         (get_pending_events, async_sigchld_handler): New.
9320         (linux_nat_async_events): New.
9321         (async_terminal_is_ours): New global.
9322         (linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
9323         (async_client_callback, async_client_context): New.
9324         (linux_nat_async_file_handler, linux_nat_async)
9325         (linux_nat_disable_async, linux_nat_enable_async): New.
9326         (linux_nat_add_target): Register linux_nat_create_inferior,
9327         linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
9328         linux_nat_async_mask, linux_nat_terminal_inferior and
9329         linux_nat_terminal_ours.
9330         (_initialize_linux_nat): Remove local action variable, and update
9331         code that used it to use sync_sigchld_action.  Add new
9332         "lin-lwp-async" debug set/show command.  Put the "lin-lwp" debug
9333         set/show command in the maintenance class.  Add new "linux-async"
9334         maintenance set/show command.  Block SIGCHLD by default.  Setup
9335         async_sichld_action, and sync_sigchld_action.  Install the default
9336         async mode.
9337         (lin_thread_get_thread_signals): Use a local sigset_t for blocking
9338         the cancel signals.
9339
9340         * linux-thread-db.c (re_check_for_thread_db): New.
9341         (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
9342         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
9343         (thread_db_async_mask): New.
9344         (init_thread_db_ops): Register thread_db_can_async_p,
9345         thread_db_is_async_p, thread_db_async and thread_db_async_mask.
9346
9347         * remote.c (remote_async_mask_value): New.
9348         (remote_return_zero): New.
9349         (init_remote_ops): Register remote_return_zero as callbacks of
9350         to_can_async_p and to_is_async_p.
9351         (remote_can_async_p, remote_is_async_p, remote_async): Update to
9352         use remote_async_mask_value.
9353         (remote_async_mask): New.
9354         (init_remote_async_ops): Remove to_async_mask_value setting and
9355         register remote_async_mask as to_async_mask callback in
9356         remote_async_ops.
9357
9358         * Makefile.in (linux-nat.o): Update.
9359
9360 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9361
9362         * gdbthread.h (add_thread_with_info): New.
9363         * linux-thread-db.c: Add some documentation.
9364         (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
9365         (struct private_thread_info): Remove th_valid and ti_valid.
9366         Replace ti with tid.
9367         (thread_get_info_callback): Do not add TID to the new ptid.  Do
9368         not cache th or ti.
9369         (thread_db_map_id2thr, lwp_from_thread): Delete functions.
9370         (thread_from_lwp): Assert that the LWP is set.  Do not add TID to the
9371         new PTID.
9372         (attach_thread): Handle an already-existing thread.  Use
9373         add_thread_with_info.  Cache the th and tid.
9374         (detach_thread): Verify that private was set.  Remove verbose
9375         argument and printing.  Update caller.
9376         (thread_db_detach): Do not adjust inferior_ptid.
9377         (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
9378         (check_event, find_new_threads_callback): Do not add TID to the new PTID.
9379         (thread_db_wait): Do not use lwp_from_thread.
9380         (thread_db_pid_to_str): Use the cached TID.
9381         (thread_db_extra_thread_info): Check that private is set.
9382         (same_ptid_callback): Delete.
9383         (thread_db_get_thread_local_address): Do not use it or check
9384         is_thread.  Check that private is set.  Assume that the thread
9385         handle is already cached.
9386         (init_thread_db_ops): Remove to_resume and to_kill.
9387         * thread.c (add_thread_with_info): New.
9388         (add_thread): Use it.
9389         * linux-nat.c (find_thread_from_lwp): Delete.
9390         (exit_lwp): Do not use it.  Check print_thread_events.  Print before
9391         deleting the thread.
9392         (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
9393         * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
9394         * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
9395         printf_unfiltered for thread exits.
9396         * procfs.c (procfs_wait): Likewise.
9397
9398 2008-03-21  Chris Demetriou  <cgd@google.com>
9399
9400         * symtab.c (rbreak_command): Quote symbol name before passing
9401         it to break_command.
9402
9403 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9404
9405         * eval.c (evaluate_subexp_for_address): Clarify error message.
9406         Use value_must_coerce_to_target.
9407         * infcall.c (value_arg_coerce): Call value_coerce_to_target.
9408         * valops.c (value_assign): Call value_coerce_to_target when
9409         assigning to anything but internalvars.  Leave GDB-side arrays
9410         as arrays when assigning to internalvars.
9411         (value_must_coerce_to_target, value_coerce_to_target): New.
9412         (value_coerce_array, value_addr): Call value_coerce_to_target.
9413         (value_array): Create the array in GDB's memory instead of
9414         the inferior's.
9415         * value.h (value_must_coerce_to_target, value_coerce_to_target):
9416         Declare.
9417
9418 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
9419
9420         * top.c (quit_confirm): Warn that we will kill the program.
9421
9422 2008-03-19  Pedro Alves  <pedro@codesourcery.com>
9423
9424         * inflow.c (terminal_ours_1): Guard access to
9425         inferior_process_group with #ifdef PROCESS_GROUP_TYPE.
9426
9427 2008-03-18  Ulrich Weigand  <uweigand@de.ibm.com>
9428             Jim Blandy  <jimb@codesourcery.com>
9429             Daniel Jacobowitz  <drow@false.org>
9430
9431         * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
9432         (dwarf2_read_address): Update prototype.
9433
9434         * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
9435         (signed_address_type): Likewise.
9436         (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
9437         (execute_stack_op): Update calls to unsigned_address_type,
9438         signed_address_type and dwarf2_read_address.  Fix implementation
9439         of DW_OP_deref_size.
9440
9441         * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
9442         (dwarf2_per_cu_addr_size): Likewise.
9443         (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
9444         (struct dwarf2_loclist_baton): Likewise.
9445
9446         * dwarf2loc.c (find_location_expression): Update calls to
9447         dwarf2_read_address.  Use dwarf2_per_cu_objfile and
9448         dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
9449         (locexpr_describe_location): Likewise.
9450         (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
9451         Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
9452         (dwarf2_loc_desc_needs_frame): Add PER_CU parameter.  Set ctx->addr_size
9453         to dwarf2_per_cu_addr_size (per_cu).
9454         (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
9455         (loclist_read_variable): Likewise.
9456         (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.
9457
9458         * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
9459         instead of baton->objfile.
9460         (dwarf2_per_cu_obfile): New function.
9461         (dwarf2_per_cu_addr_size): Likewise.
9462
9463         * dwarf2-frame.c (struct comp_unit): Move higher.
9464         (struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
9465         (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
9466         (execute_cfa_program): Add FDE parameter.  Replace EH_FRAME_P
9467         parameter by using fde->eh_frame_p.  Use read_encoded_value
9468         to implement DW_CFA_set_loc.
9469         (struct dwarf2_frame_cache): Add ADDR_SIZE member.
9470         (dwarf2_frame_cache): Set cache->addr_size.  Update calls to
9471         execute_stack_op and execute_cfa_program.
9472         (dwarf2_frame_prev_register): Update calls to execute_stack_op.
9473         (size_of_encoded_value): Remove.
9474         (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
9475         Remove call to size_of_encoded_value.  Implement DW_EH_PE_funcrel.
9476         (add_cie): Set cie->unit backlink.
9477         (decode_frame_entry_1): Set cie->addr_size.  Update calls to
9478         read_encoded_value.
9479         (dwarf2_build_frame_info): Allocate UNIT on objfile obstack.
9480
9481 2008-03-17  Markus Deuling  <deuling@de.ibm.com>
9482
9483         * i386-tdep.c (i386_print_insn): Remove unnecessary call to
9484         gdbarch_bfd_arch_info.
9485
9486 2008-03-17  Joel Brobecker  <brobecker@adacore.com>
9487
9488         * aix-thread.c (pdc_read_regs): Minor reformatting.
9489
9490 2008-03-17  Vladimir Prus  <vladimir@codesourcery.com>
9491
9492         * thread.c (print_thread_info): Don't insist
9493         on having current thread if there are no
9494         threads at all.
9495
9496 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9497
9498         * infcmd.c (attach_command_post_wait)
9499         (attach_command_continuation): New.
9500         (attach_command): Support background async execution, and async
9501         execution in synchronous mode.
9502
9503 2008-03-17  Daniel Jacobowitz  <dan@codesourcery.com>
9504
9505         * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
9506         * symmisc.c (dump_symtab_1): Likewise.
9507         * wrapper.c (gdb_value_struct_elt): Likewise.
9508
9509 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9510
9511         * linux-nat.c (linux_nat_filter_event): Fix comment typo.
9512
9513 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
9514
9515         * linux-nat.c (linux_nat_filter_event): New, refactored from
9516         linux_nat_wait.
9517         (linux_nat_wait): Call linux_nat_filter_event.
9518
9519 2008-03-17  Ulrich Weigand  <uweigand@de.ibm.com>
9520
9521         * top.c (execute_command): Fix uninitialized variable error.
9522
9523 2008-03-16  Nick Hudson  <nick.hudson@dsl.pipex.com>
9524
9525         * Makefile.in (amd64nbsd-nat.o): New dependency.
9526         * amd64nbsd-nat.c: Include "nbsd-nat.h".
9527         (_initialize_amd64nbsd_nat): Update target vector to use
9528         nbsd_pid_to_exec_file.
9529         * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
9530
9531 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9532
9533         Remove ignoring leading exec events code.
9534         * fork-child.c (startup_inferior): Do not set
9535         inferior_ignoring_leading_exec_events.
9536         * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
9537         (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
9538         * infrun.c (inferior_ignoring_leading_exec_events): Remove.
9539         (handle_inferior_event): Remove code for ignoring leading exec
9540         events.
9541         * target.c (update_current_target): Do not inherit, or default,
9542         to_reported_exec_events_per_exec_call.
9543         (debug_to_reported_exec_events_per_exec_call): Remove.
9544         (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
9545         * target.h (target_reported_exec_events_per_exec_call): Remove.
9546         (struct target): Remove the to_reported_exec_events_per_exec_call
9547         field.
9548
9549 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
9550
9551         Implement -thread-info.
9552         * gdbthread.h (print_thread_info): Declare.
9553
9554         * thread.c (print_thread_info): New, extracted
9555         from info_threads_command and adjusted to
9556         work for CLI and MI.
9557         (info_threads_command): Use print_thread_info.
9558         * Makefile.in: Update dependencies.
9559
9560         * mi/mi-cmds.c (mi_cmds): Specify a handler
9561         for -thread-info.
9562         * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
9563         * mi/mi-main.c (mi_cmd_thread_info): New.
9564         (mi_cmd_list_features): Include 'thread-info'.
9565
9566 2008-03-14  Kevin Buettner  <kevinb@redhat.com>
9567
9568         * mips-tdep.c (mips32_scan_prologue): Use the ABI register size
9569         to decide whether to match instruction patterns using "sw" and "sd".
9570
9571 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9572
9573         * infcmd.c (jump_command): Postpone disabling stdin until after
9574         the possible query.
9575
9576 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9577
9578         * inflow.c (gdb_getpgrp): New.
9579         (gdb_has_a_terminal): Use get_getpgrp.
9580         (terminal_ours_1): If attach_flag is set, don't refetch
9581         inferior_process_group.
9582
9583 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9584
9585         * features/library-list.dtd: Allow "section" elements as children
9586         of "library".  Add "section" element and describe its attributes.
9587
9588         * solib-target.c (struct lm_info): Add section_bases member.
9589         (library_list_start_segment): Error out if seen a section element.
9590         (library_list_start_section): New.
9591         (library_list_end_library): New.
9592         (solib_target_free_library_list): Free section_bases.
9593         (section_attributes): New.
9594         (library_children): Make "segment" optional.  Add "section" child.
9595         (library_list_children): Register library_list_end_library.
9596         (solib_target_relocate_section_addresses): Handle section bases.
9597
9598         * NEWS: Mention new qXfer:libraries:read section offsets support.
9599
9600 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9601
9602         * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
9603         (make_exec_error_cleanup): Remove declarations.
9604         * utils.c (exec_error_cleanup_chain): Remove.
9605         (do_exec_error_cleanups, discard_exec_error_cleanups)
9606         (make_exec_error_cleanup): Remove.
9607         * event-loop.c (start_event_loop): Adjust call to
9608         async_enable_stdin.
9609         * event-top.c (async_enable_stdin): Remove the paramater dummy.
9610         (async_disable_stdin): Don't register async_enable_stdin via
9611         cleanup.
9612         * inf-loop.c (inferior_event_handler): Don't
9613         call do_exec_error_cleanups.  Call async_enable_stdin instead.
9614         * event-loop.c (start_event_loop): Adjust call to
9615         async_enable_stdin.
9616         * tui/tui-interp.c (tui_command_loop): Adjust call to
9617         async_enable_stdin.
9618
9619 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9620
9621         Async mode fixes.
9622         * Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
9623         * breakpoint.c (bpstat_do_actions): In async mode,
9624         don't jump to top expecting stop_bpstat to be already
9625         updated.
9626         * event-loop.c (start_event_loop): Call async_enable_stdin
9627         on exception.
9628         * event-top.c (async_enable_stdin): Do nothing if sync_execution
9629         is not set.
9630         (command_handler): Do not setup continuation here.
9631         (command_line_handler_continuation): Move to...
9632         * top.c (command_line_handler_continuation): ... here.
9633         (execute_command): In async mode, register continuation.
9634         Don't check frame's language in running in async mode.
9635         * exceptions.c (throw_exception): Don't do exec_error_cleanups.
9636         * inf-loop.c (complete_execution): Inline into...
9637         (inferior_event_handler): ... here.  Clear target_executing before
9638         doing any cleanups.  Don't try to show prompt if the target was
9639         resumed.
9640         * infcmd.c (signal_command): Add support for async mode.
9641         (finish_command): Only add continuation if the target was
9642         successfully resumed.
9643         * remote.c (init_async_opts): Register to_get_thread_local_address
9644         handler.
9645         * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
9646         with sync_execution.
9647         * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
9648         on exception.
9649
9650 2008-03-14  Daniel Jacobowitz  <dan@codesourcery.com>
9651
9652         * corefile.c (reopen_exec_file): Use exec_bfd_mtime.
9653         * exec.c (exec_bfd_mtime): Define.
9654         (exec_close): Clear it.
9655         (exec_file_attach): Set it.
9656         * gdbcore.h (exec_bfd_mtime): Declare.
9657         * source.c (find_source_lines): Do not use bfd_get_mtime.
9658
9659 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9660
9661         * top.c (simplified_command_loop): Remove.
9662
9663 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9664
9665         Remove unused remote.c hooks.
9666         * remote.c (deprecated_target_resume_hook)
9667         (deprecated_target_wait_loop_hook): Remove.
9668         (remote_resume): Do not call deprecated_target_resume_hook.
9669         (remote_wait): Do not call deprecated_target_wait_loop_hook.
9670         (remote_async_wait): Likewise.
9671
9672 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
9673
9674         Implement MI notification for new threads.
9675         * doc/observer.texi (new_thread): Document.
9676         * observer.sh: Forward declare struct thread_info.
9677         * thread.c (add_thread): Notify observer.
9678
9679         * interps.h (interp_init_ftype): New parameter
9680         top_level.
9681         (interp_set): Likewise.
9682         (top_level_interpreter_data): Declare.
9683         * interps.c (interp_set): New parameter top_level.
9684         Pass it to interpreter's init function.  Remember
9685         top level interpreter.
9686         (interpreter_exec_cmd): Adjust.
9687         (top_level_interpreter_data): New.
9688         * main.c (captured_main): Pass 1 for top_level
9689         parameter of interp_set.
9690         * cli/cli-interp.c (cli_interpreter_init): New
9691         parameter top_level.
9692         * tui/tui-interp.c (tui_init): New parameter top_level.
9693
9694         * mi/mi-interp.c (mi_new_thread): New.
9695         (mi_interpreter_init): If top level, register
9696         observer for new threads.
9697
9698         * Makefile.in (mi-interp.o, thread.o): Update dependencies.
9699
9700 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9701
9702         * top.c (execute_command): Disable break and stop
9703         commands in async mode.
9704
9705 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9706
9707         revert:
9708         2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9709         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9710         Call target_stop in the INF_QUIT_REQ case.
9711         * Makefile.in (inf-loop.o): Update.
9712
9713 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9714
9715         * inf-loop.c (inferior_event_handler): Don't include remote.h.
9716         Call target_stop in the INF_QUIT_REQ case.
9717         * Makefile.in (inf-loop.o): Update.
9718
9719 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
9720
9721         * top.c (execute_command): Enable break, info and interrupt
9722         commands in async mode.
9723
9724 2008-03-13  Vladimir Prus  <vladimir@codesourcery.com>
9725             Daniel Jacobowitz  <dan@codesourcery.com>
9726
9727         * breakpoint.h (breakpoint_restore_shadows): New
9728         declaration.
9729         * breakpoint.c (breakpoint_restore_shadows): New.
9730         (read_memory_nobpt): Delete.
9731         * gdbcore.h (read_memory_nobpt): Delete declaration.
9732         * target.c (memory_xfer_partial): Call
9733         breakpoint_restore_shadows.
9734         (restore_show_memory_breakpoints)
9735         (make_show_memory_breakpoints_cleanup): New.
9736         (show_memory_breakpoints): New.
9737         * target.h (make_show_memory_breakpoints_cleanup): Declare.
9738         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
9739         Make sure we see memory breakpoints when checking if
9740         breakpoint is still there.
9741         * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
9742         hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
9743         m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
9744         sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
9745
9746 2008-03-12  Pedro Alves  <pedro@codesourcery.com>
9747
9748         * thread.c (add_thread): Use printf_unfiltered to print.
9749
9750 2008-03-12  Joel Brobecker  <brobecker@gnat.com>
9751
9752         * sol-thread.c: Replace use of TM_I386SOL2_H by an expression
9753         that is true only on x86-solaris and x86_64-solaris.
9754         * procfs.c: Likewise. Move procfs_find_LDT_entry up together
9755         with proc_get_LDT_entry.
9756
9757 2008-03-12  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9758
9759         * configure.ac (AC_CHECK_FUNCS): Add check for setsid.
9760         * config.in, configure: Regenerate.
9761         * fork-child.c (fork_inferior): Call create_tty_session.
9762         * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
9763         (create_tty_session): New function.
9764         * terminal.h: Declare create_tty_session.
9765
9766 2008-03-12  Alan Modra  <amodra@bigpond.net.au>
9767
9768         PR 5900
9769         * elfread.c (elf_symtab_read): Make shndx an unsigned int.
9770         * mipsread.c: Include elf/internal.h.
9771         (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
9772         to internal range.
9773
9774 2008-03-11  Markus Deuling  <deuling@de.ibm.com>
9775
9776         * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
9777         to get at the current architecture and at the target specific vector.
9778         Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
9779         remove define of I387_ST0_REGNUM.
9780
9781         * amd64-tdep.c (I387_ST0_REGNUM): Remove define.
9782
9783         (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
9784         get at the current architecture
9785         (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
9786         parameter.
9787
9788         * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
9789         I387_NUM_XMM_REGS and I387_MM0_REGNUM.
9790
9791         (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
9792         I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
9793         (I387_FSTAT_REGNUM): Add target specific vector as parameter.
9794
9795         (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
9796         at the target specific vector.
9797
9798         (i386_get_longjmp_target): Use get_frame_arch to get at the current
9799         architecture. Use gdbarch_tdep to get at the target specific vector.
9800
9801         (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
9802         update caller. Use gdbarch_tdep to get at the target specific vector.
9803
9804         (i386_register_to_value: Use get_frame_arch to get at the current
9805         architecture.
9806
9807         * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
9808         parameter.
9809
9810         * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
9811         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
9812         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
9813         FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.
9814
9815         (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
9816         undef's.
9817
9818         (i387_convert_register_p, i387_register_to_value,
9819         i387_value_to_register): Update call for i386_fp_regnum_p.
9820
9821         * i387-tdep.h: Remove comment.
9822         (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
9823         (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
9824         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
9825         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
9826         I387_MXCSR_REGNUM): Add target specific vector as parameter.
9827
9828 2008-03-10  Daniel Jacobowitz  <dan@codesourcery.com>
9829
9830         * Makefile.in (fork-child.o): Update.
9831         * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
9832         argument.  Gather all gdbserver features together.
9833         * fork-child.c (exec_wrapper): New variable.
9834         (fork_inferior): Use it.
9835         (startup_inferior): Skip an extra trap if using "set exec-wrapper".
9836         (unset_exec_wrapper_command, _initialize_fork_child): New.
9837
9838 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
9839
9840         * source.c (directory_command): Modify the determination of
9841         condition of terminal "from_tty".
9842
9843 2008-03-10  Matt Rice  <ratmice@gmail.com>
9844
9845         * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.
9846
9847 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
9848
9849         * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
9850         of the data passing to strtoulst function.
9851         (info_spu_signal_command): Likewise.
9852
9853 2008-03-08  Vladimir Prus  <vladimir@codesourcery.com>
9854
9855         * mi/mi-interp.c (mi_command_loop): Remove
9856         commented-out code.
9857
9858 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
9859
9860         * remote.c (extended_remote_attach_1): Make local variable pid an int
9861         instead of a pid_t.
9862
9863 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
9864
9865         * solib-svr4.c (svr4_same_1): New function, originally extracted
9866         from svr4_same and expanded to handle the sparc64 case.
9867         (svr4_same): Move up and reimplement using svr4_same_1.
9868         (enable_break): Use svr4_same_1 to do shared library name comparisons.
9869
9870 2008-03-07  Ramana Radhakrishnan  <ramana.r@gmail.com>
9871
9872         * MAINTAINERS: Move self to Paper trail.
9873
9874 2008-03-05  Daniel Jacobowitz  <dan@codesourcery.com>
9875
9876         * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
9877         * event-loop.c (call_async_signal_handler): New.
9878         * event-loop.h (call_async_signal_handler)
9879         (gdb_call_async_signal_handler): Declare.
9880         (mark_async_signal_handler): Add comments.
9881         * event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
9882         * mingw-hdep.c (sigint_event, sigint_handler): New.
9883         (gdb_select): Use them.  Wait for the readline signal handler
9884         to finish.
9885         (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
9886         * posix-hdep.c (gdb_call_async_signal_handler): New function.
9887         * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
9888         New.
9889         (remote_fileio_ctrl_c_signal_handler): Use
9890         gdb_call_async_signal_handler.
9891         (initialize_remote_fileio): Initialize sigint_fileio_token.
9892         * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
9893         not initialize tokens here.
9894         (handle_remote_sigint_twice): Likewise.  Reinstall
9895         handle_remote_sigint.
9896         (async_remote_interrupt_twice): Just call interrupt_query.
9897         (cleanup_sigint_signal_handler): Do not delete tokens.
9898         (remote_interrupt, remote_interrupt_twice): Use
9899         gdb_call_async_signal_handler.
9900         (interrupt_query): Reinstall the default signal handler.
9901         (_initialize_remote): Initialize tokens here.
9902
9903 2008-03-04  Joel Brobecker  <brobecker@adacore.com>
9904
9905         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
9906         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
9907         Change the type of the lr register to code_ptr.
9908         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
9909         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
9910         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
9911         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
9912         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
9913         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
9914         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.
9915
9916 2008-03-03  James E. Wilson  <wilson@tuliptree.org>
9917
9918         * MAINTAINERS: Update my email address.
9919
9920 2008-03-03  Keith Seitz  <keiths@redhat.com>
9921
9922         From Dave Murphy  <davem@devkitpro.org>:
9923         * configure.ac: Set tcl configdir to win under mingw.
9924         * configure: Regenerate.
9925
9926 2008-03-03  Daniel Jacobowitz  <dan@codesourcery.com>
9927
9928         * breakpoint.c (fetch_watchpoint_value): New function.
9929         (update_watchpoint): Set and clear val_valid.  Use
9930         fetch_watchpoint_value.  Handle unreadable values on the
9931         value chain.  Correct check for user-requested array watchpoints.
9932         (breakpoint_init_inferior): Clear val_valid.
9933         (watchpoint_value_print): New function.
9934         (print_it_typical): Use it.  Do not free or clear old_val.  Print
9935         watchpoints even if old_val == NULL.
9936         (watchpoint_check): Use fetch_watchpoint_value.  Check for values
9937         becoming readable or unreadable.
9938         (watch_command_1): Use fetch_watchpoint_value.  Set val_valid.
9939         (do_enable_watchpoint): Likewise.
9940         * breakpoint.h (struct breakpoint): Update comment for val.  Add
9941         val_valid.
9942         * NEWS: Mention watchpoints on inaccessible memory.
9943
9944 2008-02-29  Daniel Jacobowitz  <dan@codesourcery.com>
9945
9946         * Makefile.in (i386-nat.o): Update.
9947         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
9948         i386_use_watchpoints.
9949         * i386-linux-nat.c (_initialize_i386_linux_nat): Call
9950         i386_use_watchpoints.
9951         * i386-nat.c (i386_stopped_data_address): Take two arguments.
9952         (i386_stopped_by_watchpoint): Update call.
9953         (i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
9954         * config/i386/nm-i386.h: Conditionalize definitions on
9955         ! I386_WATCHPOINTS_IN_TARGET_VECTOR.
9956         (i386_use_watchpoints): Declare.
9957         (i386_stopped_data_address): Update.
9958         * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
9959         * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
9960
9961 2008-02-29  Joel Brobecker  <brobecker@adacore.com>
9962
9963         GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
9964         * version.in: Bump version to 6.8.50.20080229-cvs.
9965
9966 2008-02-28  Markus Deuling  <deuling@de.ibm.com>
9967
9968         * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
9969         properly.
9970
9971 2008-02-28  Tom Tromey  <tromey@redhat.com>
9972
9973         * infcmd.c (notice_args_read): Print result of get_inferior_args.
9974
9975 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
9976
9977         * infcmd.c (kill_if_already_running): Make static.  Use
9978         target_require_runnable.
9979         * target.c (target_require_runnable): New.
9980         * target.h (target_require_runnable): Declare.
9981
9982 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
9983
9984         * frame.c (reinit_frame_cache): Only annotate if frames were
9985         previously valid.
9986
9987 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
9988
9989         * regformats/reg-ppc.dat: Rename "ps" to "msr".
9990         * regformats/reg-ppc64.dat: Likewise.
9991
9992 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
9993
9994         * features/Makefile (%.dat): Emit xmltarget statement.
9995
9996         * regformats/regdat.sh: Support xmltarget and xmlarch statments.
9997         Generate code to set gdbserver_xmltarget in init_registers_${name}.
9998
9999         * regformats/arm-with-iwmmxt.dat: Regenerate.
10000         * regformats/mips64-linux.dat: Regenerate.
10001         * regformats/mips-linux.dat: Regenerate.
10002         * regformats/rs6000/powerpc-32.dat: Regenerate.
10003         * regformats/rs6000/powerpc-64.dat: Regenerate.
10004         * regformats/rs6000/powerpc-e500.dat: Regenerate.
10005
10006         * regformats/reg-arm.dat: Add xmlarch statement.
10007         * regformats/reg-i386.dat: Likewise.
10008         * regformats/reg-i386-linux.dat: Likewise.
10009         * regformats/reg-x86-64-linux.dat: Likewise.
10010         * regformats/reg-spu.dat: Likewise.
10011
10012 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
10013
10014         * remote.c (remote_wait, remote_async_wait): Stop if we receive
10015         an error.
10016
10017 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
10018
10019         * utils.c (debug_timestamp): New.
10020         (vfprintf_unfiltered): Print timestamps if requested.
10021         (show_debug_timestamp): New.
10022         (initialize_utils): Register "set debug timestamp".
10023         * NEWS: Mention "set debug timestamp".  Add GDB 6.8 section.
10024
10025 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
10026
10027         * breakpoint.c (skip_prologue_sal): New function.
10028         (resolve_sal_pc): Adjust SAL past prologue if the SAL was
10029         computed from a line number.
10030
10031 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
10032
10033         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml
10034         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
10035         Set PC register type to "code_ptr".
10036         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
10037         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
10038         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
10039         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
10040         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
10041         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
10042         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
10043         Regenerate.
10044
10045 2008-02-27  Ulrich Weigand  <uweigand@de.ibm.com>
10046
10047         * regformats/regdat.sh: Rename init_registers function in
10048         generated file to init_registers_${name}.
10049
10050         * regformats/reg-crisv32.dat: Set "name" to crisv32.
10051         * regformats/reg-ppc64.dat: Set "name" to ppc64.
10052         * regformats/reg-s390x.dat: Set "name" to s390x.
10053
10054 2008-02-26  Greg Law  <glaw@undo-software.com>
10055
10056         * regcache.c (registers_changed): Call reinit_frame_cache.
10057
10058 2008-02-26  Daniel Jacobowitz  <dan@codesourcery.com>
10059
10060         * configure.tgt (sh-*-linux*): Match sh*.  Add glibc-tdep.o.
10061         * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
10062         and svr4_fetch_objfile_link_map.
10063         * Makefile.in (sh-linux-tdep.o): Update.
10064
10065 2008-02-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10066
10067         * amd64-tdep.c (amd64_classify): Add support for decimal float
10068         types.
10069         * i386-tdep.c (i386_return_value): Make 128-bit decimal float
10070         use the struct return convention.
10071
10072 2008-02-26  Nick Roberts  <nickrob@snap.net.nz>
10073
10074         * breakpoint.c (print_one_breakpoint_location): Revert Enb field
10075         to old format.  Discard breakpoint address if shared library is
10076         unloaded.
10077         (breakpoint_1): Adjust formatting of table header accordingly.
10078
10079 2008-02-25  Vladimir Prus  <vladimir@codesourcery.com>
10080
10081        * remote.c (remote_get_threadlist): If the response
10082        is empty, don't try to parse it.
10083
10084 2008-02-23  Vladimir Prus  <vladimir@codesourcery.com>
10085
10086         Unbreak 'target async'.
10087         * serial.c (serial_async): Set the
10088         handler function before enabling async
10089         mode.
10090
10091 2008-02-22  Daniel Jacobowitz  <dan@codesourcery.com>
10092
10093         * solib-svr4.c (enable_break): Convert r_brk to a code address.
10094
10095 2008-02-21  Pedro Alves  <pedro@codesourcery.com>
10096
10097         * remote.c (extended_remote_attach_1): Set attach_flag.
10098         (extended_remote_create_inferior_1): Clear attach_flag.
10099
10100 2008-02-20  Daniel Jacobowitz  <dan@codesourcery.com>
10101
10102         * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
10103         r_brk_offset.
10104         (mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
10105         * solib-svr4.c (solib_svr4_r_brk): New.
10106         (open_symbol_file_object, svr4_current_sos): Always check the
10107         debug base.
10108         (svr4_fetch_objfile_link_map): Do not set debug_base.
10109         (enable_break): Use r_brk if it is set.
10110         (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
10111         (svr4_lp64_fetch_link_map_offsets): Likewise.
10112         * solib-svr4.h (struct link_map_offsets): Add r_brk_offset.
10113
10114 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10115             Mark Kettenis  <kettenis@gnu.org>
10116
10117         * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
10118         trad_frame_saved_reg.
10119         (trad-frame.h): New include.
10120
10121         (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
10122         instead of frame_obstack_zalloc.
10123         (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.
10124
10125         * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
10126
10127 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10128
10129         * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
10130         from disassemble_info instead of gdbarch_byte_order.
10131
10132         * mips-tdep.c (gdb_print_insn_mips): Likewise.
10133         * arm-tdep.c (gdb_print_insn_arm): Likewise.
10134
10135 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
10136
10137         * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
10138         gdbarch as parameter.
10139
10140         * gdbarch.{c,h}: Regenerate.
10141
10142         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10143         parameter.
10144         * mem-break.c (default_memory_insert_breakpoint)
10145         (default_memory_remove_breakpoint): Likewise.
10146         * target.h (default_memory_remove_breakpoint)
10147         (default_memory_insert_breakpoint): Likewise.
10148
10149         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
10150         parameter. Replace current_gdbarch by gdbarch.
10151         * m32r-tdep.c (m32r_memory_insert_breakpoint)
10152         (m32r_memory_remove_breakpoint): Likewise.
10153
10154 2008-02-19  Daniel Jacobowitz  <dan@codesourcery.com>
10155
10156         * MAINTAINERS: Add Vladimir Prus as MI maintainer.
10157
10158 2008-02-19  Joel Brobecker  <brobecker@adacore.com>
10159
10160         * NEWS: Add entry describing Add support improvements.
10161
10162 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10163
10164         * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
10165         M68K_FP0_REGNUM.
10166
10167 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10168
10169         * sentinel-frame.c (sentinel_frame_prev_register): Do not call
10170         register_offset_hack anymore.
10171
10172         * regcache.{c,h} (register_offset_hack): Remove.
10173
10174 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10175
10176         * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.
10177
10178         * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
10179         current_gdbarch by gdbarch.
10180         (hppa64_hpux_find_global_pointer): Likewise.
10181         * hppa-tdep.c (hppa_find_global_pointer): Likewise.
10182         (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
10183         find_global_pointer.
10184
10185         * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
10186         parameter.
10187         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.
10188
10189         * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
10190         of gdbarch_num_regs.
10191
10192         * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
10193         replace current_gdbarch by gdbarch.
10194         (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.
10195
10196 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10197
10198         * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
10199         and replace current_gdbarch by gdbarch.
10200
10201         (store_register): Update call for exec_one_dummy_insn.
10202         (fetch_register, store_register): Update call of regmap.
10203
10204         * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
10205         parameter and replace current_gdbarch by gdbarch.
10206
10207         (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
10208         the current architecture. Update call for getregs_supplies and
10209         getfpregs_supplies.
10210         (ppcnbsd_fetch_inferior_registers): Likewise.
10211
10212         * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
10213         replace current_gdbarch by gdbarch.
10214         (ppcobsd_fetch_registers, ppcobsd_store_registers): Use
10215         get_regcache_arch to get at the current architecture. Update call for
10216         getfpregs_supplies.
10217
10218 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
10219
10220         * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
10221         variables.
10222
10223 2008-02-15  Markus Deuling  <deuling@de.ibm.com>
10224
10225         * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.
10226
10227 2008-02-14  Vladimir Prus  <vladimir@codesourcery.com>
10228
10229         * NEWS: Mention pending breakpints in MI.
10230
10231 2008-02-14  Markus Deuling  <deuling@de.ibm.com>
10232
10233         * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.
10234
10235 2008-02-13  Markus Deuling  <deuling@de.ibm.com>
10236
10237         Add script to build and test GDB using enable-targets=all.
10238
10239         * gdb_buildall.sh: New file.
10240
10241 2008-02-11  Maxim Grigoriev  <maxim2405@gmail.com>
10242
10243         * NEWS (New native configurations): Xtensa GNU/Linux.
10244         (New targets): Xtensa GNU/Linux.
10245         * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and
10246         xtensa-linux-tdep.o
10247         (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c
10248         (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies.
10249         * configure.tgt (xtensa*-*-linux*): New entry.
10250         * xtensa-config.c (xtensa_tdep): New variable.
10251         (xtensa_config_byte_order, xtensa_config_tdep): Removed.
10252         (rmap): Change format based on new macro XTREG.
10253         (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h.
10254         * xtensa-linux-nat.c: New.
10255         * xtensa-linux-tdep.c: New.
10256         * xtensa-xtregs.c: New.
10257         * xtensa-tdep.h (xtensa_elf_gregset_t): Update.
10258         (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE)
10259         (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros.
10260         (xtensa_register_t): New field coprocessor.
10261         (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected.
10262         * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed.
10263         (xtensa_pseudo_register_read, xtensa_pseudo_register_write):
10264         Update to handle privileged registers.
10265         (xtensa_supply_gregset) Remove exccause and excvaddr registers.
10266         (xtensa_push_dummy_call): Set windowstart register correctly.
10267         (call0_analyze_prologue): Initialize xtensa_default_isa.
10268         (xtensa_derive_tdep): New.
10269         (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and
10270         xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead.
10271         Call xtensa_derive_tdep().
10272         * config/xtensa/linux.mh: New.
10273         * regformats/reg-xtensa.dat: New.
10274
10275 2008-02-09  Aleksandar Ristovski  <aristovski@qnx.com>  (tiny change)
10276
10277         * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
10278         (filenames.h): New include.
10279         * Makefile.in (corelow.o): Add dependency for filenames.h.
10280
10281 2008-02-08  Doug Evans  <dje@google.com>
10282
10283         * source.c (find_and_open_source): Always rewrite absolute filenames.
10284
10285 2008-02-07  Doug Evans  <dje@google.com>
10286
10287         * breakpoint.c: #include "hashtab.h".
10288         (ambiguous_names_p): New fn.
10289         (update_breakpoint_locations): When restoring bp enable status, don't
10290         compare function names if any functions have same name.
10291         * Makefile.in (breakpoint.o): Add hashtab.h dependency.
10292
10293 2008-02-07  Joel Brobecker  <brobecker@adacore.com>
10294
10295         * ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
10296         instead of just a VEC*. Update use of SV.
10297         (ada_make_symbol_completion_list): Update symbol_completion_add calls.
10298
10299 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10300
10301         * NEWS: Put all new commands since gdb-6.7 together.
10302
10303 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
10304
10305         * ada-lang.c: #include "vec.h".
10306         (struct string_vector, new_string_vector, string_vector_append):
10307         Delete.
10308         (char_ptr): New typedef.
10309         (DEF_VEC_P (char_ptr)): New VEC type.
10310         (symbol_completion_add): Update profile to take the new VEC type
10311         instead of the old string_vector structure. Update code accordingly.
10312         (ada_make_symbol_completion_list): Use the new VEC type instead of
10313         the old string_vector structure, and update the code accordingly.
10314         * Makefile.in (ada-lang.o): Add dependency on vec.h.
10315
10316 2008-02-06  Pierre Muller  <muller@ics.u-strasbg.fr>
10317
10318         * p-exp.y: Set current_type in missing places.
10319         (leftdiv_is_integer): New static variable.
10320         Typecast right operand of BINOP_DIV to long_double if both operands
10321         are integers.
10322
10323 2008-02-06  Maciej W. Rozycki  <macro@mips.com>
10324
10325         * remote-mips.c (set_breakpoint): Rename to...
10326         (mips_set_breakpoint): ... this.
10327         (clear_breakpoint): Rename to...
10328         (mips_clear_breakpoint): ... this.
10329         (common_breakpoint): Rename to...
10330         (mips_common_breakpoint): ... this.
10331         (check_lsi_error): Rename to...
10332         (mips_check_lsi_error): ... this.
10333
10334 2007-02-05  Joel Brobecker  <brobecker@adacore.com>
10335
10336         * language.h (struct language_defn): Add new field
10337         la_make_symbol_completion_list.
10338         * symtab.c (default_make_symbol_completion_list): Renames
10339         make_symbol_completion_list.
10340         (make_symbol_completion_list): New function.
10341         * symtab.h (default_make_symbol_completion_list): Add declaration.
10342         * langauge.c (unknown_language): Set la_make_symbol_completion_list.
10343         (auto_language, local_language): Likewise.
10344         * objc-lang.c (objc_language_defn): Likewise.
10345         * scm-lang.c (scm_language_defn): Likewise.
10346         * m2-lang.c (m2_language_defn): Likewise.
10347         * f-lang.c (f_language_defn): Likewise.
10348         * jv-lang.c (java_language_defn): Likewise.
10349         * p-lang.c (pascal_language_defn): Likewise.
10350         * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
10351         (minimal_language_defn): Likewise.
10352         * ada-lang.c (struct string_vector): New structure.
10353         (new_string_vector, string_vector_append, ada_unqualified_name)
10354         (add_angle_brackets, symbol_completion_match, symbol_completion_add)
10355         (ada_make_symbol_completion_list): New functions.
10356         (ada_language_defn): Set la_make_symbol_completion_list.
10357         * ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
10358         this function is static.
10359
10360 2008-02-05  Kevin Buettner  <kevinb@redhat.com>
10361
10362         * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
10363         to account for call site optimizations.
10364
10365 2008-02-05  Andrzej Zaborowski  <balrogg@gmail.com>
10366
10367         * tracepoint.c (read_actions): Handle end-of-text indicator
10368         in action list properly.  (Committed by Jim Blandy)
10369
10370 2008-02-05  Jim Blandy  <jimb@red-bean.com>
10371
10372         * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
10373         pseudoregister, not an internal error.
10374         Reported by: Andrzej Zaborowski
10375
10376 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10377
10378         * varobj.c (c_value_of_variable): Use xstrdup.
10379
10380 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
10381
10382         Update stored rendition of varobj value when format changes.
10383         * varobj.c (varobj_set_display_format): Recomputed
10384         print_value.
10385         (c_value_of_variable): Return print_value.
10386
10387 2008-02-03  Doug Evans  <dje@google.com>
10388
10389         * eval.c (evaluate_subexp_standard): Fix type of result of mixed
10390         integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
10391         * valops.c (value_one): New function.
10392         * value.h (value_one): Declare.
10393
10394         Fix argument promotion for binary arithmetic ops for C.
10395         * valarith.c (unop_result_type): New fn.
10396         (binop_result_type): New fn.
10397         (value_binop): Move result type computation to binop_result_type.
10398         (value_pos, value_neg, value_complement): Move result type
10399         computation to unop_result_type.
10400
10401         PR 2384
10402         * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10403         Return basetype, fieldno if found.  All callers updated.
10404         Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
10405         objfile.
10406         * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
10407         * symfile.h (fill_in_vptr_fieldno): Delete.
10408
10409 2008-02-02  Doug Evans  <dje@google.com>
10410
10411         * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.
10412
10413         * typeprint.c (*): Whitespace cleanup.
10414
10415 2008-02-02  Mark Kettenis  <kettenis@gnu.org>
10416             Luis Machado  <luisgpm@br.ibm.com>
10417             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10418
10419         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
10420         don't fit into registerson the stack the way GCC does.
10421
10422 2008-02-01  Joel Brobecker  <brobecker@adacore.com>
10423
10424         * symtab.c (symbol_set_names): Do not add an entry in the demangling
10425         hash table for Ada symbols. Just store the linkage name as is,
10426         and leave the demangled_name as NULL.
10427
10428 2007-02-01  Joel Brobecker  <brobecker@adacore.com>
10429
10430         * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
10431         in the global scope.
10432         (new_symbol): Likewise.
10433
10434 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10435
10436         * breakpoint.c (break_command_1): Return void.
10437         (break_command_really): Return void.  Rethrow
10438         exceptions instead of returning.
10439         (gdb_breakpoint): Remove the error_message parameter.
10440         Return void.  Rename to set_breakpoint.
10441         * gdb.h (gdb_breakpoint): Rename and move to...
10442         * breakpoint.h (set_breakpoint): ...here.
10443         * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
10444         event hooks even if exception is thrown.  Adjust to
10445         gdb_breakpoint interface changes.
10446
10447
10448 2008-02-01  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10449
10450         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
10451         float in both first and second word in the doubleword, to support
10452         old and new ABIs.
10453
10454 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
10455
10456         Properly rethrow exception.  This fixes errors
10457         about non-existent functions for -break-insert.
10458         * breakpoint.c (break_command_really): Use throw_exception
10459         for rethrowing.  If rethrowing, don't print the exception.
10460
10461 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10462
10463         * NEWS: Mention Decimal Floating Point support.
10464
10465 2008-01-31  Joel Brobecker  <brobecker@adacore.com>
10466
10467         * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
10468         value type to builtin_type_void_func_ptr.
10469
10470 2008-01-31  Andreas Krebbel  <krebbel1@de.ibm.com>
10471
10472         * s390-tdep.c (is_float_singleton, is_float_like,
10473         alignment_of, s390_return_value): Make checks for
10474         TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.
10475
10476 2008-01-31  Luis Machado  <luisgpm@br.ibm.com>
10477             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10478
10479         * infcmd.c (default_print_registers_info): Also print hex
10480         raw contents for TYPE_CODE_DECFLOAT registers.
10481         * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
10482         * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
10483         (rs6000_register_name): Add support for DFP pseudo-registers.
10484         (rs6000_pseudo_register_type): Likewise.
10485         rs6000_pseudo_register_reggroup_p): Likewise.
10486         (ppc_pseudo_register_read): New function.
10487         (ppc_pseudo_register_write): Likewise.
10488         (rs6000_pseudo_register_read): Likewise.
10489         (rs6000_pseudo_register_write): Likewise.
10490         (e500_pseudo_register_read): Move checks to
10491         rs6000_pseudo_register_read.
10492         (e500_pseudo_register_write): Move checks to
10493         rs6000_pseudo_register_write.
10494         (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum.  Install
10495         rs6000_pseudo_register_read and rs6000_pseudo_register_write
10496         in gdbarch if SPE or DFP is available.  Adjust gdbarch's
10497         num_pseudo_regs to account for DFP pseudo regs.
10498
10499 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10500
10501         * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
10502         * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
10503         (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
10504         rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
10505         e500_pseudo_register_read, e500_pseudo_register_write): Use
10506         IS_SPE_PSEUDOREG macro.
10507         (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
10508         (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
10509         Remove initialization of tdep->ppc_ev31_regnum.
10510
10511 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
10512
10513         * printcmd.c (print_formatted): Handle references as for unformatted
10514         prints.
10515
10516 2008-01-30  Joel Brobecker  <brobecker@adacore.com>
10517
10518         * eval.c (evaluate_subexp_standard): Add handling of user
10519         registers when in EVAL_AVOID_SIDE_EFFECTS mode.
10520
10521 2008-01-30  Pierre Muller  <muller@ics.u-strasbg.fr>
10522
10523         * eval.c (evaluate_subexp_standard): Support
10524         BINOP_INTDIV opcode.
10525
10526 2008-01-30  Paul N. Hilfinger  <hilfinger@adacore.com>
10527
10528         * valarith.c (value_binop): Add floating-point BINOP_MIN and
10529         BINOP_MAX cases.
10530         For BINOP_EXP, use length and signedness of left operand only for
10531         result, as for shifts.
10532         For integral operands to BINOP_EXP, use new integer_pow and
10533         uinteger_pow functions so as to get full range of results.
10534         (integer_pow): New function.
10535         (uinteger_pow): New function.
10536
10537 2008-01-30  Vladimir Prus  <vladimir@codesourcery.com>
10538
10539         Use vector for varobj_list_children interface.
10540         * gdb/varobj.c (varobj_list_children): Return vector
10541         of varobjs.
10542         * gdb/varobj.h (varobj_list_children): Adjust
10543         prototype.
10544         (varobj_p): Declare.  Declare vector thereof.
10545         * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
10546         for varobj_list_children change.
10547         * Makefile.in (varobj_h): Update dependencies.
10548
10549 2008-01-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10550
10551         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
10552         TYPE_CODE_DECFLOAT arguments.
10553         (ppc64_sysv_abi_push_dummy_call) Likewise.
10554         (get_decimal_float_return_value): New function.
10555         (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
10556         values by calling get_decimal_float_return_value.
10557         (ppc64_sysv_abi_return_value): Likewise.
10558
10559 2008-01-30  Nick Roberts  <nickrob@snap.net.nz>
10560
10561         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file):  Add field
10562         for preprocessor macro information.  Formatting changes.
10563
10564 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10565
10566         * remote.c (struct remote_state): Add cached_wait_status.
10567         (remote_exec_file): New variable.
10568         (PACKET_vAttach, PACKET_vRun): New constants.
10569         (extended_remote_restart): Do not query for status.
10570         (struct start_remote_args): New.
10571         (remote_start_remote): Take it as a second argument.  Check
10572         whether the target is running.  Issue an error for non-running
10573         non-extended targets.  Cache the wait status.  Set inferior_ptid
10574         here.
10575         (remote_open_1): Prompt to disconnect non-running targets.  Make
10576         sure the target is marked running.  Do not set inferior_ptid here.
10577         Update call to remote_start_remote.  Do not call remote_check_symbols
10578         if the target is not running.
10579         (remote_detach_1): Rename from remote_detach.  Take an EXTENDED
10580         argument.  Handle a non-running target.
10581         (remote_detach): Use it.
10582         (extended_remote_detach): New.
10583         (remote_disconnect): Fix typo.  Use remoute_mourn_1.
10584         (extended_remote_attach_1, extended_remote_attach)
10585         (extended_async_remote_attach): New.
10586         (remote_vcont_resume): Remove unused variable.
10587         (remote_wait, remote_async_wait): Use any cached wait status.
10588         (putpkt_binary, getpkt): Clear any cached wait status.
10589         (extended_remoute_mourn_1): New.
10590         (extended_remote_mourn): Use it.
10591         (extended_async_remote_mourn, extended_remote_run): New.
10592         (extended_remote_create_inferior_1): New.
10593         (extended_remote_create_inferior): Use it.
10594         (extended_remote_async_create_inferior): Likewise.
10595         (remote_xfer_partial): Skip for non-executing targets.
10596         (init_extended_remote_ops): Set to_detach and to_attach.
10597         (init_extended_async_remote_ops): Likewise.  Use
10598         extended_async_remote_mourn.
10599         (_initialize_remote): Register vAttach, vRun, and
10600         set remote exec-file.
10601         * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.
10602
10603 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
10604
10605         * Makefile.in (symfile.o): Update.
10606         * NEWS: Mention exec tracing support.
10607         * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
10608         exec events.
10609         * infcmd.c (kill_if_already_running, detach_command)
10610         (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
10611         * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
10612         (follow_exec): Do not check may_follow_exec.  Do not mourn and push
10613         targets.  Apply the sysroot path to the loaded executable.  Use
10614         no_shared_libraries.
10615         * linux-nat.c (linux_child_follow_fork): Print fork following
10616         messages if verbose.
10617         (kill_wait_callback): Kill again before waiting a second time.
10618         * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
10619         no_shared_libraries.
10620
10621 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10622
10623         * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.
10624
10625 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10626
10627         * nto-tdep.h: Remove #include "defs.h".
10628         * nto-tdep.c: Add #include "defs.h".
10629         * Makefile.in (nto_tdep_h): Update dependencies.
10630         (nto-tdep.o): Likewise.
10631
10632 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
10633
10634         * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
10635         and use it.
10636         (proceed, start_remote): Update call to wait_for_inferior.
10637         * inferior.h (wait_for_inferior): Update declaration.
10638         * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
10639         solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
10640         * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
10641         TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.
10642
10643 2008-01-29  Aleksandar Ristovski  <aristovski@qnx.com>
10644
10645         * varobj (adjust_value_for_child_access): Added checking for
10646         returned value from gdb_value_ind.
10647         (c_describe_child): Likewise.
10648         (cplus_describe_child): Fixed a typo.
10649
10650 2008-01-29  Jim Blandy  <jimb@red-bean.com>
10651
10652         * MAINTAINERS: Update my info.
10653
10654 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10655
10656         Use multiple locations for hardware watchpoints.
10657         This eliminates the need to traverse value chain, doing
10658         various checks, in three different places.
10659
10660         * breakpoint.h (struct bp_location): New fields
10661         lengths and watchpoint_type.
10662         (struct breakpoint): Remove the val_chain field.
10663         * breakpoint.c (is_hardware_watchpoint): New.
10664         (free_valchain): Remove.
10665         (update_watchpoint): New.
10666         (insert_bp_location): For hardware watchpoint, just
10667         directly insert it.
10668         (insert_breakpoints): Call update_watchpoint_locations
10669         on all watchpoints.  If we have failed to insert
10670         any location of a hardware watchpoint, remove all inserted
10671         locations.
10672         (remove_breakpoint): For hardware watchpoints, directly
10673         remove location.
10674         (watchpoints_triggered): Iterate over locations.
10675         (bpstat_stop_status): Use only first location of
10676         a resource watchpoint.
10677         (delete_breakpoint): Don't call free_valchain.
10678         (print_one_breakpoint): Don't print all
10679         locations for watchpoints.
10680         (breakpoint_re_set_one): Use update_watchpoint for
10681         watchpoints.
10682
10683 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
10684
10685         Don't reset watchpoint block on solib load.
10686
10687         * breakpoint.c (insert_bp_location): For watchpoints,
10688         recompute condition.
10689         (breakpoint_re_set_one): Instead of recomputing value
10690         and condition for watchpoints, just reset value and
10691         let insert_breakpoints/insert_bp_location recompute it.
10692         Don't do anything about disabled watchpoint.
10693
10694 2008-01-29  Pierre Muller  <muller@ics.u-strasbg.fr>
10695
10696         * valarith.c (value_binop): Handle unsigned integer
10697         division by zero.
10698
10699 2008-01-28  Kevin Buettner  <kevinb@redhat.com>
10700
10701         * mn10300-tdep.c (mn10300_analyze_prologue): Check for an
10702         instruction pattern that appears frequently in position
10703         independent code.  Fix bug in code which looks for "fmov" and
10704         backtracks if no "fmov" is found.
10705
10706 2008-01-28  Doug Evans  <dje@google.com>
10707
10708         * dbxread.c (read_dbx_symtab): Fix indentation.
10709         Reformat comments to 80 columns.
10710         Move local var def closer to only use.
10711
10712 2008-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
10713
10714         * fork-child.c (SHELL_FILE): Remove #ifndef.
10715         (fork_inferior): Remove SHELL_COMMAND_CONCAT.
10716
10717 2008-01-25  Pierre Muller  <muller@ics.u-strasbg.fr>
10718
10719         * i386-tdep.c (i386_skip_noop): New function.
10720         (i386_analyze_prologue): Call i386_skip_noop function.
10721
10722 2008-01-24  Michael Snyder  <msnyder@specifix.com>
10723
10724         * procfs.c (procfs_xfer_partial): Comment, cut/paste error.
10725         * win32-nat.c (win32_xfer_partial): Ditto.
10726         * target.c (default_xfer_partial): Minor whitespace adjustment.
10727
10728 2008-01-24  Pedro Alves  <pedro@codesourcery.com>
10729
10730         * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
10731         strip bit 1 even if pc doesn't point to thumb code.
10732
10733 2008-01-23  Daniel Jacobowitz  <dan@codesourcery.com>
10734
10735         * remote.c (remote_wait): Handle SIGINT between packets.
10736         (remote_async_wait): Likewise.
10737
10738 2008-01-23  Vladimir Prus  <vladimir@codesourcery.com>
10739             Chris Demetriou  <cgd@google.com>
10740
10741         * thread.c (add_thread_silent): Renamed
10742         from add_thread.
10743         (print_thread_events): New variable definition.
10744         (show_print_thread_events): New function.
10745         (_initialize_thread): Add "set print thread-events" and
10746         "show print thread-events" commands.
10747         (add_thread): Announce new thread.
10748         * gdbthread.h (add_thread_silent): Declare.
10749         (print_thread_events): New variable declaration.
10750         * inf-ttrace.c (inf_ttrace_wait): Don't
10751         inform about new thread, as add_thread is always
10752         called too, and will take care of that.
10753         * infrun.c (handle_inferior_event): Likewise.
10754         * procfs.c (procfs_wait): Likewise.
10755         * remote.c (remote_currthread): Likewise.
10756         * sol-thread.c (sol_thread_wait): Likewise.
10757         * win32-nat.c (get_win32_debug_event): Likewise.
10758         * linux-thread-db.c (attach_thread): Likewise.
10759         Remove the verbose parameter.
10760         (check_event): Make detach_thread be verbose
10761         only if print_thread_events is set.
10762         * linux-nat.c (lin_lwp_attach_lwp): Don't inform
10763         about new thread.  This is called only from
10764         linux-thread-db.c:attach_thread, which will take care.
10765         Remove the verbose parameter.
10766         * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.
10767
10768 2008-01-23  Nick Roberts  <nickrob@snap.net.nz>
10769
10770         * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.
10771
10772 2008-01-22  Vladimir Prus  <vladimir@codesourcery.com>
10773
10774         * breakpoint.c (break_command_really): New parameter
10775         ignore_count.
10776         (break_command_1): Pass 0 as
10777         ignore_count to break_command_really.
10778         (gdb_breakpoint): Pass ignore_count to
10779         break_command_really.
10780
10781 2008-01-21  Kevin Buettner  <kevinb@redhat.com>
10782
10783         * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
10784         sigcontext struct via pointer.
10785         (struct sigframe comment): Update to show new field `psc'.
10786
10787 2008-01-21  Vladimir Prus  <vladimir@codesourcery.com>
10788
10789         * infrun.c (handle_inferior_event): If
10790         we failed to remove breakpoints, error,
10791         don't try to increment PC by hand.
10792
10793 2008-01-18  Nick Hudson  <nick.hudson@dsl.pipex.com>
10794
10795         Add NetBSD/hppa target and host support.
10796
10797         * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
10798         (hppabsd_gregset): Move to ...
10799         (hppabsd_regset_from_core_section): Rename
10800         hppaobsd_regset_from_core_section and move to ...
10801         (hppabsd_find_global_pointer): Update comment.
10802         (hppabsd_init_abi): Make global. Do not register
10803         hppabsd_regset_from_core_section.
10804         (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
10805         move to ...
10806         (_initialize_hppabsd_tdep): Move to ...
10807         * hppaobsd-tdep.c: ... here. New file.
10808         * hppnbsd-tdep.c: New file.
10809         * hppnbsd-nat.c: New file.
10810         * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
10811         (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
10812         (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
10813         (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
10814         * configure.host (hppa*-*-netbsd*): New entry.
10815         * configure.tgt (hppa*-*-netbsd*): New entry.
10816         (hppa*-*-openbsd*): Update.
10817         * NEWS (New native configuration): Mention NetBSD/hppa.
10818         (New targets): Mention NetBSD/hppa.
10819
10820 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
10821
10822         * gdbarch.sh (function_list): Add new property bits_big_endian to
10823         gdbarch structure.
10824         * gdbarch.{c,h}: Regenerate.
10825
10826         * value.c (struct value): Replace BITS_BIG_ENDIAN by
10827         gdbarch_bits_big_endian (comment).
10828         (unpack_field_as_long, modify_field): Likewise.
10829         * value.h: Likewise (comment).
10830         * valops.c (value_slice): Likewise.
10831         * valarith.c (value_subscript, value_bit_index): Likewise.
10832         * gdbtypes.h (field): Likewise (comment).
10833         * eval.c (evaluate_subexp_standard): Likewise.
10834         * dwarf2read.c (dwarf2_add_field): Likewise.
10835         * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
10836         (move_bits, ada_value_assign, value_assign_to_component): Likewise.
10837
10838         * defs.h (BITS_BIG_ENDIAN): Remove.
10839
10840 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
10841
10842         * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
10843         function calls.
10844         * m2-exp.y (yylex): Likewise.
10845         * objc-exp.y (yylex): Likewise.
10846
10847         * defs.h (DEPRECATED_STREQN): Remove.
10848
10849 2008-01-17  H.J. Lu  <hjl.tools@gmail.com>
10850
10851         * MAINTAINERS: Update my email address.
10852
10853 2008-01-17  Jim Blandy  <jimb@codesourcery.com>
10854
10855         * README: Mention gdbserver/README.
10856
10857 2008-01-17  Pierre Muller  <muller@ics.u-strasbg.fr>
10858
10859         * valarith.c (value_binop): Handle BINOP_INTDIV
10860         for unsigned and signed integers.
10861
10862 2008-01-17  Ulrich Weigand  <uweigand@de.ibm.com>
10863
10864         * s390-tdep.c (s390_gdbarch_init): Set default long double
10865         type to 128-bit IEEE quad.
10866
10867 2008-01-17  Joel Brobecker  <brobecker@adacore.com>
10868
10869         * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
10870
10871 2008-01-16  Mark Kettenis  <kettenis@gnu.org>
10872
10873         * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.
10874
10875         * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
10876         * value.c: All callers changed.
10877
10878 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10879
10880         * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
10881         DEPRECATED_STREQ by its expression.
10882         * coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
10883         * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
10884         (scan_xcoff_symtab): Likewise.
10885         * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
10886         * f-lang.c (find_common_for_function): Likewise.
10887         * objc-exp.y (parse_number): Likewise.
10888
10889         * defs.h (DEPRECATED_STREQ): Remove.
10890
10891 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10892
10893         * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
10894         * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
10895         get_frame_arch to get at the current_architecture. Update AM33_MODE
10896         call.
10897         (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
10898         (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
10899         architecture.
10900         (set_reg_offsets, mn10300_analyze_prologue): Fix indentation.
10901
10902 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10903
10904         * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
10905         parameter.
10906         * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.
10907
10908         (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
10909         current_gdbarch by gdbarch. Update caller.
10910
10911         * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
10912         (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
10913         the current architecture. Update calls of
10914         amd64_native_gregset_supplies_p.
10915         * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
10916         (amd64bsd_store_inferior_registers): Likewise.
10917
10918 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10919
10920         * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
10921         Replace current_gdbarch by gdbarch. Update caller.
10922
10923 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
10924
10925         * dbxread.c (repeated_header_complaint, dbx_symfile_init)
10926         (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
10927         (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
10928         (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
10929         (stabsect_build_psymtabs): Fix indentation.
10930
10931 2008-01-15  Michael Snyder  <msnyder@specifix.com>
10932
10933         * corelow.c (core_xfer_partial): Comment, cut/paste error.
10934
10935 2008-01-14  Pierre Muller  <muller@ics.u-strasbg.fr>
10936
10937         * win32-nat.c (win32_create_inferior): Restore code calling
10938         CloseHandle on ProcessInformation structure.
10939
10940 2008-01-13  Nick Hudson  <nick.hudson@dsl.pipex.com>
10941
10942         * configure.ac: Check for void * as 3 argument of ptrace.
10943         * configure: regenerate.
10944
10945 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
10946
10947         * alpha-tdep.c (alpha_heuristic_proc_start)
10948         (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
10949         current_gdbarch by gdbarch.
10950
10951         (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
10952         current architecture by frame_info. Update alpha_heuristic_proc_start
10953         call.
10954
10955         (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
10956         get_frame_arch to get at the current architecture by frame_info. Update
10957         alpha_sigtramp_register_address call.
10958
10959         * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
10960         current_gdbarch by gdbarch. Update caller.
10961         (convert_to_extended, convert_from_extended): Add endianess parameter
10962         for comparison. Update caller.
10963         (arm_extract_return_value, arm_store_return_value): Use
10964         get_regcache_arch to get at the current architecture.
10965
10966         * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
10967         current_gdbarch by gdbarch. Update caller.
10968         (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
10969         gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.
10970
10971         * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
10972         gdbarch as parameter. Update caller.
10973         (h8300_init_frame_cache): Add gdbarch as parameter. Replace
10974         current_gdbarch by gdbarch. Update caller.
10975
10976         * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
10977         update caller. Replace current_gdbarch by gdbarch.
10978
10979         * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
10980         the current architecture. Replace current_gdbarch by gdbarch.
10981         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
10982         (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
10983         expression. Add gdbarch as parameter and replace current_gdbarch with
10984         it. Update caller.
10985         (M6811_TDEP): Remove.
10986         (m68hc11_frame_prev_register): Use get_frame_arch to get at the current
10987         architecture.
10988         (m68hc11_scan_prologue): Add gdbarch as parameter. Replace
10989         current_gdbarch by gdbarch. Update caller.
10990
10991         * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
10992         update caller.
10993         (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
10994         by gdbarch.
10995
10996         * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
10997         caller. Relace current_gdbarch by gdbarch.
10998         (altivec_register_p, spe_register_p): Likewise.
10999         * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
11000         parameter.
11001         * ppc-linux-nat.c (fetch_register, store_register): Update caller of
11002         altivec_register_p and spe_register_p.
11003
11004         * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
11005         caller. Replace current_gdbarch by gdbarch.
11006         (score_analyze_prologue): use get_frame_arch to get at the current
11007         architecture.
11008
11009         * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
11010         * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
11011         current_gdbarch by gdbarch. Update caller.
11012         (sparc_frame_cache): Use get_frame_arch to get at the current
11013         architecture.
11014         * sparce64-tdep.c (sparc64_skip_prologue): Update call of
11015         sparc_analyze_prologue.
11016
11017         * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
11018         parameter.
11019
11020 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11021
11022         * exec.c: #include "arch-utils.h"
11023          (print_section_info): Use gdbarch_from_bfd to get at the
11024         current architecture. Replace current_gdbarch. Fix indention. Replace
11025         deprecated_print_address_numeric by paddress.
11026         * Makefile.in (exec.o) Add dependency to arch-utils.h.
11027
11028         * valprint.c (val_print_string): Replace
11029         deprecated_print_address_numeric.
11030         * tracepoint.c (trace_mention, scope_info): Likewise.
11031         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
11032         (print_symbol, print_partial_symbols, maintenance_info_psymtabs)
11033         (maintenance_check_symtabs): Likewise.
11034         * symfile.c (list_overlays_command): Likewise.
11035         * stack.c (frame_info, print_block_frame_labels): Likewise.
11036         * printcmd.c (print_address, print_address_demangle)
11037         (address_info): Likewise.
11038         * corefile.c (memory_error): Likewise.
11039         * infcmd.c (jump_command): Likewise.
11040         * breakpoint.c (insert_bp_location, describe_other_breakpoints)
11041         (mention, delete_breakpoint): Likewise.
11042         * c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
11043         * dwarf2read.c (dump_die): Likewise.
11044         * ada-valprint.c (ada_val_print_1): Likewise.
11045         * f-valprint.c (f_val_print): Likewise.
11046         * linux-fork.c (info_forks_command): Likewise.
11047         * m32r-com.c (m32r_load_section, m32r_load)
11048         (m32r_upload_command): Likewise.
11049
11050         * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
11051
11052 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
11053
11054         * gdbarch.sh (skip_prologue): Add gdbarch
11055         as parameter.
11056         * gdbarch.{c,h}: Regenerate.
11057
11058         * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
11059         * amd64-tdep.c (amd64_skip_prologue): Likewise.
11060         * avr-tdep.c (avr_skip_prologue): Likewise.
11061         * cris-tdep.c (cris_skip_prologue): Likewise.
11062         * frv-tdep.c (frv_skip_prologue): Likewise.
11063         * h8300-tdep.c (h8300_skip_prologue): Likewise.
11064         * hppa-tdep.c (hppa_skip_prologue): Likewise.
11065         * i386-tdep.c (i386_skip_prologue): Likewise.
11066         * ia64-tdep.c (ia64_skip_prologue): Likewise.
11067         * iq2000-tdep.c (iq2000_skip_prologue): Likewise.
11068         * m32r-tdep.c (m32r_skip_prologue): Likewise.
11069         * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
11070         * m68k-tdep.c (m68k_skip_prologue): Likewise.
11071         * m88k-tdep.c (m88k_skip_prologue): Likewise.
11072         * mep-tdep.c (mep_skip_prologue): Likewise.
11073         * mips-tdep.c (mips_skip_prologue): Likewise.
11074         * mn10300-tdep.c (mn10300_skip_prologue): Likewise.
11075         * mt-tdep.c (mt_skip_prologue): Likewise.
11076         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
11077         * score-tdep.c (score_skip_prologue): Likewise.
11078         * sh64-tdep.c (sh64_skip_prologue): Likewise.
11079         * sh-tdep.c (sh_skip_prologue): Likewise.
11080         * sparc64-tdep.c (sparc64_skip_prologue): Likewise.
11081         * sparc-tdep.c (sparc32_skip_prologue): Likewise.
11082         * spu-tdep.c (spu_skip_prologue): Likewise.
11083         * v850-tdep.c (v850_skip_prologue): Likewise.
11084         * vax-tdep.c (vax_skip_prologue): Likewise.
11085         * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
11086         * xtensa-tdep.c (xtensa_skip_prologue): Likewise.
11087
11088         * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
11089         current_gdbarch by gdbarch.
11090         * m32c-tdep.c (m32c_skip_prologue): Likewise.
11091         * s390-tdep.c (s390_skip_prologue): Likewise.
11092
11093 2008-01-10  Doug Evans  <dje@google.com>
11094
11095         * defs.h (struct continuation_arg): Fix typo in comment.
11096         * target.c (target_translate_tls_address): Fix comment spelling error.
11097
11098 2008-01-09  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11099
11100         * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
11101         (DOUBLEST_SCAN_FORMAT): Likewise.
11102         * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
11103         * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
11104         * c-exp.y (parse_number): Likewise.
11105         * jv-exp.y (parse_number): Likewise.
11106         * objc-exp.y (parse_number): Likewise.
11107         * p-exp.y (parse_number): Likewise.
11108
11109 2008-01-09  Joel Brobecker  <brobecker@adacore.com>
11110
11111         * gdbtypes.c (create_array_type): Add handling of null Ada arrays.
11112         (check_typedef): Likewise.
11113
11114 2008-01-09  Luis Machado  <luisgpm@br.ibm.com>
11115
11116         * printcmd.c (printf_command): Add seen_big_h, seen_big_d and
11117         seen_double_big_d, treat the new H, D, and DD modifiers as length
11118         modifiers.
11119
11120 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11121
11122         * dwarf2read.c (read_enumeration_type): Add comment.
11123
11124 2008-01-08  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11125
11126         * config.in: Regenerate.
11127
11128 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
11129
11130         * ada-lang.c (ada_convert_actual): Renames convert_actual.
11131         Make non-static.
11132         (ada_convert_actuals): Delete.
11133         * ada-lang.h (ada_convert_actual): Add declaration.
11134         (ada_convert_actuals): Remove declaration.
11135         * infcall.c: #include "ada-lang.h".
11136         (value_arg_coerce): Add new parameter sp.  Update function
11137         documetnation.  Add handling of Ada function call parameters.
11138         * Makefile.in (infcall.o): Update dependencies.
11139
11140 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
11141
11142         * ada-lang.c (ensure_lval): Fix value lval kind.
11143         (convert_actual): Add handling for arguments passed by reference.
11144
11145 2008-01-08  Doug Evans  <dje@google.com>
11146
11147         * dbxread.c (read_dbx_symtab): Fix indentation.
11148
11149 2008-01-07  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11150
11151         * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
11152         (valarith.o): Depend on dfp.h.
11153         (valops.o): Likewise.
11154         * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
11155         (set_decnumber_context): New function.
11156         (decimal_check_errors): Likewise.
11157         (decimal_from_number): Likewise.
11158         (decimal_to_number): Likewise.
11159         (decimal_from_string): Use set_decnumber_context and
11160         decimal_check_errors.
11161         (decimal_from_integral): New function.
11162         (decimal_from_floating): Likewise.
11163         (decimal_to_double): Likewise.
11164         (promote_decimal): Likewise.
11165         (decimal_binop): Likewise.
11166         (decimal_is_zero): Likewise.
11167         (decimal_compare): Likewise.
11168         (decimal_convert): Likewise.
11169         * dfp.h (decimal_from_integral): New prototype.
11170         (decimal_from_floating): Likewise.
11171         (decimal_to_double): Likewise.
11172         (decimal_binop): Likewise.
11173         (decimal_is_zero): Likewise.
11174         (decimal_compare): Likewise.
11175         (decimal_convert): Likewise.
11176         * eval.c (evaluate_subexp_standard): Remove expect_type argument from
11177         call to value_from_decfloat.
11178         * valarith.c: Include dfp.h.
11179         (value_args_as_decimal): New function.
11180         (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
11181         (value_logical_not): Likewise.
11182         (value_equal): Likewise.
11183         (value_less): Likewise.
11184         (value_pos): Likewise.
11185         (value_neg): Formatting fix.
11186         * valops.c: Include dfp.h.
11187         (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
11188         * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
11189         (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
11190         (value_from_decfloat): Remove expect_type argument.
11191         * value.h (value_from_decfloat): Update prototype.
11192
11193 2008-01-07  Vladimir Prus  <vladimir@codesourcery.com>
11194
11195         Ignore change in name of dynamic linker during
11196         execution on Solaris.  This also unbreaks pending breakpoints.
11197
11198         * solist.h (struct target_so_ops): New field same.
11199         * solib-svr4.c (svr4_same): New.
11200         (_initialize_svr4_solib): Register svr4_same.
11201         * solib.c (update_solib_list): Use ops->same, if available.
11202
11203 2008-01-06  Christopher Faylor  <me+cygwin@cgf.cx>
11204
11205         * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
11206         when using MS-DOS paths.
11207
11208 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11209
11210         * NEWS: Mention --pid and --core command line behaviour changes.
11211
11212 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
11213
11214         * main.c (captured_main): Remove 'count' varible and the
11215         ALIGN_STACK_ON_ENTRY block that used it.  Error out if --core and
11216         --pid options were issued simultaneously.  If an explicit pid
11217         option was passed, don't fallback to core file.  Detect extra
11218         arguments better in the presence of explicit pid or core
11219         arguments.
11220
11221 2008-01-05  Joel Brobecker  <brobecker@adacore.com>
11222
11223         * ada-lang.c (ada_which_variant_applies): Correctly compute
11224         the value of the discriminant when the variant record is packed.
11225
11226 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11227
11228         * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
11229         that are used to differentiate homonyms.
11230
11231 2008-01-04  Jerome Guitton  <guitton@adacore.com>
11232
11233         * ada-lang.c (decode_packed_array_type): Avoid a seg fault
11234         when the type is an anonymous pointer type.
11235         (ada_check_typedef): Avoid a seg fault when the type is null.
11236         * ada-typeprint.c (print_array_type): Add support for pointer
11237         to packed arrays.
11238
11239 2008-01-04  Paul N. Hilfinger  <hilfinger@adacore.com>
11240
11241         * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.
11242
11243 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11244
11245         * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
11246         EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.
11247
11248 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
11249
11250         * ada-exp.y (chop_separator): New function.
11251         (write_selectors): Rewrite to re-use chop_separator.
11252         (ada_nget_field_index, get_symbol_field_type): New functions.
11253         (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
11254         expressions.
11255
11256 2008-01-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11257
11258         * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
11259         of SYMBOL_VALUE when working with function symbols.
11260
11261 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11262
11263         * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
11264         expressions.  These expressions do not need to be rewriten.
11265
11266 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11267
11268         * dwarf2read.c (read_enumeration_type): Flag type as stub if
11269         the given die is a declaration.
11270
11271 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11272
11273         * ada-lang.c (ada_array_bound_from_type): Make non-static.
11274         Handle properly the case when the index type is an enumerated type.
11275         Do not return the subtype of the bounds type, just return the
11276         bounds type directly - this is not needed and is more consistent
11277         with what we do for arrays when no XA parallel type exists.
11278
11279 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11280
11281         * ada-lang.c (static_unwrap_type): Add forward declaration.
11282         (template_to_static_fixed_type): Fields of dynamic types sometimes
11283         also need to be unwrapped. Take this into account.
11284         (ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
11285         (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
11286         * ada-typeprint.c (ada_print_type): Get the typename from
11287         the original type, not the base type.
11288
11289 2008-01-03  Jerome Guitton  <guitton@adacore.com>
11290
11291         * ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
11292         (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
11293         Update calls to ada_to_fixed_type.
11294         (ada_template_to_fixed_record_type_1): Ditto, but without looking
11295         for the tag.
11296         (ada_to_fixed_type): Add check_tag parameter; do not look for
11297         tag if null.  When looking for a tag, use a fixed record type.
11298         * ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
11299         * ada-valprint.c (printable_val_type, ada_value_print): Update
11300         calls to ada_to_fixed_type.
11301
11302 2008-01-03  Luis Machado  <luisgpm@br.ibm.com>
11303
11304         * doublest.c (convert_floatformat_to_doublest): Call
11305         floatformat_to_doublest instead of floatformat_to_double and use
11306         DOUBLEST variables.
11307         (convert_doublest_to_floatformat): Call floatformat_from_doublest
11308         instead of floatformat_from_double and use DOUBLEST variables.
11309
11310 2008-01-03  Nick Hudson  <nick.hudson@dsl.pipex.com>
11311
11312         * MAINTAINERS (Write After Approval): Add self.
11313
11314 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
11315
11316         * symfile.c (set_initial_language): Make non-static.
11317         * symfile.h (set_initial_language): Add declaration.
11318         * language.c: #include "symfile.h".
11319         (set_language): Call set_initial_language if the frame language
11320         could not be determined.
11321
11322 2008-01-03  Paul N. Hilfinger  <hilfinger@adacore.com>
11323
11324         * eval.c (evaluate_subexp_for_address): Provide frame address to
11325         locate_var_value only if it will be needed.
11326
11327 2008-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
11328
11329         * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.
11330
11331 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11332
11333         * ada-lang.c (ada_evaluate_subexp): Modify the value returned
11334         when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
11335         This is needed to make sure that any other treatment applied
11336         to the resulting value does not fail for spurious reason,
11337         such as trying to take the address of this value.
11338
11339 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
11340
11341         * ada-lang.c (ada_value_equal): Dereference reference types when
11342         comparing arrays.
11343
11344 2008-01-01  Daniel Jacobowitz  <dan@codesourcery.com>
11345
11346         Updated copyright notices for most files.
11347
11348 2008-01-01  Christopher Faylor  <me+gdb@cgf.cx>
11349
11350         * win32-nat.c (psapi_module_handle): Remove static.
11351         (get_module_name): Rename from psapi_get_dll_name.  Revamp slightly to
11352         return first module found if base_address is zero.  Don't initialize
11353         psapi function pointers here.  Convert to cygwin paths when
11354         appropriate.
11355         (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
11356         executable name.  Use get_module_name when that fails or when
11357         !__CYGWIN__.
11358         (_initialize_psapi): New function.  Initialize psapi stuff before it is
11359         needed or issue a warning if it is not found.  Move psapi_module_handle
11360         here.
11361
11362 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11363
11364         * ada-lang.c (ada_remove_trailing_digits): New function.
11365         (ada_remove_po_subprogram_suffix): New function.
11366         (ada_decode): Improve. Move the description of the algorithm
11367         directly inside the code, instead of in the function global
11368         description.
11369
11370 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11371
11372         * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
11373         and always print the dereferenced value.
11374
11375 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11376
11377         * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
11378         of the case where the first argument is a reference.
11379         (ada_evaluate_subexp, case BINOP_ADD): Likewise.
11380
11381 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11382
11383         Implement support for Ada interface types.
11384
11385         * ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
11386         (ada_is_ignored_field): Ignore fields that are a dispatch table
11387         of a tagged type.
11388
11389 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11390
11391         * top.c (print_gdb_version): Update copyright year.
11392
11393 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
11394
11395         * ChangeLog-2007: New ChangeLog rotation.
11396         * ChangeLog: Reset for 2008.
11397         * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
11398         ChangeLog-2007.
11399
11400 For older changes see ChangeLog-2007.
11401 \f
11402 Local Variables:
11403 mode: change-log
11404 left-margin: 8
11405 fill-column: 74
11406 version-control: never
11407 coding: utf-8
11408 End: