* dcache.c (state_chars): New static global.
[external/binutils.git] / gdb / ChangeLog
1 2008-09-23  Doug Evans  <dje@google.com>
2
3         * dcache.c (state_chars): New static global.
4         (ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
5         All uses updated.
6         (dcache_info): Print cache state as mnemonically useful letters instead
7         of magic numbers.
8
9         * dwarf2read.c (comp_unit_head): Reorganize for better packing.
10
11 2008-09-22  Tom Tromey  <tromey@redhat.com>
12
13         * symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
14         printf_filtered.
15
16 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
17
18         * infrun.c (follow_exec): Don't do a generic mourn.  Instead
19         inline the required bits.
20         * breakpoint.h (enum inf_context): Add inf_execd.
21
22 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
23
24         * infrun.c (handle_inferior_event): In the follow exec case,
25         context-switch before doing anything else.
26
27 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
28
29         * top.c (any_thread_of, kill_or_detach): New functions.
30         (quit_target): Iterate over all inferiors, killing or detaching
31         accordingly.
32
33 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
34
35         Remove the attach_flag global, and make it per-inferior.
36
37         * inferior.h (attach_flag): Delete.
38         (inferior_process): Declare.
39         * solib.c (update_solib_list): Adjust.
40         * gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
41         * inf-ptrace.c (inf_ptrace_detach): Adjust.
42         (inf_ptrace_files_info): Get it from the current inferior.
43         * inf-ttrace.c (inf_ttrace_attach): Adjust.
44         (inf_ttrace_files_info): Get it from the current
45         inferior.
46         * inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
47         (clear_sigint_trap): Get it from the current process.
48         * remote.c (extended_remote_attach_1)
49         (extended_remote_create_inferior_1): Adjust.
50         * top.c (quit_confirm, quit_target): Get it from the current inferior.
51         * procfs.c (do_detach): Adjust.
52         (procfs_wait): Get it from the event inferior.
53         (procfs_files_info): Get it from the current inferior.
54         * nto-procfs.c (procfs_files_info): Likewise.
55         (procfs_attach): Adjust.  Set the attach_flag here.
56         (do_attach): Don't set it here.
57         (procfs_detach): Don't clear it.
58         (procfs_mourn_inferior): Don't clear it.
59         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
60         * target.c (attach_flag): Delete.
61         (generic_mourn_inferior): Don't clear it.
62         * win32-nat.c (get_win32_debug_event): Get it from the event
63         process.
64         (do_initial_win32_stuff): Add attaching argument.  Set attach_flag
65         in the inferior accordingly.
66         (win32_attach): Don't set the attach_flag here.  Pass 1 to
67         do_intial_win32_stuff.
68         (win32_files_info): Get it from the current inferior.
69         (win32_create_inferior): Dont clear attach_flag here.  Pass 0 to
70         do_intial_win32_stuff.
71
72 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
73
74         Make the stop_soon global be per-inferior instead.
75
76         * infcmd.c (attach_command_post_wait): Adjust.
77         (attach_command): Likewise.
78
79         * inferior.h (stop_soon): Delete.
80         (struct inferior): Add stop_soon member.
81
82         * infrun.c (stop_soon): Delete.
83         (clear_proceed_status, start_remote)
84         (fetch_inferior_event, handle_inferior_event): Adjust.
85         (signal_stop_state): Don't check stop_soon here.  Check in callers
86         instead.
87         (save_inferior_status, restore_inferior_status): Adjust.
88
89         * linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
90         signals to common code if starting up the inferior.
91         
92         * inferior.h (struct inferior_info): Added stop_soon member.
93         * inferior.c (add_inferior) Clear stop_soon.
94
95         * mips-tdep.c (heuristic_proc_start): Adjust.
96         * nto-procfs.c (procfs_create_inferior): Adjust.
97         * solib-irix.c (irix_solib_create_inferior_hook): Adjust.
98         * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
99         * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
100         * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
101
102         * win32-nat.c (do_initial_win32_stuff): Adjust.
103
104         * alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
105
106 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
107
108         Implement remote multi-process extensions.
109
110         * remote.c (struct remote_state): Add extended and
111         multi_process_aware fields.
112         (remote_multi_process_p): New.
113         (PACKET_vKill): New.
114         (record_currthread): Use thread_change_ptid.  Notice new
115         inferiors.
116         (set_thread, remote_thread_alive): Use write_ptid.
117         (write_ptid, read_ptid): New.
118         (remote_current_thread, remote_threads_extra_info): Use them.
119         (remote_threads_info): Likewise.  Detect new inferiors.
120         (remote_start_remote): Add inferior to inferior list.
121         (remote_multi_process_feature): New.
122         (remote_protocol_features): Add "multiprocess" feature.
123         (remote_query_supported): Pass "multiprocess+" as supported
124         features.
125         (remote_open_1): Clear multi_process_aware.  Set extended
126         accordingly.
127         (remote_detach_1): Detach current process.  Use extended packet
128         format for extended-remote multi-process.  Detach process from the
129         inferior list.  Only mourn after printing output.
130         (extended_remote_attach_1): Add process to the inferior list.
131         (remote_vcont_resume): Use write_ptid to pass the thread ids.
132         (remote_wait): Use read_ptid.  Implement the extended
133         multi-process extension format of the 'W' and 'X' reply packets.
134         Remove exited inferiors from inferior list.
135         (remote_xfer_memory): Set general thread.
136         (remote_vkill): New.
137         (extended_remote_kill): New.
138         (remote_mourn_1): Discard all inferiors.
139         (select_new_thread_callback): New.
140         (extended_remote_mourn_1): If there are more processes to debug,
141         switch to a thread in another process, and don't pop the target.
142         (extended_remote_create_inferior_1): Add the new process to the
143         inferior list.
144         (remote_stopped_by_watchpoint): Indenting.
145         (remote_xfer_partial): Set the general thread.
146         (remote_pid_to_str): If the remote is multi-process aware, print
147         the process id as well as the thread id.
148         (remote_get_thread_local_address): Use write_ptid.
149         (init_extended_remote_ops): Register extended_remote_kill.
150         (_initialize_remote): Register new packets.  Change
151         magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
152         member to 42000.
153
154         * thread.c (thread_change_ptid): Also account for the inferior pid
155         changing.
156
157         * inferior.h (discard_all_inferiors): Declare.
158         * inferior.c (discard_all_inferiors): New.
159
160 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
161
162         * gnu-nat.c (gnu_attach): Add process to inferiors table.
163         (gnu_detach): Remove it.
164         * go32-nat.c (go32_create_inferior): Add process to gdb's inferior
165         table.
166         * inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
167         to inferior table accordingly.
168         (inf_ptrace_attach): Add new process to inferior table.
169         (inf_ptrace_detach): Remove it.
170         * inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
171         to inferior table accordingly.
172         (inf_ttrace_attach): Add process to inferior table.
173         (inf_ttrace_detach): Remove it.
174         * linux-fork.c (init_fork_list): Delete any left over inferior.
175         (linux_fork_mourn_inferior, detach_fork_command): Also delete
176         processes from inferior list.
177         * monitor.c (monitor_open): Add process to inferior list.
178         (monitor_close): Remove it.
179         * nto-procfs.c (procfs_attach): Add process to inferior list.
180         Find threads after pushing the target.
181         (procfs_detach): Remove process from inferior list.
182         (procfs_create_inferior): Add process to inferior list.
183         * procfs.c (procfs_detach): Remove process from inferior list.
184         (do_attach): Add process to inferior list.
185         * remote-sim.c (sim_create_inferior): Add process to inferior list.
186         (gdbsim_close): Remove it.
187         * target.c (generic_mourn_inferior): If inferior_ptid is not
188         null_ptid, remove the corresponding inferior from inferior list.
189         * win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
190         (win32_detach): Remove it.
191         * linux-nat.c (linux_child_follow_fork): Delete and add inferiors
192         to inferior list accordingly.
193         * fork-child.c (fork_inferior): Add process to inferior list.
194         * corelow.c (CORELOW_PID): Define.
195         (core_close): Remove core from inferior list.
196         (core_open): Add it.
197
198 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
199
200         * inferior.h: Forward declare struct ui_out.
201         Forward declare struct private_inferior.
202         (struct inferior): New.
203         (init_inferior_list, add_inferior, add_inferior_silent)
204         (delete_inferior, delete_inferior_silent, detach_inferior)
205         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
206         (valid_inferior_id, find_inferior_pid): New functions.
207         (inferior_callback_func): New typedef.
208         (iterate_over_inferiors, print_inferior, have_inferiors)
209         (current_inferior): New functions.
210         * inferior.c: New file.
211
212         * Makefile.in (SFILES): Add inferior.c.
213         (COMMON_OBS): Add inferior.o.
214
215 2008-09-22  Jonathan Larmour  <jifl@eCosCentric.com>
216
217         * arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
218         instead of determining symbol and line info directly.
219         * MAINTAINERS: Update my email address.
220
221 2008-09-22  Daniel Jacobowitz  <dan@codesourcery.com>
222
223         * symtab.c (skip_prologue_using_sal): Treat two consecutive lines
224         at the same address as a prologue marker.  Do not skip an entire
225         function.
226
227 2008-09-22  Andrew Stubbs  <ams@codesourcery.com>
228
229         * frame.c (get_frame_register_bytes): Comment improvments.
230
231 2008-09-22  Pedro Alves  <pedro@codesourcery.com>
232
233         * linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
234         all-stop mode.
235
236 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
237
238         * MAINTAINERS: Update my email address.
239
240 2008-09-19  Andrew Stubbs  <ams@codesourcery.com>
241
242         * frame.c (get_frame_register_bytes): Detect bad debug info.
243
244 2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
245
246         Fix a crash on uninitialized ECS->EVENT_THREAD for a newly found thread.
247         * infrun.c (wait_for_inferior): Move this ECS->EVENT_THREAD
248         initialization ...
249         (fetch_inferior_event): ... and this ECS->EVENT_THREAD initialization
250         ...
251         (handle_inferior_event): ... here after the add_thread call together
252         with the local adjust_pc_after_break and reinit_frame_cache calls.
253
254 2008-09-16  David Daney  <ddaney@avtrex.com>
255
256         * breakpoint.c (bpstat_stop_status): Clear breakpoint_at for
257         all hardware bpstats.
258
259 2008-09-16  Joel Brobecker  <brobecker@adacore.com>
260
261         * gstdint.h: Delete.
262
263 2008-09-15  Mark Kettenis  <kettenis@gnu.org>
264
265         * infcall.c (generic_push_dummy_code): Remove.
266         (push_dummy_code): Unconditionally call gdbarch_push_dummy_code.
267
268 2008-09-15  Doug Evans  <dje@google.com>
269
270         * dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
271         (struct attribute): Ditto.
272
273 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
274
275         * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind_cache): Record
276         HPPA_IPSW_REGNUM and HPPA_SAR_REGNUM values.
277
278         * hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
279         "#if 0" "#endif".  Fix mapping of DWARF DBX registers to GDB registers.
280         Correct arguments and improve comments.
281         (hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum.  Delete
282         disabled code.
283         * hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating
284         point DBX register, change error to warning, and improve comments.
285
286 2008-09-14  Doug Evans  <dje@google.com>
287
288         * dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.
289
290 2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
291
292         * hppa-linux-tdep.c (hppa_linux_supply_fpregset): Correct iteration.
293
294 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
295
296         * defs.h (GCC_GENERATED_STDINT_H): Define.
297
298 2008-09-13  Tom Tromey  <tromey@redhat.com>
299
300         * varobj.c (varobj_set_display_format): Use xfree.
301         * tracepoint.c (stringify_collection_list): Use xfree.
302         * remote-fileio.c (remote_fileio_reset): Use xfree.
303         * mipsread.c (read_alphacoff_dynamic_symtab): Use xfree.
304         * dfp.c (decimal_from_floating): Use xfree, xstrprintf.  Don't use
305         asprintf.
306         * cp-support.c (mangled_name_to_comp): Use xfree.
307
308 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
309
310         * ada-lang.c (remove_extra_symbols): Remove stub symbols if
311         the associated complete symbol is also in the list.
312         (ada_add_local_symbols, ada_add_non_local_symbols): New functions,
313         extracted out from ada_lookup_symbol_list.
314         (ada_lookup_symbol_list): Use them.  Remove the search through
315         the minimal symbols.
316
317 2008-09-13  Joel Brobecker  <brobecker@adacore.com>
318
319         * dwarf2read.c (add_partial_subprogram): New procedure.
320         (scan_partial_symbols): Use it.
321         (load_partial_dies): Read in children of subprogram and lexical
322         blocks for Ada compilation units.
323
324 2008-09-13  Tom Tromey  <tromey@redhat.com>
325
326         * symfile.c (build_id_verify): Free 'found'.
327         (find_separate_debug_file): Use xfree, not free.
328
329 2008-09-12  Doug Evans  <dje@google.com>
330
331         * corefile.c (write_memory): Remove unnecessary copying.
332
333         * sol-thread.c (_initialize_sol_thread): Add FIXME regarding
334         order of _initialize_* fns.
335
336         * dwarf2read.c (comp_unit_head): Rename first_die_ptr to
337         first_die_offset.  All uses updated.
338         Delete unused members cu_head_ptr, next.
339         Move members base_known, base_address to ...
340         (dwarf2_cu) ... here.  All uses updated.
341
342 2008-09-12  Pedro Alves  <pedro@codesourcery.com>
343
344         * Makefile.in (generated_files): Add $(NAT_GENERATED_FILES).
345         * config/i386/i386gnu.mh (NAT_GENERATED_FILES): New.
346
347 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
348
349         * fork-child.c (startup_inferior): Use target_wait and target_resume
350         directly instead of calling wait_for_inferior / resume.
351
352         * infcmd.c (kill_if_already_running): Do not call no_shared_libraries
353         or init_wait_for_inferior.
354         (run_command_1): Call init_wait_for_inferior.
355
356 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
357
358         * gdbtypes.h (builtin_type_void_data_ptr, builtin_type_void_func_ptr,
359         builtin_type_CORE_ADDR, builtin_type_char, builtin_type_short,
360         builtin_type_int, builtin_type_long, builtin_type_signed_char,
361         builtin_type_unsigned_char, builtin_type_unsigned_short,
362         builtin_type_unsigned_int, builtin_type_unsigned_long,
363         builtin_type_float, builtin_type_double, builtin_type_long_double,
364         builtin_type_complex, builtin_type_double_complex, builtin_type_string,
365         builtin_type_bool, builtin_type_long_long,
366         builtin_type_unsigned_long_long): Remove macros.
367
368         (builtin_type_f_character, builtin_type_f_integer,
369         builtin_type_f_integer_s2, builtin_type_f_logical,
370         builtin_type_f_logical_s1, builtin_type_f_logical_s2,
371         builtin_type_f_real, builtin_type_f_real_s8, builtin_type_f_real_s16,
372         builtin_type_f_complex_s8, builtin_type_f_complex_s16,
373         builtin_type_f_complex_s32): Likewise.
374
375         (builtin_type_m2_char, builtin_type_m2_int, builtin_type_m2_card,
376         builtin_type_m2_real, builtin_type_m2_bool): Likewise.
377
378         (struct builtin_f_type, builtin_f_type): Move to f-lang.h.
379         (struct builtin_m2_type, builtin_m2_type): Move to m2-lang.h.
380
381         * f-lang.h (struct builtin_f_type, builtin_f_type): Move here.
382         * m2-lang.h (struct builtin_m2_type, builtin_m2_type): Move here.
383
384 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
385
386         * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Use builtin types of
387         target_gdbarch instead of builtin_type_void_data_ptr.
388         (LM_DYNAMIC_FROM_LINK_MAP, LM_NEXT, LM_NAME,
389         IGNORE_FIRST_LINK_MAP_ENTRY, scan_dyntag, elf_locate_base,
390         solib_svr4_r_map, solib_svr4_r_brk, solib_svr4_r_ldsomap,
391         open_symbol_file_object): Likewise.
392         * nto-tdep.c (LM_ADDR): Likewise.
393
394 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
395
396         * bsd-uthread.c (bsd_uthread_read_memory_address): New function.
397         (bsd_uthread_fetch_registers, bsd_uthread_store_registers,
398         bsd_uthread_wait, bsd_uthread_find_new_threads): Use it.
399
400 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
401
402         * procfs.c (procfs_address_to_host_pointer): Use target_gdbarch
403         and its associated types to perform pointer conversion.
404         (procfs_can_use_hw_breakpoint): Likewise.
405         (procfs_auxv_parse): Remove unused variable.
406
407 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
408
409         * auxv.c (default_auxv_parse): Use gdbarch_ptr_bit (target_gdbarch)
410         instead of builtin_type_void_data_ptr.
411         * target.c (default_region_ok_for_hw_watchpoint): Likewise.
412
413 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
414
415         * expprint.c (print_subexp_standard): Compare against builtin type
416         associated with exp->gdbarch instead of builtin_type_char.
417
418         * f-valprint.c (f_val_print): Use extract_unsigned_integer to
419         extract values of arbitrary logical type.  Handle arbitrary
420         complex types.
421
422         * printcmd.c (float_type_from_length): New function.
423         (print_scalar_formatted, printf_command): Use it.
424
425 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
426
427         * valops.c: Include "objfiles.h" and "symtab.h".
428         (find_function_in_inferior): New argument OBJF_P.  Use it to return
429         objfile where function is defined.  Use per-objfile arch types
430         instead of builtin_type_ to define default return type.
431
432         * linux-fork.c (checkpoint_command): Update calls.  Use per-objfile
433         architecture to define inferior call argument types.
434         * gcore.c (derive_heap_segment): Likewise.
435         * objc-lang.c (value_nsstring): Likewise.
436         * scm-lang.c (scm_lookup_name): Likewise.
437         * scm-valprint.c (scm_inferior_print): Likewise.
438         * valops.c (value_allocate_space_in_inferior): Likewise.
439
440         * eval.c (evaluate_subexp_standard): Update calls.
441         * objc-lang.c (lookup_objc_class, print_object_command): Likewise.
442
443         * linux-fork.c: Include "objfiles.h".
444         * scm-lang.c: Include "objfiles.h".
445         * scm-valprint.c: Include "objfiles.h".
446
447 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
448
449         * gdbarch.sh (name_of_malloc): Remove.
450         * gdbarch.c, gdbarch.h: Re-generate.
451         * valops.c (value_allocate_space_in_inferior): Do not call
452         gdbarch_name_of_malloc.
453
454 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
455
456         * valarith.c (value_x_unop): Use builtin_type_int8 as type for
457         UNOP_POSTINCREMENT/UNOP_POSTDECREMENT constant 0 argument.
458         (value_bit_index): Use extract_unsigned_integer
459         instead of unpack_long to read single byte.
460
461 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
462
463         * infcall.c (value_arg_coerce): Add GDBARCH parameter.  Use its
464         associates types instead of builtin_type_ macros.
465         (find_function_addr): Leave output VALUE_TYPE NULL if unknown.
466         (call_function_by_hand): Use per-architecture "int" type as
467         fall-back if find_function_addr returns NULL VALUE_TYPE.
468         Update call to value_arg_coerce.
469
470 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
471
472         * cp-abi.h (cplus_method_ptr_size): Add TO_TYPE parameter.
473         (cplus_make_method_ptr): Add TYPE parameter.
474         * cp-abi.c (cplus_method_ptr_size): Add TO_TYPE parameter.  Pass it
475         on to current_cp_abi.method_ptr_size callback.
476         (cplus_make_method_ptr): Add TYPE parameter.  Pass it on to
477         current_cp_abi.make_method_ptr callback.
478
479         * gdbtypes.c (lookup_methodptr_type): Pass target type
480         argument to cplus_method_ptr_size.
481         * valops.c (value_cast): Pass type argument to cplus_make_method_ptr.
482         (value_struct_elt_for_reference): Likewise.
483
484         * gnu-v3-abi.c (get_class_arch): New function.
485         (vtable_address_point_offset): Add GDBARCH parameter.  Use it
486         instead of current_gdbarch.  Update all callers.
487         (gnuv3_get_vtable): Likewise.
488         (gnuv3_get_virtual_fn): Likewise.
489         (gnuv3_decode_method_ptr): Likewise.
490         (gnuv3_rtti_type): Call get_class_arch to determine architecture.
491         Use it instead of current_gdbarch.
492         (gnuv3_virtual_fn_field): Likewise.
493         (gnuv3_baseclass_offset): Likewise.
494         (gnuv3_print_method_ptr): Likewise.
495         (gnuv3_method_ptr_to_value): Likewise.
496         (gnuv3_method_ptr_size): Add TYPE parameter.  Use it to determine
497         class architecture.  Use architecture types instead of builtin types.
498         (gnuv3_make_method_ptr): Likewise.
499
500         * cp-valprint.c (cp_print_class_member): Expect pointer type
501         instead of class type.  Use its length when extracting value.
502         * c-valprint.c (c_val_print): Update call to cp_print_class_member.
503
504 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
505
506         * stack.c (return_command): Use frame architecture to determine
507         default integer return type.
508
509         * f-valprint.c (f77_get_dynamic_lowerbound): Use frame architecture
510         to determine pointer types.
511         (f77_get_dynamic_upperbound): Likewise.
512
513         * objc-lang.c (OBJC_FETCH_POINTER_ARGUMENT): Remove.
514         (resolve_msgsend): Use architecture of current frame to determine
515         pointer types.  Inline OBJC_FETCH_POINTER_ARGUMENT.
516         (resolve_msgsend_stret, resolve_msgsend_super,
517         resolve_msgsend_super_stret): Likewise.
518
519 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
520
521         * alpha-tdep.c (alpha_register_type): Use builtin_type (gdbarch)
522         instead of builtin_type_ macros.
523         * amd64-tdep.c (amd64_register_type): Likewise.
524         (amd64_get_longjmp_target): Likewise.
525         * arm-tdep.c (arm_register_type): Likewise.
526         * avr-tdep.c (avr_register_type): Likewise.
527         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
528         * frv-tdep.c (frv_register_type): Likewise.
529         * h8300-tdep.c (h8300_register_type): Likewise.
530         * hppa-tdep.c (hppa32_convert_from_func_ptr_addr, 
531         hppa_skip_trampoline_code): Likewise.
532         * i386-tdep.c (i386_register_type): Likewise.
533         (i386_unwind_pc, i386_sse_type): Likewise.
534         * ia64-tdep.c (ia64_register_type): Likewise.
535         * m32r-tdep.c (m32r_register_type): Likewise.
536         * m68k-tdep.c (m68k_register_type, m68k_unwind_pc): Likewise.
537         * m88k-tdep.c (m88k_register_type): Likewise.
538         * mep-tdep.c (mep_register_type): Likewise.
539         * mips-tdep.c (mips_pseudo_register_type): Likewise.
540         * mn10300-tdep.c (mn10300_register_type): Likewise.
541         * mt-tdep.c (mt_copro_register_type): Likewise.
542         * rs6000-tdep.c (rs6000_builtin_type_vec64): Likewise.
543         (rs6000_convert_register_p, rs6000_register_to_value,
544         rs6000_value_to_register): Likewise.
545         * s390-tdep.c (s390_register_type): Likewise.
546         * sh64-tdep.c (sh64_register_type): Likewise.
547         (sh64_build_float_register_type, sh64_do_fp_register): Likewise.
548         * sh-tdep.c (sh_sh2a_register_type, sh_sh3e_register_type,
549         sh_sh4_build_float_register_type, sh_sh4_register_type,
550         sh_default_register_type): Likewise.
551         * sparc64-tdep.c (sparc64_register_type): Likewise.
552         * sparc-tdep.c (sparc32_register_type): Likewise.
553         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
554         * v850-tdep.c (v850_register_type): Likewise.
555         * vax-tdep.c (vax_register_type): Likewise.
556         * xtensa-tdep.c (xtensa_register_type, xtensa_unwind_pc,
557         xtensa_push_dummy_call): Likewise.
558
559         * std-regs.c (value_of_builtin_frame_fp_reg,
560         value_of_builtin_frame_pc_reg): Likewise.
561         * target-descriptions.c (tdesc_register_type): Likewise.
562
563 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
564
565         * ada-lang.c (ada_coerce_to_simple_array_type): Use builtin_type_int32
566         instead of builtin_type_int as default unspecified integral type.
567         (ada_index_type, ada_array_bound_from_type, ada_variant_discrim_type,
568         assign_component, to_fixed_range_type): Likewise.
569         * ada-typeprint.c (print_range, print_range_bound,
570         print_range_type_named): Likewise.
571         * ada-valprint.c (print_optional_low_bound, ada_val_print_1): Likewise.
572         * eval.c (evaluate_subexp_standard): Likewise.
573         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
574         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
575         build_gdb_vtable_type): Likewise.
576         * jv-lang.c (java_array_type): Likewise.
577         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Likewise.
578         * m2-valprint.c (m2_print_long_set): Likewise.
579         * parse.c (follow_types): Likewise.
580         * p-typeprint.c (pascal_type_print_base): Likewise.
581         * valops.c (value_one, value_array, value_string,
582         value_bitstring): Likewise.
583         * value.c (allocate_repeat_value, value_from_string): Likewise.
584         * varobj.c (c_describe_child): Likewise.
585         * mt-tdep.c (mt_register_type): Likewise.
586         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
587         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
588
589 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
590
591         * defs.h (struct gdbarch): Add forward declaration.
592         (set_next_address): Add GDBARCH argument.
593         * printcmd.c (set_next_address): Use it to find pointer type.
594         * breakpoint.c (breakpoint_1): Update call.
595         * source.c (line_info): Likewise.
596         * findcmd.c (find_command): Use current_gdbarch to find pointer type.
597
598         * breakpoint.c (set_breakpoint_count): Use platform-neutral
599         types for internal variable values.
600         * infrun.c (handle_inferior_event): Likewise.
601         * source.c (forward_search_command, reverse_search_command): Likewise.
602         * tracepoint.c (set_tracepoint_count, set_traceframe_num,
603         set_tracepoint_num, set_traceframe_context): Likewise.
604
605 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
606
607         * gdbtypes.h (struct builtin_type): Remove builtin_true_char
608         and builtin_true_unsigned_char.
609         (builtin_type_true_char): Remove macro, add extern declaration.
610         (builtin_type_true_unsigned_char): Add extern declaration.
611         * gdbtypes.c (builtin_type_true_char): New global variable.
612         (builtin_type_true_unsigned_char): Likewise.
613         (_initialize_gdbtypes): Initialize them.
614         (gdbtypes_post_init): Do not initialize builtin_true_char
615         and builtin_true_unsigned_char members of struct builtin_type.
616
617         * printcmd.c (print_scalar_formatted): Do not use builtin_type;
618         use builtin_type_true_unsigned_char instead.
619
620         * ada-valprint.c (ada_val_print_1): Use builtin_type_true_char
621         instead of builtin_type_char for internal string.
622
623 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
624
625         * gdbtypes.h (builtin_type_void): Remove macro, add declaration.
626         (builtin_type_f_void): Remove macro.
627         * gdbtypes.c (builtin_type_void): New global variable.
628         (_initialize_gdbtypes): Initialize it.
629
630         * gnu-v3-abi.c (build_gdb_vtable_type): Do not call
631         lookup_pointer_type or lookup_function_type on builtin_type_void.
632         * printcmd.c (set_next_address): Likewise.
633         * objc-lang.c (value_nsstring): Likewise.
634         * mt-tdep.c (mt_copro_register_type): Likewise.
635         * xtensa-tdep.c (xtensa_register_type): Likewise.
636
637         * symfile.c (syms_from_objfile): Remove special handling
638         of builtin_type_void and builtin_type_char.
639
640 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
641
642         * eval.c (evaluate_subexp_standard): Use exp->gdbarch types instead
643         of builtin_type_ macros when handling OP_OBJC_ operations.
644         * objc-lang.c (print_object_command): Likewise.
645
646 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
647
648         * ada-valprint.c: Include "objfiles.h".
649         (ada_val_print_1): Use the gdbarch associated with the objfile whether
650         a System.Address type is defined to retrieve the proper pointer type
651         to use to print it.
652
653 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
654
655         * ada-lang.c (value_pos_atr): Add TYPE argument.  Use it as
656         result type instead of builtin_type_int.
657         (value_subscript_packed): Use pos_atr instead of value_pos_atr.
658         (ada_value_subscript): Update call to value_pos_atr.
659         (ada_value_ptr_subscript): Likewise.
660         (ada_evaluate_subexp): Likewise.
661
662 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
663
664         * ada-lang.c (cast_to_fixed): Do not cast to builtin_type_double.
665         (cast_from_fixed_to_double): Rename to ...
666         (cast_from_fixed): ... this.  Add TYPE parameter.  Use it instead
667         of builtin_type_double.
668         (ada_value_cast): Use cast_from_fixed instead of casting result
669         of cast_from_fixed_to_double.
670         (ada_evaluate_subexp): Update calls to cast_from_fixed_to_double. 
671
672 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
673
674         * valops.c (value_ind): No longer allow dereferencing an
675         integer type.
676         * eval.c (evaluate_subexp_standard): Handle deferencing an
677         integer type here.
678         * ada-lang.c (ada_evaluate_subexp): Likewise.
679
680 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
681
682         * ada-valprint.c (ada_val_print_1): When implicitly dereferencing
683         a reference type, pass the reference type directly to unpack_pointer.
684         * c-valprint.c (c_val_print): Likewise.
685         * f-valprint.c (f_val_print): Likewise.
686         * m2-valprint.c (print_variable_at_address, m2_val_print): Likewise.
687         * p-valprint.c (pascal_val_print): Likewise.
688
689 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
690
691         * eval.c (evaluate_subexp_standard): Use builtin_type_int8
692         to construct the EVAL_SKIP dummy return value.
693         * ada-lang.c (ada_evaluate_subexp): Likewise.
694         * jv-lang.c (evaluate_subexp_java): Likewise.
695         * m2-lang.c (evaluate_subexp_modula2): Likewise.
696         * scm-lang.c (evaluate_exp): Likewise.
697
698 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
699
700         * value.h (coerce_enum, coerce_number): Remove prototypes.
701         * value.c (coerce_enum, coerce_number): Remove.
702         * valarith.c (value_x_binop): Do not call coerce_enum.
703         (value_x_unop): Likewise.
704         (value_logical_not): Call coerce_array instead of coerce_number.
705
706 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
707
708         * ax-gdb.c: Include "language.h".
709         (gen_frame_args_address): Add GDBARCH parameter; use it
710         instead of current_gdbarch.
711         (gen_frame_locals_address): Likewise.
712         (gen_var_ref): Add GDBARCH parameter.  Update calls to
713         gen_frame_args_address and gen_frame_locals_address.  Use
714         pointer type from gdbarch.
715         (gen_usual_unary): Add EXP parameter.  Use integer type
716         from exp->gdbarch.
717         (gen_usual_arithmetic): Likewise.
718         (gen_integral_promotions): Likewise.
719         (gen_add, gen_sub): Remove.
720         (gen_ptradd, gen_ptrsub, gen_ptrdiff): New functions.
721         (gen_logical_not): Use passed-in boolean result type
722         instead of builtin_type_int.
723         (gen_complement): Do not call gen_usual_unary or
724         gen_integral_promotions.
725         (gen_struct_ref): Call require_rvalue instead of gen_usual_unary.
726         (gen_repeat): Add EXP parameter.  Update call to gen_expr.
727         Use builtin_type_int32 as internal range type.
728         (gen_sizeof): Add EXP and SIZE_TYPE parameters.  Use SIZE_TYPE
729         as result type.  Update call to gen_expr.
730         (gen_expr): Add EXP parameter.  Update calls to gen_expr,
731         gen_repeat, gen_var_ref, gen_usual_unary, gen_usual_arithmetic,
732         and gen_integral_promotions.  Call gen_ptradd, gen_ptrsub,
733         gen_ptrdiff, or gen_binop instead of gen_add or gen_sub.
734         Use exp->gdbarch instead of current_gdbarch.
735         Call language_bool_type to determine result type of UNOP_LOGICAL_NOT.
736
737 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
738
739         * eval.c (evaluate_subexp_standard): Add calls to binop_promote
740         and unop_promote before calling value_binop et. al.
741         * ada-lang.c (ada_evaluate_subexp): Add calls to binop_promote
742         and unop_promote before calling value_binop et. al.
743
744         * valarith.c (value_binop): Do not call binop_promote or unop_promote.
745         (value_pos): Do not call unop_promote.
746         (value_neg, value_complement): Likewise.
747
748 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
749
750         * value.h (unop_promote, binop_promote): Add prototypes.
751         * eval.c (unop_promote, binop_promote): New functions.
752         * valarith.c (unop_result_type, binop_result_type): Remove.
753         (value_binop): Call binop_promote or unop_promote.
754         Inline remaining parts of binop_result_type.  Remove special
755         code to truncate integer values for unsigned operations.
756         (value_pos): Call unop_promote.  Inline remaining parts of
757         unop_result_type.
758         (value_neg, value_complement): Likewise.
759
760 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
761
762         * value.h (value_add, value_sub): Remove.
763         (value_ptradd, value_ptrsub, value_ptrdiff): Add prototypes.
764         * valarith.c (value_add, value_sub): Remove.
765         (value_ptradd, value_ptrsub, value_ptrdiff): New functions.
766         (find_size_for_pointer_math): Add assertion.  Update comment.
767         (value_binop): Update comment.
768
769         * eval.c (ptrmath_type_p): New function.
770         (evaluate_subexp_standard): Replace value_add and value_sub
771         by value_ptradd, value_ptrsub, value_ptrdiff or value_binop.
772         Use builtin_type_uint8 instead of builtin_type_char to hold
773         the increment for BINOP_{PRE,POST}{IN,DE}CREMENT operations.
774         * valarith.c (value_subscript): Replace value_add by
775         value_ptradd.  Replace value_sub by value_binop.
776         * ada-lang.c (ada_value_ptr_subscript): Likewise.
777         (ada_tag_name_2): Replace value_add by value_ptradd.
778         (ada_evaluate_subexp): Replace value_add and value_sub by
779         value_binop.
780         * m2-lang.c (evaluate_subexp_modula2): Replace value_add
781         by value_ptradd.
782         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
783         * gnu-v3-abi.c (gnuv3_method_ptr_to_value): Likewise.
784
785 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
786
787         * eval.c (evaluate_subexp_for_sizeof): Use builtin_int type of
788         the expression architecture instead of builtin_type_int as the
789         sizeof return type.
790
791 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
792
793         * expression.h (enum exp_opcode): Document OP_COMPLEX to take
794         a type parameter as expression element.
795         * eval.c (evaluate_subexp_standard) [OP_COMPLEX]: Retrieve result
796         type as expression element.
797         * f-exp.y: Pass in type when buildin OP_COMPLEX expression.
798         * parse.c (operator_length_standard): Update length of OP_COMPLEX.
799
800 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
801
802         * language.h (struct language_arch_info): New members
803         bool_type_default and bool_type_symbol.
804         (lang_bool_type): Remove prototype.
805         (LA_BOOL_TYPE): Remove macro.
806         (language_bool_type): Add prototype.
807         * language.c (lang_bool_type): Remove.
808         (language_bool_type): New function.
809
810         * value.h (value_in): Change return value to int.
811         * value.c (value_in): Return int instead of struct value *.
812
813         * eval.c (evaluate_subexp_standard): Call language_bool_type instead
814         of using LA_BOOL_TYPE.  Update call to value_in.
815         * ada-lang.c (ada_evaluate_subexp): Call language_bool_type instead
816         of using LA_BOOL_TYPE or builtin_type_int for boolean values.
817
818         * language.c (unknown_language_arch_info): Set bool_type_default member
819         of struct language_arch_info.
820         * ada-lang.c (ada_language_arch_info): Set bool_type_symbol and
821         bool_type_default members of struct language_arch_info.
822         * c-lang.c (c_language_arch_info): Set bool_type_default member
823         of struct language_arch_info.
824         (cplus_language_arch_info): Set bool_type_symbol and bool_type_default
825         members of struct language_arch_info.
826         * f-lang.c (f_language_arch_info): Set bool_type_symbol and
827         bool_type_default members of struct language_arch_info.
828         * jv-lang.c (java_language_arch_info): Set bool_type_symbol and
829         bool_type_default members of struct language_arch_info.
830         * m2-lang.c (m2_language_arch_info): Set bool_type_symbol and
831         bool_type_default members of struct language_arch_info.
832         * p-lang.c (p_language_arch_info): Set bool_type_symbol and
833         bool_type_default members of struct language_arch_info.
834
835 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
836
837         * jv-lang.c (enum java_primitive_types): New type.
838         (java_language_arch_info): New function.
839         (java_language): Use it instead of c_language_arch_info.
840
841 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
842
843         * value.h (value_bitstring_subscript): New prototype.
844         * valarith.h (value_bitstring_subscript): New function.
845         (value_subscript): No longer handle TYPE_CODE_BITSTRING.
846         * eval.c (evaluate_subexp_standard): Call value_bitstring_subscript
847         instead of value_subscript to handle TYPE_CODE_BITSTRING.
848
849 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
850
851         * expression.h (struct expression): New member GDBARCH.
852         * parse.c (parse_exp_in_context): Initialize it.
853         * parser-def.h (parse_gdbarch, parse_language): New macros.
854
855         * ada-exp.y (parse_type): New macro.
856         Replace builtin_type_ macros by using parse_type.
857         Replace current_language by parse_language.
858         * ada-lex.l (processInt): Replace current_gdbarch by parse_gdbarch.
859         Replace builtin_type_ macros.
860
861         * c-exp.y (parse_type): New macro.
862         Replace builtin_type_ macros by using parse_type.
863         (parse_number): Replace current_gdbarch by parse_gdbarch.
864         (yylex): Replace current_language by parse_language.
865
866         * f-exp.y (parse_type, parse_f_type): New macros.
867         Replace builtin_type_ macros by using parse_{f_,}type.
868         (parse_number): Replace current_gdbarch by parse_gdbarch.
869         (yylex): Replace current_language by parse_language.
870
871         * jv-exp.y (parse_type): New macro.
872         (parse_number): Replace builtin_type_ macros by using parse_type.
873
874         * m2-exp.y (parse_type, parse_m2_type): New macros.
875         Replace builtin_type_ macros by using parse_{m2_,}type.
876
877         * objc-exp.y (parse_type): New macro.
878         Replace builtin_type_ macros by using parse_type.
879         (parse_number): Replace current_gdbarch by parse_gdbarch.
880         (yylex): Replace current_language by parse_language.
881
882         * p-exp.y (parse_type): New macro.
883         Replace builtin_type_ macros by using parse_type.
884         (parse_number): Replace current_gdbarch by parse_gdbarch.
885         (yylex): Replace current_language by parse_language.
886
887 2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
888
889         * parser-defs.h (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE
890         and DATA_SYMBOL_TYPE arguments.
891         * parse.c (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE and
892         DATA_SYMBOL_TYPE arguments.  Replace use of builtin_type_CORE_ADDR.
893         (write_dollar_variable): Update call.
894
895         * ada-exp.y (write_var_or_type): Update call.
896         * c-exp.y: Likewise.
897         * f-exp.y: Likewise.
898         * jv-exp.y: Likewise.
899         * m2-exp.y: Likewise.
900         * objc-exp.y: Likewise.
901         * p-exp.y: Likewise.
902
903 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
904
905         * ada-lang.c (ada_parent_type): Add handling of the case where
906         the _parent field is a pointer and/or has a parallel XVS type.
907         (ada_evaluate_subexp) [OP_VAR_VALUE]: When doing an
908         EVAL_AVOID_SIDE_EFFECTS evaluation of a tagged type, return
909         the type of the tag instead of doing forcing an EVAL_NORMAL
910         expression evaluation.
911
912 2008-09-10  Paul N. Hilfinger  <hilfinger@adacore.com> 
913             Joel Brobecker  <brobecker@adacore.com>
914
915         * ada-lang.c (is_digits_suffix): New function.
916         (is_dot_digits_suffix): Remove.
917         (ada_lookup_symbol_list): Remove digits suffix from minimal symbols
918         before looking up in symbol table, and do not use wild matches on them.
919         (wild_match): Reimplement for speed and to allow matching of operator
920         symbols.
921         (is_valid_name_for_wild_match): Return zero for names that do not
922         follow the GNAT encoding.
923
924         (is_name_suffix): Fix typo in comment.
925         (to_record_with_fixed_variant_part): Ditto.
926
927 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
928
929         * Makefile.in (gnu-nat.o): New rule.
930
931 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
932
933         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Use
934         archecture-neutral builtin_type_int32 instead of builtin_type_int.
935
936 2008-09-10  Joel Brobecker  <brobecker@adacore.com>
937
938         * ada-lang.c (ada_evaluate_subexp) [BINOP_ADD, BINOP_SUB]:
939         Add special handling for pointer types.
940
941 2008-09-10  Pedro Alves  <pedro@codesourcery.com>
942
943         * inf-ttrace.c (inf_ttrace_follow_fork): Declare locals at the
944         right scope level.
945         (inf_ttrace_resume, inf_ttrace_wait): Typos.
946
947 2008-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
948
949         * ada-lang.c (ada_array_length): Use builtin_type_int32 instead
950         of builtin_type_int.
951         (ada_evaluate_subexp) [UNOP_IN_RANGE]: Use operand range type
952         instead of builtin_type_int.
953
954 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
955
956         * infrun.c (normal_stop): Run hook-stop last.
957
958 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
959
960         * gnu-nat.c (gnu_pid_to_exec_file): Delete.
961         (init_gnu_ops): Don't register it.
962
963 2008-09-09  Pedro Alves  <pedro@codesourcery.com>
964
965         * gnu-nat.c (gnu_attach): Push target before fetching the list of
966         threads.
967
968 2008-09-08  Daniel Jacobowitz  <dan@codesourcery.com>
969
970         * valops.c (value_cast_structs): Return NULL for failure.
971         (value_cast): Handle NULL from value_cast_structs.
972         (value_fetch_lazy): Call check_typedef.  Remove unused variable.
973
974 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
975
976         * inferior.h (context_switch_to): Delete.
977         * infrun.c (context_switch): Don't save and load infrun state.
978         (context_switch_to): Delete.
979
980         * infcmd.c (proceed_thread_callback): Replace context_switch_to
981         calls by switch_to_thread calls.
982
983         * gdbthread.h (save_infrun_state, load_infrun_state): Delete.
984         * thread.c (main_thread_state, main_thread_executing): Delete.
985         (inferior_thread): Delete references to them.
986         (add_thread_silent): Fix case where we're adding a thread with the
987         same ptid as an exited thread.  Remove references to
988         context-switching.
989         (load_infrun_state, save_infrun_state): Delete.
990         (thread_alive, is_thread_state, any_running, is_executing)
991         (set_executing): Remove the special handling for targets that
992         don't register any thread.
993         (restore_current_thread, thread_apply_all_command)
994         (do_captured_thread_select): Unconditionally call
995         switch_to_thread.
996
997         * mi/mi-main.c (mi_cmd_execute): Check for exited threads.
998         Call switch_to_thread instead of context_switch_to.
999
1000 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1001
1002         Remove global continuations in favour of a per-thread
1003         continuations.
1004
1005         * gdbthread.h (struct thread_info): Add comments around
1006         continuations and intermediate_continuations.
1007         (save_infrun_state, load_infrun_state): Delete continuations and
1008         intermediate_continuations arguments.
1009         * infrun.c (context_switch): Don't context-switch the continuations.
1010         * thread.c (clear_thread_inferior_resources): Discard all
1011         continuations of the thread we're clearing.
1012         (save_infrun_state, load_infrun_state): Delete continuations and
1013         intermediate_continuations arguments, and the code referencing
1014         them.
1015         * utils.c: Include "gdbthread.h".
1016         (cmd_continuation, intermediate_continuation): Delete.
1017         (add_continuation): Add thread_info* argument.  Install the
1018         continuation on it.
1019         (restore_thread_cleanup): New.
1020         (do_all_continuations_ptid, do_all_continuations_thread_callback):
1021         New.
1022         (do_all_continuations): Reimplement.
1023         (discard_all_continuations_thread_callback,
1024         discard_all_continuations_thread): New.
1025         (discard_all_continuations): Reimplement.
1026         (add_intermediate_continuation): Add thread_info* argument.
1027         Install the continuation on it.
1028         (do_all_intermediate_continuations_thread_callback)
1029         (do_all_intermediate_continuations_thread): New.
1030         (do_all_intermediate_continuations): Reimplement.
1031         (discard_all_intermediate_continuations_thread_callback): New.
1032         (discard_all_intermediate_continuations_thread): New.
1033         (discard_all_intermediate_continuations): Reimplement.
1034
1035         * breakpoint.c (until_break_command): Install the continuation on
1036         the current thread.
1037
1038         * defs.h (cmd_continuation, intermediate_continuation): Delete.
1039         (struct thread_info): Forward declare.
1040         (add_continuation, add_intermediate_continuation): Add
1041         thread_info* argument.
1042         (do_all_continuations_thread, discard_all_continuations_thread)
1043         (do_all_intermediate_continuations_thread)
1044         (discard_all_intermediate_continuations_thread): Declare.
1045         * inf-loop.c (inferior_event_handler): In non-stop only run
1046         continuations on the thread that stopped.  In all-stop, run
1047         continuations on all threads.
1048         * infcmd.c (step_once, finish_command): Adjust.
1049
1050 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1051
1052         Remove the global stop_step in favour of a per-thread
1053         stop_step.
1054
1055         * inferior.h (stop_step): Delete.
1056
1057         * gdbthread.h (struct thread_info): Add comments to stop_step.
1058         (save_infrun_state, load_infrun_state): Remove stop_step argument.
1059         * thread.c (load_infrun_state, save_infrun_state): Remove
1060         stop_step argument, and references to it.
1061
1062         * infrun.c (clear_proceed_status): Clear stop_step.
1063         (fetch_inferior_event): Adjust.
1064         (context_switch): Don't context-switch stop_step.
1065         (handle_inferior_event): Adjust.
1066         (normal_stop): Adjust.
1067         (save_inferior_status, restore_inferior_status): Adjust.
1068
1069         * infcmd.c (stop_step): Delete.
1070         (step_1, step_1_continuation, step_once, until_next_command):
1071         Adjust.
1072
1073 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1074
1075         Remove the global step_multi in favour of a per-thread
1076         step_multi.
1077
1078         * inferior.h (step_multi): Delete.
1079         * gdbthread.h (struct thread_info): Add comments around
1080         step_multi.
1081         (save_infrun_state, load_infrun_state): Remove step_multi
1082         parameter.
1083         * thread.c (load_infrun_state, save_infrun_state): Remove
1084         step_multi argument, and references to it.
1085         * infcmd.c (step_multi): Delete.
1086         (step_1): Adjust.
1087         (step_1_continuation, until_next_command): Adjust.
1088         * infrun.c (fetch_inferior_event): Adjust.
1089         (context_switch): Don't context-switch step_multi.
1090         (print_stop_reason, normal_stop): Adjust.
1091
1092 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1093
1094         Remove the global stop_signal in favour of a per-thread
1095         stop_signal.
1096
1097         * inferior.h (stop_signal): Delete.
1098         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
1099         stop_signal argument.
1100         * thread.c (load_infrun_state, save_infrun_state): Remove
1101         stop_signal argument.  Don't reference it.
1102
1103         * infcmd.c (stop_signal): Delete.
1104         (program_info): Adjust.
1105         * infrun.c (resume): Clear stop_signal.
1106         (proceed): Adjust.  Pass the last stop_signal to the thread we're
1107         resuming.
1108         (context_switch): Don't context-switch stop_signal.
1109         (handle_inferior_event, keep_going): Adjust.
1110         (save_inferior_status, restore_inferior_status): Adjust.
1111
1112         * fbsd-nat.c: Include "gdbthread.h".
1113         (find_signalled_thread, find_stop_signal): New.
1114         (fbsd_make_corefile_notes): Use it.
1115         * fork-child.c (startup_inferior): Adjust.
1116
1117         * linux-nat.c (get_pending_status): Adjust.
1118         (linux_nat_do_thread_registers): Adjust.
1119         (find_signalled_thread, find_stop_signal): New.
1120         (linux_nat_do_thread_registers): Add stop_signal parameter.
1121         (struct linux_nat_corefile_thread_data): Add stop_signal member.
1122         (linux_nat_corefile_thread_callback): Pass stop_signal.
1123         (linux_nat_do_registers): Delete.
1124         (linux_nat_make_corefile_notes): Use find_stop_signal.  Assume
1125         there's always a thread.
1126
1127         * procfs.c (find_signalled_thread, find_stop_signal): New.
1128         (find_stop_signal): New.
1129         (procfs_do_thread_registers): Add stop_signal parameter.
1130         (struct procfs_corefile_thread_data): Add stop_signal member.
1131         (procfs_corefile_thread_callback): Pass args->stop_signal.
1132         (procfs_make_note_section): Find the last stop_signal.
1133
1134         * solib-irix.c: Include gdbthread.h.
1135         (irix_solib_create_inferior_hook): Adjust.
1136         * solib-osf.c: Include gdbthread.h.
1137         (osf_solib_create_inferior_hook): Adjust.
1138         * solib-sunos.c: Include gdbthread.h.
1139         (sunos_solib_create_inferior_hook): Adjust.
1140         * solib-svr4.c: Include gdbthread.h.
1141         (svr4_solib_create_inferior_hook): Adjust.
1142
1143         * win32-nat.c (do_initial_win32_stuff): Adjust.
1144
1145 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1146
1147         * gdbthread.h (struct thread_info): Add comments around
1148         proceed_to_finish.
1149         (save_infrun_state, load_infrun_state): Remove proceed_to_finish
1150         argument.
1151         * thread.c (load_infrun_state, save_infrun_state): Delete
1152         proceed_to_finish argument and references to it.
1153
1154         * infcall.c (call_function_by_hand): Adjust.
1155         * infcmd.c (finish_command): Adjust.
1156         * infrun.c (proceed_to_finish): Delete.
1157         (clear_proceed_status): Adjust.
1158         (context_switch): Don't context-switch proceed_to_finish.
1159         (normal_stop, save_inferior_status, restore_inferior_status):
1160         Adjust.
1161
1162 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1163
1164         * inferior.h (stop_bpstat): Delete.
1165
1166         * breakpoint.h (bpstat_do_actions): Remove bpstat* argument.
1167         
1168         * breakpoint.c (bpstat_do_actions): Rename to ...
1169         (bpstat_do_actions_1): ... this.  Make static.  Change return type
1170         to int.  Return true if a breakpoint proceeded.
1171         (bpstat_do_actions): New, as wrapper around bpstat_do_actions_1.
1172         (delete_breakpoint): Don't reference the global stop_bpstat; it's
1173         gone.
1174
1175         * gdbthread.h (struct thread_info): Add stop_bpstat.
1176         (save_infrun_state, load_infrun_state): Remove stop_bpstat
1177         argument.
1178         * thread.c (load_infrun_state, save_infrun_state): Remove
1179         stop_bpstat argument, and the code referencing it.
1180
1181         * infcall.c: Include "gdbthread.h".
1182         (call_function_by_hand): Adjust.
1183         * exceptions.c: Include "gdbthread.h".
1184         (throw_exception): Adjust.
1185         * infcmd.c (stop_bpstat): Delete.
1186         (continue_command): In all-stop, set the ignore count on the
1187         thread that reported the stop.  In non-stop, set it on the current
1188         thread.
1189         (finish_command_continuation): Adjust.
1190         (program_info): Adjust.
1191         * infrun.c (clear_proceed_status): Adjust.
1192         (context_switch): Don't context-switch stop_bpstat.
1193         (handle_inferior_event): Adjust.
1194         (normal_stop): Adjust.
1195         (save_inferior_status, restore_inferior_status): Adjust.
1196
1197         * inf-loop.c (inferior_event_handler): Remove parameter to
1198         bpstat_do_actions call.
1199         * top.c (command_loop): Remove parameter to bpstat_do_actions
1200         call.  Call it unconditionally.
1201         * event-top.c (command_handler): Ditto.
1202         * python/python.c (execute_gdb_command): Ditto.
1203
1204 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1205
1206         * inferior.h (step_over_calls): Delete.
1207
1208         * gdbthread.h (save_infrun_state, load_infrun_state): Remove
1209         step_over_calls argument.
1210         * thread.c (save_infrun_state, load_infrun_state): Remove
1211         step_over_calls argument.  Adjust.
1212
1213         * infcmd.c (step_over_calls): Delete.
1214         (step_1): Adjust.
1215         * infrun.c (clear_proceed_status): Adjust.
1216         (context_switch): Don't context-switch step_over_calls.
1217         (handle_inferior_event, save_inferior_status)
1218         (restore_inferior_status): Adjust.
1219
1220 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1221
1222         Remove context switching in favour of accessing thread_info fields
1223         directly.
1224
1225         * infrun.c (stepping_over_breakpoint, step_resume_breakpoint):
1226         Delete.
1227         (struct thread_stepping_state): Delete.
1228         (gtss, tss): Delete.
1229         (follow_inferior_reset_breakpoints, follow_exec)
1230         (resume, clear_proceed_status): Adjust.
1231         (prev_pc): Delete.
1232         (proceed, start_remote, init_wait_for_inferior): Adjust.
1233         (struct execution_control_state): Add event_thread member.
1234         (delete_step_resume_breakpoint_callback)
1235         (delete_step_thread_step_resume_breakpoint)
1236         (delete_step_thread_step_resume_breakpoint_cleanup)
1237         (delete_step_thread_step_resume_breakpoint): New.
1238         (wait_for_inferior, init_execution_control_state): Use
1239         delete_step_thread_step_resume_breakpoint_cleanup.
1240         (wait_for_inferior): Set the event_thread.
1241         (fetch_inferior_event): Ditto.  Delete the step-resume breakpoint
1242         with delete_step_thread_step_resume_breakpoint.
1243         (init_thread_stepping_state): Change parameter type to
1244         thread_info.  Adjust.
1245         (context_switch): Don't context switch prev_pc,
1246         stepping_over_breakpoint, step_resume_breakpoint,
1247         step_range_start, step_range_end, step_frame_id,
1248         tss->stepping_over_breakpoint,
1249         tss->stepping_through_solib_after_catch,
1250         tss->stepping_through_solib_catchpoints, tss->current_line, or
1251         tss->current_symtab.
1252         (adjust_pc_after_break, handle_inferior_event)
1253         (currently_stepping, step_into_function)
1254         (insert_step_resume_breakpoint_at_sal)
1255         (insert_longjmp_resume_breakpoint, keep_going): Adjust.
1256         (clear_stepping_state): New.
1257         (normal_stop): Adjust.
1258         (save_inferior_status, restore_inferior_status): Adjust.
1259
1260         * gdbthread.h (struct thread_info): Comments describing the
1261         members moved here.  Add step_after_step_resume_breakpoint.
1262         (delete_step_resume_breakpoint): Add thread_info argument.
1263         (save_infrun_state, load_infrun_state): Remove prev_pc,
1264         trap_expected, step_resume_breakpoint, step_range_start,
1265         step_range_end, step_frame_id, another_trap,
1266         stepping_through_solib_after_catch,
1267         stepping_through_solib_catchpoints, current_line and
1268         current_symtab function arguments.
1269         (inferior_thread): Declare.
1270
1271         * thread.c (inferior_thread): New.
1272         (delete_step_resume_breakpoint): Add a thread_info parameter and
1273         rewrite.
1274         (load_infrun_state, save_infrun_state): Remove prev_pc,
1275         trap_expected, step_resume_breakpoint, step_range_start,
1276         step_range_end, step_frame_id, stepping_over_breakpoint,
1277         stepping_through_solib_after_catch,
1278         stepping_through_solib_catchpoints, current_line and
1279         current_symtab args.  Remove code referencing them.
1280
1281         * infcmd.c (step_range_start, step_range_end, step_frame_id):
1282         Delete.
1283         (step_1, step_once, until_next_command): Adjust.
1284
1285         * inferior.h (step_range_start, step_range_end, step_frame_id):
1286         Delete.
1287
1288         * linux-nat.c (linux_child_follow_fork): If following the child,
1289         move the step state to it.  Adjust.
1290         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
1291         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
1292
1293 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1294
1295         * bsd-uthread.c (bsd_uthread_find_new_threads): Claim the main
1296         thread.
1297
1298 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1299
1300         * corelow.c (add_to_thread_list): If this is the first time we
1301         hear about thread info, update inferior_ptid.
1302         (core_open): Clear the thread list and set inferior_ptid before
1303         acknowledging a new inferior.  Find threads before fetching
1304         register info.  Give an upper target layer a chance to find and
1305         claim new threads.  Print core generation and stop signal info
1306         after finding new threads.
1307         (get_core_register_section): Look at the lwp member of
1308         inferior_ptid for detecting if we have threads info, instead of
1309         the pid member.
1310         (core_pid_to_str): New.
1311         (init_core_ops): Register core_pid_to_str.
1312
1313 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1314
1315         * spu-linux-nat.c (spu_child_post_startup_inferior)
1316         (spu_child_post_attach): Don't add the main thread here.
1317
1318 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1319
1320         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
1321
1322         * gnu-nat.c (inf_validate_procs): If this is the first time we're
1323         seeing a thread id, extend the main thread's ptid.  If we still
1324         have pending execs, don't be verbose about new threads.
1325         (gnu_wait, gnu_resume, gnu_attach, gnu_thread_alive)
1326         (gnu_pid_to_str, cur_thread, sig_thread_cmd): Adjust.
1327         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers):
1328         Adjust.
1329
1330 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1331
1332         * procfs.c (to_attach): Create a procinfo for the current lwp.
1333         Add it to gdb's thread list.
1334         (procfs_fetch_registers, procfs_store_registers): Assume there's
1335         always an lwp.
1336         (procfs_wait): Don't add the main thread here.
1337         (procfs_init_inferior): Create a procinfo for the main lwp here.
1338         Change main thread's ptid with thread_change_ptid.
1339         (procfs_notice_thread): Check for exited threads.
1340         (procfs_corefile_thread_callback): Remove check for the main
1341         process.
1342         (procfs_make_note_section): Assume there is always a thread.
1343
1344         * sol-thread.c (sol_thread_attach): Clear sol_thread_active before
1345         attaching.  Change the main thread ptid with thread_change_ptid.
1346         (sol_thread_detach): Clear sol_thread_active.
1347         (sol_thread_wait): Check for exited threads.
1348         (sol_thread_create_inferior): Clear sol_thread_active before
1349         creating a new inferior.  Change the main thread ptid with
1350         thread_change_ptid.
1351         (sol_thread_mourn_inferior): Clear sol_thread_active.
1352         (sol_find_new_threads_callback): Check for exited threads.
1353
1354 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1355
1356         * inf-ttrace.c (inf_ttrace_wait): On TTEVT_LWP_CREATE and
1357         LWP_TERMINATE, resume the caller thread.  On TTEVT_LWP_CREATE,
1358         TTEVT_LWP_EXIT and TTEVT_LWP_TERMINATE, don't stop the whole
1359         process, and return TARGET_WAITKIND_IGNORE.
1360
1361 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1362
1363         * inf-ttrace.c: Include <signal.h>
1364         (inf_ttrace_delete_dead_threads_callback): New.
1365         (inf_ttrace_resume_lwp): New.
1366         (inf_ttrace_resume_callback, inf_ttrace_resume): Rewrite.  Don't
1367         delete dying threads until they are really dead.
1368         (inf_ttrace_wait): After stopping the whole process, delete any
1369         dying thread that is really dead by now.
1370         (inf_ttrace_thread_alive): Return 1.
1371         (inf_ttrace_extra_thread_info): New.
1372         (inf_ttrace_target): Register inf_ttrace_extra_thread_info.
1373
1374 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1375
1376         * inf-ttrace.c (inf_ttrace_follow_fork): Register the main thread
1377         of the child fork.
1378         (inf_ttrace_attach): Add the main thread.
1379         (inf_ttrace_resume_callback): Check for exited threads.  Adjust
1380         for always a thread.
1381         (inf_ttrace_wait): Decorate the main thread's ptid with lwp info
1382         using thread_change_ptid, and set its private data.  Don't add the
1383         main thread here.
1384         (inf_ttrace_pid_to_str): Adjust.
1385
1386 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1387
1388         * bsd-uthread.c (bsd_uthread_wait): Decorate the main thread with
1389         thread_change_ptid.  Check for exited threads.
1390         (bsd_uthread_find_new_threads): Check for exited threads.
1391
1392 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1393
1394         * inf-ptrace.c: Include "gdbthread.h".
1395         (inf_ptrace_attach): Add the main thread here.
1396         * linux-nat.c (linux_nat_attach): Don't add the main thread here.
1397         Decorate the main thread id with the lwp id.
1398
1399 2008-09-08  Pedro Alves  <pedro@codesourcery.com>
1400
1401         * linux-nat.c (linux_nat_wait): Update inferior_ptid's ptid with
1402         thread_change_ptid.  Don't add or mark the main thread as running
1403         and executing here.
1404         * fork-child.c (fork_inferior): Add the main thread here.
1405
1406 2008-09-08  Jerome Guitton  <guitton@adacore.com>
1407
1408         * rs6000-tdep.c (rs6000_fetch_instruction)
1409         (rs6000_skip_stack_check): New functions.
1410         (skip_prologue): Skip stack check sequence.
1411         
1412 2008-09-08  David Daney  <ddaney@avtrex.com>
1413
1414         * dummy-frame.h (frame.h): Include it.
1415         (struct frame_id): Remove declaration.
1416
1417 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1418
1419         * spu-tdep.c (spu_push_dummy_code): New function.
1420         (spu_gdbarch_init): Install it.
1421
1422 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1423
1424         * gdbarch.sh (gdbarch_dump): Use core_addr_to_string_nz
1425         instead of paddr_nz.
1426         * gdbarch.c: Regenerate.
1427
1428         * target.c (target_xfer_partial, debug_print_register): Use
1429         core_addr_to_string_nz instead of paddr_nz.
1430
1431 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1432
1433         * rs6000-tdep.c (rs6000_gdbarch_init): Setup displaced stepping
1434         *before* calling gdbarch_init_osabi.
1435         (rs6000_aix_init_osabi): Disable displaced stepping.
1436
1437 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1438
1439         * target.c (update_current_target): Do not inherit to_open
1440         or to_close.
1441         (pop_target): Call target_close on target_stack instead
1442         of current_target.
1443         (pop_all_targets_above): Likewise.
1444
1445 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1446
1447         * gnu-v3-abi.c (gnuv3_decode_method_ptr): New function.
1448         (gnuv3_print_method_ptr): Use it.
1449         (gnuv3_method_ptr_to_value): Likewise.
1450
1451 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1452
1453         * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to
1454         register_area callback function.
1455         * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
1456         Use it instead of current_gdbarch.
1457         * nto-procfs.c (procfs_store_registers): Update call.
1458
1459 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1460
1461         * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
1462         regcache architecture instead of current_gdbarch.
1463
1464 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1465
1466         * mep-tdep.c (struct mep_prologue): Add gdbarch member.
1467         (check_for_saved): Use it instead of current_gdbarch.
1468         (is_arg_spill): Add gdbarch paramter.  Use it instead
1469         of current_gdbarch.
1470         (mep_analyze_prologue): Add gdbarch parameter.  Pass it
1471         to is_arg_spill and check_for_saved.
1472         (mep_skip_prologue, mep_analyze_frame_prologue): Update calls.
1473
1474 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1475
1476         * hppa-tdep.c (internalize_unwinds): Use objfile architecture
1477         instead of current_gdbarch.
1478
1479 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1480
1481         * m68k-tdep.h (m68kbsd_fpreg_offset): Add gdbarch parameter.
1482         * m68kbsd-tdep.c (m68kbsd_fpreg_offset): Add gdbarch paramter.
1483         Use it instead of current_gdbarch.
1484         (m68kbsd_supply_fpregset): Update call.
1485         * m68kbsd-nat.c (m68kbsd_supply_fpregset): Likewise.
1486         (m68kbsd_collect_fpregset): Likewise.
1487
1488 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1489
1490         * cris-tdep.c (cris_version, cris_mode): Remove.
1491         (crisv32_single_step_through_delay): Use tdep->cris_mode.
1492         (cris_breakpoint_from_pc): Likewise.
1493         (cris_frame_unwind_cache): Use tdep->cris_version.
1494         (crisv32_scan_prologue): Likewise.
1495         (cris_spec_reg_applicable): Add gdbarch argument.
1496         Use tdep->cris_version.
1497         (cris_register_size, cris_special_register_name): Update calls.
1498         (cris_special_register_name): Add gdbarch argument.
1499         (cris_register_name, crisv32_register_name): Update calls.
1500
1501 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1502
1503         * m68hc11-tdep.c (gdb_print_insn_m68hc11): Use info->arch
1504         instead of current_gdbarch.
1505
1506         * sh64-tdep.c (gdb_print_insn_sh64): Remove.
1507         (sh64_gdbarch_init): Install print_insn_sh64 directly.
1508         * sh-tdep.c (gdb_print_insn_sh): Remove.
1509         (sh_gdbarch_init): Install print_insn_sh directly.
1510
1511         * mips-tdep.c (gdb_print_insn_mips): Do not check mips_abi
1512         from current_gdbarch.
1513         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): New functions.
1514         (mips_gdbarch_init): Install them instead of gdb_print_insn_mips
1515         depending on mips_abi.
1516
1517 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1518
1519         * gdbarch.sh (addr_bits_remove): Change type to 'm'.
1520         (smash_text_address): Likewise.
1521         * gdbarch.c, gdbarch.h: Regenerate.
1522
1523         * arch-utils.c (core_addr_identity): Add gdbarch parameter.
1524         * arch-utils.h (core_addr_identity): Likewise.
1525         * arm-tdep.c (arm_addr_bits_remove): Likewise.
1526         (arm_smash_text_address): Likewise.
1527         * hppa-tdep.c (hppa_smash_text_address): Likewise.
1528         * m88k-tdep.c (m88k_addr_bits_remove): Likewise.
1529         * s390-tdep.c (s390_addr_bits_remove): Likewise.
1530
1531         * mips-tdep.c (mips_addr_bits_remove): Add gdbarch parameter.
1532         Use it instead of current_gdbarch.
1533
1534         * arm-tdep.c (arm_prologue_prev_register, arm_unwind_pc,
1535         arm_dwarf2_prev_register): Update calls.
1536         * m88k-tdep.c (m88k_unwind_pc): Update call.
1537
1538 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1539
1540         * dwarf2expr.h (dwarf2_read_address): Add gdbarch argument.
1541         * dwarf2expr.c (dwarf2_read_address): Add gdbarch argument.
1542         Call gdbarch_integer_to_address directly instead of converting
1543         to value and back.  Update comment.
1544         (execute_stack_op): Update call site.
1545         * dwarf2loc.c (find_location_expression): Likewise.
1546         (locexpr_describe_location): Update
1547
1548         * dwarf2expr.h (struct dwarf_expr_context): Add gdbarch member.
1549         * dwarf2-frame.c (execute_stack_op): Initialize ctx->gdbarch.
1550         * dwarf2loc. (dwarf2_evaluate_loc_desc): Likewise.
1551         (dwarf2_loc_desc_needs_frame): Likewise.
1552
1553 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
1554
1555         * breakpoint.h (struct bp_location): Change type of section
1556         member to "struct obj_section *".
1557         * tracepoint.h (struct tracepoint): Likewise.
1558         * symtab.h (struct general_symbol_info): Replace bfd_section
1559         member with obj_section.
1560         (struct symtab_and_line): Change type of section member to
1561         "struct obj_section *".
1562         (SYMBOL_BFD_SECTION): Remove macro, replace by ...
1563         (SYMBOL_OBJ_SECTION): ... this.
1564
1565         * minsym.c (prim_record_minimal_symbol_and_info): Record symbol
1566         section as obj_section instead of bfd_section.
1567
1568         * ada-lang.c (ada_decode_symbol): Use gsymbol->obj_section
1569         directly instead of looking of obj_section from bfd_section.
1570
1571         * objfiles.h (find_pc_sect_section): Remove.
1572         * objfiles.c (find_pc_sect_section): Remove.
1573         (find_pc_section): Inline find_pc_sect_section code.
1574
1575         * symfile.h (find_pc_overlay): Return struct obj_section *.
1576         (find_pc_mapped_section): Likewise.
1577         (section_is_overlay, section_is_mapped): Change type of section
1578         argument to struct obj_section *.
1579         (pc_in_mapped_range, pc_in_unmapped_range): Likewise.
1580         (overlay_mapped_address, overlay_unmapped_address): Likewise.
1581         (symbol_overlayed_address): Likewise.
1582         * symtab.h (symbol_overlayed_address): Likewise.
1583         * symfile.c (overlay_is_mapped): Remove.
1584         (section_is_mapped): Inline overlay_is_mapped code.  Update.
1585         (overlay_invalidate_all): Update.
1586         (section_is_overlay): Change section argument to type
1587         "struct obj_section *".  Use bfd_ methods.
1588         (pc_in_unmapped_range): Likewise.  Handle relocated sections.
1589         (pc_in_mapped_range): Likewise.  Handle relocated sections.
1590         (sections_overlap): Likewise.
1591         (overlay_unmapped_address): Likewise.
1592         (overlay_mapped_address): Likewise.
1593         (symbol_overlayed_address): Likewise.
1594         (find_pc_overlay): Return struct obj_section *.
1595         (find_pc_mapped_section): Likewise.
1596         (list_overlays_command): Update.
1597         (map_overlay_command, unmap_overlay_command): Update.
1598         (simple_overlay_update): Update.
1599
1600         * block.h (blockvector_for_pc_sect): Change section argument
1601         to type "struct obj_section *".
1602         (block_for_pc_sect): Likewise.
1603         * block.c (blockvector_for_pc_sect): Change section argument
1604         to type "struct obj_section *".
1605         (block_for_pc_sect): Likewise.
1606         * symtab.h (find_pc_sect_function, find_pc_sect_psymtab,
1607         find_pc_sect_symtab, find_pc_sect_psymbol, find_pc_sect_line,
1608         lookup_minimal_symbol_by_pc_section, find_function_start_pc): Likewise.
1609         (matching_bfd_sections): Rename to ...
1610         (matching_obj_sections): ... this.  Update argument types.
1611         * blockframe.c (find_pc_sect_function): Likewise.
1612         * breakpoint.c (describe_other_breakpoints): Likewise.
1613         (breakpoint_has_pc, check_duplicates_for): Likewise.
1614         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
1615         (lookup_minimal_symbol_by_pc_section): Likewise.
1616         * symtab.c (find_pc_sect_psymtab_closer): Likewise.
1617         (find_pc_sect_psymtab, find_pc_sect_psymbol, find_pc_sect_symtab,
1618         find_pc_sect_line, find_function_start_pc): Likewise.
1619         (matching_bfd_sections): Rename to ...
1620         (matching_obj_sections): ... this.  Update argument types.
1621
1622         * blockframe.c (find_pc_partial_function): Update to section
1623         type changes.  No longer call find_pc_sect_section.
1624         (cache_pc_function_section): Change to type "struct obj_section *".
1625         * breakpoint.c (resolve_sal_pc): Update to section type changes.
1626         * exec.c (xfer_memory): Likewise.
1627         * findvar.c (read_var_value): Likewise.
1628         * infcmd.c (jump_command): Likewise.
1629         * linespec.c (minsym_found): Likewise.
1630         * maint.c (maintenance_translate_address): Likewise.
1631         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
1632         (lookup_solib_trampoline_symbol_by_pc): Likewise.
1633         * parse.c (write_exp_msymbol): Likewise.
1634         * printcmd.c (build_address_symbolic): Likewise.
1635         (address_info, sym_info): Likewise.
1636         * symmisc.c (dump_msymbols, print_symbol): Likewise.
1637         * symtab.c (fixup_section): Likewise.
1638         (fixup_symbol_section, fixup_psymbol_section): Likewise.
1639         (find_pc_line, find_function_start_sal): Likewise.
1640         * target.c (memory_xfer_partial): Likewise.
1641         * hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline): Likewise.
1642         * spu-tdep.c (spu_overlay_update): Likewise.
1643
1644 2008-09-04  Doug Evans  <dje@google.com>
1645
1646         * defs.h (plongest,pulongest): Renamed from paddr_u,paddr_d.
1647         Change argument of pulongest from CORE_ADDR to ULONGEST.
1648         All callers updated.
1649         * utils.c (plongest): Renamed from paddr_d.
1650         (pulongest): Renamed from paddr_u, change arg type to ULONGEST.
1651         * remote-mips.c (send_srec): Use paddr_nz instead of paddr_u in
1652         `CORE_ADDR addr' arg of error message.
1653
1654 2008-09-03  Angela Marie Thomas <angela@releasedominatrix.com>
1655
1656         * ser-tcp.c (ser_tcp_send_break): New function.
1657         (_initialize_ser_tcp): Use ser_tcp_send_break.
1658         * ser-tcp.h (ser_tcp_send_break): New prototype.
1659
1660 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
1661
1662         * spu-tdep.c (spu_push_dummy_call): Update all stack pointer slots
1663         when allocating stack frame for inferior call.
1664
1665 2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
1666
1667         * spu-tdep.c (spu_frame_unwind_cache): Do not attempt to unwind
1668         SP or return address if we failed to find a valid frame.
1669
1670 2008-09-03  Aleksandar Ristovski  <aristovski@qnx.com>
1671
1672         * breakpoint.c (breakpoint_init_inferior): Mark as not inserted only
1673         non-permanent breakpoints.
1674         (bpstat_stop_status): Change enable_state to bp_disabled only for
1675         non-permanent breakpoints.
1676         (bp_loc_is_permanent): New function.
1677         (create_breakpoint): Check if the location points to a permanent
1678         breakpoint and if it does, make breakpoint permanent.
1679         (update_breakpoint_locations): Make sure new locations of permanent
1680         breakpoints are properly initialized.
1681         * i386-tdep.c (i386_skip_permanent_breakpoint): New function.
1682         (i386_gdbarch_init): Set gdbarch_skip_permanent_breakpoint.
1683
1684 2008-09-02  Pedro Alves  <pedro@codesourcery.com>
1685
1686         * breakpoint.c (insert_breakpoints, update_global_location_list):
1687         Check breakpoints_always_inserted_mode instead of
1688         always_inserted_mode directly.
1689
1690 2008-09-02  Andreas Schwab  <schwab@suse.de>
1691
1692         * ia64-tdep.c (ia64_get_dyn_info_list): Use obj_section_addr.
1693
1694 2008-09-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
1695
1696         Stay compatible after the GCC PR fortran/29635 fix.
1697         * dwarf2read.c (process_die <DW_TAG_imported_module>)
1698         (process_die <DW_TAG_imported_module>): Do not assert anything about
1699         these unsupported tags.
1700
1701 2008-08-29  Tom Tromey  <tromey@redhat.com>
1702
1703         * maint.c (_initialize_maint_cmds): Fix typo.
1704
1705 2008-08-29  Tom Tromey  <tromey@redhat.com>
1706
1707         * dwarf2read.c (dwarf2_build_psymtabs_hard): Copy dirname on
1708         obstack.
1709
1710 2008-08-27  Ulrich Weigand  <uweigand@de.ibm.com>
1711
1712         * remote.c: Include "gdb_stat.h".
1713
1714 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
1715
1716         * dummy-frame.h (dummy_frame_pop): Add prototype.
1717         * dummy-frame.c: Include "observer.h".
1718         (dummy_frame_push): Do not check for stale frames.
1719         (dummy_frame_pop): New function.
1720         (cleanup_dummy_frames): New function.
1721         (_initialize_dummy_frame): Install it as inferior_created observer.
1722
1723         * frame.h (struct frame_id): Update comments.
1724         (frame_id_inner): Remove prototype.
1725         * frame.c (frame_id_inner): Make static.  Add comments.
1726         (frame_find_by_id): Update frame_id_inner safety net check to avoid
1727         false positives for targets using non-contiguous stack ranges.
1728         (get_prev_frame_1): Update frame_id_inner safety net check.
1729         (frame_pop): Call dummy_frame_pop when popping a dummy frame.
1730
1731         * stack.c (return_command): Directly pop the selected frame.
1732         * infrun.c (handle_inferior_event): Remove dead code.
1733         * i386-tdep.c (i386_push_dummy_call): Update comment.
1734
1735 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
1736
1737         * breakpoint.c (remove_breakpoint): Do not fail if unable to remove
1738         breakpoint from shared library.
1739
1740 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
1741
1742         * solib-svr4.c (read_program_header): New function.
1743         (scan_dyntag_auxv): New function.
1744         (elf_locate_base): Use it if scan_dyntag fails.
1745         (find_program_interpreter): New function.
1746         (enable_break): Use it instead of .interp section.
1747
1748 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
1749
1750         * remote.h (remote_filename_p, remote_bfd_open): Add prototypes.
1751         * remote.c (remote_bfd_iovec_open, remote_bfd_iovec_close,
1752         remote_bfd_iovec_pread, remote_bfd_iovec_stat, remote_filename_p,
1753         remote_bfd_open): New functions.
1754         (remote_hostio_send_command): Fail safely if remote connection
1755         is not set up.
1756
1757         * solist.h (solib_open): Remove prototype.
1758         (solib_bfd_open): Add prototype.
1759         * solib.c: Include "remote.h".
1760         (solib_open): Remove, replace by ...
1761         (solib_bfd_open): ... this new function.  Handle remote BFDs.
1762         (solib_map_sections): Replace solib_open by solib_bfd_open.
1763         * solib-frv.c: Include "exceptions.h".
1764         (enable_break2): Replace solib_open by solib_bfd_open.
1765         * solib-svr4.c: Include "exceptions.h".
1766         (enable_break): Replace solib_open by solib_bfd_open.
1767
1768         * symfile.c: Include "remote.h".
1769         (build_id_verify): Handle remote BFDs.
1770         (separate_debug_file_exists): Use BFD to access file.  Handle
1771         remote BFDs.
1772         (symfile_bfd_open): Handle remote BFDs.
1773         (reread_symbols): Handle remote BFDs.
1774
1775         * NEWS: Mention "remote:" argument prefix to "set sysroot".
1776
1777 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
1778
1779         * gdbarch.sh (target_gdbarch): New global variable.
1780         (deprecated_current_gdbarch_select_hack): Set it.
1781         * gdbarch.c, gdbarch.h: Regenerate.
1782
1783         * arch-utils.c (gdbarch_update_p): Use target_gdbarch instead
1784         of current_gdbarch.
1785         * target-descriptions.c (target_find_description): Likewise.
1786         * arm-tdep.c (arm_update_current_architecture): Likewise.
1787         (show_fp_model, arm_show_abi, arm_show_fallback_mode, 
1788         arm_show_force_mode): Likewise.
1789         * mips-tdep.c (show_mask_address, show_mipsfpu_command,
1790         show_mips_abi): Likewise.
1791         * mep-tdep.c (me_module_register_set, current_me_module): Likewise.
1792
1793         * target.c (target_translate_tls_address): Use target_gdbarch
1794         instead of current_gdbarch.
1795         * remote.c (struct packet_reg): Likewise.
1796         (get_remote_arch_state, packet_reg_from_regnum,
1797         packet_reg_from_pnum, remote_check_symbols, remote_wait,
1798         remote_address_masked, remote_insert_breakpoint,
1799         remote_insert_hw_breakpoint, remote_read_description): Likewise.
1800         * remote-m32r-sdi.c (m32r_resume, m32r_wait): Likewise.
1801         * remote-mips.c (mips_open, mips_common_breakpoint): Likewise.
1802         * cris-tdep.c (cris_can_use_hardware_watchpoint): Likewise.
1803
1804         * solib.c (solib_open, solib_map_sections, solib_read_symbols,
1805         solib_add, info_sharedlibrary_command, solib_address, 
1806         solib_create_inferior_hook, in_solib_dynsym_resolve_code,
1807         solib_global_lookup): Likewise.
1808         * solib-frv.c (enable_break2, frv_relocate_main_executable): Likewise.
1809         * solib-irix.c (irix_current_sos, irix_open_symbol_file_object):
1810         Likewise.
1811         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
1812         * solib-svr4.c (exec_entry_point, enable_break, svr4_free_so,
1813         set_solib_svr4_fetch_link_map_offsets, svr4_fetch_link_map_offsets):
1814         Likewise.
1815         * nto-tdep.c (nto_find_and_open_solib, nto_init_solib_absolute_prefix,
1816         nto_truncate_ptr): Likewise.
1817         * mips-linux-tdep.c (mips_linux_in_dynsym_stub): Likewise.
1818
1819 2008-08-26  Luis Machado  <luisgpm@br.ibm.com>
1820
1821         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections) New structure.
1822         (ppc_linux_vmx_regset_sections): New structure.
1823         (ppc_linux_fp_regset_sections): New structure.
1824         (ppc_linux_init_abi): Select core-file regset  based on target
1825         features.
1826
1827 2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
1828
1829         * target.c (debug_print_register): Use regcache_raw_collect
1830         instead of regcache_cooked_read.  Only handle raw registers.
1831
1832 2008-08-25  Pedro Alves  <pedro@codesourcery.com>
1833
1834         * cp-name-parser.y: Include config.h before system headers.
1835
1836 2008-08-25  Ulrich Weigand  <uweigand@de.ibm.com>
1837
1838         * m88k-tdep.c: Update for unwinder changes.
1839
1840 2008-08-24  Tom Tromey  <tromey@redhat.com>
1841
1842         * s390-tdep.c (s390_address_class_type_flags): Use
1843         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1.
1844         (s390_address_class_type_flags_to_name): Likewise.
1845         (s390_address_class_name_to_type_flags): Likewise.
1846
1847 2008-08-24  Tom Tromey  <tromey@redhat.com>
1848
1849         * rs6000-tdep.c (rs6000_builtin_type_vec128): Don't use
1850         TYPE_FLAGS.
1851         * features/rs6000/powerpc-vsx32l.c
1852         (initialize_tdesc_powerpc_vsx32l): Update.
1853         * features/rs6000/powerpc-vsx32.c
1854         (initialize_tdesc_powerpc_vsx32): Update.
1855         * features/rs6000/powerpc-vsx64.c
1856         (initialize_tdesc_powerpc_vsx64): Update.
1857         * features/rs6000/powerpc-vsx64l.c
1858         (initialize_tdesc_powerpc_vsx64l): Update.
1859         * target-descriptions.c (maint_print_c_tdesc_cmd): Emit
1860         TYPE_VECTOR, not TYPE_FLAGS.
1861
1862 2008-08-24  Tom Tromey  <tromey@redhat.com>
1863
1864         * xml-tdesc.c (tdesc_end_union): Update.
1865         * stabsread.c (define_symbol): Update.
1866         (read_type): Update.
1867         (read_struct_type): Update.
1868         (read_enum_type): Update.
1869         * spu-tdep.c (spu_builtin_type_vec128): Update.
1870         * sh-tdep.c (sh_push_dummy_call_fpu): Update.
1871         (sh_push_dummy_call_nofpu): Update.
1872         * mdebugread.c (parse_symbol): Update.
1873         (parse_symbol): Update.
1874         (parse_symbol): Update.
1875         (upgrade_type): Update.
1876         * jv-lang.c (java_lookup_class): Update.
1877         * iq2000-tdep.c (iq2000_pointer_to_address): Update.
1878         * i386-tdep.c (i386_mmx_type): Update.
1879         (i386_sse_type): Update.
1880         * gdbtypes.h (enum type_flag_value): New enum.
1881         (enum type_instance_flag_value): New enum.
1882         (TYPE_FLAG_UNSIGNED, TYPE_FLAG_NOSIGN, TYPE_FLAG_STUB,
1883         TYPE_FLAG_TARGET_STUB, TYPE_FLAG_STATIC, TYPE_FLAG_PROTOTYPED,
1884         TYPE_FLAG_INCOMPLETE, TYPE_FLAG_VARARGS, TYPE_FLAG_VECTOR,
1885         TYPE_FLAG_FIXED_INSTANCE, TYPE_FLAG_STUB_SUPPORTED,
1886         TYPE_FLAG_NOTTEXT): Now enum constants.
1887         (TYPE_FLAG_CONST, TYPE_FLAG_VOLATILE, TYPE_FLAG_CODE_SPACE,
1888         TYPE_FLAG_DATA_SPACE, TYPE_FLAG_ADDRESS_CLASS_1,
1889         TYPE_FLAG_ADDRESS_CLASS_2): Remove.
1890         (TYPE_INSTANCE_FLAG_CONST, TYPE_INSTANCE_FLAG_VOLATILE,
1891         TYPE_INSTANCE_FLAG_CODE_SPACE, TYPE_INSTANCE_FLAG_DATA_SPACE,
1892         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1,
1893         TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2): New constants.
1894         (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB, TYPE_TARGET_STUB,
1895         TYPE_STATIC, TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_VARARGS,
1896         TYPE_VECTOR, TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED,
1897         TYPE_NOTTEXT): Update.
1898         (TYPE_FLAG_ADDRESS_CLASS_ALL): Remove.
1899         (TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL): New define.
1900         (TYPE_VOLATILE, TYPE_CODE_SPACE, TYPE_DATA_SPACE,
1901         TYPE_ADDRESS_CLASS_1, TYPE_ADDRESS_CLASS_2,
1902         TYPE_ADDRESS_CLASS_ALL): Update.
1903         (struct main_type) <flags>: Remove.
1904         <flag_unsigned, flag_nosign, flag_stub, flag_target_stub,
1905         flag_static, flag_prototyped, flag_incomplete, flag_varargs,
1906         flag_vector, flag_stub_supported, flag_nottext,
1907         flag_fixed_instance>: New fields.
1908         <nfields, vptr_fieldno>: Move earlier.
1909         (TYPE_FLAGS): Remove.
1910         * gdbtypes.c (make_pointer_type): Update.
1911         (address_space_name_to_int): Update.
1912         (address_space_int_to_name): Update.
1913         (make_type_with_address_space): Update.
1914         (make_cv_type): Update.
1915         (create_range_type): Update.
1916         (get_discrete_bounds): Update.
1917         (create_set_type): Update.
1918         (make_vector_type): Update.
1919         (smash_to_method_type): Update.
1920         (check_typedef): Update.
1921         (check_stub_method): Update.
1922         (init_type): Individually assign flag fields.
1923         (recursive_dump_type): Don't print entire TYPE_FLAGS field.  Do
1924         print TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED, and TYPE_NOTTEXT.
1925         (copy_type_recursive): Copy the entire main type.  Don't use
1926         TYPE_FLAGS.
1927         * features/rs6000/powerpc-altivec64l.c
1928         (initialize_tdesc_powerpc_altivec64l): Update.
1929         * features/rs6000/powerpc-altivec64.c
1930         (initialize_tdesc_powerpc_altivec64): Update.
1931         * features/rs6000/powerpc-altivec32l.c
1932         (initialize_tdesc_powerpc_altivec32l): Update.
1933         * features/rs6000/powerpc-altivec32.c
1934         (initialize_tdesc_powerpc_altivec32): Update.
1935         * features/rs6000/powerpc-7400.c (initialize_tdesc_powerpc_7400):
1936         Update.
1937         * features/arm-with-iwmmxt.c (initialize_tdesc_arm_with_iwmmxt):
1938         Update.
1939         * dwarf2read.c (read_structure_type): Update.
1940         (read_enumeration_type): Likewise.
1941         (process_enumeration_scope): Likewise.
1942         (read_tag_pointer_type): Likewise.
1943         (read_subroutine_type): Likewise.
1944         (read_subroutine_type): Likewise.
1945         (read_base_type): Likewise.
1946         * coffread.c (coff_read_enum_type): Update.
1947         * ada-valprint.c (adjust_type_signedness): Update.
1948         * ada-typeprint.c (print_record_field_types): Update.
1949         * ada-lang.c (packed_array_type): Update.
1950         (empty_record): Don't reset TYPE_FLAGS.
1951         (ada_template_to_fixed_record_type_1): Update.
1952         (ada_template_to_fixed_record_type_1): Likewise.
1953         (template_to_static_fixed_type): Likewise.
1954         (to_record_with_fixed_variant_part): Likewise.
1955         (to_fixed_record_type): Likewise.
1956         (to_fixed_array_type): Likewise.
1957         (to_static_fixed_type): Likewise.
1958
1959 2008-08-23  Jim Blandy  <jimb@redhat.com>
1960
1961         PR macros/607:
1962         * symmisc.c (print_symbol_bcache_statistics): Include statistics
1963         for the macro bcache.
1964
1965 2008-08-23  Tom Tromey  <tromey@redhat.com>
1966
1967         * macrotab.h (struct macro_definition) <kind>: Shrink to one bit.
1968         (argc): Now 31 bits.
1969
1970 2008-08-22  Tom Tromey  <tromey@redhat.com>
1971
1972         * NEWS: Move macro entries back under "New commands".
1973
1974 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
1975
1976         * breakpoint.c (create_overlay_event_breakpoint): Rename to ...
1977         (create_overlay_event_breakpoint_1): ... this.  Add OBJFILE parameter.
1978         (create_overlay_event_breakpoint): Loop over all objfiles to install
1979         multiple instances of the overlay event breakpoint if present.
1980
1981 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
1982
1983         * spu-tdep.c (spu_overlay_new_objfile): Only consider SPU objfiles.
1984         (info_spu_event_command): Command only supported on SPU architecture.
1985         (info_spu_signal_command): Likewise.
1986         (info_spu_mailbox_command): Likewise.
1987         (info_spu_dma_command): Likewise.
1988         (info_spu_proxydma_command): Likewise.
1989
1990 2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>
1991
1992         * infrun.c (adjust_pc_after_break): Do not call get_thread_regcache
1993         if the thread has already exited.
1994
1995 2008-08-22  Pedro Alves  <pedro@codesourcery.com>
1996
1997         * infrun.c (proceed): Move back setting previous_inferior_ptid
1998         from here ...
1999         (wait_for_inferior): ... to here.
2000         (fetch_inferior_event): ... and here.
2001
2002 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
2003
2004         * gdbarch.sh: Include "regcache.h" into gdbarch.c.
2005         (deprecated_current_gdbarch_select_hack): Call registers_changed
2006         instead of reinit_frame_cache.
2007         * gdbarch.c: Regenerate.
2008
2009 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
2010
2011         * elfread.c (elf_symtab_read): Do not relocate thread-local symbols.
2012
2013 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
2014
2015         * xcoffread.c (SYMNAME_ALLOC): Correct syntax.
2016
2017 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
2018
2019         * findvar.c (locate_var_value): Do not call get_frame_arch
2020         with a NULL frame argument.
2021
2022 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
2023
2024         * frame.h (frame_map_regnum_to_name): Remove prototype.
2025         (frame_map_name_to_regnum): Remove prototype.
2026         * frame.c (frame_map_regnum_to_name): Remove.
2027         (frame_map_name_to_regnum): Remove.
2028         (frame_unwind_register_value): Use user_reg_map_regnum_to_name
2029         instead of frame_map_regnum_to_name.
2030         * ax-gdb.c: Include "user-regs.h".
2031         (gen_expr): Use user_reg_map_name_to_regnum instead of
2032         frame_map_name_to_regnum.
2033         * eval.c:  Include "user-regs.h".
2034         (evaluate_subexp_standard): Use user_reg_map_name_to_regnum
2035         instead of frame_map_name_to_regnum.
2036         * infcmd.c (registers_info): Likewise.
2037         * parse.c: Include "user-regs.h".
2038         (write_dollar_variable): Use user_reg_map_name_to_regnum
2039         instead of frame_map_name_to_regnum.
2040         * tracepoint.c: Include "user-regs.h".
2041         (encode_actions): Use user_reg_map_name_to_regnum
2042         instead of frame_map_name_to_regnum.
2043         * valops.c: Include "user-regs.h".
2044         (value_fetch_lazy): Use user_reg_map_regnum_to_name instead
2045         of frame_map_regnum_to_name.
2046
2047 2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>
2048
2049         * ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read
2050         and manually relocate .opd contents from BFD instead of reading
2051         them from target memory.
2052
2053 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
2054
2055         * dwarf2read.c (processing_current_prefix): Delete static
2056         variable.
2057         (process_full_comp_unit): Do not set processing_current_prefix.
2058         (dwarf2_full_name): New function.
2059         (read_func_scope): Do not set processing_current_prefix.  Use
2060         determine_prefix.
2061         (read_structure_type): Do not set processing_current_prefix.  Remove
2062         unused inner cleanup.
2063         (process_structure_scope): Do not set processing_current_prefix.
2064         (read_enumeration_type): Use dwarf2_full_name.
2065         (determine_class_name): Return a const char *.  Put the result
2066         on the objfile obstack.  Use dwarf2_full_name.
2067         (read_namespace_type): New function.
2068         (read_namespace): Do not create the type here.  Use
2069         determine_prefix.
2070         (read_typedef): Use dwarf2_full_name.  Do not pass the name
2071         to init_type.
2072         (read_base_type): Do not pass the name to init_type.  Handle
2073         TYPE_FLAG_NOSIGN.
2074         (read_unspecified_type): Do not pass the name to init_type.
2075         (new_symbol): Use dwarf2_full_name instead of
2076         processing_current_prefix.
2077         (read_type_die): Do not set processing_current_prefix.  Handle
2078         DW_TAG_namespace.
2079         (determine_prefix): Handle specifications.  Return the result
2080         on the objfile obstack.  Handle unions correctly.
2081
2082 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
2083
2084         * buildsym.c (add_symbol_to_list): Do not call
2085         cp_scan_for_anonymous_namespaces here.
2086         (finish_block): Do not call cp_set_block_scope here.
2087         * cp-namespace.c (processing_has_namespace_info)
2088         (processing_current_prefix): Delete.
2089         (cp_initialize_namespace): Do not initialize
2090         processing_has_namespace_info.
2091         (cp_scan_for_anonymous_namespaces): Use SYMBOL_DEMANGLED_NAME.  Do
2092         not check processing_has_namespace_info.
2093         (cp_set_block_scope): Take prefix and namespace info flag as
2094         arguments.  Honor namespaces regardless of a demangled name.
2095         * cp-support.h (processing_has_namespace_info)
2096         (processing_current_prefix): Delete declarations.
2097         (cp_set_block_scope): Update prototype.
2098         * dwarf2read.c (processing_has_namespace_info)
2099         (processing_current_prefix): New static variables.
2100         (read_file_scope): Initialize processing_has_namespace_info.
2101         (read_func_scope): Call cp_set_block_scope for C++.
2102         (new_symbol): Call cp_scan_for_anonymous_namespaces for C++.
2103         * symtab.c (symbol_demangled_name): Accept a const argument.
2104         * symtab.h (symbol_demangled_name): Update prototype.
2105
2106 2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>
2107
2108         * ax-gdb.c (gen_var_ref): Use SYMBOL_LINKAGE_NAME.
2109         * blockframe.c (find_pc_partial_function): Likewise.
2110         * buildsym.c (find_symbol_in_list): Likewise.
2111         * c-valprint.c (c_val_print): Likewise.
2112         * coffread.c (patch_opaque_types, process_coff_symbol): Likewise.
2113         (coff_read_enum_type): Likewise.  Use SYMBOL_SET_LINKAGE_NAME.
2114         * cp-support.c (cp_remove_params): Renamed from remove_params and
2115         made global.
2116         (overload_list_add_symbol): Update call to remove_params.
2117         * cp-support.h (cp_remove_params): Declare.
2118         * dwarf2read.c (process_enumeration_scope): Use SYMBOL_LINKAGE_NAME.
2119         (dwarf2_const_value): Use SYMBOL_PRINT_NAME.
2120         * expprint.c (dump_subexp_body_standard): Likewise.
2121         * f-valprint.c (info_common_command, there_is_a_visible_common_named):
2122         Use SYMBOL_LINKAGE_NAME to find symbols and SYMBOL_PRINT_NAME
2123         for messages.
2124         * findvar.c (read_var_value): Use SYMBOL_LINKAGE_NAME.
2125         * gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise.
2126         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
2127         (hppa_hpux_skip_trampoline_code): Use SYMBOL_LINKAGE_NAME to find
2128         symbols and SYMBOL_PRINT_NAME for messages.
2129         * jv-lang.c (add_class_symbol): Use SYMBOL_SET_LINKAGE_NAME.
2130         * linespec.c (decode_line_2): Use SYMBOL_LINKAGE_NAME.
2131         * mdebugread.c (parse_symbol): Use SYMBOL_LINKAGE_NAME and
2132         SYMBOL_SET_LINKAGE_NAME.
2133         (mylookup_symbol): Use SYMBOL_LINKAGE_NAME.
2134         * minsyms.c (add_minsym_to_demangled_hash_table): Use
2135         SYMBOL_SEARCH_NAME.
2136         (lookup_minimal_symbol): Use SYMBOL_LINKAGE_NAME or
2137         SYMBOL_MATCHES_SEARCH_NAME, depending on the pass.
2138         * objfiles.h (ALL_OBJFILE_MSYMBOLS): Use SYMBOL_LINKAGE_NAME.
2139         * printcmd.c (build_address_symbolic): Use SYMBOL_LINKAGE_NAME.
2140         (address_info): Use SYMBOL_PRINT_NAME for messages and
2141         SYMBOL_LINKAGE_NAME for lookups.
2142         * sol-thread.c (info_cb): Use SYMBOL_PRINT_NAME for messages.
2143         * stabsread.c (patch_block_stabs, define_symbol)
2144         (read_type, read_enum_type, common_block_end)
2145         (cleanup_undefined_types_1, scan_file_globals): Use
2146         SYMBOL_LINKAGE_NAME, SYMBOL_SET_LINKAGE_NAME, ALL_OBJFILE_MSYMBOLS,
2147         and SYMBOL_PRINT_NAME.
2148         * stack.c (print_frame_args): Use SYMBOL_LINKAGE_NAME.
2149         (print_frame, frame_info): Use SYMBOL_PRINT_NAME for output.  Use
2150         cp_remove_params instead of cplus_demangle.
2151         (print_block_frame_labels, print_frame_arg_vars): Use
2152         SYMBOL_LINKAGE_NAME.
2153         * symmisc.c (dump_msymbols): Use ALL_OBJFILE_MSYMBOLS and
2154         SYMBOL_LINKAGE_NAME.
2155         (dump_symtab_1, print_symbol, print_partial_symbols)
2156         (maintenance_check_symtabs): Use SYMBOL_LINKAGE_NAME.
2157         * symtab.h (DEPRECATED_SYMBOL_NAME): Delete.
2158         (SYMBOL_SET_LINKAGE_NAME): New.
2159         (SYMBOL_SET_NAMES): Add a comment.
2160         * tracepoint.c (set_traceframe_context, validate_actionline)
2161         (collect_symbol, scope_info): Use SYMBOL_LINKAGE_NAME for
2162         lookups and SYMBOL_PRINT_NAME for output.
2163         * typeprint.c (typedef_print): Use SYMBOL_LINKAGE_NAME.
2164         * xcoffread.c (process_xcoff_symbol): Use SYMBOL_SET_LINKAGE_NAME.
2165
2166 2008-08-21  Pedro Alves  <pedro@codesourcery.com>
2167
2168         * arm-tdep.c (arm_pc_is_thumb): Use obj_section_addr.
2169         * hppa-hpux-tdep.c (hppa_hpux_find_dummy_bpaddr): Likewise.
2170         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Use
2171         obj_section_addr and obj_section_endaddr.
2172         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Likewise.
2173         * hppabsd-tdep.c (hppabsd_find_global_pointer): Likewise.
2174         * ia64-tdep.c (ia64_find_global_pointer): Likewise.
2175         (find_extant_func_descr): Likewise.
2176         * solib-frv.c (frv_relocate_main_executable): Use
2177         obj_section_addr.
2178         * xstormy16-tdep.c (xstormy16_find_jmp_table_entry): Use
2179         obj_section_addr and obj_section_endaddr.
2180
2181 2008-08-21  Paul N. Hilfinger  <hilfinger@adacore.com>
2182
2183         * NEWS: Amplify last entry on boolean types in Ada.
2184
2185 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
2186
2187         * dwarf2read.c (die_specification, dwarf2_extension, follow_die_ref):
2188         Make the dwarf2_cu * parameter output as well as input.  Update it if
2189         we follow a reference to another CU.
2190         (read_func_scope, determine_class_name, namespace_name, dwarf2_attr)
2191         (die_type, die_containing_type): Update calls to changed functions.
2192         Use the returned CU along with the returned DIE.
2193         (read_namespace): Use dwarf2_attr instead of dwarf2_extension.
2194
2195 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
2196
2197         * dwarf2read.c (queue_comp_unit): Take an objfile argument.  Read
2198         in the DIEs here.
2199         (process_queue): Do not read in the DIEs here.
2200         (psymtab_to_symtab_1): Update call to queue_comp_unit.
2201         (read_full_die): Do not call queue_comp_unit from here.
2202         (maybe_queue_comp_unit): New function.
2203         (follow_die_ref): Use it.
2204
2205 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
2206
2207         * dwarf2read.c (struct attribute): Move earlier.
2208         (struct die_info): Change attrs to a trailing array.
2209         (dwarf_alloc_die): Take the number of attributes.  Allocate space
2210         for them.
2211         (read_full_die): Update call to dwarf_alloc_die.  Do not manually
2212         allocate attributes.
2213
2214 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
2215
2216         * dwarf2read.c (REF_HASH_SIZE): Delete.
2217         (struct dwarf2_cu): Replace die_ref_table with die_hash.
2218         (struct die_info): Remove next_ref.
2219         (store_in_ref_table): Remove offset argument.  Rewrite to use
2220         htab_find_slot_with_hash.
2221         (die_hash, die_eq): New.
2222         (read_comp_unit): Allocate the die_hash.
2223         (read_die_and_children): Update call to store_die_ref.
2224         (follow_die_ref): Rewrite to use htab_find_with_hash.
2225
2226 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
2227
2228         * dwarf2read.c (free_die_list, copy_die): Delete.
2229         (dwarf_alloc_die): Take a CU argument.  Allocate the new DIE
2230         on the obstack.
2231         (read_full_die): Update call to dwarf_alloc_die.  Allocate
2232         attributes on the CU obstack.
2233         (free_one_comp_unit): Do not call free_die_list.
2234
2235 2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>
2236
2237         * dwarf2read.c (read_die_and_children): Ignore NULL DIEs.
2238         (read_die_and_siblings): Likewise.  Do not add padding DIEs to the
2239         sibling list.
2240         (read_full_die): Do not allocate DIEs for abbrev 0.
2241         (follow_die_ref): Correct error message.
2242
2243 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
2244
2245         * linespec.c (symtab_from_filename): Also throw NOT_FOUND_ERROR if
2246         there are no symbols loaded, instead of throwing a generic error.
2247         (decode_variable): Likewise.
2248
2249 2008-08-20  Pedro Alves  <pedro@codesourcery.com>
2250
2251         * objfiles.h (struct obj_section): Remove addr and endaddr fields.
2252         (obj_section_offset, obj_section_addr, obj_section_endaddr): New
2253         macros.
2254         * objfiles.c (add_to_objfile_sections): Don't set addr, endaddr
2255         and offset.  Use size_t instead of unsigned long.
2256         (build_objfile_section_table): Use size_t instead of unsigned
2257         long.
2258         (objfile_relocate): Don't relocate s->addr and s->endaddr, they're
2259         gone.
2260         (find_pc_sect_section): Use obj_section_addr and
2261         obj_section_endaddr.
2262         * symfile.c (symfile.c): Remove code that maps sections
2263         offsets in "addr" to the object's sections.
2264         * blockframe.c (find_pc_partial_function): Use obj_section_endaddr.
2265         * gcore.c (gcore_create_callback): Use obj_section_addr and
2266         obj_section_endaddr.
2267         * maint.c (print_objfile_section_info): Likewise.
2268         * printcmd.c (sym_info): Use obj_section_addr and
2269         obj_section_endaddr.
2270         * symtab.c (fixup_section): Likewise.
2271
2272 2008-08-20  Mark Kettenis  <kettenis@gnu.org>
2273
2274         * sparc-tdep.c: Make some comments catch up with reality.
2275
2276 2008-08-20  Vladimir Prus  <vladimir@codesourcery.com>
2277
2278         * NEWS: Mention 'set target-async'
2279
2280 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
2281
2282         * infrun.c (resume): If the thread is placed to the deferred step
2283         queue, mark it as running.
2284
2285 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
2286
2287         Make sure target supports non-stop.
2288         * infcmd.c (run_command_1, attach_command): If non-stop mode
2289         is requested, verify the target supports it.
2290         * linux-nat.c (linux_nat_supports_non_stop): New.
2291         (linux_nat_add_target): Register the above.
2292         * target.c (find_default_supports_non_stop)
2293         (target_supports_non_stop): New.
2294         (init_dummy_target): Register find_default_supports_non_stop.
2295         * target.h (struct target_ops): New field to_supports_non_stop.
2296         (target_supports_non_stop): New.
2297
2298 2008-08-19  Pedro Alves  <pedro@codesourcery.com>
2299             Vladimir Prus  <vladimir@codesourcery.com>
2300
2301         * target.c (target_async_permitted, target_async_permitted_1)
2302         (set_maintenance_target_async_permitted)
2303         (show_maintenance_target_async_permitted): New.
2304         (initialize_targets): Register 'set target-async'.
2305         * target.h (target_async_permitted): Declare.
2306         * linux-nat.c (linux_nat_async_enabled)
2307         (linux_nat_async_permitted, set_maintenance_linux_async_permitted)
2308         (show_maintenance_linux_async_permitted): Remove.
2309         (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p)
2310         (get_pending_events, linux_nat_async): Use target_async_permitted.
2311         (linux_nat_set_async_mode): Remove, moving the only used bits
2312         into...
2313         (linux_nat_setup_async): This.
2314         (_initialize_linux_nat): Do not register 'maint set linux-async'.
2315         Use linux_nat_setup_async.
2316         * remote.c (remote_async_permitted, remote_async_permitted_set)
2317         (set_maintenance_remote_async_permitted)
2318         (show_maintenance_remote_async_permitted): Remove.
2319         (remote_open_1, remote_terminal_inferior, remote_can_async_p)
2320         (remote_is_async_p): Use target_async_permitted.
2321         (_initialize_remote): Don't register 'main set remote-async'.
2322         * mi/mi-cmds.c (mi_cmds): Register -list-target-features.
2323         * mi/mi-cmds.h (mi_cmd_list_target_features): New.
2324         * mi/mi-main.c (mi_cmd_list_target_features): New.
2325
2326 2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>
2327
2328         * target.c (maybe_kill_then_attach)
2329         (maybe_kill_then_create_inferior): Remove.
2330         (update_current_target): Do not default to_attach,
2331         to_create_inferiour, to_is_async_p.
2332
2333 2008-08-19  Paul N. Hilfinger  <hilfinger@adacore.com>
2334         
2335         Changes for supporting boolean types in debugging data.
2336         * ada-lang.c (discrete_type_high_bound,discrete_type_low_bound): Change 
2337         API to return LONGEST values rather than struct values.
2338         (ada_evaluate_subexp): Change to use new API of discrete_type_low_bound
2339         and discrete_type_high_bound.
2340         (to_fixed_range_type): Create a range type in cases where 
2341         argument is base type and its limits are representable as ints.
2342         (ada_is_modular_type): Correct so that base type must be integral.
2343         * ada-lex.l (TRUEKEYWORD,FALSEKEYWORD): Make 'true' and 'false' 
2344         keywords when they appear alone, since we are phasing out 
2345         direct representation of these identifiers in debugging data.
2346         * ada-exp.y: Define 'true' and 'false' as primaries.
2347         (type_boolean): New function.
2348         (type_int,type_long,type_long_long,type_floattype_double)
2349         (type_long_double): Remove uses of current_gdbarch for consistency
2350         with type_boolean.
2351         (write_int): Change comment to indicate that it might write boolean 
2352         constant as well.
2353         * ada-typeprint.c (ada_print_type): Print '(false, true)' for boolean
2354         type, since will no longer be represented as enumerated type in 
2355         debugging data.
2356         * ada-valprint.c (print_optional_low_bound): Handle boolean case
2357         as well.
2358         * NEWS: Note support boolean types.
2359         
2360 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
2361
2362         * bsd-uthread.c (bsd_uthread_close): New.
2363         (bsd_uthread_deactivate): Don't cleanup here, just unpush the
2364         target.
2365         (bsd_uthread_solib_loaded): Fix typo.
2366         (bsd_uthread_target): Register bsd_uthread_close.
2367
2368 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
2369
2370         * corelow.c (core_open): Assume there was no upper layer left
2371         behind from a previous inferior.
2372         * target.c (pop_all_targets): Rename to ...
2373         (pop_all_targets_above): ... this.  Add a target stratum
2374         parameter.  Use it instead of hardcoding the dummy_stratum.
2375         (pop_all_targets): New, defer to pop_all_targets_above.
2376         (target_preopen): Use pop_all_targets_above.
2377         * target.h (pop_all_targets_above): Declare.
2378
2379 2008-08-18  Pedro Alves  <pedro@codesourcery.com>
2380
2381         * gdbthread.h (thread_change_ptid): Declare.
2382         * infrun.c (infrun_thread_ptid_changed): New.
2383         (_initialize_infrun): Attach infrun_thread_ptid_changed to the
2384         thread_ptid_changed observer.
2385         * regcache.c (regcache_thread_ptid_changed): New.
2386         (_initialize_regcache): Attach regcache_thread_ptid_changed to the
2387         thread_ptid_changed observer.
2388         * thread.c (thread_change_ptid): New.
2389
2390 2008-08-18  Tom Tromey  <tromey@redhat.com>
2391
2392         * symfile.c (reread_symbols): Update.
2393         * solib-sunos.c (allocate_rt_common_objfile): Update.
2394         * objfiles.c (allocate_objfile): Update.
2395         * objfiles.h (struct objfile) <md, mmfd, deprecated_obj_private>:
2396         Remove.
2397
2398 2008-08-18  Tom Tromey  <tromey@redhat.com>
2399
2400         * gdbtypes.c (copy_type_recursive): Allocate 'stored' on objfile's
2401         obstack.
2402
2403 2008-08-18  Daniel Jacobowitz  <dan@codesourcery.com>
2404
2405         * rs6000-tdep.c (struct rs6000_framedata): Add gpr_mask, used_bl,
2406         lr_register.
2407         (rs6000_in_function_epilogue_p): Check for bctr.
2408         (skip_prologue): Initialize lr_register.  Set lr_reg to a register
2409         number.  Set gpr_mask and used_bl.  Continue scanning while some
2410         expected registers are not saved.  Set lr_register if LR is not
2411         stored.
2412         (rs6000_frame_cache): Handle gpr_mask and lr_register.
2413
2414 2008-08-17  Tom Tromey  <tromey@redhat.com>
2415
2416         PR gdb/1535:
2417         * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): New macros.
2418         (ep_find_event_name_end): Remove.
2419         (catch_fork_temporary, catch_vfork_temporary,
2420         catch_fork_permanent, catch_vfork_permanent): New constants.
2421         (catch_vfork, catch_fork): Remove.
2422         (catch_fork_command_1): Add 'command' argument.  Remove
2423         'fork_kind' and 'tempflag'.  Handle NULL 'arg'.  Update switch for
2424         all cases.
2425         (catch_exec_command_1): Add 'command' argument; remove
2426         'tempflag'.  Handle NULL 'arg'.
2427         (catch_load_command_1): Likewise.
2428         (catch_unload_command_1): Likewise.
2429         (catch_ada_exception_command): Likewise.
2430         (catch_assert_command): Likewise.
2431         (catch_catch_command): New function.
2432         (catch_throw_command): Likewise.
2433         (catch_command_1): Remove.
2434         (catch_command): Just call error.
2435         (tcatch_command): Likewise.
2436         (catch_cmdlist): New global.
2437         (tcatch_cmdlist): Likewise.
2438         (add_catch_command): New function.
2439         (_initialize_breakpoint): Create "catch" and "tcatch" as prefix
2440         commands.  Create all catch sub-commands.
2441
2442 2008-08-17  Pedro Alves  <pedro@codesourcery.com>
2443
2444         * gdbthread.h: Add comments.
2445         * stack.c (get_selected_block): Return 0 on an exited thread.
2446         * top.c (execute_command): Check for is_stopped, not !is_running.
2447         * event-top.c (command_handler): Likewise.
2448
2449 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
2450
2451         * mi/mi-main.c (mi_cmd_exec_next, mi_cmd_exec_next_instruction)
2452         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
2453         (mi_cmd_exec_finish): Remove "return".
2454
2455 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
2456
2457         * target.h (pop_all_targets): Declare.
2458         * target.c (pop_all_targets): New.
2459         * top.c (quit_target): Pop all targets instead of just closing the
2460         current.
2461
2462 2008-08-16  Vladimir Prus  <vladimir@codesourcery.com>
2463             Thiago Jung Bauermann  <bauerman@br.ibm.com>
2464
2465         * cli-script.c (read_next_line): Add parse_commands argument.
2466         (recurse_read_control_structure): Adapt to new read_next_line
2467         signature.
2468         (read_command_lines): Add parse_commands argument.
2469         (define_command): Adapt to new read_command_lines signature.
2470         (document_command): Likewise.
2471         * breakpoint.c (commands_command): Likewise.
2472         * defs.h (read_command_lines): Adjust function prototype.
2473
2474 2008-08-16  Paul N. Hilfinger  <hilfinger@adacore.com>
2475
2476         * ada-lang.c (pos_atr): Account for the possibility that the 
2477         argument may be a reference.
2478
2479 2008-08-16  Paul N. Hilfinger  <hilfingr@adacore.com>
2480
2481         * xcoffread.c (scan_xcoff_symtab): Do not include global symbols
2482         ('F' format) for @FIX names generated by the loader, retaining only
2483         the minimal symbols (and no partial symbol tables) for these names.
2484         Fixes warning messages about symbols that are found in partial 
2485         symbol tables, but not full symbol tables.
2486
2487 2008-08-16  Pedro Alves  <pedro@codesourcery.com>
2488
2489         * infrun.c (fetch_inferior_event): Only call normal_stop if not
2490         stopping quietly.
2491
2492 2008-08-15  Luis Machado  <luisgpm@br.ibm.com>
2493
2494         * rs6000-tdep: Include "features/rs6000/powerpc-vsx32.c".
2495         Include "features/rs6000/powerpc-vsx64.c".
2496         (ppc_supply_vsxregset): New function.
2497         (ppc_collect_vsxregset): New function.
2498         (IS_VSX_PSEUDOREG): New macro.
2499         (IS_EFP_PSEUDOREG): New macro.
2500         (vsx_register_p): New function.
2501         (ppc_vsx_support_p): New function.
2502         (rs6000_builtin_type_vec128): New function.
2503         (rs6000_register_name): Hide upper halves of vs0~vs31.  Return
2504         correct names for VSX registers and EFPR registers.
2505         (rs6000_pseudo_register_type): Return correct types for VSX
2506         and EFPR registers.
2507         (rs6000_pseudo_register_reggroup_p): Return correct group for
2508         VSX and EFPR registers.
2509         (ppc_pseudo_register_read): Rename to dfp_pseudo_register_read.
2510         (ppc_pseudo_register_write): Rename to dfp_pseudo_register_write.
2511         (vsx_pseudo_register_read): New function.
2512         (vsx_pseudo_register_write): New function.
2513         (efpr_pseudo_register_read): New function.
2514         (efpr_pseudo_register_write): New function.
2515         (rs6000_pseudo_register_read): Call new VSX and EFPR read functions.
2516         (rs6000_pseudo_register_write): Call new VSX and EFPR write functions.
2517         (rs6000_gdbarch_init): Declare have_vsx.
2518         Initialize new upper half VSX registers.
2519         Initialize VSX-related and EFPR-related pseudo-registers variables.
2520         Adjust the number of pseudo registers accordingly.
2521
2522         * ppc-linux-nat.c: Define PTRACE_GETVSXREGS, PTRACE_SETVSXREGS
2523         and SIZEOF_VSRREGS.
2524         (gdb_vsxregset_t): New type.
2525         (have_ptrace_getsetvsxregs): New variable.
2526         (fetch_vsx_register): New function.
2527         (fetch_register): Handle VSX registers.
2528         (fetch_vsx_registers): New function.
2529         (fetch_ppc_registers): Handle VSX registers.
2530         (store_ppc_registers): Handle VSX registers.
2531         (store_vsx_register): New function.
2532         (store_register): Handle VSX registers.
2533         (store_vsx_registers): New function.
2534         (ppc_linux_read_description): Handle VSX-enabled inferiors.
2535         (gdb_vsxregset_t): New type.
2536         (supply_vsxregset): New function.
2537         (fill_vsxregset): New function.
2538
2539         * ppc-tdep.h (vsx_register_p): New prototype.
2540         (vsx_support_p): New prototype.
2541         (ppc_vsr0_regnum): New variable.
2542         (ppc_vsr0_upper_regnum): Likewise.
2543         (ppc_efpr0_regnum): Likewise.
2544         (ppc_builtin_type_vec128): New type.
2545         (ppc_num_vsrs): New constant.
2546         (ppc_num_vshrs): New constant.
2547         (ppc_num_efprs): Likewise.
2548         Define POWERPC_VEC_VSX PPC_VSR0_UPPER_REGNUM and PPC_VSR31_UPPER_REGNUM.
2549         (ppc_supply_vsxregset): New prototype.
2550         (ppc_collect_vsxregset): New prototype.
2551
2552         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-vsx32l.c"
2553         Include "features/rs6000/powerpc-vsx64l.c".
2554         (_initialize_ppc_linux_tdep): Initialize VSX-enabled targets.
2555         (ppc_linux_regset_sections): Add new ".reg-ppc-vsx" field.
2556         (ppc32_linux_vsxregset): New 32-bit VSX-enabled regset.
2557         (ppc_linux_regset_from_core_section): Handle VSX core section.
2558         (ppc_linux_core_read_description): Support VSX-enabled core files.
2559
2560         * ppc-linux-tdep.h: Declare *tdesc_powerpc_vsx32l
2561         Declare tdesc_powerpc_vsx64l
2562
2563         * corelow.c (get_core_register_section): Support VSX-enabled
2564         core files.
2565
2566         * features/rs6000/power-vsx.xml: New VSX descriptions.
2567         * features/rs6000/powerpc-vsx32.xml: New file.
2568         * features/rs6000/powerpc-vsx32l.xml: New file.
2569         * features/rs6000/powerpc-vsx64.xml: New file.
2570         * features/rs6000/powerpc-vsx64l.xml: New file.
2571         * features/rs6000/powerpc-vsx32.c: New file (generated).
2572         * features/rs6000/powerpc-vsx32l.c: New file (generated).
2573         * features/rs6000/powerpc-vsx64.c: New file (generated).
2574         * features/rs6000/powerpc-vsx64l.c: New file (generated).
2575         * features/Makefile: Updated with new descriptions.
2576         * regformats/rs6000/powerpc-vsx32l.dat: New file (generated).
2577         * regformats/rs6000/powerpc-vsx64l.dat: New file (generated).
2578
2579 2008-08-15  Vladimir Prus  <vladimir@codesourcery.com>
2580
2581         * ia64-linux.nat (_initialize_ia64_linux_nat): Don't
2582         call linux_target twice.
2583
2584 2008-08-14  Aleksandar Ristovski  <aristovski@qnx.com>
2585
2586         * nto-tdep.c (lm_info): Updated struct lm_info definition from
2587         solib-svr4.c
2588         (LM_ADDR): Use l_addr if available; if not, use link map and set 
2589         l_addr.
2590
2591 2008-08-14  Tom Tromey  <tromey@redhat.com>
2592
2593         * macrocmd.c (macro_define_command): Check for NULL argument.
2594         (macro_undef_command): Likewise.
2595
2596 2008-08-14  Pedro Alves  <pedro@codesourcery.com>
2597
2598         * infcmd.c (continue_1): Add an ERROR_NO_INFERIOR call.
2599
2600 2008-08-13  Pedro Alves  <pedro@codesourcery.com>
2601
2602         * breakpoint.c (always_inserted_auto, always_inserted_on)
2603         (always_inserted_off, always_inserted_enums): New.
2604         (always_inserted_mode): Change type to char* and point to
2605         always_inserted_auto.
2606         (show_always_inserted_mode): In auto mode, also show the current
2607         effect of the option.
2608         (breakpoints_always_inserted_mode): Adjust for the new auto mode.
2609         (_initialize_breakpoint): Make the "set breakpoints
2610         always-inserted" command an enum command.  Extend help to describe
2611         the auto mode.
2612
2613 2008-08-13  Ulrich Weigand  <uweigand@de.ibm.com>
2614
2615         * spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status
2616         query valid) bit.  Ignore bits outside the condition field.
2617         (info_spu_proxydma_command): Ignore bits outside the field.
2618
2619 2008-08-12  Michael Snyder  <msnyder@vmware.com>
2620
2621         * MAINTAINERS: Update my email address.
2622
2623 2008-08-12  Ulrich Weigand  <uweigand@de.ibm.com>
2624
2625         * ppc-linux-nat.c (ppc_linux_get_hwcap): Really get AT_HWCAP.
2626
2627 2008-08-12  Pedro Alves  <pedro@codesourcery.com>
2628
2629         Add no-ack mode to the remote protocol --- optionally stop ACKing
2630         packets and responses when we have a reliable communication
2631         medium.
2632
2633         Based on Apple's GDB, by Jason Molenda <jmolenda@apple.com>
2634
2635         * remote.c (struct remote_state): Add noack_mode field.
2636         (PACKET_QStartNoAckMode): New.
2637         (remote_start_remote): Don't any outstanding packet here.
2638         (remote_open_1): Clear noack_mode.  Ack any outstanding packet
2639         here.  Activate noack mode if requested.
2640         (remote_protocol_features): Add QStartNoAckMode.
2641         (remote_open_1):
2642         (putpkt_binary): Don't send ack in noack mode.
2643         (read_frame): Don't recompute the checksum in noack mode.
2644         (getpkt_sane): Skip sending ack if in noack mode.
2645         (_initialize_remote): Add set/show remote noack mode.
2646         * NEWS:  Note the new features.
2647
2648 2008-08-11  Kevin Buettner  <kevinb@redhat.com>
2649
2650         * rs6000-tdep.c (BL_MASK, BL_INSTRUCTION, BL_DISPLACEMENT_MASK):
2651         New macros.
2652         (rs6000_skip_main_prologue): New function.
2653         (rs6000_gdb_arch_init): Register rs6000_skip_main_prologue.
2654
2655 2008-08-11  Sandra Loosemore  <sandra@codesourcery.com>
2656
2657         * MAINTAINERS (Write After Approval):  Add self.
2658
2659 2008-08-11  Stan Shebs  <stan@codesourcery.com>
2660
2661         ARM BE8 support.
2662         * disasm.c (gdb_disassemble_info): Set endian_code.
2663         * gdbarch.sh (gdbarch_info): New field byte_order_for_code.
2664         * gdbarch.h, gdbarch.c: Regenerate.
2665         * arch-utils.c (initialize_current_architecture): Set the
2666         default byte_order_for_code.
2667         (gdbarch_info_init): Ditto.
2668         (gdbarch_info_fill): Ditto.
2669         * arm-tdep.c (SWAP_INT, SWAP_SHORT): New macros.
2670         (thumb_analyze_prologue): Swap halfword if code endianness is
2671         different from general endianness.
2672         (arm_skip_prologue): Similarly.
2673         (arm_scan_prologue): Ditto.
2674         (thumb_get_next_pc): Ditto.
2675         (arm_get_next_pc): Ditto.
2676         (arm_gdbarch_init): Set byte_order_for_code from BE8 flag,
2677         choose correct endianness for breakpoints.
2678
2679 2008-08-10  Pedro Alves  <pedro@codesourcery.com>
2680
2681         * bsd-kvm.c: Include "gdbthread.h".
2682         (bsd_kvm_ptid): New.
2683         (bsd_kvm_open): Add a main thread.
2684         (bsd_kvm_close): Delete it.
2685         (bsd_kvm_thread_alive): New.
2686         (bsd_kvm_pid_to_str): New.
2687         (bsd_kvm_add_target): Register bsd_kvm_thread_alive and
2688         bsd_kvm_pid_to_str.
2689         (bsd_kvm_add_target): Initialize bsd_kvm_ptid.
2690
2691 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
2692
2693         * buildsym.c (start_subfile): Properly cast sentinel in concat
2694         call.
2695         * cp-name-parser.y: Include "config.h".
2696         * xml-tdesc.c (fetch_xml_from_file): Properly cast sentinel in
2697         concat call.
2698         * gdb_select.h: Include sys/time.h if sys/select.h is not
2699         available.
2700
2701 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
2702
2703         * go32-nat.c: Include "gdbthread.h".
2704         (go32_stop, go32_kill_inferior): Delete the main thread.
2705         (go32_create_inferior): Add it.
2706         (go32_thread_alive, go32_pid_to_str): New.
2707         (init_go32_ops): Register go32_thread_alive and go32_pid_to_str.
2708
2709 2008-08-09  Pedro Alves  <pedro@codesourcery.com>
2710
2711         * go32-nat.c (fetch_register, store_register): Pass the regcache
2712         gdbarch to i386_fp_regnum_p and i386_fpc_regnum_p.
2713         (go32_xfer_memory): Change type of myaddr parameter to gdb_byte.
2714         (struct seg_descr, struct seg_descr): pack the whole struct
2715         instead of each member individually.
2716
2717 2008-08-09  Andreas Schwab  <schwab@suse.de>
2718
2719         * python/python.c (_initialize_python): Use unabbreviated commands
2720         in prefix name.
2721
2722 2008-08-09  Daniel Jacobowitz  <dan@codesourcery.com>
2723
2724         * Makefile.in (stamp-h): Also create .deps.
2725
2726 2008-08-09  Tom Tromey  <tromey@redhat.com>
2727
2728         * Makefile.in (generated_files): Add GNULIB_H.
2729
2730 2008-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2731
2732         * solib-pa64.c (pa64_solib_create_inferior_hook): Don't set
2733         DT_HP_DEBUG_PRIVATE.  Add warning if DT_HP_DEBUG_PRIVATE is not set.
2734         Revise comment.
2735         (pa64_current_sos): Remove map private warning warning.
2736         * solib-som.c: Include string.h and sys/utsname.h.
2737         (get_hpux_major_release): New function.
2738         (som_solib_create_inferior_hook): Read dynamic linker header.  Warn
2739         about shared library private mapping on HP-UX 11 and later.  Only force
2740         private mapping of shared libraries on HP-UX 10 and earlier.
2741         (link_map_start): Delete warning.
2742
2743 2008-08-09  Xuepeng Guo  <xuepeng.guo@intel.com>
2744             H.J. Lu  <hongjiu.lu@intel.com>
2745             Mark Kettenis <kettenis@gnu.org>
2746
2747         * amd64-tdep.c (amd64_frame_cache): Add saved_sp_reg.
2748         (amd64_init_frame_cache): Initialize saved_sp_reg.
2749         (amd64_analyze_stack_align): New.
2750         (amd64_analyze_prologue): Call it.
2751         (amd64_frame_cache): Use saved_sp_reg if it is invalid.  Don't set
2752         %rip to 8 when halfway aligning the stack.
2753
2754         * amd64-tdep.h (amd64_regnum): Add AMD64_R9_REGNUM to
2755         AMD64_R14_REGNUM.
2756
2757         * i386-tdep.c (i386_frame_cache): Remove stack_align.  Add
2758         saved_sp_reg.
2759         (i386_alloc_frame_cache): Remove stack_align.  Initialize
2760         saved_sp_reg to -1.
2761         (i386_analyze_stack_align): Rewrite.
2762         (i386_frame_cache): Use saved_sp_reg if it is valid.
2763
2764 2008-08-09  Ulrich Weigand  <uweigand@de.ibm.com>
2765
2766         * target.c: Include "solib.h".
2767         (target_pre_inferior): Call no_shared_libraries.
2768         * infcmd.c (run_command_1): Do not call objfile_purge_solibs
2769         or clear_solib.
2770         (attach_command): Do not call clear_solib.
2771
2772 2008-08-09  Mark Kettenis  <kettenis@gnu.org>
2773
2774         * i386obsd-nat.c (i386obsd_supply_pcb): Supply the right bytes for
2775         the %eip register.
2776
2777 2008-08-08  Tom Tromey  <tromey@redhat.com>
2778
2779         * Makefile.in (python.o): Remove dependencies.  Use COMPILE and
2780         POSTCOMPILE.
2781         (python-utils.o): Likewise.
2782
2783 2008-08-08  Andreas Schwab  <schwab@suse.de>
2784
2785         * corefile.c (_initialize_core): Remove spurious paren from set
2786         gnutarget doc string.
2787
2788 2008-08-08  Luis Machado  <luisgpm@br.ibm.com>
2789
2790         * ppc-linux-nat.c: Include "auxv.h" and "elf/common.h".
2791         Define PPC_FEATURE_BOOKE.
2792         (ppc_linux_get_hwcap): New function.
2793         (ppc_linux_region_ok_for_hw_watchpoint): Handle PowerPC 440
2794         4-bytes alignment restrictions.
2795         (ppc_linux_insert_watchpoint): Handle PowerPC 440-specific
2796         positioning of the read/write flags.
2797         (ppc_linux_watchpoint_addr_within_range): Handle PowerPC 440
2798         4-bytes alignment.
2799
2800 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
2801
2802         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
2803
2804         * win32-nat.c (win32_add_thread): Change thread argument type to
2805         ptid_t.  Adjust.
2806         (win32_add_thread): Adjust.
2807         (win32_delete_thread): Change thread argument type to ptid_t.
2808         Adjust.
2809         (win32_fetch_inferior_registers, win32_store_inferior_registers)
2810         (win32_resume, get_win32_debug_event, get_win32_debug_event)
2811         (win32_wait, win32_pid_to_exec_file, win32_pid_to_str): Adjust.
2812         (init_win32_ops): Put to_magic last.
2813         (win32_win32_thread_alive): Adjust.
2814
2815 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
2816
2817         * remote-m32r-sdi.c (m32r_thread_alive, m32r_pid_to_str): New.
2818         (init_m32r_ops): Register m32r_thread_alive and m32r_pid_to_str.
2819
2820 2008-08-08  Pedro Alves  <pedro@codesourcery.com>
2821
2822         * remote-m32r-sdi.c: Include "gdbthread.h".
2823         (remote_m32r_ptid): New.
2824         (m32r_close): Delete the main thread.
2825         (m32r_resume): Set inferior_ptid toA remote_m32r_ptid. Add the
2826         main thread.
2827         (m32r_kill, m32r_load, sdireset_command): Delete the main thread.
2828         (_initialize_remote_m32r): Initialize remote_m32r_ptid.
2829
2830 2008-08-07  Tom Tromey  <tromey@redhat.com>
2831             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2832
2833         * aclocal.m4, configure: Rebuild.
2834         * configure.in: Call ZW_CREATE_DEPDIR,
2835         ZW_PROG_COMPILER_DEPENDENCIES, AC_PROG_MAKE_SET.
2836         (MAKE, GMAKE): New substs.
2837         * acinclude.m4: Include depstand.m4.
2838         * Makefile.in (DEPMODE, DEPDIR, COMPILE.post, COMPILE.pre,
2839         COMPILE, POSTCOMPILE, depcomp): New variables.
2840         Remove all _h variables.
2841         Remove many .o targets.
2842         ($(srcdir)/copying.c): avoid backslash-newline after comment
2843         sign (@maintainer_mode_true@).
2844         (HFILES_NO_SRCDIR): Regenerate.
2845         (generated_files): New variable.
2846         (all_gdbtk_cflags): Likewise.
2847         (.c.o): Rewrote.
2848         (init.o, version.o, copying.o): Remove.
2849         (distclean): Remove DEPDIR.
2850         (test-cp-name-parser.o, hpux-thread.o, main.o, monitor.o,
2851         printcmd.o, procfs.o, v850ice.o): Rewrite.
2852         (cli-cmds.o, cli-decode.o, cli-dump.o, cli-interp.o, cli-logging.o,
2853         cli-script.o, cli-setshow.o, cli-utils.o): Likewise.
2854         (gdbtk.o, gdbtk-bp.o, gdbtk-cmds.o, gdbtk-hooks.o, gdbtk-interp.o,
2855         gdbtk-main.o, gdbtk-register.o, gdbtk-stack.o, gdbtk-varobj.o,
2856         gdbtk-wrapper.o): Likewise.
2857         (mi-cmd-break.o, mi-cmd-disas.o, mi-cmd-env.o, mi-cmd-file.o,
2858         mi-cmds.o, mi-cmd-stack.o, mi-cmd-target.o, mi-cmd-var.o,
2859         mi-console.o, mi-getopt.o, mi-interp.o, mi-main.o, mi-out.o,
2860         mi-parse.o, mi-symbol-cmds.o, mi-common.o, signals.o, tui.o,
2861         tui-command.o, tui-data.o, tui-disasm.o, tui-file.o, tui-hooks.o,
2862         tui-interp.o, tui-io.o, tui-layout.o, tui-main.o, tui-out.o,
2863         tui-regs.o, tui-source.o, tui-stack.o, tui-win.o, tui-windata.o,
2864         tui-wingeneral.o, tui-winsource.o): Likewise.
2865         (all_object_files): New variable.
2866         ($(all_object_files)): New target.
2867         Include dependency files, when using GNU Make.
2868
2869 2008-08-07  Ulrich Weigand  <uweigand@de.ibm.com>
2870
2871         * spu-tdep.c (info_spu_dma_cmdlist): Only show entries with
2872         the valid bit set.  Ensure display order respects partial
2873         order defined by dependency bits.
2874
2875 2008-08-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2876
2877         * solib-pa64.c (read_dld_descriptor): Return zero if load map is not
2878         setup.
2879
2880 2008-08-06  Mark Kettenis  <kettenis@gnu.org>
2881
2882         * i386obsd-nat.c (i386obsd_supply_pcb): Adjust for changes in
2883         OpenBSD 4.3.
2884
2885 2008-08-06  Vladimir Prus  <vladimir@codesourcery.com>
2886             Tom Tromey  <tromey@redhat.com>
2887             Thiago Jung Bauermann  <bauerman@br.ibm.com>
2888             Doug Evans  <dje@google.com>
2889
2890         * Makefile.in (SUBDIR_PYTHON_OBS, SUBDIR_PYTHON_SRCS,
2891         SUBDIR_PYTHON_DEPS, SUBDIR_PYTHON_LDFLAGS, SUBDIR_PYTHON_CFLAGS,
2892         PYTHON_CFLAGS): New.
2893         (python_h, python_internal_h): New.
2894         (cli-script.o): Depend on python.h
2895         (python.o, python-utils.o): New.
2896         * cli/cli-script.c (print_command_lines): Handle python_control.
2897         (execute_control_command): Handle python_control.
2898         (execute_control_command_untraced): New function.
2899         (while_command): Call execute_control_command_untraced.
2900         (if_command): Likewise.
2901         (get_command_line): Remove static attribute.
2902         (read_next_line): Handle "python".
2903         (recurse_read_control_structure): Handle python_control.
2904         (read_command_lines): Handle python_control.
2905         Include python.h.
2906         * cli/cli-script.h (get_command_line): Add prototype.
2907         (execute_control_command_untraced): Likewise.
2908         * configure.ac: Add --with-python.
2909         * defs.h (enum command_control_type) <python_control>: New
2910         constant.
2911         * python/python-internal.h: New file.
2912         * python/python.c: New file.
2913         * python/python.h: New file.
2914         * python/python-utils.c: New file.
2915         * NEWS: Mention Python scripting support and its new commands.
2916
2917 2008-08-06  Ulrich Weigand  <uweigand@de.ibm.com>
2918
2919         * spu-tdep.c (spu_gdbarch_init): Call set_gdbarch_frame_red_zone_size.
2920
2921 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
2922
2923         * MAINTAINERS (Write After Approval): Add self.
2924
2925 2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>
2926
2927         * breakpoint.c (hw_breakpoint_used_count): Use breakpoint_enabled.
2928         (insert_breakpoint_locations): Likewise.
2929
2930 2008-08-05  Phil Muldoon  <pmuldoon@redhat.com>
2931
2932         * breakpoint.c (create_longjmp_breakpoint): Remove unused struct
2933         breakpoint.
2934         (set_longjmp_breakpoint): Likewise.
2935
2936 2008-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2937
2938         PR build/2490
2939         * solib-pa64.c: Only compile if both HAVE_ELF_HP_H and __LP64__ are
2940         defined.
2941
2942 2008-08-05  Tom Tromey  <tromey@redhat.com>
2943
2944         * bcache.c (deprecated_bcache_added): Initialize obstack.
2945         (bcache_xmalloc): Don't initialize obstack.
2946         (bcache_xfree): Conditionally free obstack.
2947         (bcache_memory_used): Update.
2948
2949 2008-08-05  Tom Tromey  <tromey@redhat.com>
2950
2951         * symfile.c (add_psymbol_to_bcache): Return a const pointer.  Use
2952         bcache_full.
2953         (append_psymbol_to_list): Accept a const pointer.
2954         (add_psymbol_to_list): Fix const correctness.
2955         * bcache.h: (deprecated_bcache_added, deprecated_bcache): Remove.
2956         (bcache_full): Declare.
2957         * bcache.c (bcache_data, deprecated_bcache): Remove.
2958         (bcache): Use bcache_full.
2959         (bcache_full): Rename from deprecated_bcache_added.  Change return
2960         type.
2961
2962 2008-08-04  Stan Shebs  <stan@codesourcery.com>
2963
2964         * solib-svr4.c (BKPT_AT_SYMBOL): Remove, always defined.
2965         (bkpt_names): Remove SOLIB_BKPT_NAME, never defined.
2966         (enable_break): Remove test of BKPT_AT_SYMBOL.
2967
2968 2008-08-02  Keith Seitz  <keiths@redhat.com>
2969
2970         * acinclude.m4: Include ../config/tcl.m4 to pick up
2971         standard Tcl configury bits.
2972         Remove all Tcl, Tk, Itcl, Itk, etc definitions.
2973         * configure.ac: Don't check if ../itcl exists when building
2974         gdbtk. It could be installed.
2975         Rewrite gdbtk configury to allow for using system-supplied
2976         Tcl and Tk. Gdbtk no longer requires build-time access to
2977         itcl and itk.
2978         * Makefile.in: Remove everything related to itcl and itk.
2979         Rewrite the Tcl bits for gdbtk to correspond to rewrite of
2980         configure.ac.
2981         Remove v850ice.o build rule.
2982         (ALL_TCL_CFLAGS): New convenience defintion. Change all
2983         gdbtk sources to use it.
2984         * configure: Regenerate.
2985
2986 2008-07-31  Stan Shebs  <stan@codesourcery.com>
2987
2988         * coffread.c (coff_symtab_read): Remove FUNCTION_EPILOGUE_SIZE.
2989
2990 2008-07-30  Stan Shebs  <stan@codesourcery.com>
2991
2992         * objfiles.c (TARGET_KEEP_SECTION): Remove.
2993         (add_to_objfile_sections): Remove use.
2994
2995 2008-07-29  Tom Tromey  <tromey@redhat.com>
2996
2997         * cli/cli-decode.c (lookup_cmd_1): Use memcpy.
2998         (lookup_cmd_composition): Likewise.
2999
3000 2008-07-29  Tom Tromey  <tromey@redhat.com>
3001
3002         * cli/cli-cmds.c (edit_command): Remove unused variables.  Delete
3003         dead code.  Fix indentation.
3004
3005 2008-07-29  Stan Shebs  <stan@codesourcery.com>
3006
3007         * main.c (captured_main): Remove long-unused #if 0 blocks.
3008
3009 2008-07-28  Tom Tromey  <tromey@redhat.com>
3010
3011         * annotate.h (deprecated_annotate_starting_hook): Remove.
3012         (deprecated_annotate_stopped_hook): Remove.
3013         (deprecated_annotate_exited_hook): Remove.
3014         * Makefile.in (annotate.o): Depend on observer_h.
3015         * top.c (deprecated_delete_breakpoint_hook): Remove.
3016         (deprecated_create_breakpoint_hook): Likewise.
3017         (deprecated_modify_breakpoint_hook): Likewise.
3018         * interps.c (clear_interpreter_hooks): Update for removed hooks.
3019         * breakpoint.c (mention): Don't call removed hook.
3020         (delete_breakpoint): Likewise.
3021         (disable_breakpoint): Likewise.
3022         (do_enable_breakpoint): Likewise.
3023         * annotate.c: Include observer.h.
3024         (breakpoint_changed): Change type of argument.
3025         (_initialize_annotate): Register observers.
3026         (deprecated_annotate_starting_hook): Remove.
3027         (deprecated_annotate_stopped_hook): Remove.
3028         (deprecated_annotate_exited_hook): Remove.
3029         (annotate_starting): Update for hook removal.
3030         (annotate_stopped): Likewise.
3031         (annotate_exited): Likewise.
3032         * defs.h (deprecated_delete_breakpoint_hook): Remove.
3033         (deprecated_create_breakpoint_hook): Likewise.
3034         (deprecated_modify_breakpoint_hook): Likewise.
3035
3036 2008-07-28  Tom Tromey  <tromey@redhat.com>
3037
3038         * main.c (captured_main): Don't use BEFORE_MAIN_LOOP_HOOK.
3039
3040 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
3041
3042         * configure.ac: Check for the GNU/Linux ptrace signature.
3043         * configure: Regenerated.
3044
3045 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
3046
3047         * linux-nat.c (resume_callback): Add more debugging output.
3048         (linux_nat_has_pending_sigint): New function, based on
3049         linux_nat_has_pending.
3050         (set_ignore_sigint, maybe_clear_ignore_sigint): New functions.
3051         (stop_wait_callback): Remove flush_mask handling.  Honor
3052         ignore_sigint.  Call maybe_clear_ignore_sigint.  Pass NULL
3053         to recursive calls.
3054         (linux_nat_has_pending, flush_callback): Remove.
3055         (linux_nat_filter_event): Check for ignore_sigint.
3056         (linux_nat_wait): Remove flush_mask support and call to
3057         flush_callback.  Use set_ignore_sigint and maybe_clear_ignore_sigint.
3058         * linux-nat.h (struct lwp_info): Add ignore_sigint field.
3059
3060 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
3061
3062         * linux-nat.c (count_events_callback, select_event_lwp_callback): Only
3063         report events from resumed threads.
3064
3065 2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>
3066
3067         * mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
3068         (mips_linux_init_abi): Set tdep->syscall_next_pc.
3069         * mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
3070         mips-tdep.h.
3071         (mips32_next_pc): Handle the syscall instruction.
3072         * mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
3073         from mips-tdep.c.  Add syscall_next_pc to gdbarch_tdep.
3074
3075 2008-07-26  Tom Tromey  <tromey@redhat.com>
3076
3077         PR gdb/1158:
3078         * valops.c (value_struct_elt): Treat function-valued field as a
3079         static method.
3080
3081 2008-07-26  Tom Tromey  <tromey@redhat.com>
3082
3083         PR gdb/1136:
3084         * macroexp.c (get_punctuator) <punctuators>: Rearrange to put
3085         longer tokens first.
3086
3087 2008-07-26  Vladimir Prus  <vladimir@codesourcery.com>
3088
3089         Kill cmd_async_ok.
3090         * cli/cli-decode.h (CMD_ASYNC_OK, set_cmd_async_ok)
3091         (get_cmd_async_ok): Remove.
3092         * cli/cli-decode.c (set_cmd_async_ok, get_cmd_async_ok): Remove.
3093         * cli/cli-cmds.c (init_cli_cmds): Don't use set_cmd_async_ok.
3094         * infcmd.c (_initialize_infcmd): Likewise.
3095         * thread.c (_initialize_thread): Likewise.
3096
3097 2008-07-25  Joseph Myers  <joseph@codesourcery.com>
3098
3099         * mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
3100         128-bit long doubles in even-odd pairs of FPRs.  Do not
3101         right-align float arguments for big-endian.
3102         (mips_n32n64_return_value): Apply return value convention for
3103         structs containing one or two floating-point values to soft-float
3104         as well as hard-float.  Handle 128-bit long doubles in such
3105         structs.
3106         (mips_o32_push_dummy_call): Only skip one integer register for a
3107         float argument passed in an FPR.
3108
3109 2008-07-25  Tom Tromey  <tromey@redhat.com>
3110
3111         * tui/tui-hooks.c: Include observer.h.
3112         (tui_event_default, tui_old_event_hooks, tui_event_hooks):
3113         Remove.
3114         (tui_bp_created_observer, tui_bp_deleted_observer,
3115         tui_bp_modified_observer): New globals.
3116         (tui_install_hooks): Use observers, not events.
3117         (tui_remove_hooks): Likewise.
3118         * mi/mi-cmd-break.c: Include observer.h, not gdb-events.h.
3119         (mi_breakpoint_observers_installed, mi_can_breakpoint_notify): New
3120         globals.
3121         (breakpoint_notify): Check mi_can_breakpoint_notify.
3122         (breakpoint_hooks): Remove.
3123         (mi_cmd_break_insert): Attach observers.  Don't use events.
3124         * tracepoint.c: Include observer.h, not gdb-events.h.
3125         (tracepoint_operation, trace_pass_command): Notify observer.
3126         * interps.c: Don't include gdb-events.h.
3127         (clear_interpreter_hooks): Don't call clear_gdb_event_hooks.
3128         * gdbarch.c: Rebuild.
3129         * gdbarch.sh: Emit include for observer.h, not gdb-events.h.
3130         (deprecated_current_gdbarch_select_hack): Notify observer.
3131         * breakpoint.h: Don't include gdb-events.h.
3132         * breakpoint.c: Don't include gdb-events.h.
3133         (condition_command): Notify observer.
3134         (commands_command): Likewise.
3135         (commands_from_control_command): Likewise.
3136         (mention, delete_breakpoint, set_ignore_count): Likewise.
3137         (disable_breakpoint, do_enable_breakpoint): Likewise.
3138         * Makefile.in (gdb_events_h): Remove.
3139         (breakpoint_h): Update.
3140         (COMMON_OBS): Remove gdb-events.o.
3141         (gdb-events.o): Remove.
3142         (breakpoint.o, gdbarch.o, interps.o, tracepoint.o, gdbtk-bp.o,
3143         gdbtk-hooks.o, mi-cmd-break.o, tui-hooks.o): Update.
3144         * gdb-events.c: Remove.
3145         * gdb-events.h: Remove.
3146         * gdb-events.sh: Remove.
3147
3148 2008-07-24  Pedro Alves  <pedro@codesourcery.com>
3149
3150         * remote.c (remote_threads_extra_info): Don't query the remote
3151         server about info on the internally added main thread.
3152
3153 2008-07-24  Aleksandar Ristovski  <aristovski@qnx.com>
3154
3155         * nto-procfs.c (procfs_attach): Populate initial thread list.
3156         (procfs_wait): Return new pid, built from the inferior status.
3157
3158 2008-07-23  Thiago Jung Bauermann  <bauerman@br.ibm.com>
3159
3160         * configure.ac (CONFIG_INITS): Delete long obsoleted variable.
3161         * configure: Regenerate.
3162
3163 2008-07-23  Aleksandar Ristovski  <aristovski@qnx.com>
3164
3165         * nto-procfs.c (procfs_xfer_memory): Changed signature.
3166         (procfs_resume): Workaround for dereferencing type-punned pointer
3167         warning.
3168         * nto-tdep.c (nto_parse_redirection): Change signature to be const
3169         correct.
3170         * nto-tdep.h (nto_parse_redirection): Likewise.
3171
3172 2008-07-21  Stan Shebs  <stan@codesourcery.com>
3173
3174         Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
3175         * gdbarch.sh: Adjust comment to refer to
3176         in_solib_dynsym_resolve_code().
3177         * gdbarch.h, gdbarch.c: Update.
3178         * solib-osf.c: Ditto.
3179         * infrun.c: Ditto.
3180         (handle_inferior_event): Use in_solib_dynsym_resolve_code
3181         unconditionally.
3182         * config/mips/nm-irix5.h: Remove undef of
3183         IN_SOLIB_DYNSYM_RESOLVE_CODE.
3184
3185 2008-07-21  Tom Tromey  <tromey@redhat.com>
3186
3187         * symfile.c (reread_symbols): Don't pass argument to observer.
3188         * exec.c (exec_file_attach): Don't pass argument to observer.
3189         * ada-lang.c (ada_executable_changed_observer): Remove argument.
3190         * symtab.c (symtab_observer_executable_changed): Remove argument.
3191         * observer.sh: Handle functions with no arguments.
3192
3193 2008-07-20  Sergei Poselenov  <sposelenov@emcraft.com>
3194             Chris Demetriou  <cgd@google.com>
3195
3196         * elfread.c (elf_symfile_segments): Fix the check that each loadable
3197         section fits within an ELF segment to handle ELF segments that hit
3198         the end of the address space.
3199
3200 2008-07-20  Chris Demetriou  <cgd@google.com>
3201
3202         * MAINTAINERS (Write After Approval): Add self.
3203
3204 2008-07-18  Tom Tromey  <tromey@redhat.com>
3205
3206         PR gdb/855:
3207         * NEWS: Add entry for macro commands.
3208         * Makefile.in (macrocmd.o): Add gdb_string.h.
3209         * macroscope.h (user_macro_scope): Declare.
3210         (default_macro_scope): Update documentation.
3211         (macro_user_macros): Declare.
3212         * c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
3213         Use user_macro_scope.
3214         (null_macro_lookup): Remove.
3215         * macrotab.h (macro_callback_fn): Declare.
3216         (macro_for_each): Likewise.
3217         (macro_allow_redefinitions): Likewise.
3218         * macrotab.c (foreach_macro): New function
3219         (macro_for_each): Likewise.
3220         (struct macro_table) <redef_ok>: New field.
3221         (macro_allow_redefinitions): New function.
3222         (new_macro_table): Update.
3223         (macro_define_function): Likewise.
3224         (macro_define_object): Likewise.
3225         * macroscope.c (user_macro_scope): New function.
3226         (default_macro_scope): Use it.
3227         (macro_user_macros): New global.
3228         (standard_macro_lookup): Look in macro_user_macros.
3229         (_initialize_macroscope): New function.
3230         * macroexp.h (macro_is_whitespace, macro_is_digit,
3231         macro_is_identifier_nondigit): Declare.
3232         * macroexp.c (macro_is_whitespace): Rename.  No longer static.
3233         (macro_is_digit): Likewise.
3234         (macro_is_identifier_nondigit): Likewise.
3235         (get_identifier): Update.
3236         (get_pp_number): Likewise.
3237         (get_token): Likewise.
3238         * macrocmd.c (skip_ws): New function.
3239         (extract_identifier): Likewise.
3240         (free_macro_definition_ptr): Likewise.
3241         (user_macros): Remove.
3242         (macro_define_command): Implement.
3243         (_initialize_macrocmd): Update.
3244         (macro_undef_command): Implement.
3245         (print_one_macro): New function.
3246         (macro_list_command): Implement.
3247
3248 2008-07-18  Joseph Myers  <joseph@codesourcery.com>
3249
3250         * configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
3251         in BFD ELF check.
3252         * configure: Regenerate.
3253
3254 2008-07-17  Paul Pluzhnikov  <ppluzhnikov@google.com>
3255
3256         * auxv.c (fprint_target_auxv): Stop at AT_NULL.
3257
3258 2008-07-15  Andreas Schwab  <schwab@suse.de>
3259
3260         * valops.c (value_cast_pointers): Follow typedefs when checking
3261         result of coercion.
3262
3263 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
3264
3265         * block.c (block_function): Renamed to ...
3266         (block_linkage_function): ... this.  All callers changed.
3267         * block.h (block_function): Renamed to ...
3268         (block_linkage_function): ... this.
3269
3270 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
3271
3272         * mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.
3273
3274 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
3275
3276         * frame.c (frame_sp_unwind): Delete.
3277         (get_frame_sp): Do not use it.
3278         * frame.h (frame_sp_unwind): Delete prototype.
3279
3280 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
3281
3282         * ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.
3283
3284 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
3285
3286         * dwarf2-frame.c (dwarf2_frame_cache): Update comment.
3287         * frame.c (frame_unwind_address_in_block): Delete.
3288         (get_frame_address_in_block): Do not use it.  Check the type
3289         of the next frame first.
3290         (frame_cleanup_after_sniffer): Update comment.
3291         * frame.h (frame_unwind_address_in_block): Delete prototype.
3292         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
3293
3294 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
3295
3296         * frame.c (frame_func_unwind): Delete.
3297         (get_frame_func): Do not use it.
3298         * frame.h (frame_func_unwind): Delete prototype.
3299         * hppa-tdep.c (hppa_frame_cache): Update comment.
3300         * rs6000-tdep.c (rs6000_frame_cache): Update comment.
3301
3302 2008-07-14  Stan Shebs  <stan@codesourcery.com>
3303
3304         * remote-sim.c (init_gdbsim_ops): Remove
3305         TARGET_REDEFINE_DEFAULT_OPS.
3306
3307 2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>
3308
3309         * findvar.c (read_var_value): Remove unused variable.
3310
3311 2008-07-15  Luis Machado  <luisgpm@br.ibm.com>
3312
3313         * infrun.c (handle_inferior_event): Tag threads as stopped
3314         before inserting breakpoints.
3315
3316 2008-07-15  Hui Zhu  <teawater@gmail.com>
3317
3318         * MAINTAINERS: Added myself to section Write After Approval.
3319
3320 2008-07-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
3321
3322         PR gdb/2477
3323         * cp-abi.c (value_virtual_fn_field): Handle invalid pointers.
3324
3325 2008-07-14  Pedro Alves  <pedro@codesourcery.com>
3326
3327         * i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
3328         (i386_dicos_push_dummy_code): New.
3329         (i386_dicos_init_abi): Don't register i386_dicos_frame_align.
3330         Register i386_dicos_push_dummy_code.
3331
3332 2008-07-14  Markus Deuling  <deuling@de.ibm.com>
3333
3334         * mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
3335         (mips_n32n64_push_dummy_call, mips_o64_return_value)
3336         (mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
3337
3338         (MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
3339         (fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
3340         (mips_n32n64_fp_arg_chunk_p): Update caller.
3341
3342         (mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
3343         (mips_n32n64_push_dummy_call): Update caller.
3344
3345         (MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
3346         current_gdbarch.
3347         (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
3348         (mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
3349
3350
3351         (MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
3352         current_gdbarch.
3353         (mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
3354         (mips_o64_push_dummy_call): Update caller.
3355
3356         (MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
3357         (fp_register_arg_p, mips_dump_tdep): Update caller.
3358
3359         (set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
3360         (mips16_scan_prologue, mips32_scan_prologue): Update caller.
3361
3362         (reset_saved_regs): Make static.  Add gdbarch as parameter.  Replace
3363         current_gdbarch.
3364         (mips32_scan_prologue): Update caller.
3365
3366         (heuristic_proc_start): Add gdbarch as parameter. Replace
3367         current_gdbarch.
3368         (mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
3369
3370         * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
3371         (mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
3372         the current architecture. Update call to getregs_supplies.
3373         (getregs_supplies): Add gdbarch as parameter and replace
3374         current_gdbarch.
3375
3376         * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
3377         get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
3378         NBSD_MIPS_JB_ELEMENT_SIZE.
3379         (NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
3380         replace current_gdbarch.
3381
3382         * remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
3383         current_gdbarch.
3384         (mips_fetch_registers, mips_store_registers): Update call
3385         to mips_map_regno.
3386         (mips_load): Use get_regcache_arch to get at the current_architecture
3387         and replace current_gdbarch.
3388
3389 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
3390
3391         * thread.c (restore_selected_frame): On fail to restore, select
3392         the innermost frame, and don't crash when warning the user.
3393
3394 2008-07-13  Hui Zhu  <teawater@gmail.com>
3395
3396         * symtab.c (expand_line_sal): Fix a memory leak.
3397
3398 2008-07-13  Pedro Alves  <pedro@codesourcery.com>
3399
3400         * utils.c (struct continuation): Define as inheriting struct
3401         cleanup.
3402         (add_continuation, do_all_continuations)
3403         (discard_all_continuations, add_intermediate_continuation)
3404         (do_all_intermediate_continuations)
3405         (discard_all_intermediate_continuations): Adjust.
3406
3407 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
3408
3409         Skip varobj in running threads.
3410         * mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
3411         thread is not stopped, skip the varobj.
3412         * Makefile.in: Update dependencies.
3413
3414 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
3415
3416         Enable all commands while inferiour is running
3417         * mi/mi-main.c (mi_cmd_execute): Don't check if
3418         inferiour is executing.
3419
3420 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
3421
3422         Allow all CLI command even if target is executing.
3423         * gdb/top.c (execute_command_1): Don't check if the inferiour
3424         is running.
3425
3426 2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>
3427
3428         * mi/mi-main.c (mi_cmd_execute): Remove unused variable.
3429         Fix printing of frame, when frame is wrong.
3430
3431 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
3432
3433         * spu-tdep.c (spu_frame_unwind_cache): Do not error if
3434         backchain is unreadable.
3435
3436 2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>
3437
3438         * spu-linux-nat.c: Include "gdbthread.h".
3439         (spu_child_post_startup_inferior): Register main thread.
3440         (spu_child_post_attach): Likewise.
3441         * Makefile.in (spu-linux-nat.o): Update dependencies.
3442
3443 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
3444
3445         Rewrite continuations internals on top of cleanups and plug
3446         continuation arguments leaks.
3447
3448         * defs.h (struct continuation): Make it opaque.
3449         (add_continuation, add_intermediate_continuation): Drop the int
3450         argument of the continuation hook argument.  Add
3451         continuation_free_args argument.
3452         (do_all_continuations, do_all_intermediate_continuations): Drop
3453         the error_p argument.
3454
3455         * utils.c (add_continuation): Drop the int argument of the
3456         continuation hook argument.  Add continuation_free_args argument.
3457         Reimplement on top of cleanups.
3458         (do_all_continuations): Drop error argument.  Reimplement on top
3459         of cleanups.
3460         (discard_all_continuations): Reimplement on top of cleanups.
3461         (add_intermediate_continuation): Drop the int argument of the
3462         continuation hook argument.  Add continuation_free_args argument.
3463         Reimplement on top of cleanups.
3464         (do_all_intermediate_continuations): Drop error argument.
3465         Reimplement on top of cleanups.
3466         (discard_all_intermediate_continuations): Reimplement on top of
3467         cleanups.
3468
3469         * breakpoint.c (until_break_command_continuation): Drop error
3470         argument.  Add xfree as continuation argument deleter.
3471
3472         * inf-loop.c (inferior_event_handler): On error, discard all
3473         continuations.  Adjust to new do_all_intermediate_continuations
3474         and do_all_continuations interfaces.
3475
3476         * infcmd.c (step_1_continuation): Drop error_p argument.  Adjust.
3477         Pass xfree as continuation argument deleter.
3478         (finish_command_continuation): Drop error_p argument.  Adjust.
3479         (finish_command_continuation_free_arg): New.
3480         (finish_command): Pass finish_command_continuation_free_arg as
3481         continuation argument deleter.  Adjust to new do_all_continuations
3482         interfaces.
3483         (attach_command_continuation): Drop error_p argument.
3484         (attach_command_continuation_free_args): New.
3485         (attach_command): Pass attach_command_continuation_free_args as
3486         continuation argument deleter.
3487
3488         * interps.c (interp_set): Adjust to new do_all_continuations
3489         interfaces.
3490
3491         * event-top.c (stdin_event_handler): In error, also discard the
3492         intermediate continuations.
3493
3494 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
3495
3496         Replace struct continuation_args by void* and per command structs.
3497
3498         * top.c (execute_command): Remove unused arg1 and arg2 locals.
3499
3500         * breakpoint.c (struct until_break_command_continuation_args):
3501         New.
3502         (until_break_command_continuation): Take a void* instead of a
3503         continuations_arg.  Adjust.
3504         (until_break_command): Adjust to use struct
3505         until_break_command_continuation_args instead of struct
3506         continuation_arg.
3507
3508         * infcmd.c (struct step_1_continuation_args): New.
3509         (step_1_continuation): Take a void* instead of a
3510         continuations_arg.  Adjust to use struct step_1_continuation_args.
3511         (step_once): Adjust to use struct step_1_continuation_args.
3512
3513         (struct finish_command_continuation_args): New.
3514         (finish_command_continuation): Take a void* instead of a
3515         continuations_arg.  Adjust to use struct
3516         finish_command_continuation_args.
3517         (finish_command): Adjust to use struct
3518         finish_command_continuation_args.
3519         (struct attach_command_continuation_args): New.
3520         (attach_command_continuation): Take a void* instead of a
3521         continuations_arg.  Adjust to use struct
3522         attach_command_continuation_args.
3523         (attach_command): Adjust to use struct
3524         attach_command_continuation_args.
3525
3526         * defs.h (struct continuation_arg): Delete.
3527         (struct continuation): Replace the struct continuation_arg*
3528         parameter of continuation_hook by a void*.  Replace "arg_list"
3529         member by a new "args" member with void* type.
3530         (add_continuation, add_intermediate_continuation): Replace struct
3531         continuation_arg type usages by void* usages.
3532
3533         * utils.c (add_continuation, do_all_continuations)
3534         (add_intermediate_continuation)
3535         (do_all_intermediate_continuations): Replace struct
3536         continuation_arg type usages by void* usages.  Pass "args" instead
3537         of "arg_list".
3538
3539 2008-07-12  Pedro Alves  <pedro@codesourcery.com>
3540
3541         * infrun.c (struct thread_stepping_state): Delete sal member.
3542         (init_thread_stepping_state): Add local sal.  Use it instead of
3543         tss->sal.
3544         (handle_inferior_event): New local stop_pc_sal.  Use it instead of
3545         tss->sal.
3546         (step_into_function): Add local stop_func_sal.  Use it instead of
3547         tss->sal.
3548
3549 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
3550
3551         Implement -exec-continue/-exec-interrupt --all.
3552         * infcmd.c (continue_1): New, extracted from
3553         (continue_command): ...here.
3554         (interrupt_target_1): New, extracted from
3555         (interrupt_target_command): ...here.
3556         * inferior.h (continue_1, interrupt_target_1): New.
3557         * mi/mi-main.c (mi_cmd_exec_continue)
3558         (mi_cmd_exec_interrupt): Handle --all.
3559
3560 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
3561
3562         Implement --thread and --frame.
3563         * gdbthread.h (find_thread_id): Declare.
3564         * thread.c (find_thread_id): Make non-static.
3565         * mi/mi-main.c (mi_cmd_execute): Switch to the right
3566         thread and frame, if necessary.
3567         * mi/mi-parse.c (mi_parse): Handle --thread and --frame.
3568         * mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
3569
3570 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
3571
3572         * infrun.c (resume): Discard cleanups on early exit path.
3573
3574 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
3575
3576         * infrun.c (normal_stop): For MI, report which threads
3577         were stopped.
3578
3579 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
3580
3581         Report thread state in -thread-info output.
3582         * thread.c (print_thread_info): Add new field "state".
3583
3584 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
3585
3586         * infrun.c (handle_inferior_event): Also ignore a
3587         TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
3588
3589 2008-07-11  Tom Tromey  <tromey@redhat.com>
3590
3591         * completer.c (complete_line_internal): New function, from
3592         complete_line.  Add 'for_help' parameter.
3593         (complete_line): Use it.
3594         (command_completer): Move later.  Rewrite.
3595
3596 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
3597
3598         * thread.c (thread_apply_command): Move making the cleanup out of
3599         the loop.
3600
3601 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
3602
3603         Exited threads.
3604
3605         * thread.c (enum thread_state): New.
3606         (thread_state main_thread_running): Delete, in favor of...
3607         (thread_state main_thread_state): ... this.  Update throughout.
3608         (clear_thread_inferior_resources): New, split from free_thread.
3609         (free_thread): Call clear_thread_inferior_resources.
3610         (init_thread_list): Set main thread to stopped state.
3611         (add_thread_silent): Take care of PTID reuses.
3612         (delete_thread): If deleting inferior_ptid or a thread with
3613         refcount > 0, mark it as exited, but still keep it in the list.
3614         Only notify of thread exits, if we haven't done so yet.
3615         (iterate_over_threads): Make it safe to delete threads while
3616         iterating over them.
3617         (do_captured_list_thread_ids): Don't account for exited threads.
3618         (thread_alive): Check for the THREAD_EXITED state, and don't set
3619         ptid to -1 on exited threads.
3620         (set_running): Update to account for extra possible states.
3621         (is_thread_state): New.
3622         (is_stopped, is_exited): New.
3623         (is_running): Implement in terms of is_thread_state.
3624         (any_running): Update.
3625         (print_thread_info): Update.  Account for exited threads.  Don't
3626         warn about missed frame restoring here, its done in the cleanup.
3627         (switch_to_thread): Don't read from a thread that has gone.
3628         (restore_current_thread): In non-stop mode, do a full context
3629         switch.
3630         (restore_selected_frame): Add a frame_level argument.  Rewrite.
3631         (struct current_thread_cleanup): Add selected_frame_level and
3632         was_stopped members.
3633         (do_restore_current_thread_cleanup): Check if thread was stopped
3634         and still is, and if the target has registers, stack and memory
3635         before restoring the selected frame.  Don't delete the cleanup
3636         argument here.
3637         (restore_current_thread_cleanup_dtor): New.
3638         (make_cleanup_restore_current_thread): Remove all arguments.
3639         Rewrite.
3640         (thread_apply_all_command): Update.  Prune threads.
3641         (thread_apply_command): Update.
3642         (thread_command): Account for currently selected exited thread.
3643         (do_captured_thread_select): Check for a running thread.  Prune
3644         threads.
3645         (_initialize_thread): Make "info threads", "thread", "thread
3646         apply", and "thread apply all" appliable without a selected thread.
3647         * gdbthread.h (struct thread_info): Replace running_ by state_.
3648         Add refcount.
3649         (is_exited, is_stopped): Declare.
3650         (make_cleanup_restore_current_thread): Remove all arguments.
3651         * infrun.c: Include "event-top.h".
3652         (fetch_inferior_event): In non-stop mode, restore selected thread
3653         and frame after handling the event and running breakpoint
3654         commands.  Display GDB prompt if needed.
3655         (normal_stop): In non-stop mode, don't print thread switching
3656         notice.
3657         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
3658         (get_cmd_no_selected_thread_ok): New.
3659         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
3660         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
3661         Declare.
3662         * cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
3663         no-selected-thread ok.
3664         * top.c (execute_command): Check for non no-selected-thread-ok
3665         commands.
3666         * linux-nat.c (struct saved_ptids, threads_to_delete)
3667         (record_dead_thread, prune_lwps): Delete.
3668         (exit_lwp): Unconditionally delete thread.
3669         (linux_nat_resume): Remove prune_lwps call.
3670         * infcmd.c (proceed_thread_callback): Check if !is_stopped instead
3671         of is_running.  Adjust to make_cleanup_restore_current_thread
3672         interface change.
3673         * mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
3674         selected thread has exited.
3675         * inf-loop.c (inferior_event_handler): Don't display the prompt
3676         here.
3677         * varobj.c (c_value_of_root): Update.
3678         * defs.h (make_cleanup_dtor): Declare.
3679         * utils.c (make_cleanup_dtor): New.
3680
3681         * Makefile.in (infrun.o): Depend on $(event_top_h).
3682
3683 2008-07-11  Pedro Alves  <pedro@codesourcery.com>
3684
3685         Add "continue -a" and "interrupt -a" options for non-stop mode.
3686
3687         * infcmd.c (proceed_thread_callback, do_context_switch_to): New.
3688         (continue_command): Add "-a" option.
3689         (interrupt_target_command): Add "-a" option.
3690         (_initialize_infcmd): Add extend help of continue and interrupt
3691         command to mention the new "-a" option.  Mark "continue" async ok.
3692
3693 2008-07-10  Doug Evans  <dje@google.com>
3694
3695         Add "set print symbol-loading on|off".
3696         * NEWS: Document new option.
3697         * symfile.h (print_symbol_loading): Declare.
3698         * symfile.c (print_symbol_loading): New global.
3699         (symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
3700         from ..." if print_symbol_loading.
3701         (_initialize_symfile): Add set/show print symbol-loading.
3702         * solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
3703         if print_symbol_loading.
3704
3705 2008-07-10  Pedro Alves  <pedro@codesourcery.com>
3706
3707         Non-stop linux native.
3708
3709         * linux-nat.c (linux_test_for_tracefork): Block events while we're
3710         here.
3711         (get_pending_status): Implement non-stop mode.
3712         (linux_nat_detach): Stop threads before detaching.
3713         (linux_nat_resume): In non-stop mode, always resume only a single
3714         PTID.
3715         (linux_handle_extended_wait): On a clone event, in non-stop mode,
3716         add new lwp to GDB's thread table, and mark as running, executing
3717         and stopped appropriately.
3718         (linux_nat_filter_event): Don't assume there are other running
3719         threads when a thread exits.
3720         (linux_nat_wait): Mark the main thread as running and executing.
3721         In non-stop mode, don't stop all lwps.
3722         (linux_nat_kill): Stop lwps before killing them.
3723         (linux_nat_thread_alive): Use signal 0 to detect if a thread is
3724         alive.
3725         (send_sigint_callback): New.
3726         (linux_nat_stop): New.
3727         (linux_nat_add_target): Set to_stop to linux_nat_stop.
3728
3729         * linux-nat.h (thread_db_attach_lwp): Declare.
3730
3731         * linux-thread-db.c (thread_get_info_callback): Check for new
3732         threads if we have none.
3733         (thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
3734         stopped lwp.  Check for new threads if we have none.
3735         (thread_db_attach_lwp): New.
3736         (thread_db_init): Set proc_handle.pid to inferior_ptid.
3737         (check_event): Set proc_handle.pid to the stopped lwp.
3738         (thread_db_find_new_threads): Set proc_handle.pid to any stopped
3739         lwp available, bail out if there is none.
3740
3741         * linux-fork.c (linux_fork_killall): Use SIGKILL instead of
3742         PTRACE_KILL.
3743
3744 2008-07-10  Kevin Buettner  <kevinb@redhat.com>
3745
3746         * rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
3747         `current_pc' from CORE_ADDR to ULONGEST.
3748
3749         * remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
3750         gdbsim_stop().
3751
3752 2008-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
3753
3754         * NEWS (New commands): Mention "set disable-randomization".
3755         * configure.ac: Add check for HAVE_PERSONALITY and
3756         HAVE_DECL_ADDR_NO_RANDOMIZE.
3757         * configure, config.in: Regenerate.
3758         * linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>.
3759         [HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set
3760         ADDR_NO_RANDOMIZE.
3761         (disable_randomization, show_disable_randomization)
3762         (set_disable_randomization): New.
3763         (linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables
3764         PERSONALITY_ORIG and PERSONALITY_SET.  Disable randomization upon the
3765         variable DISABLE_RANDOMIZATION.
3766         (_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable
3767         DISABLE_RANDOMIZATION.
3768
3769 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
3770
3771         Adjust all targets to new target_stop interface.
3772
3773         * gnu-nat.c (gnu_stop): Add ptid argument.
3774         * go32-nat.c (go32_stop): Add ptid argument.
3775         (go32_create_inferior): Pass inferior_ptid to go32_stop.
3776         * hpux-thread.c (hpux_thread_stop): Add ptid argument.
3777         * monitor.c (monitor_stop): Add ptid argument.
3778         (monitor_open): Pass inferior_ptid to monitor_stop.
3779         (monitor_interrupt): Pass inferior_ptid to target_stop.
3780         (monitor_stop): Add ptid argument.
3781         * nto-procfs.c (nto_interrupt): Pass inferior_ptid to target_stop.
3782         (procfs_create_inferior): Add ptid argument.
3783         * procfs.c (procfs_stop): Add ptid argument.
3784         * remote-m32r-sdi.c (m32r_stop): Add ptid argument.
3785         * remote-sim.c (gdbsim_stop): Add ptid argument.
3786         * sol-thread.c (sol_thread_stop): Add ptid argument.
3787         * win32-nat.c (win32_stop): Add ptid argument.
3788
3789 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
3790
3791         Non-stop inferior control.
3792
3793         * infrun.c (resume): In non-stop mode, always resume just one
3794         thread.
3795         (proceed): Don't call prepare_to_proceed in non-stop mode.
3796         (fetch_inferior_event): In non-stop mode, switch context before
3797         handling the event.
3798         (error_is_running, ensure_not_running): New.
3799         (handle_inferior_event): In non-stop mode: Mark only the event
3800         thread as stopped.  Require that the target module manages adding
3801         threads to the thread list.  Assert that there isn't a
3802         deferred_step_ptid set.  Don't switch to infwait_thread_hop_state.
3803         (normal_stop): Only mark not-running if inferior hasn't exited.
3804         In non-stop mode, only mark the event thread.
3805
3806         * thread.c:Include "cli/cli-decode.h".
3807         (print_thread_info): Don't read from a running thread.
3808         Output "(running)" if thread is running.
3809         (switch_to_thread): Don't read stop_pc if thread is executing.
3810         (do_restore_current_thread_cleanup): Don't write to a running
3811         thread.
3812         (thread_apply_all_command): Don't read from a running thread.  In
3813         non-stop mode, do a full context-switch instead of just switching
3814         threads.
3815         (thread_apply_command): In non-stop mode, do a full context-switch
3816         instead of just switching threads.
3817         (do_captured_thread_select): Likewise.  Inform user if selected
3818         thread is running.
3819         (_initialize_thread): Mark "info threads" and "thread" and
3820         async_ok.
3821
3822         * inf-loop.c (inferior_event_handler): In non-stop mode, don't
3823         unregister the target from the event loop.
3824
3825         * infcmd.c (continue_command, step_1, jump_command)
3826         (signal_command): Ensure the selected thread isn't running.
3827         (interrupt_target_command): In non-stop mode, interrupt only the
3828         selected thread.
3829
3830         * inferior.h (error_is_running, ensure_not_running): Declare.
3831
3832         * target.h (struct target_ops): Add ptid argument to the to_stop
3833         member.
3834         (target_stop): Add ptid_t argument.
3835
3836         * target.c (update_current_target): Add ptid argument to to_stop's
3837         type.
3838         (debug_to_stop): Add ptid_t argument.
3839         (debug_to_rcmd): Set to_stop_ptid.
3840
3841         * remote.c (remote_stop): Add ptid_t argument.
3842         (async_remote_interrupt): Add inferior_ptid to target_stop.
3843         * inf-ptrace.c (inf_ptrace_stop): Add ptid argument.
3844
3845         * Makefile.in (thread.o): Depend on $(cli_decode_h).
3846
3847 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
3848
3849         Don't rely on ecs->wait_for_more.
3850
3851         * infrun.c (proceed): Clear the stepping state, set
3852         previous_inferior_ptid and clear infwait state.
3853         (wait_for_inferior): Don't clear the stepping state, set
3854         previous_inferior_ptid, or clear the infwait state here.
3855         (fetch_inferior_event): Don't clear the stepping state, set
3856         previous_inferior_ptid, or clear the infwait state here.  Don't
3857         condition on wait_for_more.
3858
3859 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
3860
3861         Refactor infrun a bit.
3862
3863         * infrun.c (currently_stepping): Take a struct
3864         thread_stepping_state instead of an execution_control_state.
3865         (struct thread_stepping_state): New, split from
3866         execution_control_state.
3867         (gtss, tss): New globals.
3868         (proceed): Clear the stepping state, set previous_inferior_ptid
3869         and clear infwait state.
3870         (init_wait_for_inferior): Clear the stepping state,
3871         previous_inferior_ptid and infwait state.
3872         (waiton_ptid, infwait_state): New, split from
3873         execution_control_state.
3874         (struct execution_control_state): Members that persist through
3875         events moved out to either struct thred_stepping_state or made
3876         global.  Deleted unneeded wp, saved_inferior_ptid, tmpstatus.
3877         (wait_for_inferior, fetch_inferior_event): Use local
3878         execution_control_state.  Update to execution_control_state split.
3879         (init_execution_control_state): Adjust.
3880         (init_thread_stepping_state): New, extracted from
3881         init_execution_control_state.
3882         (context_switch): Take a ptid instead of an
3883         execution_control_state.
3884         (context_switch_to): Adjust.
3885         (adjust_pc_after_break): Adjust.
3886         (init_infwait_state): New.
3887         (handle_inferior_event): Adjust.
3888
3889 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
3890             Vladimir Prus  <vladimir@codesourcery.com>
3891
3892         Per-thread commands.
3893
3894         * gdbthread.h: Remove unneeded forward declarations.
3895         Include "inferior.h".
3896         (struct thread_info): Add continuations,
3897         intermediate_continuations, proceed_to_finish, step_over_calls,
3898         stop_step, step_multi and stop_signal members.
3899         (save_infrun_state): Add continuations,
3900         intermediate_continuations, proceed_to_finish, step_over_calls,
3901         stop_step, step_multi, stop_signal and stop_bpstat parameters.
3902         (load_infrun_state): Add continuations,
3903         intermediate_continuations, proceed_to_finish, step_over_calls,
3904         stop_step, step_multi, stop_signal and stop_bpstat parameters.
3905
3906         * thread.c (load_infrun_state): In non-stop mode, load
3907         continuations, intermediate_continuations, proceed_to_finish,
3908         step_over_calls, stop_step, step_multi and stop_signal.
3909         (save_infrun_state): Store continuations,
3910         intermediate_continuations, proceed_to_finish, step_over_calls,
3911         stop_step, step_multi, stop_signal and stop_bpstat.
3912         (save_infrun_state): Store continuations,
3913         intermediate_continuations, proceed_to_finish, step_over_calls,
3914         stop_step, step_multi, stop_signal and stop_bpstat.
3915         (free_thread): Clear The thread's stop_bpstat.
3916
3917         * inferior.h (context_switch_to): Declare.
3918
3919         * infrun.c (ecss): New global.
3920         (context_switch): Context switch continuations,
3921         intermediate_continuations, proceed_to_finish, step_over_calls,
3922         stop_step, step_multi, stop_signal and stop_bpstat.
3923         (wait_for_inferior): Use global ecss.
3924         (async_ecss, async_ecs): Delete.
3925         (fetch_inferior_event): Use global ecss.
3926         (context_switch_to): New.
3927
3928         * top.c (execute_command): In non-stop, only check if the current
3929         thread is running, in all-stop, check if there's any thread
3930         running.
3931
3932         * breakpoint.c (bpstat_remove_breakpoint): New.
3933         (bpstat_remove_breakpoint_callback): New.
3934         (delete_breakpoint): Clear the stop_bpstats of all threads.
3935
3936         * mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
3937         current thread is running, in all-stop, check if there's any
3938         thread running.
3939
3940         * Makefile.in (gdbthread_h): Depend on $(inferior_h).
3941
3942 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
3943
3944         Add non_stop global.
3945
3946         * inferior.h (non_stop): Declare.
3947         * infrun.c (non_stop, non_stop_1): New.
3948         (set_non_stop, show_non_stop): New.
3949         (_initialize_infrun): Add "set/show non-stop" command.
3950
3951 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
3952
3953         Adjust fork/vfork/exec to pass ptids around.
3954
3955         * target.h (struct target_waitstatus): Store related_pid as a ptid.
3956         (inferior_has_forked, inferior_has_vforked, inferior_has_execd):
3957         Take a ptid_t.
3958         * breakpoint.h (struct breakpoint): Change forked_inferior_pid
3959         type to ptid.
3960         * breakpoint.c (print_it_typical, bpstat_check_location)
3961         (print_one_breakpoint_location, set_raw_breakpoint_without_location)
3962         (create_fork_vfork_event_catchpoint): Adjust.
3963         * infrun.c (fork_event): Change parent_pid and child_pid types to
3964         ptid.
3965         (follow_exec, inferior_has_forked, inferior_has_vforked)
3966         (inferior_has_execd): Take a ptid_t and don't trim it.
3967         * linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
3968         * linux-nat.c (linux_child_follow_fork): Adjust.
3969         * inf-ptrace.c (inf_ptrace_wait): Adjust.
3970         * inf-ttrace.c (inf_ttrace_wait): Adjust.
3971         * win32-nat.c (get_win32_debug_event): Don't set related_pid.
3972
3973 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
3974
3975         Add "executing" property to threads.
3976
3977         * inferior.h (target_executing): Delete.
3978         * gdbthread.h (struct thread_info): Add executing_ field.
3979         (set_executing, is_executing): New.
3980         * thread.c (main_thread_executing): New.
3981         (init_thread_list): Clear it and also main_thread_running.
3982         (is_running): Return false if target has no execution.
3983         (any_running, is_executing, set_executing): New.
3984
3985         * top.c: Include "gdbthread.h".
3986         (target_executing): Delete.
3987         (execute_command): Replace target_executing check by any_running.
3988         * event-top.c: Include "gdbthread.h".
3989         (display_gdb_prompt, command_handler): Replace target_executing by
3990         is_running.
3991         * inf-loop.c: Include "gdbthread.h".  Don't mark as not executing
3992         here.  Replace target_executing by is_running.
3993         * infrun.c (handle_inferior_event): Mark all threads as
3994         not-executing.
3995         * linux-nat.c (linux_nat_resume): Don't mark thread as executing
3996         here.
3997         * stack.c (get_selected_block): Return null if inferior is
3998         executing.
3999         * target.c (target_resume): Mark resumed ptid as executing.
4000         * breakpoint.c (until_break_command): Replace target_executing
4001         check by is_executing.
4002         * remote.c (remote_async_resume): Don't mark inferior as executing
4003         here.
4004         * mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
4005         by any_running.
4006
4007         * mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
4008         (mi_execute_async_cli_command): Replace target_executing by
4009         is_running.
4010
4011         * frame.c (get_current_frame): Error out if the current thread is
4012         executing.
4013         (has_stack_frames): New.
4014         (get_selected_frame, deprecated_safe_get_selected_frame): Check
4015         has_stack_frames.
4016
4017         * Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
4018         $(gdbthread_h).
4019
4020 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
4021
4022         * symfile.c (load_command): Reopen the exec file and reread
4023         symbols before anything else.
4024
4025 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
4026
4027         * remote-sim.c: Include gdbthread.h.
4028         (remote_sim_ptid): New global.
4029         (gdbsim_create_inferior): Silently add the main task to GDB's
4030         thread list.
4031         (gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
4032         task from GDB's thread list.
4033         (gdbsim_resume): Adjust to use remote_sim_ptid.
4034         (gdbsim_thread_alive, gdbsim_pid_to_str): New.
4035         (init_gdbsim_ops): Register gdbsim_thread_alive and
4036         gdbsim_pid_to_str.
4037         (_initialize_remote_sim): Initialize remote_sim_ptid.
4038         * Makefile.in (remote-sim.o): Depend on $(gdbthread_h).
4039
4040 2008-07-09  Pedro Alves  <pedro@codesourcery.com>
4041
4042         * monitor (monitor_ptid): New global.
4043         (monitor_open): Silently add the main task to GDB's thread list.
4044         (monitor_close, monitor_mourn_inferior): Silently delete the main
4045         task from GDB's thread list.
4046         (monitor_thread_alive, monitor_pid_to_str): New.
4047         (init_base_monitor_ops): Register monitor_thread_alive and
4048         monitor_pid_to_str.
4049         (_initialize_remote_monitors): Initialize monitor_ptid.
4050
4051         * gdbthread.h (delete_thread_silent): Declare.
4052         * thread.c (delete_thread): Rename to ...
4053         (delete_thread_1): ... this.  Add "silent" parameter.  If silent,
4054         don't do exit notifications.
4055         (delete_thread, delete_thread_silent): New, as wrappers to
4056         delete_thread_1.
4057
4058 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
4059
4060         * breakpoint.c (update_global_location_list): Add boolean
4061         "should_insert" argument.  Only insert locations if caller told it
4062         too.
4063         (update_global_location_list_nothrow): Add boolean "should_insert"
4064         argument.  Pass it to update_global_location_list.
4065         (insert_breakpoints, create_longjmp_breakpoint)
4066         (create_overlay_event_breakpoint, enable_overlay_breakpoints)
4067         (create_thread_event_breakpoint, create_solib_event_breakpoint)
4068         (create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
4069         (enable_watchpoints_after_interactive_call_stop)
4070         (set_momentary_breakpoint, create_breakpoints)
4071         (break_command_really, watch_command_1)
4072         (create_ada_exception_breakpoint, update_breakpoint_locations)
4073         (do_enable_breakpoint, enable_command): Pass true to
4074         update_global_location_list.
4075         (bpstat_stop_status, disable_overlay_breakpoints)
4076         (disable_watchpoints_before_interactive_call_start)
4077         (delete_breakpoint, disable_breakpoint, disable_command): Pass
4078         false to update_global_location_list.
4079         (update_breakpoints_after_exec): Don't temporarily disable
4080         always-inserted mode.
4081
4082 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
4083
4084         * breakpoint.c (mark_breakpoints_out): Make public.
4085         (update_breakpoints_after_exec): Don't call mark_breakpoints_out
4086         here.  Update comment.
4087         * breakpoint.h (mark_breakpoints_out): Declare.
4088
4089         * linux-nat.c (linux_handle_extended_wait): On
4090         TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
4091         * inf-ttrace.c (inf_ttrace_wait): Likewise.
4092
4093 2008-07-08  Pedro Alves  <pedro@codesourcery.com>
4094
4095         * infrun.c (follow_exec): Reset shared libraries before adding the
4096         main exec file.
4097
4098 2008-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4099
4100         * breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.
4101
4102 2008-07-07  Pedro Alves  <pedro@codesourcery.com>
4103
4104         * i386-dicos-tdep.c: Include "inferior.h".
4105         (i386_dicos_frame_align): New.
4106         (i386_dicos_init_abi): Register i386_dicos_frame_align.  Set call
4107         dummy location ON_STACK.
4108         * Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).
4109
4110 2008-07-07  Joel Brobecker  <brobecker@adacore.com>
4111
4112         * gstdint.h: New file.
4113
4114 2008-07-05  Vladimir Prus  <vladimir@codesourcery.com>
4115
4116         * mi/mi-interp.c (mi_on_resume): Don't try to report
4117         resumed thread it the thread list is empty.
4118
4119 2008-07-05  Pierre Muller  <muller@ics.u-strasbg.fr>
4120
4121         * cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
4122         completer for set to filename_completer.
4123
4124         NEWS: Mention it.
4125
4126 2008-07-04  Vladimir Prus  <vladimir@codesourcery.com>
4127
4128         Implement -target-attach.
4129         * mi/mi-cmds.c (mi_cmds): Forward -target-attach to CLI attach.
4130
4131 2008-06-21  Hui Zhu  <teawater@gmail.com>
4132
4133         * target-descriptions.c (maint_print_c_tdesc_cmd): Fix a memory leak.
4134
4135 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
4136
4137         * config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.
4138         * config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete.
4139
4140         * target.h (struct target_ops): Add to_attach_no_wait member.
4141         (target_attach_no_wait): New.
4142         * target.c (update_current_target): Inherit to_attach_no_wait.
4143
4144         * infcmd.c: Replace ATTACH_NO_WAIT compile time check by
4145         target_attach_no_wait runtime check.
4146
4147         * gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops.
4148         * win32-nat.c (init_win32_ops): Set to_attach_no_wait in
4149         win32_ops.
4150
4151 2008-07-03  Pedro Alves  <pedro@codesourcery.com>
4152
4153         * i386-tdep.c (i386_displaced_step_fixup): Condition log printing
4154         on debug_displaced being set.
4155
4156 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
4157
4158         * frame.c (get_prev_frame_1): Call frame_unwind_find_by_frame
4159         directly instead of get_frame_id.
4160
4161 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
4162
4163         * rs6000-tdep.c (ppc_displaced_step_fixup): New function.
4164         (deal_with_atomic_sequence): Update BC masks.
4165         (rs6000_gdbarch_init): Init displaced stepping infra-structure.
4166         Define BRANCH_MASK, B_INSN, BC_INSN, BXL_INSN, BP_MASK and BP_INSN.
4167
4168 2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
4169
4170         * cris-tdep.c (crisv32_single_step_through_delay): Get this frame's
4171         register, not the previous frame's.
4172
4173 2008-06-30  Luis Machado  <luisgpm@br.ibm.com>
4174
4175         * source.c (select_source_symtab): Make sure we skip namespace
4176         symtabs when showing cpp source code.
4177
4178 2008-06-30  Hans-Peter Nilsson  <hp@axis.com>
4179
4180         * MAINTAINERS (Authorized committers): Fix my email address.
4181
4182 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
4183
4184         * mi/mi-cmds.c (mi_cmds): Route -exec-run, -exec-until,
4185         -target-download and -target-select via CLI, so that
4186         the quoting rules are the same as they were (unfortunately)
4187         in all prior gdb releases.
4188         * mi/mi-cmds.h (mi_cmd_exec_run, mi_cmd_exec_until)
4189         (mi_cmd_target_download, mi_cmd_target_select): Remove.
4190         * mi/mi-main.c (mi_cmd_exec_run, mi_cmd_exec_until)
4191         (mi_cmd_target_download, mi_cmd_target_select): Remove.
4192         (mi_cmd_execute): Set current_token even for commands
4193         routed via CLI.
4194
4195 2008-06-28  Ulrich Weigand  <uweigand@de.ibm.com>
4196
4197         * alphafbsd-tdep.c: Update for unwinder changes.
4198         * alpha-linux-tdep.c: Likewise.
4199         * alphanbsd-tdep.c: Likewise.
4200         * alphaobsd-tdep.c: Likewise.
4201         * avr-tdep.c: Likewise.
4202         * cris-tdep.c: Likewise.
4203         * frv-linux-tdep.c: Likewise.
4204         * frv-tdep.c: Likewise.
4205         * h8300-tdep.c: Likewise.
4206         * hppa-linux-tdep.c: Likewise.
4207         * iq2000-tdep.c: Likewise.
4208         * m32c-tdep.c: Likewise.
4209         * m32r-linux-tdep.c: Likewise.
4210         * m32r-tdep.c: Likewise.
4211         * m68hc11-tdep.c: Likewise.
4212         * mep-tdep.c: Likewise.
4213         * mn10300-tdep.c: Likewise.
4214         * mt-tdep.c: Likewise.
4215         * score-tdep.c: Likewise.
4216         * sh64-tdep.c: Likewise.
4217         * sh-tdep.c: Likewise.
4218         * sparc64fbsd-tdep.c: Likewise.
4219         * sparc64nbsd-tdep.c: Likewise.
4220         * sparc64obsd-tdep.c: Likewise.
4221         * v850-tdep.c: Likewise.
4222         * vaxobsd-tdep.c: Likewise.
4223         * vax-tdep.c: Likewise.
4224         * xstormy16-tdep.c: Likewise.
4225
4226 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
4227
4228         * mi/mi-main.c (enum captured_mi_execute_command_actions)
4229         (captured_mi_execute_command_args): Remove.
4230         (captured_mi_execute_command): Cast the closure to mi_parse
4231         pointer, not to captured_mi_execute_command_args, and don't
4232         set the action field thereof.
4233         (mi_execute_command): Pass struct mi_parse, not
4234         captured_mi_execute_command_args to captured_mi_execute_command.
4235         (mi_execute_command): Remove (dead) code for suppressing
4236         printing prompt.
4237
4238 2008-06-28  Pedro Alves  <pedro@codesourcery.com>
4239
4240         * linux-nat.c (enum sigchld_state): New.
4241         (linux_nat_async_events_state): Renamed from
4242         linux_nat_async_events_enabled.
4243         (linux_nat_event_pipe_push, my_waitpid): Adjust.
4244         (sigchld_default_action): New.
4245         (lin_lwp_attach_lwp): Adjust.  Call linux_nat_async_events
4246         unconditionally.
4247         (linux_nat_create_inferior): Set events state to sigchld_default
4248         state.
4249         (linux_nat_resume): Adjust.
4250         (linux_nat_wait): Call linux_nat_async_events unconditionally.
4251         (sigchld_handler): Adjust.
4252         (linux_nat_async_mask): Don't set SIGCHLD actions here.
4253         (get_pending_events): Adjust.
4254         (linux_nat_async_events): Rewrite to handle enum sigchld_state
4255         instead of a boolean.
4256         (linux_nat_async): Adjust.
4257         (_initialize_linux_nat): Capture default SIGCHLD action into
4258         sigchld_default_action.
4259
4260 2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>
4261
4262         * breakpoint.c (moribund_locations): New.
4263         (bpstat_stop_status): Process moribund locations.
4264         (update_global_location_list): Add removed
4265         locations to moribund_locations.
4266         (breakpoint_retire_moribund): New.
4267         * breakpoint.h (struct bp_location): New field
4268         events_till_retirement.
4269         (breakpoint_retire_moribund): Declare.
4270         * thread.c (thread_count): New.
4271         * infrun.c (handle_inferior_event): Call
4272         breakpoint_retire_moribund.
4273         * gdbthread.h (thread_count): Declare.
4274
4275 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
4276
4277         * dfp.c (decimal_convert): Call match_endianness before and after
4278         conversion.
4279
4280 2008-06-27  Jonathan Larmour  <jifl@eCosCentric.com>
4281
4282         * remote.c (remote_insert_breakpoint): Ensure that if Z0
4283         unsupported and we fall back to memory_insert_breakpoint, we
4284         use the unmodified requested address.
4285
4286 2008-06-27  Joel Brobecker  <brobecker@adacore.com>
4287
4288         * dwarf2read.c (read_attribute_value): Issue a complaint when
4289         adjusting size attribute values of 0xffffffff as zero.
4290
4291 2008-06-27  Joseph Myers  <joseph@codesourcery.com>
4292
4293         * i386-tdep.c (i386_16_byte_align_p): New.
4294         (i386_push_dummy_call): Determine stack space required for
4295         arguments going forwards allowing for 16-byte alignment, then push
4296         arguments going forwards.
4297
4298 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
4299
4300         * infrun.c (start_remote): Don't clear thread list here.
4301         * monitor.c (monitor_open): Include "gdbthread.h".  Clear thread
4302         list here.
4303         * remote.c (record_currthread): Upgrade the main thread and its
4304         entry in the thread list if this is the first time we hear about
4305         threads.
4306         (remote_thread_alive): Consider magic_null_ptid or a ptid without
4307         a tid member always alive.
4308         (remote_find_new_threads): Don't update the main thread here.
4309         (remote_start_remote): Clear thread list here.  Always add the
4310         main thread.
4311         (extended_remote_attach_1): Add the main thread here.
4312         (extended_remote_mourn_1): Re-add the main thread here.
4313         (extended_remote_create_inferior_1): Add a main thread.
4314
4315         * Makefile.in (monitor.o): Depend on $(gdbthread_h).
4316
4317 2008-06-27  Pedro Alves  <pedro@codesourcery.com>
4318
4319         Use ptid_t.tid to store thread ids instead of ptid_t.pid.
4320
4321         * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
4322         globals.
4323         (general_thread, continue_thread): Change type to ptid_t.
4324         (record_currthread): Take a ptid_t parameter instead of an
4325         integer.
4326         (MAGIC_NULL_PID): Delete.
4327         (set_thread): Take a ptid_t parameter and adjust.
4328         (set_general_thread, set_continue_thread): New.
4329         (remote_thread_alive, remote_newthread_step)
4330         (remote_current_thread, remote_find_new_threads)
4331         (remote_threads_info, remote_start_remote, remote_vcont_resume)
4332         (remote_resume_1, remote_wait, extended_remote_create_inferior_1)
4333         (threadalive_test, remote_pid_to_str)
4334         (remote_get_thread_local_address): Adjust.
4335         (_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
4336         and any_thread_ptid.
4337
4338 2008-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
4339
4340         * configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
4341         * configure: Regenerated.
4342
4343 2008-06-26  Joel Brobecker  <brobecker@adacore.com>
4344
4345         * dwarf2read.c (read_attribute_value): Treat size attribute
4346         values of 0xffffffff as if the attribute value was zero.
4347
4348 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
4349
4350         * linux-nat.c: Add description of overall logic.
4351
4352 2008-06-26  Daniel Jacobowitz  <dan@codesourcery.com>
4353
4354         * Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
4355         (gdb_stdint_h, gdb_stdint.h, stamp-int): Delete.  Remove
4356         all dependencies on $(gdb_stdint_h).
4357         (distclean): Do not delete gdb_stdint.h.
4358         * acinclude.m4: Do not use stdint.m4.
4359         * configure.ac: Set GNULIB_STDINT_H.  Remove tests for stdint.h,
4360         uintptr_t, and gdb_stdint.h.
4361         * defs.h: Include <stdint.h>.
4362         * gdb_thread_db.h: Assume stdint.h is already included.
4363         * breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
4364         rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
4365         include gdb_stdint.h.
4366         * configure, config.in: Regenerate.
4367
4368 2008-06-26  Joseph Myers  <joseph@codesourcery.com>
4369
4370         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
4371         decimal floating-point values in GPRs for soft-float.
4372         (do_ppc_sysv_return_value): Handle returning decimal
4373         floating-point values in GPRs for soft-float.
4374
4375 2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>
4376
4377         * target.c (target_read_until_error): New.
4378         * target.h (target_read_until_error): Declare.
4379         * mi/mi-main.c (mi_cmd_data_read_memory): Use
4380         target_read_until_error.
4381
4382 2008-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
4383
4384         Fix a memory leak found by Hui Zhu <teawater@gmail.com>.
4385         * c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
4386         after the DECFLOAT detection to fix a memory leak.  Remove the
4387         redundant NUM initialization.  Protect the DECFLOAT detection memory
4388         access before the P block.  Restore the P memory content for the
4389         DECFLOAT detection.
4390
4391 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
4392
4393         Kill the return value for all MI command functions.
4394         * mi/mi-cmds.h (enum mi_cmd_result): Remove.
4395         (mi_cmd_argv_ftype): Change return type to void.
4396
4397         * mi/mi-main.c: Adjust all function that implement
4398         MI commands to return nothing.
4399         (struct captured_mi_execute_command_actions):
4400         Remove the rc field.
4401         (mi_cmd_execute): Return nothing.
4402         (mi_execute_async_cli_command): Return nothing.
4403         (mi_cmd_exec_interrupt): Don't print ^done here.
4404         (mi_cmd_target_select): Don't print ^connected here.
4405         (captured_mi_execute_command): Don't check for MI_CMD_DONE.
4406         Special-case -target-select and output ^connected, not ^done.
4407
4408         * mi/mi-cmd-break.c: Adjust.
4409         * mi/mi-cmd-disas.c: Adjust.
4410         * mi/mi-cmd-env.c: Adjust.
4411         * mi/mi-cmd-file.c: Adjust.
4412         * mi/mi-cmd-stack.c: Adjust.
4413         * mi/mi-cmd-target.c: Adjust.
4414         * mi/mi-cmd-var.c: Adjust.
4415         * mi/mi-interp.c: Adjust.
4416         * mi/mi-symbol-cmds.c: Adjust.
4417
4418 2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>
4419
4420         Emit ^running via observer.
4421         * mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
4422         ^running here.
4423         (mi_on_resume): Print ^running if not previously output.
4424         * mi/mi-main.c (running_result_record_printed): New.
4425         (captured_mi_execute_command): Reset
4426         running_result_record_printed.  Use running_result_record_printed
4427         to decide if we should skip ^done.
4428         (mi_execute_async_cli_command): Don't print ^running here.
4429         * mi/mi-main.h (current_token, running_result_record_printed):
4430         Declare.
4431
4432 2008-06-24  Michael Snyder  <msnyder@specifix.com>
4433
4434         * infrun.c (_initialize_infrun): White space and typo fix.
4435
4436 2008-06-23  Christopher Faylor  <me.gdb.changelog@cgf.cx>
4437
4438         * win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
4439         (do_initial_win32_stuff): Fix problem with inability to set breakpoints
4440         when first loading DLL with "dll" command.
4441
4442 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
4443
4444         * gnu-nat.c (proc_string): Use capital T for "Thread".
4445
4446 2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>
4447
4448         * win32-nat.c (win32_pid_to_str): Use capital T for "Thread".
4449
4450 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
4451
4452         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
4453         the target cannot run.
4454
4455 2008-06-18  Joel Brobecker  <brobecker@adacore.com>
4456
4457         * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
4458         we're attaching to a running process.
4459
4460 2008-06-18  Pierre Muller  <muller@ics.u-strasbg.fr>
4461
4462         * win32-nat.c (handle_load_dll): Give dll name and load address
4463         if debug_events is on.
4464         (handle_unload_dll): Likewise.
4465
4466 2008-06-14  Vladimir Prus  <vladimir@codesourcery.com>
4467
4468         Don't suppress *running when doing finish.
4469         * infcall.c (call_function_by_hand): Set both
4470         suppress_resume_observer and suppress_stop_observer.
4471         * infcmd.c (suppress_run_stop_observers): Split into...
4472         (suppress_resume_observer, suppress_stop_observer): ...those.
4473         (finish_command_continuation): Clear suppress_stop_observer.
4474         (finish_command): Set suppress_stop_observer.
4475         * inferior.h (suppress_run_stop_observers): Split into...
4476         (suppress_resume_observer, suppress_stop_observer): ...those.
4477         * infrun.c (normal_stop): Check for suppress_stop_observer.
4478         * thread.c (set_running): Check for suppress_resume_observer.
4479
4480 2008-06-12  Pedro Alves  <pedro_alves@portugalmail.pt>
4481             Pierre Muller  <muller@ics.u-strasbg.fr>
4482
4483         * gdbarch.sh (gdbarch_skip_main_prologue): New.
4484         * gdbarch.h, gdbarch.c: Regenerate.
4485         * i386-tdep.h (i386_skip_main_prologue): Declare.
4486         * i386-tdep.c (i386_skip_main_prologue): New.
4487         * i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
4488         i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
4489         * symtab.c (find_function_start_sal): When pc points at the "main"
4490         function, call gdbarch_skip_main_prologue.
4491
4492 2008-06-11  Daniel Jacobowitz  <dan@codesourcery.com>
4493
4494         * value.c (value_primitive_field): Fetch lazy register values.
4495
4496 2008-06-11  Pedro Alves  <pedro@codesourcery.com>
4497
4498         * NEWS: Mention support removal of undocumented S AA p PID stop
4499         reply packet.
4500
4501         * remote.c (remote_wait): Remove undocumented S AA p PID support.
4502
4503 2008-06-10  Stan Shebs  <stan@codesourcery.com>
4504
4505         * MAINTAINERS: Update my affiliation and address.
4506
4507 2008-06-10  Andreas Schwab  <schwab@suse.de>
4508
4509         * top.c (print_gdb_version): Don't print final newline.
4510
4511 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
4512
4513         Implement *running.
4514         * Makefile.in: Update dependencies.
4515         * gdbthread.h (struct thread_info): New field
4516         running_.
4517         (set_running, is_running): New.
4518         * thread.c (set_running, is_running): New.
4519         * inferior.h (suppress_normal_stop_observer): Rename to...
4520         (suppress_run_stop_observers): ..this.
4521         * infcmd.c (suppress_normal_stop_observer): Rename to...
4522         (suppress_run_stop_observers): ..this.
4523         (finish_command_continuation, finish_command): Adjust.
4524         * infcall.c (call_function_by_hand): Adjust.
4525         * infrun.c (normal_stop): Call set_running.
4526         * target.c (target_resume): New.  Call set_running.
4527         * target.h (target_resume): Convert from macro to
4528         a function.
4529
4530         * mi/mi-interp.c (mi_on_resume): New.
4531         (mi_interpreter_init): Register mi_on_resume.
4532
4533 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
4534
4535         Use observers to report stop events in MI.
4536         * mi/mi-interp.c (mi_on_normal_stop): New.
4537         (mi_interpreter_init): Register mi_on_normal_stop.
4538         (mi_interpreter_exec_continuation): Remove.
4539         (mi_cmd_interpreter_exec): Don't register the above.
4540         * mi/mi-main.c (captured_mi_execute_command): Don't care
4541         about sync_execution.
4542         (mi_execute_async_cli_command): Don't install continuation.  Don't
4543         print *stopped.
4544         (mi_exec_async_cli_cmd_continuation): Remove.
4545
4546 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
4547
4548         Suppress normal stop observer when it's problematic.
4549         * inferior.h (suppress_normal_stop_observer): New.
4550         * infcall.c (call_function_by_hand): Disable stop events when
4551         doing function calls.
4552         * infmcd.c (suppress_normal_stop_observer): New.
4553         (finish_command_continuation): Call normal_stop observer
4554         explicitly.
4555         (finish_command): Disable stop events inside proceed.
4556         * infrun.c (normal_stop): Don't call normal stop observer if
4557         suppressed of if multi-step is in progress.
4558
4559 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
4560
4561         Remove stale code.
4562         * infrun.c (finish_command): Don't pass cleanup
4563         to continuation.
4564         (finish_command_continuation): Don't grab cleanup from
4565         the passed data, as we don't use, and cannot, use it anyway.
4566
4567 2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>
4568
4569         Introduce common cleanup for restoring integers.
4570         * defs.h (make_cleanup_restore_integer): New declaration.
4571         (struct cleanup): New field free_arg.
4572         (make_my_cleanup_2): New.
4573         * utils.c (restore_integer_closure, restore_integer)
4574         (make_cleanup_restore_integer): New.
4575         (make_my_cleanup): Initialize the free_arg field and
4576         renamed to make_my_cleanup_2.
4577         (do_my_cleanups): Call free_arg.
4578         (discard_cleanups): Call free_arg.
4579         * breakpoint.c (restore_always_inserted_mode): Remove.
4580         (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
4581
4582 2008-06-09  Doug Evans  <dje@google.com>
4583
4584         * remote.c (remote_wait): Include beginning of malformed packet
4585         in error output.
4586
4587 2008-06-09  Tom Tromey  <tromey@redhat.com>
4588
4589         * completer.c (complete_line): Don't special-case
4590         expression_completer.
4591         (expression_completer): Only pass last word to
4592         location_completer.
4593         * c-exp.y (yylex): Check 'token', not 'operator'.
4594
4595 2008-06-09  Daniel Jacobowitz  <dan@codesourcery.com>
4596
4597         * configure.ac (build_warnings): Add -Wno-format for mingw.
4598         * configure: Regenerated.
4599
4600 2008-06-07  Daniel Jacobowitz  <dan@codesourcery.com>
4601
4602         * NEWS: Make indentation consistent.  Move exec tracing entry out
4603         of remote packet list.
4604
4605 2008-06-06  Tom Tromey  <tromey@redhat.com>
4606
4607         * value.h (evaluate_subexpression_type, extract_field_op):
4608         Declare.
4609         * printcmd.c (_initialize_printcmd): Use expression_completer for
4610         'p', 'inspect', 'call'.
4611         * parser-defs.h (parse_field_expression): Declare.
4612         * parse.c: Include exceptions.h.
4613         (in_parse_field, expout_last_struct): New globals.
4614         (mark_struct_expression): New function.
4615         (prefixify_expression): Return int.
4616         (prefixify_subexp): Return int.  Use expout_last_struct.
4617         (parse_exp_1): Update.
4618         (parse_exp_in_context): Add 'out_subexp' argument.  Handle
4619         in_parse_field.
4620         (parse_field_expression): New function.
4621         * expression.h (parse_field_expression): Declare.
4622         (in_parse_field): Likewise.
4623         * eval.c (evaluate_subexpression_type): New function.
4624         (extract_field_op): Likewise.
4625         * completer.h (expression_completer): Declare.
4626         * completer.c (expression_completer): New function.
4627         (count_struct_fields, add_struct_fields): New functions.
4628         * c-exp.y (yyparse): Redefine.
4629         (COMPLETE): New token.
4630         (exp): New productions.
4631         (saw_name_at_eof, last_was_structop): New globals.
4632         (yylex): Return COMPLETE when needed.  Recognize in_parse_field.
4633         (c_parse): New function.
4634         * breakpoint.c (_initialize_breakpoint): Use expression_completer
4635         for watch, awatch, and rwatch.
4636         * Makefile.in (parse.o): Depend on exceptions_h.
4637
4638 2008-06-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
4639
4640         PR gdb/1147
4641         * gdb/valopts.c (find_overload_match): Handle references
4642         to pointers.
4643
4644 2008-06-06  Paul N. Hilfinger  <hilfinger@adacore.com>
4645
4646         * ada-lang.c (ada_value_assign): Correct big-endian case to take into
4647         account the bitsize of the 'from' operand.
4648
4649 2008-06-06  Pedro Alves  <pedro@codesourcery.com>
4650
4651         * annotate.h (annotate_thread_changed): Declare.
4652
4653 2008-06-06  Nick Roberts  <nickrob@snap.net.nz>
4654
4655         * annotate.c (annotate_thread_changed): New function.
4656         * thread.c (thread_command) : Use it.
4657         * infrun.c (normal_stop): Use it.
4658
4659 2008-06-05  Vladimir Prus  <vladimir@codesourcery.com>
4660             Nathan Sidwell  <nathan@codesourcery.com>
4661             Joseph Myers  <joseph@codesourcery.com>
4662
4663         * acinclude.m4: Include ../config/acx.m4.
4664         * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
4665         * configure, config.in: Regenerate.
4666         * main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
4667         address.
4668         * top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.
4669
4670 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
4671
4672         Replace 'target async' by 'maintenance set remote-async' and
4673         'target remote' combination.
4674
4675         * remote.c (remote_async_wait): Merge into remote_wait, and
4676         remove.
4677         (remote_async_permitted, remote_async_permitted_set): New
4678         variables.
4679         (set_maintenance_remote_async_permitted)
4680         (show_maintenance_remote_async_permitted): New functions.
4681         (remote_async_ops, extended_async_remote_ops): Delete.
4682         (remote_async_open, extended_remote_async_open): Delete.
4683         (remote_open_1): Drop async_p parameter.  Update callers.  Replace
4684         async_p with remote_async_permitted checks.
4685         (extended_async_remote_attach): Delete.
4686         (remote_resume, remote_async_resume): Merge and leave remote_resume.
4687         (remote_async_terminal_inferior): Rename to...
4688         (remote_terminal_inferior): ... this, and add
4689         remote_async_termitted check.
4690         (remote_async_terminal_ours): Rename to...
4691         (remote_terminal_ours): ... this, and add remote_async_termitted
4692         check.
4693         (remote_wait, remote_async_wait): Merge and leave remote_wait
4694         only.
4695         (remote_kill, remote_async_kill): Merge and leave remote_kill
4696         only.
4697         (remote_async_mourn, extended_async_remote_mourn): Delete.
4698         (extended_remote_create_inferior_1): Drop async_p parameter.
4699         Update callers.  Always use extended_remote_ops.
4700         (extended_remote_async_create_inferior): Delete.
4701         (remote_return_zero): Delete.
4702         (init_remote_ops): Register remote_can_async_p, remote_async,
4703         remote_async_mask, remote_terminal_inferior and
4704         remote_terminal_ours.
4705         (remote_can_async_p, remote_is_async_p): Check for
4706         remote_async_permitted.
4707         (init_remote_async_ops, init_extended_async_remote_ops): Remove.
4708         (set_remote_cmd): Don't add async and extended-async targets.
4709         (_initialize_remote): Add set/show remote-async maintenance
4710         commands.
4711
4712 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
4713
4714         * remote.c (kill_kludge): Delete.
4715         (remote_wait, remote_async_wait): Don't set it.
4716         (remote_kill, remote_async_kill): Don't do anything with it.
4717
4718 2008-06-05  Pedro Alves  <pedro@codesourcery.com>
4719
4720         * linux-thread-db.c (thread_db_wait): Don't trim event ptid.
4721
4722 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
4723
4724         * bcache.c (bcache_data): Call deprecated_bcache_added function.
4725         (deprecated_bcache_added): New function name. Body of function
4726         bcache_data is used here with the addition of 'added' argument.
4727         * bcache.h (deprecated_bcache_added): New function.
4728         * symfile.c (add_psymbol_to_bcache): New helper function, takes part of
4729         work from add_psymbol_to_list - initialises partial symbol and stashes
4730         it in objfile's cache.
4731         (append_psymbol_to_list): New helper function, takes other part of
4732         work from add_psymbol_to_list - adds partial symbol to the given list.
4733         (add_psymbol_to_list): Call helper functions instead of doing work
4734         here. If adding to global list, do not duplicate partial symbols in the
4735         partial symtab.
4736
4737 2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
4738
4739         * breakpoint.c (print_exception_catchpoint): Put 'exception' back to
4740         'exception caught|thrown' message.
4741
4742 2008-06-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
4743
4744         * Makefile.in: Update dependencies.
4745         * dwarf2expr.c: New include "gdb_assert.h".
4746         (new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
4747         (dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
4748         (execute_stack_op): Error out on too large RECURSION_DEPTH.
4749         Increase/decrease RECURSION_DEPTH around the function.
4750
4751 2008-06-05  Daniel Jacobowitz  <dan@codesourcery.com>
4752
4753         * remote.c (get_offsets): Handle a single segment.
4754         * symfile.c (symfile_map_offsets_to_segments): Allow more bases
4755         than segments.
4756
4757 2008-06-03  Daniel Jacobowitz  <dan@codesourcery.com>
4758
4759         * solib-svr4.c (struct lm_info): Add lm_addr.
4760         (main_lm_addr): New.
4761         (svr4_default_sos): Set lm_addr.
4762         (svr4_current_sos): Set lm_addr and main_lm_addr.
4763         (svr4_fetch_objfile_link_map): Rewrite.
4764         (svr4_clear_solib): Clear main_lm_addr.
4765
4766 2008-06-03  Michael Snyder  <msnyder@redhat.com>
4767             Joseph Myers  <joseph@codesourcery.com>
4768
4769         * mips-tdep.c (mips_eabi_return_value): Replace stub that always
4770         returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
4771
4772 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
4773
4774         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.
4775
4776 2008-06-02  Roman Zippel <zippel@linux-m68k.org>
4777
4778         * m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.
4779
4780 2008-06-01  Joel Brobecker  <brobecker@adacore.com>
4781
4782         * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
4783         treat pointers in data space as function descriptors if the
4784         target address is also in the data space.
4785
4786 2008-05-30  Joel Brobecker  <brobecker@adacore.com>
4787
4788         * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
4789         the trad-frame register value for the SP register.
4790
4791 2008-05-29  Mark Kettenis  <kettenis@gnu.org>
4792
4793         * sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.
4794
4795 2008-05-28  Joel Brobecker  <brobecker@adacore.com>
4796
4797         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
4798         that identifies function descriptors outside of the .opd section.
4799
4800 2008-05-28  Aleksandar Ristovski  <aristovski@qnx.com>
4801
4802         * breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
4803         temporary catchpoints.  In MI add missing fields 'reason', 'disp',
4804         'bkptno'.
4805         (print_mention_exception_catchpoint): Add 'Temporary' for temporary
4806         catchpoints.
4807         (handle_gnu_v3_exceptions): Use tempflag.
4808
4809 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
4810
4811         Refactor varobj_update interface.
4812         * varobj.c (varobj_update): Report changes as vector.  Also
4813         return not just a list of varobj, but a list of special structures
4814         that tell what exactly has changed.
4815         * varobj.h (enum varobj_update_error): Rename to
4816         varobj_scope_status.
4817         (struct varobj_update_result_t): New.
4818         (varobj_update): Adjust prototype.
4819         * mi/mi-cmd-var.c: Adjust for changes.
4820
4821 2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>
4822
4823         * varobj.c (varobj_update): Fix comment typo.
4824         Fix indentation.
4825
4826 2008-05-26  Joel Brobecker  <brobecker@adacore.com>
4827
4828         Set the symtab field of symbols read from ECOFF debugging entries.
4829         * mdebugread.c (add_symbol): Add new parameter symtab.
4830         (parse_symbol): Update calls to add_symbol throughout.
4831
4832 2008-05-27  Andreas Schwab  <schwab@suse.de>
4833
4834         * symtab.h (enum address_class): Remove LOC_REGPARM and
4835         LOC_COMPUTED_ARG.
4836         (struct symbol): Add is_argument.
4837         (SYMBOL_IS_ARGUMENT): Define.
4838
4839         * ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
4840         * buildsym.c (finish_block): Likewise.
4841         * stack.c (print_frame_args, print_block_frame_locals)
4842         (print_frame_arg_vars): Likewise.
4843         * symtab.c (lookup_block_symbol): Likewise.
4844         * tracepoint.c (add_local_symbols): Likewise.
4845         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
4846
4847         * coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
4848         * dwarf2read.c (new_symbol): Likewise.
4849         * mdebugread.c (parse_symbol): Likewise.
4850         * stabsread.c (define_symbol): Likewise.
4851
4852         * ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
4853         and LOC_COMPUTED_ARG.
4854         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
4855         * ax-gdb.c (gen_var_ref): Likewise.
4856         * eval.c (evaluate_subexp_for_address): Likewise.
4857         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
4858         * m2-exp.y (yylex): Likewise.
4859         * printcmd.c (address_info): Likewise.
4860         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
4861         * tracepoint.c (collect_symbol, scope_info): Likewise.
4862
4863 2008-05-24  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
4864
4865         * gdbarch.sh: Added new gdbarch struct
4866         core_regset_sections.
4867         * gdbarch.c: Refreshed.
4868         * gdbarch.h: Refreshed.
4869         * regset.h (core_regset_section): Declared.
4870         * linux-nat.c (linux_nat_do_thread_registers): Added
4871         support for the new gdbarch struct core_regset_sections.
4872         * utils.c (host_address_to_string): New function.
4873         * defs.h (host_address_to_string): New prototype.
4874         * i386-linux-tdep.c (i386_regset_rections): New register
4875         sections list for i386.
4876           (i386_linux_init_abi): Initialized new gdbarch struct
4877           core_regset_sections.
4878         * Makefile.in: Updated to reflect dependency changes.
4879         * ppc-linux-tdep.c (ppc_regset_sections): Register
4880         sections list for ppc.
4881           (ppc_linux_init_abi): Initialized new gdbarch struct
4882           core_regset_sections
4883
4884 2008-05-24  Andreas Schwab  <schwab@suse.de>
4885
4886         * linespec.c (decode_objc): Save current language around call to
4887         get_selected_block.
4888
4889 2008-05-23  Joel Brobecker  <brobecker@adacore.com>
4890
4891         * valprint.h (get_array_bounds): Renames get_array_low_bound.
4892         * valprint.c (get_array_bounds): Renames get_array_low_bound.
4893         Return the proper bound value if the array index type is an
4894         enumerated type. Compute the high bound if requested.
4895         (val_print_array_elements): Handle the case when the array
4896         element has a null size.
4897         * ada-valprint.c (print_optional_low_bound): Add handling
4898         for empty arrays or arrays of zero-size elements.
4899         (ada_val_print_array): New function, extracted out from
4900         ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
4901         handle empty arrays and arrays of zero-size elements.
4902         (ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
4903         code by call to ada_val_print_array.
4904         (ada_value_print): Remove handling of null array.  The handling
4905         was incomplete and is now better handled by ada_val_print_array.
4906
4907 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
4908
4909         * annotate.c (annotate_source, annotate_frame_begin): Replace
4910         deprecated_print_address_numeric with paddress.
4911         * cli/cli-cmds.c (list_command, edit_command): Likewise.
4912         * tui/tui-stack.c (tui_make_status_line): Likewise.
4913
4914         * defs.h (deprecated_print_address_numeric): Remove.
4915         * printcmd.c (deprecated_print_address_numeric): Remove.
4916         * maint.c (maint_print_section_info): Fix comment.
4917
4918 2008-05-23 Markus Deuling  <deuling@de.ibm.com>
4919
4920         * valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
4921         print_binary_chars, print_char_chars): Add byte_order parameter and
4922         replace gdbarch_byte_order.
4923         (print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
4924         expressions and remove them.  Remove unused TWO_TO_FOURTH.
4925         (val_print_type_code_int): Introduce gdbarch_byte_order to get at the
4926         endianness.  Update call to print_hex_chars.
4927         * valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
4928         print_binary_chars, print_char_chars): Add byte_order parameter.
4929         * printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
4930         get at the endianness.  Update print_*_char calls to use byte_order.
4931
4932 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
4933
4934         * symtab.h (struct symbol): Make "aux_value" member a void pointer
4935         instead of a union.
4936         (SYMBOL_LOCATION_BATON): Update.
4937
4938 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
4939
4940         * symtab.h (enum address_class): Remove LOC_BASEREG and
4941         LOC_BASEREG_ARG.
4942         (struct symbol): Remove "basereg" member of "aux_value" union.
4943         (SYMBOL_BASEREG): Remove.
4944
4945         * ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
4946         or LOC_BASEREG_ARG.
4947         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
4948         (ada_add_block_symbols): Likewise.
4949         * ax-gdb.c (gen_var_ref): Likewise.
4950         * buildsym.c (finish_block): Likewise.
4951         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
4952         * m2-exp.y (yylex): Likewise.
4953         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
4954         * printcmd.c (address_info): Likewise.
4955         * stack.c (print_frame_args, print_block_frame_locals): Likewise.
4956         (print_frame_arg_vars): Likewise.
4957         * symmisc.c (print_symbol): Likewise.
4958         * symtab.c (lookup_block_symbol): Likewise.
4959         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
4960         (scope_info): Likewise.
4961
4962 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
4963
4964         * symtab.h (enum address_class): Remove LOC_LOCAL_ARG.
4965
4966         * ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
4967         * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
4968         (ada_add_block_symbols): Likewise.
4969         * ax-gdb.c (gen_var_ref): Likewise.
4970         * buildsyms.c (finish_block): Likewise.
4971         * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
4972         * m2-exp.y (yylex): Likewise.
4973         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
4974         * printcmd.c (address_info): Likewise.
4975         * stack.c (print_frame_args, print_frame_arg_vars): Likewise.
4976         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
4977         * symtab.c (lookup_block_symbol): Likewise.
4978         * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
4979         (scope_info): Likewise.
4980
4981 2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>
4982
4983         * symtab.h (enum address_class): Remove LOC_INDIRECT and
4984         LOC_HP_THREAD_LOCAL_STATIC.
4985
4986         * findvar.c (symbol_read_needs_frame, read_var_value): Do not
4987         handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
4988         (read_var_value): Likewise.
4989         * buildsym.c (finish_block): Likewise.
4990         * objfiles.c (objfile_relocate): Likewise.
4991         * printcmd.c (address_info): Likewise.
4992         * symmisc.c (print_symbol, print_partial_symbols): Likewise.
4993         * tracepoint.c (scope_info): Likewise.
4994
4995 2008-05-21 Markus Deuling  <deuling@de.ibm.com>
4996            Maxim Grigoriev  <maxim2405@gmail.com>
4997
4998         * xtensa-tdep.c (xtensa_read_register): Remove.
4999         (xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
5000         argument litbase to call0_frame_cache().
5001         (call0_track_op, call0_analyze_prologue)
5002         (call0_frame_cache): Use extra argument litbase.
5003
5004 2008-05-21  Joel Brobecker  <brobecker@adacore.com>
5005
5006         * infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
5007
5008 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
5009
5010         * frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
5011
5012 2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>
5013
5014         * alpha-mdebug-tdep.c: Include "trad-frame.h".
5015         (struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
5016         struct trad_frame_saved_reg *.
5017         (alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
5018         trad_frame_alloc_saved_regs.  Update accesses.  Record previous
5019         value of SP as being vfp.
5020         (alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
5021         * Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
5022
5023 2008-05-21  Markus Deuling  <deuling@de.ibm.com>
5024
5025         * score-tdep.c (score_print_insn): Get the current endianess from
5026         disassemble_info instead of gdbarch_byte_order.
5027
5028 2008-05-21  Pedro Alves  <pedro@codesourcery.com>
5029
5030         * frame.c (get_prev_frame_1): Build frame id before setting
5031         this_frame->prev_p, not after.
5032
5033 2008-05-21  Nick Roberts  <nickrob@snap.net.nz>
5034
5035         * annotate.c (annotate_new_thread): New function for new-thread
5036         annotation.
5037         * annotate.h: (annotate_new_thread): New extern.
5038         * thread.c (add_thread_with_info): Use it.
5039         * Makefile.in (thread.o): Add dependency on annotate.h.
5040
5041 2008-05-20  Joel Brobecker  <brobecker@adacore.com>
5042
5043         * win32-nat.c (win32_wait): Block the control-c event while
5044         waiting for a debug event.
5045
5046 2008-05-19  Pedro Alves  <pedro@codesourcery.com>
5047
5048         * symtab.h (lookup_symbol_in_language): Update comment.
5049         * symtab.c (lookup_symbol_aux_block): Update comment.
5050         * ada-lang.c (ada_lookup_symbol_list): Update comment.
5051
5052 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
5053
5054         * symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
5055         (lookup_symbol): Likewise.
5056         * symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
5057         (lookup_symbol): Likewise.
5058         (search_symbols): Update.
5059
5060         * linespec.c (find_methods, collect_methods): Update.
5061         (add_matching_methods, add_constructors): Update.
5062         (decode_compound, decode_dollar, decode_variable): Update.
5063         (lookup_prefix_sym): Update.
5064
5065         (symbol_found): Remove SYM_SYMTAB parameter.
5066         Use SYMBOL_SYMTAB (sym) instead.
5067
5068         * gdbtypes.c (lookup_typename): Update.
5069         (lookup_struct, lookup_union, lookup_enum): Update.
5070         (lookup_template_type): Update.
5071         (check_typedef): Update.
5072         * language.c (lang_bool_type): Update.
5073         * mdebugread.c (parse_procedure): Update.
5074         * mi/mi-cmd-stack.c (list_args_or_locals): Update.
5075         * parse.c (write_dollar_variable): Update.
5076         * printcmd.c (address_info): Update.
5077         * source.c (select_source_symtab): Update.
5078         * stack.c (print_frame_args, print_frame_arg_vars): Update.
5079         * valops.c (find_function_in_inferior): Update.
5080         (value_struct_elt_for_reference): Update.
5081         * value.c (value_static_field, value_fn_field): Update.
5082
5083         * alpha-mdebug-tdep.c (find_proc_desc): Update.
5084         * arm-tdep.c (arm_skip_prologue): Update.
5085         * mt-tdep.c (mt_skip_prologue): Update.
5086         * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
5087
5088         * ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
5089         * ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
5090         (add_defn_to_vec): Likewise.
5091         (ada_add_block_symbols): Likewise.
5092         (lookup_cached_symbol, cache_symbol): Likewise.
5093         (standard_lookup): Update.
5094         (ada_lookup_symbol_list): Update.
5095
5096         * c-valprint.c (c_val_print): Update.
5097         * cp-support.c (cp_lookup_rtti_type): Update.
5098         * jv-lang.c (java_lookup_class, get_java_object_type): Update.
5099         * objc-lang.c (lookup_struct_typedef, find_imps): Update.
5100         * p-valprint.c (pascal_val_print): Update.
5101         * scm-lang.c (scm_lookup_name): Update.
5102
5103         * c-exp.y: Update.
5104         * f-exp.y: Update.
5105         * jv-exp.y: Update.
5106         * m2-exp.y: Update.
5107         * objc-exp.y: Update.
5108         * p-exp.y: Update.
5109
5110 2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>
5111
5112         * language.h (struct language_defn): Remove SYMTAB parameter from
5113         la_lookup_symbol_nonlocal callback function pointer.
5114
5115         * ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
5116         (ada_lookup_encoded_symbol): Likewise.
5117         * ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
5118         Always call fixup_symbol_section.
5119         (ada_lookup_symbol): Remove SYMTAB parameter.
5120         (ada_lookup_symbol_nonlocal): Likewise.
5121         * ada-exp.y (write_object_renaming): Update.
5122         (find_primitive_type): Likewise.
5123
5124         * cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
5125         (cp_lookup_symbol_namespace): Likewise.
5126         * cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
5127         (lookup_symbol_file): Likewise.
5128         (lookup_possible_namespace_symbol): Likewise.
5129         (cp_lookup_symbol_nonlocal): Likewise.
5130         (cp_lookup_symbol_namespace): Likewise.
5131         (cp_lookup_nested_type): Update.
5132
5133         * scm-valprint.c (scm_inferior_print): Update.
5134         * valops.c (value_maybe_namespace_elt): Update.
5135
5136         * solist.h (struct target_so_ops): Remove SYMTAB parameter from
5137         lookup_lib_global_symbol callback function pointer.
5138         (solib_global_lookup): Remove SYMTAB parameter.
5139         * solib.c (solib_global_lookup): Remove SYMTAB parameter.
5140         * solib-svr4.c (elf_lookup_lib_symbol): Likewise.
5141
5142         * symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
5143         (lookup_symbol_static): Likewise.
5144         (lookup_symbol_global): Likewise.
5145         (lookup_symbol_aux_block): Likewise.
5146         (lookup_global_symbol_from_objfile): Likewise.
5147         * symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
5148         (lookup_symbol_aux_local): Likewise.
5149         (lookup_symbol_aux_block): Likewise.
5150         (lookup_symbol_aux_symtabs): Likewise.
5151         (lookup_symbol_aux_psymtabs): Likewise.
5152         (lookup_global_symbol_from_objfile): Likewise.
5153         (basic_lookup_symbol_nonlocal): Likewise.
5154         (lookup_symbol_static): Likewise.
5155         (lookup_symbol_global): Likewise.
5156
5157         (lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
5158
5159 2008-05-17  Pedro Alves  <pedro@codesourcery.com>
5160
5161         * remote.c (init_extended_remote_ops): Fix typo.
5162
5163 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
5164
5165         * NEWS: Mention new DICOS x86 target configuration.
5166
5167 2008-05-16  Pedro Alves  <pedro@codesourcery.com>
5168             Ulrich Weigand  <uweigand@de.ibm.com>
5169
5170         * minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
5171         * symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
5172
5173         * symtab.c (fixup_section): Remove prototype.  Add ADDR parameter;
5174         use it instead of ginfo->value.address.  Look up minimal symbol by
5175         address and name.  Assume OBJFILE is non-NULL.
5176         (fixup_symbol_section): Ensure we always have an objfile to look
5177         into.  Extract and pass to fixup_section the symbol's address that
5178         will match the minimal symbol's address.
5179         (fixup_psymbol_section): Likewise.
5180
5181         (find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
5182         overlays and the addrmap returned the wrong section.
5183
5184         * dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
5185         calling fixup_symbol_section.
5186
5187 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
5188
5189         * minsyms.c: Include "target.h".
5190         (find_solib_trampoline_target): Handle minimal symbols pointing
5191         to function descriptors as well.
5192         * Makefile.in (minsyms.o): Update dependencies.
5193
5194         * ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
5195         (ppc64_standard_linkage1): ... this.  Fix optional instructions.
5196         (PPC64_STANDARD_LINKAGE_LEN): Rename to ...
5197         (PPC64_STANDARD_LINKAGE1_LEN): ... this.
5198         (ppc64_standard_linkage2, ppc64_standard_linkage3): New.
5199         (PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
5200         (ppc64_standard_linkage_target): Rename to ...
5201         (ppc64_standard_linkage1_target): ... this.
5202         (ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
5203         (ppc64_skip_trampoline_code): Support three variants of standard
5204         linkage stubs.  Call find_solib_trampoline_target to handle
5205         glink stubs.
5206
5207 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
5208
5209         * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
5210         ppc64_sysv_abi_adjust_breakpoint_address.
5211         * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
5212         * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
5213
5214 2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>
5215
5216         * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
5217         (ppc_linux_init_abi): Install find_solib_trampoline_target instead
5218         of ppc_linux_skip_trampoline_code.
5219
5220 2008-05-15  Daniel Jacobowitz  <dan@codesourcery.com>
5221
5222         * gdbarch.sh: Delete dwarf_reg_to_regnum.
5223         * gdbarch.c, gdbarch.h: Regenerated.
5224         * amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
5225         hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
5226         s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
5227
5228 2008-05-15  Pedro Alves  <pedro@codesourcery.com>
5229
5230         * linux-nat.c (trap_ptid): Delete.
5231         (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
5232         Adjust.
5233         * linux-thread-db.c (thread_db_wait): Adjust.
5234
5235 2008-05-15  Joel Brobecker  <brobecker@adacore.com>
5236
5237         * linespec.c (decode_line_1): Fix a couple of comments.
5238
5239 2008-05-15  Alan Modra  <amodra@bigpond.net.au>
5240
5241         * dbxread.c: Formatting.
5242         (INTERNALIZE_SYMBOL): Init n_other.
5243         (set_namestring): Take pointer to nlist arg rather than struct
5244         copy.  Update all callers.
5245
5246 2008-05-15  Andreas Schwab  <schwab@suse.de>
5247
5248         * Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
5249         (dwarf2read.o): Add $(addrmap_h).
5250
5251 2008-05-14  Ulrich Weigand  <uweigand@de.ibm.com>
5252
5253         * ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
5254         (ppc64_linux_convert_from_func_ptr_addr): ... to this.  No longer try
5255         to handle ppc32 PLT entries.
5256         (ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
5257         only on ppc64.
5258
5259 2008-05-14  Daniel Jacobowitz  <dan@codesourcery.com>
5260
5261         * elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
5262         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
5263         lookup_minimal_symbol_by_pc_section.  Prefer trampolines if requested.
5264         (lookup_minimal_symbol_by_pc_section): Use
5265         lookup_minimal_symbol_by_pc_section_1.
5266         (lookup_solib_trampoline_symbol_by_pc): Likewise.
5267
5268 2008-05-13  Joel Brobecker  <brobecker@adacore.com>
5269
5270         * findcmd.c: Add #include "gdb_stdint.h".
5271         * Makefile.in (findcmd.o): Update dependencies.
5272
5273 2008-05-11  David S. Miller  <davem@davemloft.net>
5274
5275         * sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
5276         long double size override, Linux does use 128-bit now.
5277
5278         * sparc-linux-tdep.c (PSR_SYSCALL): Define.
5279         (sparc_linux_write_pc): New function.
5280         (sparc32_linux_init_abi): Register it.
5281         * sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
5282         (sparc64_linux_write_pc): New function.
5283         (sparc64_linux_init_abi): Register it.
5284
5285         * sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
5286         dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
5287
5288 2008-05-11  Ulrich Weigand  <uweigand@de.ibm.com>
5289
5290         * rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
5291         and info.tdep_info before calling gdbarch_init_osabi.
5292
5293 2008-05-09  Joel Brobecker  <brobecker@adacore.com>
5294
5295         * ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
5296         the type of the right hand side of the assignment to the type
5297         of the left hand side if the left hand side is a convenience
5298         variable.
5299
5300 2008-05-09  Ulrich Weigand  <uweigand@de.ibm.com>
5301
5302         * NEWS: Mention gdbserver bi-arch capability.
5303
5304 2008-05-09  Doug Evans  <dje@google.com>
5305
5306         New "find" command.
5307         * NEWS: Document find command and qSearch:memory packet.
5308         * Makefile.in (SFILES): Add findcmd.c.
5309         (COMMON_OBJS): Add findcmd.o.
5310         (findcmd.o): New rule.
5311         * findcmd.c: New file.
5312         * target.h (target_ops): New member to_search_memory.
5313         (simple_search_memory): Declare.
5314         (target_search_memory): Declare.
5315         * target.c (simple_search_memory): New fn.
5316         (target_search_memory): New fn.
5317         * remote.c (PACKET_qSearch_memory): New packet kind.
5318         (remote_search_memory): New fn.
5319         (init_remote_ops): Init to_search_memory.
5320         (init_extended_remote_ops): Ditto.
5321         (_initialize_remote): Add qSearch:memory packet config command.
5322
5323 2008-05-09  Eli Zaretskii  <eliz@gnu.org>
5324
5325         * thread.c (_initialize_thread): Don't use commas and periods in
5326         first line of doc string of "set/show print thread-events".
5327
5328 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
5329
5330         * alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
5331         Update for unwinder changes.
5332
5333 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
5334
5335         * frame.c (get_frame_base_address, get_frame_locals_address)
5336         (get_frame_args_address): Pass the correct frame when calling
5337         frame_base_find_by_frame.
5338
5339 2008-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
5340
5341         * remote.c (extended_remote_attach_1): Call target_find_description.
5342
5343 2008-05-08  Daniel Jacobowitz  <dan@codesourcery.com>
5344
5345         * remote.c (extended_remote_create_inferior_1): Clean up
5346         before marking the target running.
5347
5348 2008-05-08  Joel Brobecker  <brobecker@adacore.com>
5349
5350         * hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
5351         changes.
5352
5353 2008-05-07  Joel Brobecker  <brobecker@adacore.com>
5354
5355         * sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
5356         sparc64-sol2-tdep.c: Update for unwinder changes.
5357
5358 2008-05-07  Daniel Jacobowitz  <dan@codesourcery.com>
5359
5360         * cp-support.c (mangled_name_to_comp): Initialize storage.
5361         (unqualified_name_from_comp): Likewise.
5362
5363 2008-05-07  Jie Zhang  <jie.zhang@analog.com>
5364
5365         * remote.c (remote_insert_breakpoint): Call get_remote_state
5366         after gdbarch_breakpoint_from_pc is called.
5367         (remote_insert_hw_breakpoint): Likewise.
5368
5369 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
5370
5371         * valprint.c (val_print): Add new language parameter and use it
5372         instead of using the current_language. Update calls to val_print
5373         throughout.
5374         (common_val_print): Add new langauge parameter and pass it to
5375         val_print.
5376         * value.h (struct language_defn): Add opaque declaration.
5377         (val_print, common_val_print): Update declarations.
5378         * stack.c (print_frame_args): Update call to common_val_print
5379         using the appropriate language.
5380         * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
5381         * c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
5382         mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
5383         scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
5384         #include "language.h" if necessary.
5385         Update calls to val_print and common_val_print.
5386         * Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
5387         Update dependencies.
5388
5389 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
5390
5391         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
5392         pointing inside a non-executable section as function descriptors.
5393
5394 2008-05-06  Pedro Alves  <pedro@codesourcery.com>
5395
5396         * inf-loop.c (inferior_event_handler): Run all continuations and
5397         print any language change before running the breakpoint commands.
5398
5399 2008-05-06  Joel Brobecker  <brobecker@adacore.com>
5400
5401         * frame-unwind.c (frame_unwind_got_bytes): New function.
5402         * frame-unwind.h (frame_unwind_got_bytes): Add declaration.
5403         * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
5404         for unwinder changes.
5405
5406 2008-05-05  Doug Evans  <dje@google.com>
5407
5408         * NEWS: Mention new /m modifier for disassemble command.
5409         * cli/cli-cmds.c (print_disassembly): New function.
5410         (disassemble_current_function): New function
5411         (disassemble_command): Recognize /m modifier, print mixed
5412         source+assembly.
5413         (init_cli_cmds): Update disassemble help text.
5414
5415 2008-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
5416
5417         * xtensa-tdep.c: Update for unwinder changes.
5418
5419 2008-05-05  Andreas Schwab  <schwab@suse.de>
5420
5421         Update m68k port for unwinder changes.
5422         * m68k-tdep.c (m68k_frame_cache): Expect this_frame.
5423         (m68k_frame_this_id, m68k_frame_prev_register): Update signature.
5424         (m68k_frame_unwind): Use default_frame_sniffer.
5425         (m68k_frame_sniffer): Remove.
5426         (m68k_frame_base_address): Expect this_frame.
5427         (m68k_dummy_id): Renamed from m68k_unwind_dummy_id.  Expect
5428         this_frame.
5429         (m68k_gdbarch_init): Use set_gdbarch_dummy_id,
5430         dwarf2_append_unwinders, and frame_unwind_append_unwinder.
5431         * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
5432         parameter instead of pc value.
5433         (m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
5434         Expect this_frame.
5435         (m68k_linux_sigtramp_frame_this_id)
5436         (m68k_linux_sigtramp_frame_prev_register)
5437         (m68k_linux_sigtramp_frame_sniffer): Update signature.
5438         (m68k_linux_sigtramp_frame_unwind): Use
5439         m68k_linux_sigtramp_frame_sniffer.
5440         (m68k_linux_init_abi): Use frame_unwind_append_unwinder.
5441
5442         * m68klinux-nat.c (store_register): Fix typo.
5443
5444 2008-05-05  Pedro Alves  <pedro@codesourcery.com>
5445
5446         * infcmd.c (step_1): Put thread id on the stack to avoid possible
5447         NULL dereferencing.
5448
5449 2008-05-05  Luis Machado  <luisgpm@br.ibm.com>
5450
5451         * symfile.c (reread_symbols): Update objfile's entry point.
5452
5453 2008-05-05  Aleksandar Ristovski  <aristovski@qnx.com>
5454             Joel Brobecker  <brobecker@adacore.com>
5455
5456         * ada-lang.c: Update throughout to use symbol_matches_domain
5457         instead of matching the symbol domain explictly.
5458         * dwarf2read.c (add_partial_symbol): Do not add new psym for
5459         STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
5460         class as typedefs. See lookup_partial_symbol function.
5461         (new_symbol): Similar to add_partial_symbol, do not create
5462         symbol for the typedef. See lookup_block_symbol.
5463         * symtab.c (symbol_matches_domain): New function, takes care
5464         of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
5465         (lookup_partial_symbol): Use symbol_matches_domain to see if the
5466         found psym domain matches the given domain.
5467         (lookup_block_symbol): Likewise.
5468
5469 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
5470
5471         * top.c (command_line_handler_continuation): Remove.
5472         (execute_command): Do not install the above.
5473
5474 2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>
5475
5476         * inf-loop.c (inferior_event_handler): Call bpstat_do_action,
5477         and catch all exceptions from it.
5478         * top.c (command_line_handler_continuation): Don't
5479         call bpstat_do_action here.
5480
5481 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
5482
5483         * dwarf2read.c (struct dwarf2_cu): Add type_hash.
5484         (struct die_info): Remove type.
5485         (read_type_die, read_typedef, read_base_type, read_subrange_type)
5486         (read_structure_type, read_enumeration_type, read_array_type)
5487         (read_tag_pointer_type, read_tag_ptr_to_member_type)
5488         (read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
5489         (read_tag_string_type, read_subroutine_type, read_set_type)
5490         (read_unspecified_type): Delete prototypes.  Remove check for
5491         already-loaded type.  Return the new type.
5492         (set_die_type): Return the new type.
5493         (reset_die_and_siblings_types): Delete.
5494         (load_comp_unit, load_full_comp_unit): Set type_hash.
5495         (process_queue): Remove call to reset_die_and_siblings_types.
5496         (process_die): Do not read most types here.  Use read_type_die
5497         for others.
5498         (read_func_scope, dwarf2_add_member_fn): Use read_type_die.
5499         (quirk_gcc_member_function_pointer): Return the new type.
5500         (process_structure_scope, process_enumeration_scope): Use
5501         get_die_type and read the DIE's type.
5502         (read_full_die): Do not initialize die->type.
5503         (tag_type_to_type): Use read_type_die.
5504         (read_type_die): Check for already defined types.  Return the
5505         type.
5506         (determine_prefix): Use get_die_type.
5507         (set_die_type): Return the type.
5508         (get_die_type): Take a CU argument.  Check for no type_hash.
5509
5510 2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>
5511
5512         * dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
5513         locals.
5514
5515 2008-05-04  Pedro Alves  <pedro@codesourcery.com>
5516
5517         * breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
5518         and bp_longjmp_resume breakpoints.
5519         (breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
5520         meaningful.
5521         (create_longjmp_breakpoint): Don't create bp_longjmp_resume
5522         breakpoints.  Create bp_longjmp breakpoints as momentary
5523         breakpoints.
5524         (enable_longjmp_breakpoint): Delete.
5525         (set_longjmp_breakpoint): New.
5526         (disable_longjmp_breakpoint): Delete.
5527         (delete_longjmp_breakpoint): New.
5528         (set_longjmp_resume_breakpoint): Delete.
5529         (set_momentary_breakpoint_at_pc): New.
5530         (breakpoint_re_set_one): Don't delete bp_longjmp and
5531         bp_longjmp_resume breakpoints.
5532         (breakpoint_re_set): Don't create longjmp and longjmp-resume
5533         breakpoints.
5534
5535         * infrun.c (step_resume_breakpoint): Add comment.
5536         (struct execution_control_state): Delete handling_longjmp member.
5537         (init_execution_control_state). Don't clear handling_longjmp.
5538         (context_switch): Don't context switch handling_longjmp.
5539         (handle_inferior_event): If handling a bp_longjmp breakpoint,
5540         create a bp_longjmp_resume breakpoint, and set it as current
5541         step_resume_breakpoint, then step over the longjmp breakpoint.  If
5542         handling a bp_longjmp_resume breakpoint, don't delete the longjmp
5543         breakpoint, delete the longjmp-resume breakpoint, and stop
5544         stepping.
5545         (currently_stepping): Remove handling_longjmp from expression.
5546         (insert_step_resume_breakpoint_at_sal): Update comment.
5547         (insert_longjmp_resume_breakpoint): New.
5548
5549         * breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
5550         (enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
5551         declarations.
5552         (set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
5553         (set_longjmp_resume_breakpoint): Delete declaration.
5554
5555         * gdbthread.h (save_infrun_state): Remove handling_longjmp
5556         parameter.
5557         (load_infrun_state): Delete *handling_longjmp parameter.
5558         * thread.c (save_infrun_state): Remove handling_longjmp parameter.
5559         Update body.
5560         (load_infrun_state): Delete *handling_longjmp parameter.  Update
5561         body.
5562
5563         * infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
5564         (delete_longjmp_breakpoint_cleanup): New.
5565         (step_1): Call set_longjmp_breakpoint instead of
5566         enable_longjmp_breakpoint.  Use delete_longjmp_breakpoint_cleanup
5567         instead of disable_longjmp_breakpoint_cleanup when making cleanup.
5568         (step_1_continuation): Pass thread id in the continuation args to
5569         step_once.
5570         (step_once): Add thread parameter.  Pass thread id the the
5571         continuation.
5572
5573 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
5574
5575         Set CU BASE_ADDRESS already from partial DIEs.
5576         * dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
5577         BASE_ADDRESS_TYPE.  Set these variables from DW_AT_LOW_PC and
5578         DW_AT_ENTRY_PC.  Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
5579         from these variables if it was still unset.
5580
5581         * Makefile.in: Update dependencies.
5582         * dwarf2read.c: Include "addrmap.h"
5583         (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
5584         (dwarf2_ranges_read): New prototype.
5585         (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
5586         Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
5587         HAS_RANGES_OFFSET, otherwise add there the contiguous range.
5588         (dwarf2_ranges_read): New parameter RANGES_PST, update the function
5589         comment for it.  Add the found ranges to RANGES_PST.  New variable
5590         BASEADDR, initialize it the common way.
5591         (dwarf2_get_pc_bounds): Update the caller for the new parameter.
5592         (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
5593         HAS_RANGES_OFFSET for the later processing.
5594         * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
5595         * symtab.c: Include "addrmap.h"
5596         (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
5597         Move the psymtab locator into ...
5598         (find_pc_sect_psymtab_closer): ... a new function.
5599
5600 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
5601
5602         * arch-utils.c (gdbarch_update_p): Use default values for
5603         info.abfd and info.target_desc if they are NULL.
5604         (gdbarch_from_bfd): Remove assertion.
5605         (set_gdbarch_from_file): Call gdbarch_find_by_info directly,
5606         using the current target description.
5607         (gdbarch_info_fill): Do not use default values for info->abfd
5608         and info->target_desc.
5609
5610 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
5611
5612         * symfile.c (reread_symbols): Reload EXEC_BFD on its change.
5613
5614 2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
5615
5616         * inferior.h (read_pc_pid, write_pc_pid): Remove.
5617         * regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.
5618
5619         * regcache.c (read_pc_pid): Remove, replace by ...
5620         (regcache_read_pc): ... this function.
5621         (write_pc_pid): Remove, replace by ...
5622         (regcache_write_pc): ... this function.
5623         (read_pc, write_pc): Update.
5624
5625         * infrun.c (displaced_step_prepare): Replace read_pc_pid and
5626         write_pc_pid by regcache_read_pc and regcache_write_pc.
5627         (displaced_step_fixup): Likewise.
5628         (resume): Likewise.  Use regcache arch instead of current_gdbarch.
5629         (prepare_to_proceed): Likewise.
5630         (proceed): Likewise.
5631         (adjust_pc_after_break): Likewise.
5632         (handle_inferior_event): Likewise.
5633
5634         * linux-nat.c (cancel_breakpoint): Likewise.
5635         * linux-thread-db.c (check_event): Likewise.
5636         * aix-thread.c (aix_thread_wait): Likewise.
5637         * tracepoint.c (trace_dump_command): Likewise.
5638
5639 2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
5640
5641         * dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
5642         SYMBOL_LOCATION_BATON.
5643
5644 2008-05-04  Vladimir Prus  <vladimir@codesourcery.com>
5645
5646         * target.h (struct target_ops): New field to_auxv_parse.
5647         * auxv.c (default_auxv_parse): New, renamed from previous
5648         target_auxv_parse.
5649         (target_auxv_parse): Try to call target method.  Fallback to
5650         default_auxv_parse if not found.
5651         * procfs.c (procfs_auxv_parse): New.
5652         (init_procfs_ops): On Solaris, in 64-bit mode, install
5653         procfs_auxv_parse.
5654
5655 2008-05-03  Adam Nemet  <anemet@caviumnetworks.com>
5656
5657         * symfile.c (add_symbol_file_command):  Use paddress rather than
5658         hex_string to print the address.
5659
5660 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
5661
5662         * rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
5663         return the null frame ID to terminate the backtrace.
5664
5665 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
5666
5667         * rs6000-tdep.c: Do not include "rs6000-tdep.h".
5668         (rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
5669         (SIG_FRAME_PC_OFFSET): Likewise.
5670         (SIG_FRAME_LR_OFFSET): Likewise.
5671         (SIG_FRAME_FP_OFFSET): Likewise.
5672         (rs6000_push_dummy_call): Likewise.
5673         (rs6000_return_value): Likewise.
5674         (rs6000_convert_from_func_ptr_addr): Likewise.
5675         (branch_dest, rs6000_software_single_step): Likewise.
5676         (deal_with_atomic_sequence): Rename to ...
5677         (ppc_deal_with_atomic_sequence): ... this.  Adapt all callers.
5678         Do not call branch_dest; inline required parts of that function.
5679         (rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
5680         with SYMBOL_LINKAGE_NAME.
5681         (struct reg, regsize): Delete.
5682         (read_memory_addr): Delete; inline into callers.
5683         (rs6000_skip_prologue): Move after skip_prologue.
5684         (skip_prologue): Remove prototype.
5685         (rs6000_gdbarch_init): Remove sysv_abi variable; perform all
5686         initialization as if this variable were true.  Do not install
5687         ppc64_sysv_abi_adjust_breakpoint_address.
5688
5689         * rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
5690         "gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
5691         and "breakpoint.h".
5692         (rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
5693         (SIG_FRAME_PC_OFFSET): Likewise.
5694         (SIG_FRAME_LR_OFFSET): Likewise.
5695         (SIG_FRAME_FP_OFFSET): Likewise.
5696         (rs6000_push_dummy_call): Likewise.
5697         (rs6000_return_value): Likewise.
5698         (rs6000_convert_from_func_ptr_addr): Likewise.
5699         (branch_dest, rs6000_software_single_step): Likewise.  Replace
5700         tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
5701         (rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
5702         rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
5703         Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
5704         Set tdep->lr_frame_offset.  Do not set tdep->text_segment_base.
5705
5706         * rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
5707         (AIX_TEXT_SEGMENT_BASE): New macro.
5708         * rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
5709         by AIX_TEXT_SEGMENT_BASE.
5710
5711         * ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
5712         (struct gdbarch_tdep): Remove text_segment_base member.
5713         * ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
5714         ppc64_sysv_abi_adjust_breakpoint_address.
5715
5716         * Makefile.in (rs6000-tdep.o): Update dependencies.
5717         (rs6000-aix-tdep.o): Likewise.
5718
5719 2008-05-03  Luis Machado  <luisgpm@br.ibm.com>
5720             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5721
5722         * cli/cli-decode.c (lookup_cmd_1): Fix indentation.
5723         * doublest.c (convert_typed_floating): Fix typo in comment.
5724         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
5725         * frame-unwind.h (frame_sniffer_ftype): Likewise.
5726         * frame.c (frame_unwind_address_in_block): Likewise.
5727         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
5728         * symtab.h (struct symbol): Likewise.
5729         * tramp-frame.h (struct trad_frame_cache): Likewise.
5730         * value.c (allocate_repeat_value): Likewise.
5731
5732 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
5733
5734         * infrun.c (handle_inferior_event): Do not insert breakpoints at
5735         TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).
5736
5737 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
5738
5739         * parse.c (parse_exp_in_context): Don't override
5740         expression_context_pc if get_selected_block returned a valid
5741         block.
5742
5743 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
5744
5745         * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
5746         * arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
5747         * breakpoint.c (args_for_catchpoint_enable, current_exception_event):
5748         Delete.
5749         * c-typeprint.c (c_type_print_base): Delete handling of template
5750         instantiations.
5751         * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
5752         (METHOD_PTR_TO_VOFFSET): Delete.
5753         * defs.h (QUIT_FIXME): Delete.
5754         * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
5755         (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
5756         * gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
5757         ninstantiations, and instantiations.
5758         (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
5759         (TYPE_FN_FIELD_INLINED): Delete.
5760         * srec.h (SREC_BINARY): Delete.
5761         * symtab.c (symbol_init_demangled_name): Delete.
5762         * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
5763         (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
5764         (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
5765         (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
5766         (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
5767         (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
5768         * target.h (enum thread_control_capabilities): Delete tc_switch.
5769         (target_can_switch_threads): Delete.
5770
5771 2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>
5772
5773         * Makefile.in (objfiles.o): Update.
5774         * exec.c (exec_set_section_address): Support p->addr != 0.
5775         * objfiles.c (objfile_relocate): Update exec_ops section
5776         addresses.
5777         * symfile.c (place_section): Move exec_set_section_address call...
5778         (default_symfile_offsets): ...to here.
5779
5780 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
5781
5782         * Makefile.in (ppc_linux_tdep_h): New macro.
5783         (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
5784         (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
5785         (powerpc_e500l_c): Likewise.
5786         (ppc-linux-nat.o): Update dependencies.
5787         (ppc-linux-tdep.o): Update dependencies.
5788         (rs6000-tdep.o): Update dependencies.
5789
5790         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
5791         (ppc_linux_svr4_fetch_link_map_offsets): Remove.
5792         (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
5793         (ppc_supply_reg, ppc_collect_reg): Add prototypes.
5794         (tdesc_powerpc_e500): Remove.
5795
5796         * rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
5797         and "features/rs6000/powerpc-altivec64.c".
5798         (ppc_supply_reg, ppc_collect_reg): Make global.
5799         (variants): Use tdesc_powerpc_32 for "powerpc" and
5800         tdesc_powerpc_altivec64 for "powerpc64".
5801         (_initialize_rs6000_tdep): Initialize AltiVec descriptions.
5802
5803         * ppc-linux-tdep.h: New file.
5804
5805         * ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
5806         Include "features/rs6000/powerpc-32l.c".
5807         Include "features/rs6000/powerpc-altivec32l.c".
5808         Include "features/rs6000/powerpc-64l.c".
5809         Include "features/rs6000/powerpc-altivec64l.c".
5810         Include "features/rs6000/powerpc-e500l.c".
5811         (ppc_linux_supply_gregset): New function.
5812         (ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
5813         (ppc32_linux_gregset): Use ppc_linux_supply_gregset.
5814         (ppc64_linux_gregset): Likewise.
5815         (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
5816         (ppc_linux_trap_reg_p): New function.
5817         (ppc_linux_write_pc): New function.
5818         (ppc_linux_core_read_description): New function.
5819         (ppc_linux_init_abi): Install ppc_linux_write_pc and
5820         ppc_linux_core_read_description.  Install orig_r3 and trap
5821         registers if present in the target description.
5822         (_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
5823
5824         * ppc-linux-nat.c: Include "ppc-linux-tdep.h".
5825         (PT_ORIG_R3, PT_TRAP): Define if necessary.
5826         (ppc_register_u_addr): Handle orig_r3 and trap registers.
5827         (fetch_ppc_registers): Likewise.
5828         (store_ppc_registers): Likewise.
5829         (store_register): Likewise.
5830         (ppc_linux_read_description): Check whether AltiVec is supported.
5831         Check whether inferior is 32-bit or 64-bit.  Return the appropriate
5832         Linux target description.
5833
5834         * features/Makefile (WHICH): Use rs6000/powerpc-32l and
5835         rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
5836         Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
5837         of rs6000/powerpc-64.  Use rs6000/powerpc-e500l instead of
5838         rs6000/powerpc-e500.  Update -expedite variables accordingly.
5839
5840         * features/rs6000/power-spe.xml: Use regnum 73 for "acc".
5841         * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
5842         * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
5843         * features/rs6000/powerpc-e500.c: Regenerate.
5844         * features/rs6000/powerpc-32.c: Regenerate.
5845         * features/rs6000/powerpc-64.c: Regenerate.
5846
5847         * features/rs6000/power-linux.xml: New file.
5848         * features/rs6000/power64-linux.xml: New file.
5849         * features/rs6000/powerpc-32l.xml: New file.
5850         * features/rs6000/powerpc-altivec32l.xml: New file.
5851         * features/rs6000/powerpc-64l.xml: New file.
5852         * features/rs6000/powerpc-altivec64l.xml: New file.
5853         * features/rs6000/powerpc-e500l.xml: New file.
5854         * features/rs6000/powerpc-32l.c: New (generated) file.
5855         * features/rs6000/powerpc-altivec32l.c: New (generated) file.
5856         * features/rs6000/powerpc-64l.c: New (generated) file.
5857         * features/rs6000/powerpc-altivec64l.c: New (generated) file.
5858         * features/rs6000/powerpc-e500l.xml: New (generated) file.
5859
5860         * regformats/reg-ppc.dat: Remove.
5861         * regformats/reg-ppc64.dat: Remove.
5862         * regformats/rs6000/powerpc-32.dat: Remove.
5863         * regformats/rs6000/powerpc-64.dat: Remove.
5864         * regformats/rs6000/powerpc-e500.dat: Remove.
5865         * regformats/rs6000/powerpc-32l.dat: New (generated) file.
5866         * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
5867         * regformats/rs6000/powerpc-64l.dat: New (generated) file.
5868         * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
5869         * regformats/rs6000/powerpc-e500l.dat: New (generated) file.
5870
5871 2008-05-03  Pedro Alves  <pedro@codesourcery.com>
5872
5873         * thread.c (delete_thread): Call observer_notify_thread_exit.
5874         * mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
5875         thread_exit observer.
5876         (mi_thread_exit): New.
5877
5878 2008-05-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5879
5880         * breakpoint.c (create_exception_catchpoint): Remove prototype
5881         for already deleted function.
5882         * breakpoint.h (ep_is_exception_catchpoint): Likewise.
5883         * frame.h (show_stack_frame): Remove prototype.
5884         * stack.c (show_stack_frame): Remove empty, unused function.
5885         * source.c (symtab_to_fullname, print_source_lines): Small fix
5886         in comment.
5887         * value.c (show_values): Update comments to mention "show values"
5888         command instead of "info history".
5889
5890 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
5891
5892         * linespec.c: Include "target.h".
5893         (minsym_found): Handle minimal symbols pointing to function
5894         descriptors.  Use find_function_start_pc.
5895         * minsyms.c (msymbol_objfile): New function.
5896         * parse.c (write_exp_msymbol): Handle minimal symbols pointing
5897         to function descriptors.
5898         * symtab.c (fixup_section): Only use minimal symbol at the same
5899         address to determine section of a symbol.
5900         (find_function_start_pc): New function.
5901         (find_function_start_sal): Use it.
5902         * symtab.h (msymbol_objfile): Add prototype.
5903         (find_function_start_pc): Likewise.
5904         * value.c: Include "objfiles.h".
5905         (value_fn_field): Handle minimal symbols pointing to function
5906         descriptors.
5907         * Makefile.in (linespec.o): Update dependencies.
5908         (value.o): Likewise.
5909
5910 2008-05-02  Joel Brobecker  <brobecker@adacore.com>
5911
5912         * ada-lang.c (unwrap_value): Handle the case where the "F" field
5913         inside a PAD type is a bitfield.
5914
5915 2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
5916
5917         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
5918         TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
5919         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
5920         Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
5921         Allow typedefs when checking for function pointer arguments.
5922         Right-align small structs passed on the stack.
5923         (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
5924         TYPE_CODE_CHAR the same as TYPE_CODE_INT.
5925         Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
5926
5927 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
5928
5929         * Makefile.in (arm-tdep.o): Update.
5930         * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
5931         (struct arm_per_objfile, arm_compare_mapping_symbols): New.
5932         (arm_pc_is_thumb): Use mapping symbols.
5933         (arm_objfile_data_cleanup, arm_record_special_symbol): New.
5934         (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
5935         (_initialize_arm_tdep): Initialize arm_objfile_data_key.
5936         * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
5937         * gdbarch.sh: Add record_special_symbol.
5938         * gdbarch.c, gdbarch.h: Regenerated.
5939         * objfiles.c (struct objfile_data): Add cleanup member.
5940         (register_objfile_data_with_cleanup): New function, from
5941         register_objfile_data.
5942         (register_objfile_data): Use it.
5943         (objfile_free_data): Call clear_objfile_data.
5944         (clear_objfile_data): Call cleanup functions.
5945         * objfiles.h (register_objfile_data_with_cleanup): Declare.
5946
5947 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
5948
5949         * objfiles.c (init_entry_point_info): Handle shared libraries.
5950
5951 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
5952
5953         * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
5954         lowest_pc.
5955
5956 2008-05-02  Jim Blandy  <jimb@codesourcery.com>
5957             Pedro Alves  <pedro@codesourcery.com>
5958
5959         Implement displaced stepping.
5960
5961         * gdbarch.sh (max_insn_length): New 'variable'.
5962         (displaced_step_copy, displaced_step_fixup)
5963         (displaced_step_free_closure, displaced_step_location): New
5964         functions.
5965         (struct displaced_step_closure): Add forward declaration.
5966         * gdbarch.c, gdbarch.h: Regenerated.
5967
5968         * arch-utils.c: #include "objfiles.h".
5969         (simple_displaced_step_copy_insn)
5970         (simple_displaced_step_free_closure)
5971         (displaced_step_at_entry_point): New functions.
5972         * arch-utils.h (simple_displaced_step_copy_insn)
5973         (simple_displaced_step_free_closure)
5974         (displaced_step_at_entry_point): New prototypes.
5975
5976         * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
5977         (I386_MAX_MATCHED_INSN_LEN): ... this.
5978         (i386_absolute_jmp_p, i386_absolute_call_p)
5979         (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
5980         (i386_displaced_step_fixup): New functions.
5981         (struct i386_insn, i386_match_insn): Update.
5982         (i386_gdbarch_init): Set gdbarch_max_insn_length.
5983         * i386-tdep.h (I386_MAX_INSN_LEN): New.
5984         (i386_displaced_step_fixup): New prototype.
5985         * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
5986         Register gdbarch_displaced_step_copy,
5987         gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
5988         and gdbarch_displaced_step_location functions.
5989
5990         * infrun.c (debug_displaced): New variable.
5991         (show_debug_displaced): New function.
5992         (struct displaced_step_request): New struct.
5993         (displaced_step_request_queue, displaced_step_ptid)
5994         (displaced_step_gdbarch, displaced_step_closure)
5995         (displaced_step_original, displaced_step_copy)
5996         (displaced_step_saved_copy, can_use_displaced_stepping): New
5997         variables.
5998         (show_can_use_displaced_stepping, use_displaced_stepping)
5999         (displaced_step_clear, cleanup_displaced_step_closure)
6000         (displaced_step_dump_bytes, displaced_step_prepare)
6001         (displaced_step_clear_cleanup, write_memory_ptid)
6002         (displaced_step_fixup): New functions.
6003         (resume): Call displaced_step_prepare.
6004         (proceed): Call read_pc once, and remember the value.  If using
6005         displaced stepping, don't remove breakpoints.
6006         (handle_inferior_event): Call displaced_step_fixup.  Add some
6007         debugging output.  When we try to step over a breakpoint, but get
6008         a signal to deliver to the thread instead, ensure the step-resume
6009         breakpoint is actually inserted.  If a thread hop is needed, and
6010         displaced stepping is enabled, don't remove breakpoints.
6011         (init_wait_for_inferior): Call displaced_step_clear.
6012         (_initialize_infrun): Add "set debug displaced" command.  Add
6013         "maint set can-use-displaced-stepping" command.  Clear
6014         displaced_step_ptid.
6015         * inferior.h (debug_displaced): Declare variable.
6016         (displaced_step_dump_bytes): Declare function.
6017
6018         * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
6019         dependencies.
6020
6021 2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
6022
6023         * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
6024         (arm_force_mode_string, arm_show_fallback_mode)
6025         (arm_show_force_mode): New.
6026         (arm_pc_is_thumb): Honor fallback-mode and force-mode.  Use
6027         arm_frame_is_thumb.
6028         (_initialize_arm_tdep): Add "set arm fallback-mode"
6029         and "set arm force-mode".
6030         * NEWS: Document new commands.
6031
6032 2008-05-02  Andrew Stubbs  <andrew.stubbs@st.com>
6033
6034         * main.h (batch_silent): Declare.
6035         * event-top.c: Include main.h.
6036         (gdb_setup_readline): Remove extern batch_silent declaration.
6037         * infrun.c (normal_stop): Don't print source location when running in
6038         --batch-silent mode.
6039         * Makefile.in (event-top.o): Add main.h dependency.
6040
6041 2008-05-02  Andreas Schwab  <schwab@suse.de>
6042
6043         * target.h (struct target_ops): Add
6044         to_watchpoint_addr_within_range.
6045         (target_watchpoint_addr_within_range): New function.
6046         * target.c (update_current_target): Inherit
6047         to_watchpoint_addr_within_range, defaulting to
6048         default_watchpoint_addr_within_range.
6049         (default_watchpoint_addr_within_range): New function.
6050         (debug_to_watchpoint_addr_within_range): New function.
6051         (setup_target_debug): Set to_watchpoint_addr_within_range.
6052         * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
6053         New function.
6054         (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
6055         * breakpoint.c (watchpoints_triggered): Use
6056         target_watchpoint_addr_within_range.
6057
6058 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
6059
6060         * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
6061         (i[34567]86-*-dicos*, x86_64-*-dicos*):
6062         Set gdb_osabi to GDB_OSABI_DICOS.
6063
6064         * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
6065         * osabi.c (gdb_osabi_name): Add "DICOS".
6066
6067         * i386-dicos-tdep.c: New file.
6068
6069         * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
6070         (ALLDEPFILES): Add i386-dicos-tdep.c.
6071         (i386-dicos-tdep.o): New rule.
6072
6073 2008-05-01  Pedro Alves  <pedro@codesourcery.com>
6074
6075         * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
6076         and register the fork's PTID as a thread.
6077
6078 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
6079
6080         PR gdb/1665
6081         * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
6082         assign its value to the breakpoint created.
6083         (create_breakpoints): Add breakpoint_ops argument and pass it
6084         to create_breakpoint call.
6085         (break_command_really): Add breakpoint_ops argument and pass/assign
6086         appropriately.
6087         (break_command_1): Pass NULL as ops argument.
6088         (set_breakpoint): Pass NULL as ops argument.
6089         (print_one_exception_catchpoint): Print <PENDING> if no loc available.
6090         (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
6091         catch and throw catchpoints.
6092
6093 2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
6094
6095         PR gdb/2343
6096         * corelow.c (core_open): Use gdbarch_target_signal_from_host to
6097         translate signal numeric value from the target to GDB's enum
6098         target_signal.
6099         * gdbarch.c, gdbarch.h: Regenerated.
6100         * gdbarch.sh: Added two new functions target_signal_from_host and
6101         target_signal_to_host.
6102         * target.h (default_target_signal_from_host,
6103         default_target_signal_to_host): New functions - declarations.
6104         * signals/signals.c (struct gdbarch): New declaration.
6105         (default_target_signal_to_host, default_target_signal_from_host): New
6106         functions.
6107
6108 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
6109             Pedro Alves  <pedro@codesourcery.com>
6110
6111         Based on work by Jan Kratochvil <jan.kratochvil@redhat.com> and Jeff
6112         Johnston <jjohnstn@redhat.com>.
6113
6114         * NEWS: Mention attach to stopped process fix.
6115         * infcmd.c (detach_command, disconnect_command): Discard the thread
6116         list.
6117         * infrun.c (handle_inferior_event): Do not ignore non-SIGSTOP while
6118         attaching.  Use signal_stop_state.
6119         (signal_stop_state): Check stop_soon.
6120         * linux-nat.c (kill_lwp): Declare earlier.
6121         (pid_is_stopped, linux_nat_post_attach_wait): New.
6122         (lin_lwp_attach_lwp): Use linux_nat_post_attach_wait.  Update
6123         comments.
6124         (linux_nat_attach): Use linux_nat_post_attach_wait.
6125         (detach_callback, linux_nat_detach): Improve handling for signalled
6126         processes.
6127         (linux_nat_pid_to_str): Always print out the LWP ID if it differs
6128         from the process ID.
6129         * Makefile.in (infcmd.o): Update.
6130
6131 2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
6132
6133         * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
6134         * arm-tdep.c (arm_frame_is_thumb): New.
6135         (arm_pc_is_thumb): Clarify comment.
6136         (thumb_analyze_prologue): Remove PC special case.
6137         (thumb_scan_prologue): Take a block_addr argument.  Use it for
6138         find_pc_partial_function.  Remove unused variables.
6139         (arm_scan_prologue): Use arm_frame_is_thumb.  Use the block address
6140         for find_pc_partial_function.  Remove PC special case.
6141         (arm_prologue_prev_register): Add special handling for PC and CPSR.
6142         (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
6143         (arm_get_next_pc): Use arm_frame_is_thumb.
6144         (arm_write_pc): Use CPSR_T instead of 0x20.
6145         (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
6146         * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
6147         (CPSR_T): Define.
6148         * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
6149         DWARF2_FRAME_REG_FN.
6150         * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
6151         DWARF2_FRAME_REG_FN.
6152         (struct dwarf2_frame_state_reg): Add FN to loc union.
6153
6154 2008-05-01  Nick Roberts  <nickrob@snap.net.nz>
6155
6156         * exec.c (print_section_info): Add missing '\n'.
6157
6158 2008-05-01  Vladimir Prus  <vladimir@codesourcery.com>
6159
6160         * thread.c (add_thread): Move observer call to ...
6161         (add_thread_silent): ... here.
6162
6163 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
6164
6165         * rs6000-tdep.c: Update for unwinder changes.
6166         * ppcobsd-tdep.c: Likewise.
6167
6168 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
6169
6170         * s390-tdep.c: Update for unwinder changes.
6171
6172 2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>
6173
6174         * spu-tdep.c: Update for unwinder changes.
6175
6176 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
6177
6178         * hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
6179         ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
6180         sparc64-linux-tdep.c: Update for unwinder changes.
6181
6182 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
6183
6184         * mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
6185         for unwinder changes.
6186         * mips-tdep.c: Likewise.
6187         (mips_stub_frame_cache): Unwind the ABI stack pointer, not the
6188         raw one.
6189
6190 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
6191
6192         * arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
6193         unwinder changes.
6194
6195 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
6196
6197         Update i386 and amd64 ports for unwinder changes.
6198
6199         * amd64-tdep.c (amd64_frame_cache): Expect this_frame.
6200         (amd64_frame_this_id, amd64_frame_prev_register): Update signature.
6201         (amd64_frame_unwind): Use default_frame_sniffer.
6202         (amd64_frame_sniffer): Delete.
6203         (amd64_sigtramp_frame_cache): Expect this_frame.
6204         (amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
6205         (amd64_sigtramp_frame_sniffer): Update signature.
6206         (amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
6207         (amd64_frame_base_address): Expect this_frame.
6208         (amd64_dummy_id): Renamed from amd64_unwind_dummy_id.  Expect
6209         this_frame.
6210         (amd64_init_abi): Use set_gdbarch_dummy_id and
6211         frame_unwind_append_unwinder.
6212         * i386-tdep.c (i386_frame_cache): Expect this_frame.
6213         (i386_frame_this_id, i386_frame_prev_register): Update signature.
6214         (i386_frame_unwind): Use default_frame_sniffer.
6215         (i386_frame_sniffer): Delete.
6216         (i386_sigtramp_frame_cache): Expect this_frame.
6217         (i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
6218         (i386_sigtramp_frame_sniffer): Update signature.
6219         (i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
6220         (i386_frame_base_address): Update signature.
6221         (i386_dummy_id): Rename from i386_unwind_dummy_id.  Expect this_frame.
6222         (i386_push_dummy_call): Update comment.
6223         (i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
6224         Expect this_frame.
6225         (i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
6226         and frame_unwind_append_unwinder.
6227         * amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
6228         amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
6229         i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
6230         i386nbsd-tdep.c: Update for unwinder changes.
6231
6232 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
6233
6234         * trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
6235         (trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
6236         this_frame.
6237         (trad_frame_get_prev_register, trad_frame_get_register): Update signature.
6238         * trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
6239         (trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
6240         signature.
6241         * tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
6242         this_frame.
6243         (tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
6244         Update signature.
6245         * tramp-frame.h (struct tramp_frame): Update signature of init.
6246         * Makefile.in (trad-frame.o): Update.
6247
6248 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
6249
6250         * dwarf2-frame.c (read_reg): Expect this_frame in the baton.
6251         (execute_stack_op): Put this_frame in the baton.
6252         (execute_cfa_program): Take this_frame.
6253         (struct dwarf2_frame_ops): Update comment for signal_frame_p.
6254         (dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
6255         (dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
6256         (dwarf2_frame_this_id): Adjust to work on this_frame.
6257         (dwarf2_signal_frame_this_id): Delete.
6258         (dwarf2_frame_prev_register): Update signature.  Use new frame
6259         unwind methods.
6260         (dwarf2_frame_sniffer): Update signature.  Expect this_frame.
6261         (dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
6262         dwarf2_frame_sniffer.
6263         (dwarf2_append_unwinders): New.
6264         (dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
6265         this_frame.
6266         * sparc-tdep.c (sparc32_dwarf2_struct_return_p)
6267         (sparc32_dwarf2_frame_init_reg): Expect this_frame.
6268         * cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
6269         * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
6270         * s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
6271         * sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
6272         * sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
6273         * dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
6274         (dwarf2_append_unwinders): Declare.
6275         (dwarf2_frame_base_sniffer): Update declaration.
6276         * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
6277         this_frame.
6278
6279 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
6280
6281         Convert frame unwinders to use the current frame and
6282         "struct value".
6283
6284         * frame.c (frame_debug): Make global.
6285         (get_frame_id): Pass this frame to unwinder routines.
6286         (frame_pc_unwind): Remove unused unwind->prev_pc support.
6287         (do_frame_register_read): Do not discard the return value of
6288         frame_register_read.
6289         (frame_register_unwind): Remove debug messages.  Use
6290         frame_unwind_register_value.
6291         (frame_unwind_register_value, get_frame_register_value): New
6292         functions.
6293         (create_new_frame, get_frame_base_address, get_frame_locals_address)
6294         (get_frame_args_address, get_frame_type): Pass this frame to
6295         unwinder routines.
6296         (frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
6297         functions.
6298         * frame.h: Update comments.
6299         (frame_debug, frame_unwind_register_value, get_frame_register_value)
6300         (frame_prepare_for_sniffer): Declare.
6301         * frame-unwind.h: Update comments and parameter names.
6302         (default_frame_sniffer): Declare.
6303         (frame_prev_register_ftype): Return a struct value *.
6304         (struct frame_unwind): Remove prev_pc member.
6305         (frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
6306         (frame_unwind_append_unwinder, frame_unwind_got_optimized)
6307         (frame_unwind_got_register, frame_unwind_got_memory)
6308         (frame_unwind_got_constant, frame_unwind_got_address): Declare.
6309         * frame-base.h: Update comments and parameter names.
6310         * valops.c (value_fetch_lazy): Use get_frame_register_value.  Iterate
6311         if necessary.  Add debugging output.
6312         * sentinel-frame.c (sentinel_frame_prev_register)
6313         (sentinel_frame_this_id): Update for new signature.
6314         (sentinel_frame_prev_pc): Delete.
6315         (sentinel_frame_unwinder): Remove prev_pc.
6316         * ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
6317         prev_pc.
6318         * libunwind-frame.c (libunwind_frame_unwind): Likewise.
6319         * frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
6320         (frame_unwind_append_sniffer): Delete.
6321         (frame_unwind_append_unwinder): New function.
6322         (frame_unwind_find_by_frame): Take this frame.  Only use sniffers
6323         from unwinders.  Use frame_prepare_for_sniffer.
6324         (default_frame_sniffer, frame_unwind_got_optimized)
6325         (frame_unwind_got_register, frame_unwind_got_memory)
6326         (frame_unwind_got_constant, frame_unwind_got_address): New functions.
6327         * dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
6328         (dummy_frame_prev_register, dummy_frame_this_id): Update for new
6329         signature.
6330         * gdbarch.sh: Replace unwind_dummy_id with dummy_id.
6331         * gdbarch.c, gdbarch.c: Regenerated.
6332         * frame-base.c (default_frame_base_address)
6333         (default_frame_locals_address, default_frame_args_address): Update
6334         for new signature.
6335         (frame_base_find_by_frame): Pass this frame to unwinder routines.
6336         * infcall.c (call_function_by_hand): Update comments.
6337         * Makefile.in (frame-unwind.o): Update dependencies.
6338
6339 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
6340
6341         * ada-lang.c (ada_value_primitive_packed_val): Only check
6342         value_lazy for memory lvals.
6343         * findvar.c (value_of_register_lazy): New function.
6344         (locate_var_value): Only check value_lazy for memory lvals.
6345         * valarith.c (value_subscripted_rvalue): Likewise.
6346         * valops.c (value_fetch_lazy): Handle both memory and register
6347         lvals.
6348         (search_struct_field, value_slice): Only check value_lazy for memory
6349         lvals.
6350         * value.c (struct value): Update comment for lazy.
6351         (value_primitive_field): Only check value_lazy for memory lvals.
6352         * value.h (value_lazy): Update comment.
6353         (value_of_register_lazy): Declare.
6354
6355 2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>
6356
6357         * corefile.c (reopen_exec_file): Close any open files.
6358
6359 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
6360
6361         * ia64-tdep.c (ia64_memory_remove_breakpoint): Set
6362         show_memory_breakpoints to 1 while reading the instruction bundle.
6363
6364 2008-04-29  Joel Brobecker  <brobecker@adacore.com>
6365
6366         * gdbarch.sh: Document the return_value method. Explain that
6367         the FUNCTYPE parameter might be NULL.
6368         * gdbarch.h: Regenerated.
6369         * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
6370         type when calling using_struct_return, as this is unnecessary
6371         on this target.
6372
6373 2008-04-28  Joel Brobecker  <brobecker@adacore.com>
6374
6375         * terminal.h (create_tty_session): Fix return type.
6376
6377 2008-04-26  Vladimir Prus  <vladimir@codesourcery.com>
6378
6379         * mi/mi-interp.c (mi_new_thread): Quote the thread id.
6380
6381 2008-04-26  Joel Brobecker  <brobecker@adacore.com>
6382
6383         * breakpoint.c (condition_command, commands_from_control_command)
6384         (break_command_really): Minor reformatting.
6385
6386 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
6387
6388         * dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.
6389
6390 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
6391
6392         * amd64-tdep.c (amd64_get_longjmp_target): New.
6393         (amd64_init_abi): Register amd64_get_longjmp_target as
6394         gdbarch_get_longjmp_target callback.
6395         * i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
6396
6397 2008-04-25  Pedro Alves  <pedro@codesourcery.com>
6398
6399         * breakpoint.h (enum bpstat_what_main_action): Delete
6400         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
6401
6402         * breakpoint.c (clrs): Delete.
6403         (bpstat_what): Update table.
6404
6405         * infrun.c (handle_inferior_event): Remove
6406         BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
6407
6408 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
6409
6410         * mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
6411         Adjust all prototypes using mi_cmd_args_ftype to use
6412         mi_cmd_argv_ftype.
6413         (struct mi_cmd): Remove the args_func field.
6414         * mi/mi-cmds.c: Don't provide value for the args_func field.
6415         * mi/mi-main.c (mi_execute_async_cli_command)
6416         (mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
6417         (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
6418         (mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
6419         (mi_cmd_exec_continue, mi_cmd_exec_interrupt)
6420         (mi_cmd_target_download): Adjust.
6421         (mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
6422         (mi_cmd_execute): Do not check for args_func.
6423         (mi_execute_async_cli_command): Adjust.
6424         * mi/mi-parse.c: Don't check for args_func.
6425
6426 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
6427
6428         * breakpoint.c (bpstat_check_location)
6429         (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
6430         New, extracted from bpstat_stop_status.
6431         (bpstat_stop_status): Use the above.
6432
6433 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
6434
6435         * mi/mi-main.c (last_async_command): Rename to current_token.
6436         (previous_async_command): Remove.
6437         (mi_cmd_gdb_exit): Adjust.
6438         (mi_cmd_exec_interrupt): Don't dance with previous_async_command.
6439         (mi_cmd_target_select): Adjust.
6440         (mi_cmd_execute): Don't set previous_async_command.  Free token
6441         here even in async mode.
6442         (mi_execute_async_cli_command): Adjust.
6443         (mi_exec_async_cli_cmd_continuation): Adjust.  Do not free the
6444         token.
6445         (mi_load_progress): Adjust.
6446
6447 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
6448
6449         * infcmd.c (step_1_continuation): Always disable longjmp
6450         breakpoint if we're not going to do another step.
6451
6452 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
6453
6454         exec_cleanup murder.
6455         * breakpoint.c (until_break_command_continuation): Add
6456         the 'error' parameter.  Directly delete the breakoint as
6457         opposed to running cleanups.
6458         (until_break_command): Install continuation only
6459         after starting the target.  Don't use exec cleanups,
6460         use ordinary cleanups.  Discard cleanups is successfully
6461         started the target in async mode.
6462         (make_cleanup_delete_breakpoint): Remove.
6463         * breakpoint.h (make_cleanup_delete_breakpoint): Remove
6464         declaration.
6465         * defs.h (do_exec_cleanups, make_exec_cleanup): Remove
6466         declarations.
6467         (struct continations): Add the 'error' parameter to the
6468         continuation_hook field.
6469         (add_continuation, do_all_continuations)
6470         (add_intermediate_continuation)
6471         (do_all_intermediate_continuations): Add the 'error' parameter.
6472         * exceptions.c (throw_exception): Don't call do_exec_cleanups.
6473         * inf-loop.c (inferior_event_handler): Instead of calling
6474         discard_all_continuations, use do_all_continuations with 1 as
6475         'error' parameter.  Pass 0 as 'error' parameter in existing uses
6476         of discard_all_continuations.
6477         * infcmd.c (step_1): Do not use exec cleanup.  For async case, discard
6478         cleanups.
6479         (step_once): Install continuation only after resuming the target.
6480         (step_1_continuation): Disable longjmp breakpoint on error.
6481         (finish_command_continuation): Add the error parameter.  Delete
6482         the finish breakpoint directly, do not use cleanups.
6483         (finish_command): Do not use exec_cleanups. Always setup
6484         continuation.  For sync case, immediately run them.
6485         (attach_command_continuation): Add the error parameter.
6486         * infrun.c (fetch_inferior_event): Do not use exec cleanups to
6487         remove step_resume_breakpoint -- adjust delete it directly.
6488         * interps.c (interp_set): Adjust call to do_all_continations.
6489         * mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
6490         do exec cleanups.
6491         * mi/mi-main.c (mi_cmd_target_select): Do not do exec
6492         cleanups.
6493         (mi_cmd_execute): Do not use exec_cleanup.
6494         (mi_execute_async_cli_command): Simplify the string concatenation
6495         logic.  Do no use exec cleanup.
6496         (mi_exec_async_cli_cmd_continuation): New parameter error.
6497         Free last_async_command.
6498         * top.c (command_line_handler_continuation): New parameter error.
6499         * utils.c (exec_cleanup_chain, make_exec_cleanup)
6500         (do_exec_cleanups): Remove.
6501         (add_continuation, do_all_continations)
6502         (add_intermediate_continuation)
6503         (do_all_intermediate_continuations): New parameter error.
6504
6505 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
6506
6507         * breakpoint.h (bp_location_p): New typedef.
6508         Register a vector of bp_location_p.
6509         * breakpoint.c (always_inserted_mode)
6510         (show_always_inserted_mode): New.
6511         (unlink_locations_from_global_list): Remove.
6512         (update_global_location_list)
6513         (update_global_location_list_nothrow): New.
6514         (update_watchpoint): Don't free locations.
6515         (should_insert_location): New.
6516         (insert_bp_location): Use should_insert_location.
6517         (insert_breakpoint_locations): Copied from
6518         insert_breakpoints.
6519         (insert_breakpoint): Use insert_breakpoint_locations.
6520         (bpstat_stop_status): Call update_global_location_list
6521         when disabling breakpoint.
6522         (allocate_bp_location): Don't add to bp_location_chain.
6523         (set_raw_breakpoint)
6524         (create_longjmp_breakpoint, enable_longjmp_breakpoint)
6525         (disable_longjmp_breakpoint, create_overlay_event_breakpoint)
6526         (enable_overlay_breakpoints, disable_overlay_breakpoints)
6527         (set_longjmp_resume_breakpoint)
6528         (enable_watchpoints_after_interactive_call_stop)
6529         (disable_watchpoints_before_interactive_call_start)
6530         (create_internal_breakpoint)
6531         (create_fork_vfork_event_catchpoint)
6532         (create_exec_event_catchpoint, set_momentary_breakpoint)
6533         (create_breakpoints, break_command_1, watch_command_1)
6534         (create_exception_catchpoint)
6535         (handle_gnu_v3_exceptions)
6536         (disable_breakpoint, breakpoint_re_set_one)
6537         (create_thread_event_breakpoint, create_solib_event_breakpoint)
6538         (create_ada_exception_breakpoint): : Don't call check_duplicates.
6539         Call update_global_location_list.
6540         (delete_breakpoint): Don't remove locations and don't
6541         try to reinsert them. Call update_global_location_list.
6542         (update_breakpoint_locations): Likewise.
6543         (restore_always_inserted_mode): New.
6544         (update_breakpoints_after_exec): Temporary disable
6545         always inserted mode.
6546         * Makefile.in: Update dependencies.
6547
6548         * infrun.c (proceed): Remove breakpoints while stepping
6549         over breakpoint.
6550         (handle_inferior_event): Don't remove or insert
6551         breakpoints.
6552         * linux-fork.c (checkpoint_command): Remove breakpoints
6553         before fork and insert after.
6554         (linux_fork_context): Remove breakpoints before switch
6555         and insert after.
6556         * target.c (target_disconnect, target_detach): Remove
6557         breakpoints from target.
6558
6559
6560 2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>
6561
6562         * breakpoint.c (print_one_breakpoint_location): In MI
6563         mode, report the location string the breakpoint was
6564         originally created with.
6565
6566 2008-04-23  Maxim Grigoriev  <maxim2405@gmail.com>
6567
6568         * Makefile.in (xtensa-tdep.o): Update dependencies.
6569         * configure.tgt (xtensa*): Update dependencies.
6570         * xtensa-tdep.c (arreg_number): Renamed from areg_number.
6571         Local variable areg renamed to arreg.
6572         (areg_number): New function.
6573         (xtensa_pseudo_register_read, xtensa_pseudo_register_write)
6574         (xtensa_extract_return_value, xtensa_store_return_value): areg_number
6575         replaced by arreg_number.
6576         (xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
6577         (xtensa_alloc_frame_cache): Initialize cache->wd.ws.
6578         (xtensa_scan_prologue): New function.
6579         (xtensa_frame_cache): New local fp_regnum. Handle separately the case,
6580         when ENTRY instraction hasn't been executed yet. Get the frame pointer
6581         value based on prologue analysis. Fix the bugs preventing WS and
6582         AR4-AR7/A11 registers from getting right values for intermediate frames,
6583         whose registers have been already spilled.
6584         (xtensa_frame_prev_register): Fix WS register value. Use are_number
6585         and arreg_number appropriately.
6586         (xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
6587         svr4_ilp32_fetch_link_map_offsets.
6588
6589 2008-04-23  Andrew Stubbs  <andrew.stubbs@st.com>
6590
6591         * printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
6592         (printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
6593
6594 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
6595
6596         * acinclude.m4: Add override.m4.
6597         * configure: Regenerate.
6598
6599 2008-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
6600
6601         * ada-lang.c (get_selections): Variable PROMPT made non-const and
6602         initialized with a trailing space now.  Use PROMPT_ARG of
6603         COMMAND_LINE_INPUT instead of printing it ourselves.
6604
6605 2008-04-22  Joel Brobecker  <brobecker@adacore.com>
6606
6607         * NEWS: Document support for 64-bit core file.
6608
6609 2008-04-22  Corinna Vinschen  <vinschen@redhat.com>
6610
6611         * NEWS: Add information on calling convention and new SH CLI options.
6612
6613         * sh-tdep.c (sh_cc_gcc): New static string.
6614         (sh_cc_renesas): Ditto.
6615         (sh_cc_enum): New static string array.
6616         (sh_active_calling_convention): New static string pointer denoting
6617         active user chosen ABI.
6618         (sh_is_renesas_calling_convention): New function to return function
6619         specific ABI, or user choice if necessary.
6620         (sh_use_struct_convention): Rename first argument and turn around its
6621         meaning.  Check for renesas ABI and return accordingly.
6622         (sh_use_struct_convention_nofpu): New function.
6623         (sh_next_flt_argreg): Get function type as third parameter.  Check
6624         for renesas ABI and choose floating registers accordingly.
6625         (sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
6626         struct return slot accordingly.
6627         (sh_push_dummy_call_nofpu): Ditto.
6628         (sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
6629         Evaluate ABI and give to sh_use_struct_convention_nofpu.
6630         (sh_return_value_fpu):  Evaluate ABI and give to
6631         sh_use_struct_convention.
6632         (show_sh_command): New function.
6633         (set_sh_command): Ditto.
6634         (_initialize_sh_tdep): Initialize `set/show sh calling-convention
6635         CLI command.
6636
6637         * gdbarch.sh (return_value): Add func_type argument.
6638         * gdbarch.c: Regenerate.
6639         * gdbarch.h: Ditto.
6640         * eval.c (evaluate_subexp_standard): Rename local variable value_type to
6641         val_type so as not to collide with value_type function.  Call
6642         using_struct_return with additional function type argument.
6643         * infcall.c (call_function_by_hand): Call using_struct_return and
6644         gdbarch_return_value with additional function type argument.
6645         * infcmd.c (print_return_value): Take addition func_type argument.
6646         Call gdbarch_return_value with additional function type argument.
6647         (finish_command_continuation): Call print_return_value with additional
6648         function type argument.
6649         (finish_command): Ditto.
6650         * sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
6651         additional function type argument.
6652         * stack.c (return_command): Call using_struct_return and
6653         gdbarch_return_value with additional function type argument.
6654         * value.c (using_struct_return): Take additional function type argument.
6655         * value.h (using_struct_return): Accommodate declaration.
6656         * alpha-tdep.c (alpha_return_value): Add func_type argument.
6657         * amd64-tdep.c (amd64_return_value): Ditto.
6658         * arm-tdep.c (arm_return_value): Ditto.
6659         * avr-tdep.c (avr_return_value): Ditto.
6660         * cris-tdep.c (cris_return_value): Ditto.
6661         * frv-tdep.c (frv_return_value): Ditto.
6662         * h8300-tdep.c (h8300_return_value): Ditto.
6663         (h8300h_return_value): Ditto.
6664         * hppa-tdep.c (hppa32_return_value): Ditto.
6665         (hppa64_return_value): Ditto.
6666         * i386-tdep.c (i386_return_value): Ditto.
6667         * ia64-tdep.c (ia64_return_value): Ditto.
6668         * iq2000-tdep.c (iq2000_return_value): Ditto.
6669         * m32c-tdep.c (m32c_return_value): Ditto.
6670         * m32r-tdep.c (m32r_return_value): Ditto.
6671         * m68hc11-tdep.c (m68hc11_return_value): Ditto.
6672         * m68k-tdep.c (m68k_return_value): Ditto.
6673         (m68k_svr4_return_value): Ditto.
6674         * m88k-tdep.c  (m88k_return_value): Ditto.
6675         * mep-tdep.c (mep_return_value): Ditto.
6676         * mips-tdep.c (mips_eabi_return_value): Ditto.
6677         (mips_n32n64_return_value): Ditto.
6678         (mips_o32_return_value): Ditto.
6679         (mips_o64_return_value): Ditto.
6680         * mn10300-tdep.c (mn10300_return_value): Ditto.
6681         * mt-tdep.c (mt_return_value): Ditto.
6682         * ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
6683         * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
6684         (ppc_sysv_abi_broken_return_value): Ditto.
6685         (ppc64_sysv_abi_return_value): Ditto.
6686         * ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
6687         (ppc_sysv_abi_broken_return_value): Ditto.
6688         (ppc64_sysv_abi_return_value): Ditto.
6689         * ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
6690         * rs6000-tdep.c (rs6000_return_value): Ditto.
6691         * s390-tdep.c (s390_return_value): Ditto.
6692         * score-tdep.c (score_return_value): Ditto.
6693         * sh-tdep.c (sh_return_value_nofpu): Ditto.
6694         (sh_return_value_fpu): Ditto.
6695         * sh64-tdep.c (sh64_return_value): Ditto.
6696         * sparc-tdep.c (sparc32_return_value): Ditto.
6697         * sparc64-tdep.c (sparc64_return_value): Ditto.
6698         * spu-tdep.c (spu_return_value): Ditto.
6699         * v850-tdep.c (v850_return_value): Ditto.
6700         * vax-tdep.c (vax_return_value): Ditto.
6701         * xstormy16-tdep.c (xstormy16_return_value): Ditto.
6702         * xtensa-tdep.c (xtensa_return_value): Ditto.
6703
6704         * gdbtypes.h (struct type): Add calling_convention member.
6705         * dwarf2read.c (read_subroutine_type): Add calling convention read
6706         from DW_AT_calling_convention attribute to function type.
6707
6708 2008-04-22  Markus Deuling  <deuling@de.ibm.com>
6709
6710         * eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
6711         multi_f77_subscript to support values from registers.
6712         * valarith.c (value_subscripted_rvalue): Remove prototype and static.
6713         * value.h (value_subscripted_rvalue): Add prototype.
6714
6715         * f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
6716         Fix output.
6717         * f-valprint.c (f_val_print): Likewise.
6718
6719 2008-04-21  Craig Silverstein  <csilvers@google.com>
6720
6721         * dwarf2read.c (zlib_decompress_section): Define abfd in the
6722         !HAVE_ZLIB_H case.
6723
6724 2008-04-21  Pedro Alves  <pedro@codesourcery.com>
6725
6726         * symfile.c (syms_from_objfile): Don't warn if lowest loadable
6727         section is not a code section.
6728
6729 2008-04-19  Craig Silverstein  <csilvers@google.com>
6730
6731         * NEWS: Add information on compressed debug sections.
6732
6733 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
6734
6735         * mi/mi-cmd-var.c (varobj_update_one): Print new
6736         value for variable objects that changed type.
6737
6738 2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>
6739
6740         * varobj.c (varobj_invalidate): Don't touch floating
6741         varobjs.
6742
6743 2008-04-19  Mark Kettenis  <kettenis@gnu.org>
6744
6745         * symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
6746         (multiple_symbols_cancel): Remove extra const.
6747         * symtab.h: Likewise.
6748
6749 2008-04-19  Nick Roberts  <nickrob@snap.net.nz>
6750
6751         * interps.c (top_level_interpreter): Rename static variable...
6752         (top_level_interpreter_ptr): ...to this.
6753         (top_level_interpreter): New function.
6754
6755         * interps.h: New extern for top_level_interpreter.
6756
6757         * linespec.c: Include interps.h and mi/mi-cmds.h.
6758         (decode_line_2): When using MI, always set all breakpoints in menu.
6759
6760         * Makefile.in (linespec.o, mi-interp.o): Add dependencies.
6761
6762 2008-04-18  Craig Silverstein  <csilvers@google.com>
6763
6764         * configure.ac (AC_SEARCH_LIBS): Add check for zlib.
6765         * config.in, configure: Regenerate.
6766         * dwarf2read.c: Include zlib.h if present.
6767         Modified *_SECTION macros.
6768         (section_is_p): New.
6769         (dwarf2_locate_sections): Use section_is_p instead of strcmp
6770         (dwarf2_resize_section): New.
6771         to determine whether a given section has a given name.
6772         (zlib_decompress_section): New.
6773         (dwarf2_read_section): Read the compressed section if present
6774         in the binary.
6775         * MAINTAINERS: Added myself to section Write After Approval.
6776
6777 2008-04-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>
6778
6779         * defs.h (exec_set_section_offsets): Remove prototype.
6780         * exec.c (exec_set_section_offsets): Remove function.
6781
6782 2008-04-18  Joel Brobecker  <brobecker@adacore.com>
6783
6784         * stabsread.c (cleanup_undefined_types_1): Add instance flags check
6785         in the search for the matching symbol.
6786
6787 2008-04-17  Marc Khouzam  <marc.khouzam@ericsson.com>
6788
6789         * breakpoint.c (update_watchpoint): Always reparse
6790         condition.
6791
6792 2008-04-17  Joel Brobecker  <brobecker@adacore.com>
6793
6794         * breakpoint.c (print_one_breakpoint_location): Make sure to print
6795         the breakpoint address only once.
6796
6797 2008-04-17  Dennis Roberts  <dennis.roberts@sunquestinfo.com>
6798
6799         * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
6800         rather than a hard-coded architecture, for xcoff executables.
6801
6802 2008-04-17  Doug Evans  <dje@google.com>
6803
6804         * buildsym.c (watch_main_source_file_lossage): New fn.
6805         (end_symtab): Call it.
6806
6807         * source.c (find_and_open_source): Add some comments clarifying
6808         handling of FULLNAME argument.  Make static.  Remove pointless
6809         xstrdup/xfree.
6810
6811 2008-04-17  Pedro Alves  <pedro@codesourcery.com>
6812
6813         * inf-loop.c (inferior_event_handler): Also run the intermediate
6814         continuations in the INF_EXEC_COMPLETE case.
6815
6816 2008-04-16  Tom Tromey  <tromey@redhat.com>
6817
6818         * cli/cli-decode.h (CMD_ASYNC_OK): New define.
6819         (set_cmd_async_ok, get_cmd_async_ok): Declare.
6820         * cli/cli-decode.c (set_cmd_async_ok): New function.
6821         (get_cmd_async_ok): New function.
6822         * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
6823         "show" as async-ok.
6824         * top.c (execute_command): Use get_cmd_async_ok.
6825         * infcmd.c: Include cli/cli-decode.h.
6826         (_initialize_infcmd): Mark "interrupt" as async-ok.
6827         * Makefile.in (infcmd.o): Depend on cli_decode_h.
6828
6829 2008-04-16  Daniel Jacobowitz  <dan@codesourcery.com>
6830
6831         PR gdb/2445
6832         * exec.c: Correct "arch-utils.h" include.
6833
6834 2008-04-15  Aleksandar Ristovski  <aristovski@qnx.com>
6835
6836         PR gdb/2424
6837         * infrun.c (normal_stop) Move breakpoint_auto_delete further down
6838         to allow printing to 'see' real reason of stop. This fixes PR 2424.
6839         * breakpoint.c (bpdisp_texst): New function. The function takes over
6840         the role of bpstats static array in print_one_breakpoint_location.
6841         (print_it_typical): Print "Temporary breakpoint" instead
6842         of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
6843         protocols, print disp field.
6844         (print_one_breakpoint_location): Removed bpdisps static definition.
6845         Call new bpstat_text function to get value for 'disp' field.
6846         (mention): Print "Temporary breakpoint" instead of just "Breakpoint".
6847
6848 2008-04-15  Daniel Jacobowitz  <dan@codesourcery.com>
6849
6850         * gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
6851         gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
6852         by rerunning gnulib-tool with --aux-dir=gnulib/extra.
6853         * gnulib/Makefile.in: Regenerate.
6854
6855 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
6856
6857         * Makefile.in (GNULIB_H): New.  Trigger all-lib.
6858         (defs_h): Use $(GNULIB_H).
6859         (all-lib): Depend on gnulib/Makefile.
6860         (gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
6861         * config.in, gnulib/Makefile.in: Regenerated.
6862
6863 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
6864
6865         * Makefile.in (LIBGNU, INCGNU): Define.
6866         (INTERNAL_CFLAGS_BASE): Add INCGNU.
6867         (INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
6868         (CLEANDIRS): New.
6869         ($(LIBGNU), all-lib): New rules.
6870         (clean, distclean, do-maintainer-clean): Use CLEANDIRS.
6871         * configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
6872         Simplify AC_CONFIG_AUX_DIR.  Generate gnulib/Makefile.
6873         * gnulib: New directory, from gnulib-tool.
6874         * configure, aclocal.m4: Regenerated.
6875
6876 2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
6877
6878         * linux-thread-db.c (have_threads_callback): Check thread->private.
6879
6880 2008-04-13  Nick Roberts  <nickrob@snap.net.nz>
6881             Vladimir Prus  <vladimir@codesourcery.com>
6882
6883         Fix @-varobjs.
6884         * varobj.c (value_of_root): Update the expression for
6885         floating varobjs.
6886         * mi/mi-cmd-var.c (varobj_update_one): If type has changed,
6887         report that.
6888
6889 2008-04-09  Marc Khouzam  <marc.khouzam@ericsson.com>
6890
6891         * mi/mi-cmd-var.c: Include "mi-getopt.h".
6892         (mi_parse_format): New.  Factored out from mi_cmd_var_set_format.
6893         (mi_cmd_var_set_format): Use new mi_parse_format.
6894         (mi_cmd_var_evaluate_expression): Support for -f option to specify
6895         format.
6896         * Makefile.in (mi-cmd-var.o): Update dependencies.
6897
6898         * varobj.h (varobj_get_formatted_value): Declare.
6899         * varobj.c (my_value_of_variable): Added format parameter.
6900         (cplus_value_of_variable): Likewise.
6901         (java_value_of_variable): Likewise.
6902         (c_value_of_variable): Likewise.  Evaluate expression based
6903         on format parameter.
6904         (struct language_specific): Add format parameter to function member
6905         *value_of_variable.
6906         (varobj_get_formatted_value): New.
6907         (varobj_get_value): Added format parameter to method call.
6908
6909 2008-04-08  Joel Brobecker  <brobecker@adacore.com>
6910
6911         * stabsread.c (cleanup_undefined_types_noname): Manually set the
6912         instance flags of the undefined type before calling replace_type.
6913
6914 2008-04-08  Vladimir Prus  <vladimir@codesourcery.com>
6915
6916         * target.h (enum strata): Remove the download_stratum.
6917
6918 2008-04-07  Doug Evans  <dje@google.com>
6919
6920         * buildsym.h (last_source_file): Add dwarf info to comment.
6921         (last_source_start_addr): Ditto.
6922
6923 2008-04-07  Pedro Alves  <pedro@codesourcery.com>
6924
6925         * alphanbsd-tdep.c: Include "target.h".
6926         * mn10300-tdep.c: Include "target.h".
6927         * Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.
6928
6929 2008-04-06  Vladimir Prus  <vladimir@codesourcery.com>
6930
6931         Fix breakpoint condition that use member variables.
6932         * valops.c (check_field): Remove.
6933         (check_field_in): Rename to check_field.
6934         (value_of_this): Use la_name_of_this.
6935         * value.h (check_field): Adjust prototype.
6936
6937         * language.h (la_value_of_this): Rename to la_name_of_this.
6938         * language.c (unknown_language_defn): Specify "this" for
6939         name_of_this.
6940         (auto_language_defn): Likewise.
6941         (local_language_defn): Likewise.
6942         * ada-lang.c (ada_language_defn): Adjust comment.
6943         * c-lang.c (c_language_defn): Adjust comment.
6944         (cplus_language_defn): Specify "this" for name_of_this.
6945         (asm_language_defn): Adjust comment.
6946         (minimal_language_defn): Adjust comment.
6947         * f-lang.c (f_language_defn): Specify NULL for name_of_this.
6948         * jv-lang.c (java_language_defn): Specify "this" for name_of_this.
6949         * m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
6950         * objc-lang.c (objc_language_defn): Specify "self" for
6951         name_of_this.
6952         * p-lang.c (pascal_language_defn): Specify "this" for
6953         name_of_this.
6954         * scm-lang.c (scm_language_defn): Specify NULL for name_of_this.
6955
6956         * symtab.c (lookup_symbol_aux): Lookup "this" in the
6957         proper scope, and check for field in type of "this", without
6958         trying to create a value.
6959
6960 2008-04-04  Pedro Alves  <pedro@codesourcery.com>
6961
6962         * mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
6963         (mi_error_message): Delete declaration.
6964         * mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
6965         returning MI_CMD_ERROR.
6966         * mi/mi-main.c (mi_error_message): Delete.
6967         (mi_cmd_exec_interrupt):
6968         (mi_cmd_thread_select, mi_cmd_thread_list_ids)
6969         (mi_cmd_thread_info): Call error instead of returning
6970         MI_CMD_ERROR.
6971         (mi_cmd_data_list_register_values): Call error instead of
6972         returning MI_CMD_ERROR.  Adapt to new get_register interface.
6973         (get_register): Change return typo to void.  Call error instead of
6974         returning MI_CMD_ERROR.
6975         (mi_cmd_data_write_register_values): Call error instead of
6976         returning MI_CMD_ERROR.
6977         (mi_cmd_list_features): Return MI_CMD_DONE.
6978         (captured_mi_execute_command): Remove MI_CMD_ERROR handling.
6979         (mi_execute_command): Always print exceptions with -error.
6980
6981 2008-04-04  Joel Brobecker  <brobecker@adacore.com>
6982
6983         * NEWS: Mention new commands set/show multiple-symbols.
6984
6985 2008-04-03  Joel Brobecker  <brobecker@adacore.com>
6986
6987         * symtab.c (multiple_symbols_ask, multiple_symbols_all)
6988         (multiple_symbols_cancel): New constants.
6989         (multiple_symbols_modes, multiple_symbols_mode): New static globals.
6990         (multiple_symbols_select_mode): New function.
6991         (_initialize_symtab): Add new set/show multiple-symbols commands.
6992         * symtab.h (multiple_symbols_ask, multiple_symbols_all)
6993         (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
6994         * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
6995         setting.
6996         * linespec.c (decode_line_2): Likewise.
6997
6998 2008-04-03  Doug Evans  <dje@sebabeach.org>
6999
7000         * symtab.h (enum free_code): Delete free_contents, unused.
7001         * symmisc.c (free_symtab_block): Delete.
7002         (free_symtab, case free_code): Delete.
7003
7004 2008-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
7005
7006         * valops.c (value_cast_structs): New function. Cast related
7007         STRUCT types up/down and return cast value. The body of this
7008         function comes mostly from value_cast_pointers.
7009         (value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
7010         to value_cast_structs. Now value_cast_pointers needs only create
7011         appropriate reference after using value_cast_structs for actual
7012         casting.
7013         (value_cast): Handle references.
7014
7015 2008-04-01  Marc Khouzam  <marc.khouzam@ericsson.com>
7016
7017         * MAINTAINERS: Added myself to section Write After Approval.
7018
7019 2008-03-30  Daniel Jacobowitz  <dan@codesourcery.com>
7020
7021         * ia64-tdep.c (examine_prologue): Correct array access.
7022
7023 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
7024
7025         * cp-support.c (first_component_command): Return if no arguments.
7026
7027 2008-03-28  Carlos O'Donell  <carlos@codesourcery.com>
7028
7029         * ser-mingw.c (ser_windows_open): Open requested name.
7030
7031 2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>
7032
7033         * MAINTAINERS: Added myself.
7034
7035 2008-03-28  Pedro Alves  <pedro@codesourcery.com>
7036
7037         * target.c (find_default_run_target): Allow a NULL `do_mesg'
7038         parameter.  If it is NULL, don't call error.
7039         (find_default_can_async_p, find_default_is_async_p): Pass NULL as
7040         `do_mesg' parameter to find_default_run_target.  If no target was
7041         found, return 0.
7042
7043 2008-03-28  Daniel Jacobowitz  <dan@codesourcery.com>
7044
7045         * mips-linux-tdep.c: Update N32/N64 signal frame comments.
7046         (N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
7047         (N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
7048         Delete.
7049         (mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.
7050
7051 2008-03-27  Joel Brobecker  <brobecker@adacore.com>
7052
7053         GDB 6.8 released.
7054
7055 2008-03-27  Ulrich Weigand  <uweigand@de.ibm.com>
7056
7057         * features/Makefile (%.dat): Set xmltarget to the base filename
7058         of the XML source, without subdirectory.
7059         * regformats/rs6000/powerpc-32.dat: Regenerate.
7060         * regformats/rs6000/powerpc-64.dat: Regenerate.
7061         * regformats/rs6000/powerpc-e500.dat: Regenerate.
7062
7063 2008-03-27  Markus Deuling  <deuling@de.ibm.com>
7064
7065         * xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
7066         objfile arch.
7067
7068 2008-03-27  Nick Roberts  <nickrob@snap.net.nz>
7069
7070         * mi/mi-main.c (enum captured_mi_execute_command_actions):
7071         Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.
7072
7073 2008-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
7074
7075         * objfiles.h (struct objfile): New GDBARCH member.
7076         (get_objfile_arch): Add prototype.
7077         * objfiles.c: Include "arch-utils.h".
7078         (allocate_objfile): Look up gdbarch associated with bfd.
7079         (get_objfile_arch): New function.
7080         * Makefile (objfiles.o): Update dependencies.
7081
7082         * dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
7083         by objfile arch.
7084         * dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
7085         by frame arch.
7086         (locexpr_describe_location): Replace current_gdbarch by
7087         objfile arch.
7088         * dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
7089         (dwarf2_add_field): Likewise.
7090         (read_tag_pointer_type): Likewise.
7091         (read_base_type): Likewise.
7092         (new_symbol): Likewise.
7093
7094         * coffread.c (decode_type): Add OBJFILE argument.  Update callers.
7095         (decode_base_type, decode_function_type): Likewise.
7096         (coff_read_struct_type, coff_read_enum_type): Likewise.
7097         (coff_symtab_read): Replace current_gdbarch by objfile arch.
7098         (decode_base_type): Likewise.
7099         (coff_read_enum_type): Likewise.
7100         (coff_read_struct_type): Replace current_objfile by OBJFILE argument.
7101         (coff_read_enum_type): Likewise.
7102
7103         * dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
7104         (end_psymtab): Likewise.
7105         (process_one_symbol): Likewise.
7106
7107         * mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
7108         (parse_procedure): Likewise.
7109         (parse_partial_symbols): Likewise.
7110
7111         * somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.
7112
7113         * stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
7114         Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
7115         built-in types.
7116         (read_range_type): Replace current_gdbarch by objfile arch.  Replace
7117         static range_index_type by built-in type.
7118         (read_one_struct_field): Replace current_gdbarch by objfile arch.
7119         (read_enum_type): Likewise.
7120
7121         * xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
7122         objfile arch.
7123
7124 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
7125
7126         * varobj.h (varobj_floating_p): Declare.
7127         * varobj.c (varobj_floating_p): New.
7128         * mi/mi-cmd-var.c (mi_cmd_var_update): When passed
7129         '@' as the name, update all floating varobjs.
7130
7131 2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>
7132
7133         * varobj.c (struct varobj_root): Rename use_selected_frame to
7134         floating, and clarify the meaning.
7135         (varobj_create, varobj_update,  new_root_variable): Adjust.
7136         (value_of_root): Don't use type_changed as in variable,
7137         adjust comment.
7138         (c_value_of_root): Adjust.
7139
7140 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
7141
7142         * linux-nat.c (linux_nat_attach): Add the pid we attached to, to
7143         gdb's thread list.
7144         (linux_nat_wait): Add main lwp to gdb's thread list.
7145         * linux-thread-db.c (find_new_threads_callback): Also attach to
7146         already listed threads which thread_db didn't know about yet.
7147
7148 2008-03-25  Pedro Alves  <pedro@codesourcery.com>
7149
7150         * linux-nat.c (drain_queued_events): Fix comment typo.
7151         (linux_nat_attach): In async mode, don't rely on storing a pending
7152         status.  Instead place the wait status on the pipe.
7153         (linux_nat_resume): Remove unreacheable shortcut code in async
7154         mode.
7155         (stop_wait_callback): In async mode, don't store pending status.
7156         Instead, cancel breakpoints or resend the signal appropriatelly.
7157         (cancel_breakpoint): New, refactored from
7158         cancel_breakpoints_callback.
7159         (cancel_breakpoints_callback): Call cancel_breakpoint.
7160         (pipe_to_local_event_queue): Remove special token processing.
7161         (linux_nat_wait): Issue an internal error if a pending status is
7162         found in async mode.
7163
7164 2008-03-24  Daniel Jacobowitz  <dan@codesourcery.com>
7165
7166         * inflow.c (gdb_has_a_terminal): Guard access to our_process_group.
7167
7168 2008-03-24  Nick Roberts  <nickrob@snap.net.nz>
7169             Vladimir Prus  <vladimir@codesourcery.com>
7170
7171         * varobj.c  (struct varobj_root): New component thread_id.
7172         (varobj_get_thread_id, check_scope): New functions.
7173         (c_value_of_root): Use check_scope.  Switch to the
7174         proper thread if necessary.
7175
7176         * varobj.h (varobj_get_thread_id): New extern.
7177
7178         * mi/mi-cmd-var.c (print_varobj): Add thread-id field.
7179
7180 2008-03-23  Daniel Jacobowitz  <dan@codesourcery.com>
7181
7182         PR gdb/544
7183         * top.c: Revert 2008-03-21 changes.
7184
7185 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
7186
7187         * thread.c (make_cleanup_restore_current_thread): Make it
7188         globally visible.
7189         * gdbthread.h (make_cleanup_restore_current_thread): Declare.
7190         * varobj.c (varobj_update): Don't save/restore frame.
7191         (c_value_of_root): Save/restore thread and frame here,
7192         using make_cleanup_restore_current_thread.
7193         * Makefile.in: Update dependecies.
7194
7195 2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>
7196
7197         * varobj.c (struct varobj_root): Clarify
7198         comment on the frame field.
7199         (varobj_create): Don't set frame if we have no
7200         block.
7201
7202 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
7203
7204         PR gdb/544
7205         Suggested by Jan Kratochvil:
7206         * top.c (gdb_rl_operate_and_get_next_completion): Call
7207         rl_redisplay_function.
7208         (gdb_rl_redisplay): New.
7209         (init_main): Set rl_redisplay_function.
7210
7211 2008-03-21  Thomas Mittelstaedt  <T.Mittelstaedt@cadenas.de>  (tiny change)
7212
7213         * aix-thread.c (pdc_read_regs): Fix compiler warning.
7214         (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
7215         (store_regs_kernel_thread): Likewise.
7216
7217 2008-03-21  Pedro Alves  <pedro@codesourcery.com>
7218
7219         Linux native async support.
7220
7221         * target.h (struct target_ops): Delete to_async_mask_value and add
7222         to_async_mask.
7223         (target_is_async_p, target_async): Formatting.
7224         (target_async_mask_value): Delete.
7225         (target_async_mask): Delete function declaration, and add new
7226         target macro with the same name.
7227
7228         * target.c (update_current_target): Replace to_async_mask_value by
7229         to_async_mask.  Default to_async_mask to return_one.
7230         (target_async_mask): Delete.
7231         (find_default_can_async_p, find_default_is_async_p): New.
7232         (init_dummy_target): register find_default_can_async_p and
7233         find_default_is_async_p on the dummy target.
7234
7235         * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
7236         (debug_linux_nat_async): New global.
7237         (show_debug_linux_nat_async): New function.
7238         (linux_nat_async_enabled, linux_nat_async_mask_value)
7239         (linux_nat_event_pipe, linux_nat_num_queued_events)
7240         (linux_nat_async_events_enabled): New globals.
7241         (struct waitpid_result): New struct.
7242         (waitpid_queue): New global.
7243         (queued_waitpid, push_waitpid, drain_queued_events): New.
7244         (my_waitpid): Call queued_waitpid.
7245         (linux_child_follow_fork): Disable async events during the call.
7246         (blocked_mask): Delete.
7247         (sync_sigchld_action, async_sigchld_action): New globals.
7248         (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD.  In
7249         async mode, block events during the call.
7250         (linux_nat_create_inferior): New.
7251         (linux_nat_attach): In sync mode, restore the mask states.  In
7252         async mode, wake the event loop immediatelly.
7253         (detach_callback): Drain all queued events of the lwp we're
7254         detaching from.
7255         (linux_nat_detach): Block async mode, and drain events of the main
7256         process.
7257         (linux_nat_resume): If in async mode, mask async events during the
7258         call.  If short circuiting, force event loop to wake up.  If
7259         resuming, set target_executing, and register target events in the
7260         event loop.
7261         (pipe_to_local_event_queue, local_event_queue_to_pipe): New.
7262         (linux_nat_wait): In async mode, block events during the call.
7263         Only enable/disable passing SIGINT to the inferior in sync mode.
7264         Get events from local waitpid queue.  If no interesting events was
7265         found, return to events loop.  Reregister target events in the
7266         event loop on exit.  In sync mode, no need to reblock SIGCHLD.
7267         (linux_nat_kill): Disable events on entry.
7268         (linux_nat_mourn_inferior): In sync mode, don't restore the masks
7269         here.  Detach async mode from the event loop if there are no more
7270         forks available, otherwise leave it on.
7271         (sigchld_handler): Assure this is called only in sync mode.
7272         (linux_async_permitted, linux_async_permitted_1): New globals.
7273         (set_maintenance_linux_async_permitted)
7274         (show_maintenance_linux_async_permitted): New functions.
7275         (linux_nat_is_async_p, linux_nat_can_async_p)
7276         (linux_nat_async_mask): New.
7277         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
7278         (get_pending_events, async_sigchld_handler): New.
7279         (linux_nat_async_events): New.
7280         (async_terminal_is_ours): New global.
7281         (linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
7282         (async_client_callback, async_client_context): New.
7283         (linux_nat_async_file_handler, linux_nat_async)
7284         (linux_nat_disable_async, linux_nat_enable_async): New.
7285         (linux_nat_add_target): Register linux_nat_create_inferior,
7286         linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
7287         linux_nat_async_mask, linux_nat_terminal_inferior and
7288         linux_nat_terminal_ours.
7289         (_initialize_linux_nat): Remove local action variable, and update
7290         code that used it to use sync_sigchld_action.  Add new
7291         "lin-lwp-async" debug set/show command.  Put the "lin-lwp" debug
7292         set/show command in the maintenance class.  Add new "linux-async"
7293         maintenance set/show command.  Block SIGCHLD by default.  Setup
7294         async_sichld_action, and sync_sigchld_action.  Install the default
7295         async mode.
7296         (lin_thread_get_thread_signals): Use a local sigset_t for blocking
7297         the cancel signals.
7298
7299         * linux-thread-db.c (re_check_for_thread_db): New.
7300         (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
7301         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
7302         (thread_db_async_mask): New.
7303         (init_thread_db_ops): Register thread_db_can_async_p,
7304         thread_db_is_async_p, thread_db_async and thread_db_async_mask.
7305
7306         * remote.c (remote_async_mask_value): New.
7307         (remote_return_zero): New.
7308         (init_remote_ops): Register remote_return_zero as callbacks of
7309         to_can_async_p and to_is_async_p.
7310         (remote_can_async_p, remote_is_async_p, remote_async): Update to
7311         use remote_async_mask_value.
7312         (remote_async_mask): New.
7313         (init_remote_async_ops): Remove to_async_mask_value setting and
7314         register remote_async_mask as to_async_mask callback in
7315         remote_async_ops.
7316
7317         * Makefile.in (linux-nat.o): Update.
7318
7319 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
7320
7321         * gdbthread.h (add_thread_with_info): New.
7322         * linux-thread-db.c: Add some documentation.
7323         (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
7324         (struct private_thread_info): Remove th_valid and ti_valid.
7325         Replace ti with tid.
7326         (thread_get_info_callback): Do not add TID to the new ptid.  Do
7327         not cache th or ti.
7328         (thread_db_map_id2thr, lwp_from_thread): Delete functions.
7329         (thread_from_lwp): Assert that the LWP is set.  Do not add TID to the
7330         new PTID.
7331         (attach_thread): Handle an already-existing thread.  Use
7332         add_thread_with_info.  Cache the th and tid.
7333         (detach_thread): Verify that private was set.  Remove verbose
7334         argument and printing.  Update caller.
7335         (thread_db_detach): Do not adjust inferior_ptid.
7336         (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
7337         (check_event, find_new_threads_callback): Do not add TID to the new PTID.
7338         (thread_db_wait): Do not use lwp_from_thread.
7339         (thread_db_pid_to_str): Use the cached TID.
7340         (thread_db_extra_thread_info): Check that private is set.
7341         (same_ptid_callback): Delete.
7342         (thread_db_get_thread_local_address): Do not use it or check
7343         is_thread.  Check that private is set.  Assume that the thread
7344         handle is already cached.
7345         (init_thread_db_ops): Remove to_resume and to_kill.
7346         * thread.c (add_thread_with_info): New.
7347         (add_thread): Use it.
7348         * linux-nat.c (find_thread_from_lwp): Delete.
7349         (exit_lwp): Do not use it.  Check print_thread_events.  Print before
7350         deleting the thread.
7351         (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
7352         * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
7353         * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
7354         printf_unfiltered for thread exits.
7355         * procfs.c (procfs_wait): Likewise.
7356
7357 2008-03-21  Chris Demetriou  <cgd@google.com>
7358
7359         * symtab.c (rbreak_command): Quote symbol name before passing
7360         it to break_command.
7361
7362 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
7363
7364         * eval.c (evaluate_subexp_for_address): Clarify error message.
7365         Use value_must_coerce_to_target.
7366         * infcall.c (value_arg_coerce): Call value_coerce_to_target.
7367         * valops.c (value_assign): Call value_coerce_to_target when
7368         assigning to anything but internalvars.  Leave GDB-side arrays
7369         as arrays when assigning to internalvars.
7370         (value_must_coerce_to_target, value_coerce_to_target): New.
7371         (value_coerce_array, value_addr): Call value_coerce_to_target.
7372         (value_array): Create the array in GDB's memory instead of
7373         the inferior's.
7374         * value.h (value_must_coerce_to_target, value_coerce_to_target):
7375         Declare.
7376
7377 2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>
7378
7379         * top.c (quit_confirm): Warn that we will kill the program.
7380
7381 2008-03-19  Pedro Alves  <pedro@codesourcery.com>
7382
7383         * inflow.c (terminal_ours_1): Guard access to
7384         inferior_process_group with #ifdef PROCESS_GROUP_TYPE.
7385
7386 2008-03-18  Ulrich Weigand  <uweigand@de.ibm.com>
7387             Jim Blandy  <jimb@codesourcery.com>
7388             Daniel Jacobowitz  <drow@false.org>
7389
7390         * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
7391         (dwarf2_read_address): Update prototype.
7392
7393         * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
7394         (signed_address_type): Likewise.
7395         (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
7396         (execute_stack_op): Update calls to unsigned_address_type,
7397         signed_address_type and dwarf2_read_address.  Fix implementation
7398         of DW_OP_deref_size.
7399
7400         * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
7401         (dwarf2_per_cu_addr_size): Likewise.
7402         (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
7403         (struct dwarf2_loclist_baton): Likewise.
7404
7405         * dwarf2loc.c (find_location_expression): Update calls to
7406         dwarf2_read_address.  Use dwarf2_per_cu_objfile and
7407         dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
7408         (locexpr_describe_location): Likewise.
7409         (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
7410         Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
7411         (dwarf2_loc_desc_needs_frame): Add PER_CU parameter.  Set ctx->addr_size
7412         to dwarf2_per_cu_addr_size (per_cu).
7413         (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
7414         (loclist_read_variable): Likewise.
7415         (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.
7416
7417         * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
7418         instead of baton->objfile.
7419         (dwarf2_per_cu_obfile): New function.
7420         (dwarf2_per_cu_addr_size): Likewise.
7421
7422         * dwarf2-frame.c (struct comp_unit): Move higher.
7423         (struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
7424         (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
7425         (execute_cfa_program): Add FDE parameter.  Replace EH_FRAME_P
7426         parameter by using fde->eh_frame_p.  Use read_encoded_value
7427         to implement DW_CFA_set_loc.
7428         (struct dwarf2_frame_cache): Add ADDR_SIZE member.
7429         (dwarf2_frame_cache): Set cache->addr_size.  Update calls to
7430         execute_stack_op and execute_cfa_program.
7431         (dwarf2_frame_prev_register): Update calls to execute_stack_op.
7432         (size_of_encoded_value): Remove.
7433         (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
7434         Remove call to size_of_encoded_value.  Implement DW_EH_PE_funcrel.
7435         (add_cie): Set cie->unit backlink.
7436         (decode_frame_entry_1): Set cie->addr_size.  Update calls to
7437         read_encoded_value.
7438         (dwarf2_build_frame_info): Allocate UNIT on objfile obstack.
7439
7440 2008-03-17  Markus Deuling  <deuling@de.ibm.com>
7441
7442         * i386-tdep.c (i386_print_insn): Remove unnecessary call to
7443         gdbarch_bfd_arch_info.
7444
7445 2008-03-17  Joel Brobecker  <brobecker@adacore.com>
7446
7447         * aix-thread.c (pdc_read_regs): Minor reformatting.
7448
7449 2008-03-17  Vladimir Prus  <vladimir@codesourcery.com>
7450
7451         * thread.c (print_thread_info): Don't insist
7452         on having current thread if there are no
7453         threads at all.
7454
7455 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
7456
7457         * infcmd.c (attach_command_post_wait)
7458         (attach_command_continuation): New.
7459         (attach_command): Support background async execution, and async
7460         execution in synchronous mode.
7461
7462 2008-03-17  Daniel Jacobowitz  <dan@codesourcery.com>
7463
7464         * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
7465         * symmisc.c (dump_symtab_1): Likewise.
7466         * wrapper.c (gdb_value_struct_elt): Likewise.
7467
7468 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
7469
7470         * linux-nat.c (linux_nat_filter_event): Fix comment typo.
7471
7472 2008-03-17  Pedro Alves  <pedro@codesourcery.com>
7473
7474         * linux-nat.c (linux_nat_filter_event): New, refactored from
7475         linux_nat_wait.
7476         (linux_nat_wait): Call linux_nat_filter_event.
7477
7478 2008-03-17  Ulrich Weigand  <uweigand@de.ibm.com>
7479
7480         * top.c (execute_command): Fix uninitialized variable error.
7481
7482 2008-03-16  Nick Hudson  <nick.hudson@dsl.pipex.com>
7483
7484         * Makefile.in (amd64nbsd-nat.o): New dependency.
7485         * amd64nbsd-nat.c: Include "nbsd-nat.h".
7486         (_initialize_amd64nbsd_nat): Update target vector to use
7487         nbsd_pid_to_exec_file.
7488         * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
7489
7490 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
7491
7492         Remove ignoring leading exec events code.
7493         * fork-child.c (startup_inferior): Do not set
7494         inferior_ignoring_leading_exec_events.
7495         * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
7496         (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
7497         * infrun.c (inferior_ignoring_leading_exec_events): Remove.
7498         (handle_inferior_event): Remove code for ignoring leading exec
7499         events.
7500         * target.c (update_current_target): Do not inherit, or default,
7501         to_reported_exec_events_per_exec_call.
7502         (debug_to_reported_exec_events_per_exec_call): Remove.
7503         (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
7504         * target.h (target_reported_exec_events_per_exec_call): Remove.
7505         (struct target): Remove the to_reported_exec_events_per_exec_call
7506         field.
7507
7508 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
7509
7510         Implement -thread-info.
7511         * gdbthread.h (print_thread_info): Declare.
7512
7513         * thread.c (print_thread_info): New, extracted
7514         from info_threads_command and adjusted to
7515         work for CLI and MI.
7516         (info_threads_command): Use print_thread_info.
7517         * Makefile.in: Update dependencies.
7518
7519         * mi/mi-cmds.c (mi_cmds): Specify a handler
7520         for -thread-info.
7521         * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
7522         * mi/mi-main.c (mi_cmd_thread_info): New.
7523         (mi_cmd_list_features): Include 'thread-info'.
7524
7525 2008-03-14  Kevin Buettner  <kevinb@redhat.com>
7526
7527         * mips-tdep.c (mips32_scan_prologue): Use the ABI register size
7528         to decide whether to match instruction patterns using "sw" and "sd".
7529
7530 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
7531
7532         * infcmd.c (jump_command): Postpone disabling stdin until after
7533         the possible query.
7534
7535 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
7536
7537         * inflow.c (gdb_getpgrp): New.
7538         (gdb_has_a_terminal): Use get_getpgrp.
7539         (terminal_ours_1): If attach_flag is set, don't refetch
7540         inferior_process_group.
7541
7542 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
7543
7544         * features/library-list.dtd: Allow "section" elements as children
7545         of "library".  Add "section" element and describe its attributes.
7546
7547         * solib-target.c (struct lm_info): Add section_bases member.
7548         (library_list_start_segment): Error out if seen a section element.
7549         (library_list_start_section): New.
7550         (library_list_end_library): New.
7551         (solib_target_free_library_list): Free section_bases.
7552         (section_attributes): New.
7553         (library_children): Make "segment" optional.  Add "section" child.
7554         (library_list_children): Register library_list_end_library.
7555         (solib_target_relocate_section_addresses): Handle section bases.
7556
7557         * NEWS: Mention new qXfer:libraries:read section offsets support.
7558
7559 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
7560
7561         * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
7562         (make_exec_error_cleanup): Remove declarations.
7563         * utils.c (exec_error_cleanup_chain): Remove.
7564         (do_exec_error_cleanups, discard_exec_error_cleanups)
7565         (make_exec_error_cleanup): Remove.
7566         * event-loop.c (start_event_loop): Adjust call to
7567         async_enable_stdin.
7568         * event-top.c (async_enable_stdin): Remove the paramater dummy.
7569         (async_disable_stdin): Don't register async_enable_stdin via
7570         cleanup.
7571         * inf-loop.c (inferior_event_handler): Don't
7572         call do_exec_error_cleanups.  Call async_enable_stdin instead.
7573         * event-loop.c (start_event_loop): Adjust call to
7574         async_enable_stdin.
7575         * tui/tui-interp.c (tui_command_loop): Adjust call to
7576         async_enable_stdin.
7577
7578 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
7579
7580         Async mode fixes.
7581         * Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
7582         * breakpoint.c (bpstat_do_actions): In async mode,
7583         don't jump to top expecting stop_bpstat to be already
7584         updated.
7585         * event-loop.c (start_event_loop): Call async_enable_stdin
7586         on exception.
7587         * event-top.c (async_enable_stdin): Do nothing if sync_execution
7588         is not set.
7589         (command_handler): Do not setup continuation here.
7590         (command_line_handler_continuation): Move to...
7591         * top.c (command_line_handler_continuation): ... here.
7592         (execute_command): In async mode, register continuation.
7593         Don't check frame's language in running in async mode.
7594         * exceptions.c (throw_exception): Don't do exec_error_cleanups.
7595         * inf-loop.c (complete_execution): Inline into...
7596         (inferior_event_handler): ... here.  Clear target_executing before
7597         doing any cleanups.  Don't try to show prompt if the target was
7598         resumed.
7599         * infcmd.c (signal_command): Add support for async mode.
7600         (finish_command): Only add continuation if the target was
7601         successfully resumed.
7602         * remote.c (init_async_opts): Register to_get_thread_local_address
7603         handler.
7604         * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
7605         with sync_execution.
7606         * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
7607         on exception.
7608
7609 2008-03-14  Daniel Jacobowitz  <dan@codesourcery.com>
7610
7611         * corefile.c (reopen_exec_file): Use exec_bfd_mtime.
7612         * exec.c (exec_bfd_mtime): Define.
7613         (exec_close): Clear it.
7614         (exec_file_attach): Set it.
7615         * gdbcore.h (exec_bfd_mtime): Declare.
7616         * source.c (find_source_lines): Do not use bfd_get_mtime.
7617
7618 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
7619
7620         * top.c (simplified_command_loop): Remove.
7621
7622 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
7623
7624         Remove unused remote.c hooks.
7625         * remote.c (deprecated_target_resume_hook)
7626         (deprecated_target_wait_loop_hook): Remove.
7627         (remote_resume): Do not call deprecated_target_resume_hook.
7628         (remote_wait): Do not call deprecated_target_wait_loop_hook.
7629         (remote_async_wait): Likewise.
7630
7631 2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>
7632
7633         Implement MI notification for new threads.
7634         * doc/observer.texi (new_thread): Document.
7635         * observer.sh: Forward declare struct thread_info.
7636         * thread.c (add_thread): Notify observer.
7637
7638         * interps.h (interp_init_ftype): New parameter
7639         top_level.
7640         (interp_set): Likewise.
7641         (top_level_interpreter_data): Declare.
7642         * interps.c (interp_set): New parameter top_level.
7643         Pass it to interpreter's init function.  Remember
7644         top level interpreter.
7645         (interpreter_exec_cmd): Adjust.
7646         (top_level_interpreter_data): New.
7647         * main.c (captured_main): Pass 1 for top_level
7648         parameter of interp_set.
7649         * cli/cli-interp.c (cli_interpreter_init): New
7650         parameter top_level.
7651         * tui/tui-interp.c (tui_init): New parameter top_level.
7652
7653         * mi/mi-interp.c (mi_new_thread): New.
7654         (mi_interpreter_init): If top level, register
7655         observer for new threads.
7656
7657         * Makefile.in (mi-interp.o, thread.o): Update dependencies.
7658
7659 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
7660
7661         * top.c (execute_command): Disable break and stop
7662         commands in async mode.
7663
7664 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
7665
7666         revert:
7667         2008-03-14  Pedro Alves  <pedro@codesourcery.com>
7668         * inf-loop.c (inferior_event_handler): Don't include remote.h.
7669         Call target_stop in the INF_QUIT_REQ case.
7670         * Makefile.in (inf-loop.o): Update.
7671
7672 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
7673
7674         * inf-loop.c (inferior_event_handler): Don't include remote.h.
7675         Call target_stop in the INF_QUIT_REQ case.
7676         * Makefile.in (inf-loop.o): Update.
7677
7678 2008-03-14  Pedro Alves  <pedro@codesourcery.com>
7679
7680         * top.c (execute_command): Enable break, info and interrupt
7681         commands in async mode.
7682
7683 2008-03-13  Vladimir Prus  <vladimir@codesourcery.com>
7684             Daniel Jacobowitz  <dan@codesourcery.com>
7685
7686         * breakpoint.h (breakpoint_restore_shadows): New
7687         declaration.
7688         * breakpoint.c (breakpoint_restore_shadows): New.
7689         (read_memory_nobpt): Delete.
7690         * gdbcore.h (read_memory_nobpt): Delete declaration.
7691         * target.c (memory_xfer_partial): Call
7692         breakpoint_restore_shadows.
7693         (restore_show_memory_breakpoints)
7694         (make_show_memory_beakpoints_cleanup): New.
7695         (show_memory_breakpoints): New.
7696         * target.h (make_show_memory_beakpoints_cleanup): Declare.
7697         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
7698         Make sure we see memory breakpoints when checking if
7699         breakpoint is still there.
7700         * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
7701         hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
7702         m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
7703         sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
7704
7705 2008-03-12  Pedro Alves  <pedro@codesourcery.com>
7706
7707         * thread.c (add_thread): Use printf_unfiltered to print.
7708
7709 2008-03-12  Joel Brobecker  <brobecker@gnat.com>
7710
7711         * sol-thread.c: Replace use of TM_I386SOL2_H by an expression
7712         that is true only on x86-solaris and x86_64-solaris.
7713         * procfs.c: Likewise. Move procfs_find_LDT_entry up together
7714         with proc_get_LDT_entry.
7715
7716 2008-03-12  Thiago Jung Bauermann  <bauerman@br.ibm.com>
7717
7718         * configure.ac (AC_CHECK_FUNCS): Add check for setsid.
7719         * config.in, configure: Regenerate.
7720         * fork-child.c (fork_inferior): Call create_tty_session.
7721         * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
7722         (create_tty_session): New function.
7723         * terminal.h: Declare create_tty_session.
7724
7725 2008-03-12  Alan Modra  <amodra@bigpond.net.au>
7726
7727         PR 5900
7728         * elfread.c (elf_symtab_read): Make shndx an unsigned int.
7729         * mipsread.c: Include elf/internal.h.
7730         (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
7731         to internal range.
7732
7733 2008-03-11  Markus Deuling  <deuling@de.ibm.com>
7734
7735         * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
7736         to get at the current architecture and at the target specific vector.
7737         Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
7738         remove define of I387_ST0_REGNUM.
7739
7740         * amd64-tdep.c (I387_ST0_REGNUM): Remove define.
7741
7742         (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
7743         get at the current architecture
7744         (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
7745         parameter.
7746
7747         * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
7748         I387_NUM_XMM_REGS and I387_MM0_REGNUM.
7749
7750         (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
7751         I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
7752         (I387_FSTAT_REGNUM): Add target specific vector as parameter.
7753
7754         (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
7755         at the target specific vector.
7756
7757         (i386_get_longjmp_target): Use get_frame_arch to get at the current
7758         architecture. Use gdbarch_tdep to get at the target specific vector.
7759
7760         (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
7761         update caller. Use gdbarch_tdep to get at the target specific vector.
7762
7763         (i386_register_to_value: Use get_frame_arch to get at the current
7764         architecture.
7765
7766         * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
7767         parameter.
7768
7769         * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
7770         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
7771         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
7772         FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.
7773
7774         (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
7775         undef's.
7776
7777         (i387_convert_register_p, i387_register_to_value,
7778         i387_value_to_register): Update call for i386_fp_regnum_p.
7779
7780         * i387-tdep.h: Remove comment.
7781         (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
7782         (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
7783         I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
7784         I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
7785         I387_MXCSR_REGNUM): Add target specific vector as parameter.
7786
7787 2008-03-10  Daniel Jacobowitz  <dan@codesourcery.com>
7788
7789         * Makefile.in (fork-child.o): Update.
7790         * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
7791         argument.  Gather all gdbserver features together.
7792         * fork-child.c (exec_wrapper): New variable.
7793         (fork_inferior): Use it.
7794         (startup_inferior): Skip an extra trap if using "set exec-wrapper".
7795         (unset_exec_wrapper_command, _initialize_fork_child): New.
7796
7797 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
7798
7799         * source.c (directory_command): Modify the determination of
7800         condition of terminal "from_tty".
7801
7802 2008-03-10  Matt Rice  <ratmice@gmail.com>
7803
7804         * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.
7805
7806 2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>
7807
7808         * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
7809         of the data passing to strtoulst function.
7810         (info_spu_signal_command): Likewise.
7811
7812 2008-03-08  Vladimir Prus  <vladimir@codesourcery.com>
7813
7814         * mi/mi-interp.c (mi_command_loop): Remove
7815         commented-out code.
7816
7817 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
7818
7819         * remote.c (extended_remote_attach_1): Make local variable pid an int
7820         instead of a pid_t.
7821
7822 2008-03-07  Joel Brobecker  <brobecker@adacore.com>
7823
7824         * solib-svr4.c (svr4_same_1): New function, originally extracted
7825         from svr4_same and expanded to handle the sparc64 case.
7826         (svr4_same): Move up and reimplement using svr4_same_1.
7827         (enable_break): Use svr4_same_1 to do shared library name comparisons.
7828
7829 2008-03-07  Ramana Radhakrishnan  <ramana.r@gmail.com>
7830
7831         * MAINTAINERS: Move self to Paper trail.
7832
7833 2008-03-05  Daniel Jacobowitz  <dan@codesourcery.com>
7834
7835         * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
7836         * event-loop.c (call_async_signal_handler): New.
7837         * event-loop.h (call_async_signal_handler)
7838         (gdb_call_async_signal_handler): Declare.
7839         (mark_async_signal_handler): Add comments.
7840         * event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
7841         * mingw-hdep.c (sigint_event, sigint_handler): New.
7842         (gdb_select): Use them.  Wait for the readline signal handler
7843         to finish.
7844         (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
7845         * posix-hdep.c (gdb_call_async_signal_handler): New function.
7846         * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
7847         New.
7848         (remote_fileio_ctrl_c_signal_handler): Use
7849         gdb_call_async_signal_handler.
7850         (initialize_remote_fileio): Initialize sigint_fileio_token.
7851         * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
7852         not initialize tokens here.
7853         (handle_remote_sigint_twice): Likewise.  Reinstall
7854         handle_remote_sigint.
7855         (async_remote_interrupt_twice): Just call interrupt_query.
7856         (cleanup_sigint_signal_handler): Do not delete tokens.
7857         (remote_interrupt, remote_interrupt_twice): Use
7858         gdb_call_async_signal_handler.
7859         (interrupt_query): Reinstall the default signal handler.
7860         (_initialize_remote): Initialize tokens here.
7861
7862 2008-03-04  Joel Brobecker  <brobecker@adacore.com>
7863
7864         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
7865         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
7866         Change the type of the lr register to code_ptr.
7867         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
7868         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
7869         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
7870         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
7871         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
7872         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
7873         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.
7874
7875 2008-03-03  James E. Wilson  <wilson@tuliptree.org>
7876
7877         * MAINTAINERS: Update my email address.
7878
7879 2008-03-03  Keith Seitz  <keiths@redhat.com>
7880
7881         From Dave Murphy  <davem@devkitpro.org>:
7882         * configure.ac: Set tcl configdir to win under mingw.
7883         * configure: Regenerate.
7884
7885 2008-03-03  Daniel Jacobowitz  <dan@codesourcery.com>
7886
7887         * breakpoint.c (fetch_watchpoint_value): New function.
7888         (update_watchpoint): Set and clear val_valid.  Use
7889         fetch_watchpoint_value.  Handle unreadable values on the
7890         value chain.  Correct check for user-requested array watchpoints.
7891         (breakpoint_init_inferior): Clear val_valid.
7892         (watchpoint_value_print): New function.
7893         (print_it_typical): Use it.  Do not free or clear old_val.  Print
7894         watchpoints even if old_val == NULL.
7895         (watchpoint_check): Use fetch_watchpoint_value.  Check for values
7896         becoming readable or unreadable.
7897         (watch_command_1): Use fetch_watchpoint_value.  Set val_valid.
7898         (do_enable_watchpoint): Likewise.
7899         * breakpoint.h (struct breakpoint): Update comment for val.  Add
7900         val_valid.
7901         * NEWS: Mention watchpoints on inaccessible memory.
7902
7903 2007-02-29  Daniel Jacobowitz  <dan@codesourcery.com>
7904
7905         * Makefile.in (i386-nat.o): Update.
7906         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
7907         i386_use_watchpoints.
7908         * i386-linux-nat.c (_initialize_i386_linux_nat): Call
7909         i386_use_watchpoints.
7910         * i386-nat.c (i386_stopped_data_address): Take two arguments.
7911         (i386_stopped_by_watchpoint): Update call.
7912         (i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
7913         * config/i386/nm-i386.h: Conditionalize definitions on
7914         ! I386_WATCHPOINTS_IN_TARGET_VECTOR.
7915         (i386_use_watchpoints): Declare.
7916         (i386_stopped_data_address): Update.
7917         * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
7918         * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
7919
7920 2008-02-29  Joel Brobecker  <brobecker@adacore.com>
7921
7922         GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
7923         * version.in: Bump version to 6.8.50.20080229-cvs.
7924
7925 2008-02-28  Markus Deuling  <deuling@de.ibm.com>
7926
7927         * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
7928         properly.
7929
7930 2008-02-28  Tom Tromey  <tromey@redhat.com>
7931
7932         * infcmd.c (notice_args_read): Print result of get_inferior_args.
7933
7934 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
7935
7936         * infcmd.c (kill_if_already_running): Make static.  Use
7937         target_require_runnable.
7938         * target.c (target_require_runnable): New.
7939         * target.h (target_require_runnable): Declare.
7940
7941 2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>
7942
7943         * frame.c (reinit_frame_cache): Only annotate if frames were
7944         previously valid.
7945
7946 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
7947
7948         * regformats/reg-ppc.dat: Rename "ps" to "msr".
7949         * regformats/reg-ppc64.dat: Likewise.
7950
7951 2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>
7952
7953         * features/Makefile (%.dat): Emit xmltarget statement.
7954
7955         * regformats/regdat.sh: Support xmltarget and xmlarch statments.
7956         Generate code to set gdbserver_xmltarget in init_registers_${name}.
7957
7958         * regformats/arm-with-iwmmxt.dat: Regenerate.
7959         * regformats/mips64-linux.dat: Regenerate.
7960         * regformats/mips-linux.dat: Regenerate.
7961         * regformats/rs6000/powerpc-32.dat: Regenerate.
7962         * regformats/rs6000/powerpc-64.dat: Regenerate.
7963         * regformats/rs6000/powerpc-e500.dat: Regenerate.
7964
7965         * regformats/reg-arm.dat: Add xmlarch statement.
7966         * regformats/reg-i386.dat: Likewise.
7967         * regformats/reg-i386-linux.dat: Likewise.
7968         * regformats/reg-x86-64-linux.dat: Likewise.
7969         * regformats/reg-spu.dat: Likewise.
7970
7971 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
7972
7973         * remote.c (remote_wait, remote_async_wait): Stop if we receive
7974         an error.
7975
7976 2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>
7977
7978         * utils.c (debug_timestamp): New.
7979         (vfprintf_unfiltered): Print timestamps if requested.
7980         (show_debug_timestamp): New.
7981         (initialize_utils): Register "set debug timestamp".
7982         * NEWS: Mention "set debug timestamp".  Add GDB 6.8 section.
7983
7984 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
7985
7986         * breakpoint.c (skip_prologue_sal): New function.
7987         (resolve_sal_pc): Adjust SAL past prologue if the SAL was
7988         computed from a line number.
7989
7990 2008-02-27  Joel Brobecker  <brobecker@adacore.com>
7991
7992         * features/rs6000/power-core.xml, features/rs6000/power64-core.xml
7993         features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
7994         Set PC register type to "code_ptr".
7995         * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
7996         features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
7997         features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
7998         features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
7999         features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
8000         features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
8001         features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
8002         Regenerate.
8003
8004 2008-02-27  Ulrich Weigand  <uweigand@de.ibm.com>
8005
8006         * regformats/regdat.sh: Rename init_registers function in
8007         generated file to init_registers_${name}.
8008
8009         * regformats/reg-crisv32.dat: Set "name" to crisv32.
8010         * regformats/reg-ppc64.dat: Set "name" to ppc64.
8011         * regformats/reg-s390x.dat: Set "name" to s390x.
8012
8013 2008-02-26  Greg Law  <glaw@undo-software.com>
8014
8015         * regcache.c (registers_changed): Call reinit_frame_cache.
8016
8017 2008-02-26  Daniel Jacobowitz  <dan@codesourcery.com>
8018
8019         * configure.tgt (sh-*-linux*): Match sh*.  Add glibc-tdep.o.
8020         * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
8021         and svr4_fetch_objfile_link_map.
8022         * Makefile.in (sh-linux-tdep.o): Update.
8023
8024 2008-02-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8025
8026         * amd64-tdep.c (amd64_classify): Add support for decimal float
8027         types.
8028         * i386-tdep.c (i386_return_value): Make 128-bit decimal float
8029         use the struct return convention.
8030
8031 2008-02-26  Nick Roberts  <nickrob@snap.net.nz>
8032
8033         * breakpoint.c (print_one_breakpoint_location): Revert Enb field
8034         to old format.  Discard breakpoint address if shared library is
8035         unloaded.
8036         (breakpoint_1): Adjust formatting of table header accordingly.
8037
8038 2008-02-25  Vladimir Prus  <vladimir@codesourcery.com>
8039
8040        * remote.c (remote_get_threadlist): If the response
8041        is empty, don't try to parse it.
8042
8043 2008-02-23  Vladimir Prus  <vladimir@codesourcery.com>
8044
8045         Unbreak 'target async'.
8046         * serial.c (serial_async): Set the
8047         handler function before enabling async
8048         mode.
8049
8050 2008-02-22  Daniel Jacobowitz  <dan@codesourcery.com>
8051
8052         * solib-svr4.c (enable_break): Convert r_brk to a code address.
8053
8054 2008-02-21  Pedro Alves  <pedro@codesourcery.com>
8055
8056         * remote.c (extended_remote_attach_1): Set attach_flag.
8057         (extended_remote_create_inferior_1): Clear attach_flag.
8058
8059 2008-02-20  Daniel Jacobowitz  <dan@codesourcery.com>
8060
8061         * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
8062         r_brk_offset.
8063         (mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
8064         * solib-svr4.c (solib_svr4_r_brk): New.
8065         (open_symbol_file_object, svr4_current_sos): Always check the
8066         debug base.
8067         (svr4_fetch_objfile_link_map): Do not set debug_base.
8068         (enable_break): Use r_brk if it is set.
8069         (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
8070         (svr4_lp64_fetch_link_map_offsets): Likewise.
8071         * solib-svr4.h (struct link_map_offsets): Add r_brk_offset.
8072
8073 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
8074             Mark Kettenis  <kettenis@gnu.org>
8075
8076         * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
8077         trad_frame_saved_reg.
8078         (trad-frame.h): New include.
8079
8080         (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
8081         instead of frame_obstack_zalloc.
8082         (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.
8083
8084         * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
8085
8086 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
8087
8088         * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
8089         from disassemble_info instead of gdbarch_byte_order.
8090
8091         * mips-tdep.c (gdb_print_insn_mips): Likewise.
8092         * arm-tdep.c (gdb_print_insn_arm): Likewise.
8093
8094 2008-02-20  Markus Deuling  <deuling@de.ibm.com>
8095
8096         * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
8097         gdbarch as parameter.
8098
8099         * gdbarch.{c,h}: Regenerate.
8100
8101         * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
8102         parameter.
8103         * mem-break.c (default_memory_insert_breakpoint)
8104         (default_memory_remove_breakpoint): Likewise.
8105         * target.h (default_memory_remove_breakpoint)
8106         (default_memory_insert_breakpoint): Likewise.
8107
8108         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
8109         parameter. Replace current_gdbarch by gdbarch.
8110         * m32r-tdep.c (m32r_memory_insert_breakpoint)
8111         (m32r_memory_remove_breakpoint): Likewise.
8112
8113 2008-02-19  Daniel Jacobowitz  <dan@codesourcery.com>
8114
8115         * MAINTAINERS: Add Vladimir Prus as MI maintainer.
8116
8117 2008-02-19  Joel Brobecker  <brobecker@adacore.com>
8118
8119         * NEWS: Add entry describing Add support improvements.
8120
8121 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
8122
8123         * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
8124         M68K_FP0_REGNUM.
8125
8126 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
8127
8128         * sentinel-frame.c (sentinel_frame_prev_register): Do not call
8129         register_offset_hack anymore.
8130
8131         * regcache.{c,h} (register_offset_hack): Remove.
8132
8133 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
8134
8135         * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.
8136
8137         * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
8138         current_gdbarch by gdbarch.
8139         (hppa64_hpux_find_global_pointer): Likewise.
8140         * hppa-tdep.c (hppa_find_global_pointer): Likewise.
8141         (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
8142         find_global_pointer.
8143
8144         * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
8145         parameter.
8146         * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.
8147
8148         * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
8149         of gdbarch_num_regs.
8150
8151         * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
8152         replace current_gdbarch by gdbarch.
8153         (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.
8154
8155 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
8156
8157         * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
8158         and replace current_gdbarch by gdbarch.
8159
8160         (store_register): Update call for exec_one_dummy_insn.
8161         (fetch_register, store_register): Update call of regmap.
8162
8163         * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
8164         parameter and replace current_gdbarch by gdbarch.
8165
8166         (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
8167         the current architecture. Update call for getregs_supplies and
8168         getfpregs_supplies.
8169         (ppcnbsd_fetch_inferior_registers): Likewise.
8170
8171         * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
8172         replace current_gdbarch by gdbarch.
8173         (ppcobsd_fetch_registers, ppcobsd_store_registers): Use
8174         get_regcache_arch to get at the current architecture. Update call for
8175         getfpregs_supplies.
8176
8177 2008-02-18  Markus Deuling  <deuling@de.ibm.com>
8178
8179         * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
8180         variables.
8181
8182 2008-02-15  Markus Deuling  <deuling@de.ibm.com>
8183
8184         * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.
8185
8186 2008-02-14  Vladimir Prus  <vladimir@codesourcery.com>
8187
8188         * NEWS: Mention pending breakpints in MI.
8189
8190 2008-02-14  Markus Deuling  <deuling@de.ibm.com>
8191
8192         * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.
8193
8194 2008-02-13  Markus Deuling  <deuling@de.ibm.com>
8195
8196         Add script to build and test GDB using enable-targets=all.
8197
8198         * gdb_buildall.sh: New file.
8199
8200 2008-02-11  Maxim Grigoriev  <maxim2405@gmail.com>
8201
8202         * NEWS (New native configurations): Xtensa GNU/Linux.
8203         (New targets): Xtensa GNU/Linux.
8204         * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and
8205         xtensa-linux-tdep.o
8206         (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c
8207         (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies.
8208         * configure.tgt (xtensa*-*-linux*): New entry.
8209         * xtensa-config.c (xtensa_tdep): New variable.
8210         (xtensa_config_byte_order, xtensa_config_tdep): Removed.
8211         (rmap): Change format based on new macro XTREG.
8212         (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h.
8213         * xtensa-linux-nat.c: New.
8214         * xtensa-linux-tdep.c: New.
8215         * xtensa-xtregs.c: New.
8216         * xtensa-tdep.h (xtensa_elf_gregset_t): Update.
8217         (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE)
8218         (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros.
8219         (xtensa_register_t): New field coprocessor.
8220         (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected.
8221         * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed.
8222         (xtensa_pseudo_register_read, xtensa_pseudo_register_write):
8223         Update to handle privileged registers.
8224         (xtensa_supply_gregset) Remove exccause and excvaddr registers.
8225         (xtensa_push_dummy_call): Set windowstart register correctly.
8226         (call0_analyze_prologue): Initialize xtensa_default_isa.
8227         (xtensa_derive_tdep): New.
8228         (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and
8229         xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead.
8230         Call xtensa_derive_tdep().
8231         * config/xtensa/linux.mh: New.
8232         * regformats/reg-xtensa.dat: New.
8233
8234 2008-02-09  Aleksandar Ristovski  <aristovski@qnx.com>  (tiny change)
8235
8236         * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
8237         (filenames.h): New include.
8238         * Makefile.in (corelow.o): Add dependency for filenames.h.
8239
8240 2008-02-08  Doug Evans  <dje@google.com>
8241
8242         * source.c (find_and_open_source): Always rewrite absolute filenames.
8243
8244 2008-02-07  Doug Evans  <dje@google.com>
8245
8246         * breakpoint.c: #include "hashtab.h".
8247         (ambiguous_names_p): New fn.
8248         (update_breakpoint_locations): When restoring bp enable status, don't
8249         compare function names if any functions have same name.
8250         * Makefile.in (breakpoint.o): Add hashtab.h dependency.
8251
8252 2008-02-07  Joel Brobecker  <brobecker@adacore.com>
8253
8254         * ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
8255         instead of just a VEC*. Update use of SV.
8256         (ada_make_symbol_completion_list): Update symbol_completion_add calls.
8257
8258 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
8259
8260         * NEWS: Put all new commands since gdb-6.7 together.
8261
8262 2007-02-07  Joel Brobecker  <brobecker@adacore.com>
8263
8264         * ada-lang.c: #include "vec.h".
8265         (struct string_vector, new_string_vector, string_vector_append):
8266         Delete.
8267         (char_ptr): New typedef.
8268         (DEF_VEC_P (char_ptr)): New VEC type.
8269         (symbol_completion_add): Update profile to take the new VEC type
8270         instead of the old string_vector structure. Update code accordingly.
8271         (ada_make_symbol_completion_list): Use the new VEC type instead of
8272         the old string_vector structure, and update the code accordingly.
8273         * Makefile.in (ada-lang.o): Add dependency on vec.h.
8274
8275 2008-02-06  Pierre Muller  <muller@ics.u-strasbg.fr>
8276
8277         * p-exp.y: Set current_type in missing places.
8278         (leftdiv_is_integer): New static variable.
8279         Typecast right operand of BINOP_DIV to long_double if both operands
8280         are integers.
8281
8282 2008-02-06  Maciej W. Rozycki  <macro@mips.com>
8283
8284         * remote-mips.c (set_breakpoint): Rename to...
8285         (mips_set_breakpoint): ... this.
8286         (clear_breakpoint): Rename to...
8287         (mips_clear_breakpoint): ... this.
8288         (common_breakpoint): Rename to...
8289         (mips_common_breakpoint): ... this.
8290         (check_lsi_error): Rename to...
8291         (mips_check_lsi_error): ... this.
8292
8293 2007-02-05  Joel Brobecker  <brobecker@adacore.com>
8294
8295         * language.h (struct language_defn): Add new field
8296         la_make_symbol_completion_list.
8297         * symtab.c (default_make_symbol_completion_list): Renames
8298         make_symbol_completion_list.
8299         (make_symbol_completion_list): New function.
8300         * symtab.h (default_make_symbol_completion_list): Add declaration.
8301         * langauge.c (unknown_language): Set la_make_symbol_completion_list.
8302         (auto_language, local_language): Likewise.
8303         * objc-lang.c (objc_language_defn): Likewise.
8304         * scm-lang.c (scm_language_defn): Likewise.
8305         * m2-lang.c (m2_language_defn): Likewise.
8306         * f-lang.c (f_language_defn): Likewise.
8307         * jv-lang.c (java_language_defn): Likewise.
8308         * p-lang.c (pascal_language_defn): Likewise.
8309         * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
8310         (minimal_language_defn): Likewise.
8311         * ada-lang.c (struct string_vector): New structure.
8312         (new_string_vector, string_vector_append, ada_unqualified_name)
8313         (add_angle_brackets, symbol_completion_match, symbol_completion_add)
8314         (ada_make_symbol_completion_list): New functions.
8315         (ada_language_defn): Set la_make_symbol_completion_list.
8316         * ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
8317         this function is static.
8318
8319 2008-02-05  Kevin Buettner  <kevinb@redhat.com>
8320
8321         * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
8322         to account for call site optimizations.
8323
8324 2008-02-05  Andrzej Zaborowski  <balrogg@gmail.com>
8325
8326         * tracepoint.c (read_actions): Handle end-of-text indicator
8327         in action list properly.  (Committed by Jim Blandy)
8328
8329 2008-02-05  Jim Blandy  <jimb@red-bean.com>
8330
8331         * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
8332         pseudoregister, not an internal error.
8333         Reported by: Andrzej Zaborowski
8334
8335 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
8336
8337         * varobj.c (c_value_of_variable): Use xstrdup.
8338
8339 2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>
8340
8341         Update stored rendition of varobj value when format changes.
8342         * varobj.c (varobj_set_display_format): Recomputed
8343         print_value.
8344         (c_value_of_variable): Return print_value.
8345
8346 2008-02-03  Doug Evans  <dje@google.com>
8347
8348         * eval.c (evaluate_subexp_standard): Fix type of result of mixed
8349         integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
8350         * valops.c (value_one): New function.
8351         * value.h (value_one): Declare.
8352
8353         Fix argument promotion for binary arithmetic ops for C.
8354         * valarith.c (unop_result_type): New fn.
8355         (binop_result_type): New fn.
8356         (value_binop): Move result type computation to binop_result_type.
8357         (value_pos, value_neg, value_complement): Move result type
8358         computation to unop_result_type.
8359
8360         PR 2384
8361         * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
8362         Return basetype, fieldno if found.  All callers updated.
8363         Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
8364         objfile.
8365         * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
8366         * symfile.h (fill_in_vptr_fieldno): Delete.
8367
8368 2008-02-02  Doug Evans  <dje@google.com>
8369
8370         * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.
8371
8372         * typeprint.c (*): Whitespace cleanup.
8373
8374 2008-02-02  Mark Kettenis  <kettenis@gnu.org>
8375             Luis Machado  <luisgpm@br.ibm.com>
8376             Thiago Jung Bauermann  <bauerman@br.ibm.com>
8377
8378         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
8379         don't fit into registerson the stack the way GCC does.
8380
8381 2008-02-01  Joel Brobecker  <brobecker@adacore.com>
8382
8383         * symtab.c (symbol_set_names): Do not add an entry in the demangling
8384         hash table for Ada symbols. Just store the linkage name as is,
8385         and leave the demangled_name as NULL.
8386
8387 2007-02-01  Joel Brobecker  <brobecker@adacore.com>
8388
8389         * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
8390         in the global scope.
8391         (new_symbol): Likewise.
8392
8393 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
8394
8395         * breakpoint.c (break_command_1): Return void.
8396         (break_command_really): Return void.  Rethrow
8397         exceptions instead of returning.
8398         (gdb_breakpoint): Remove the error_message parameter.
8399         Return void.  Rename to set_breakpoint.
8400         * gdb.h (gdb_breakpoint): Rename and move to...
8401         * breakpoint.h (set_breakpoint): ...here.
8402         * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
8403         event hooks even if exception is thrown.  Adjust to
8404         gdb_breakpoint interface changes.
8405
8406
8407 2008-02-01  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8408
8409         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
8410         float in both first and second word in the doubleword, to support
8411         old and new ABIs.
8412
8413 2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>
8414
8415         Properly rethrow exception.  This fixes errors
8416         about non-existent functions for -break-insert.
8417         * breakpoint.c (break_command_really): Use throw_exception
8418         for rethrowing.  If rethrowing, don't print the exception.
8419
8420 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8421
8422         * NEWS: Mention Decimal Floating Point support.
8423
8424 2008-01-31  Joel Brobecker  <brobecker@adacore.com>
8425
8426         * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
8427         value type to builtin_type_void_func_ptr.
8428
8429 2008-01-31  Andreas Krebbel  <krebbel1@de.ibm.com>
8430
8431         * s390-tdep.c (is_float_singleton, is_float_like,
8432         alignment_of, s390_return_value): Make checks for
8433         TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.
8434
8435 2008-01-31  Luis Machado  <luisgpm@br.ibm.com>
8436             Thiago Jung Bauermann  <bauerman@br.ibm.com>
8437
8438         * infcmd.c (default_print_registers_info): Also print hex
8439         raw contents for TYPE_CODE_DECFLOAT registers.
8440         * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
8441         * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
8442         (rs6000_register_name): Add support for DFP pseudo-registers.
8443         (rs6000_pseudo_register_type): Likewise.
8444         rs6000_pseudo_register_reggroup_p): Likewise.
8445         (ppc_pseudo_register_read): New function.
8446         (ppc_pseudo_register_write): Likewise.
8447         (rs6000_pseudo_register_read): Likewise.
8448         (rs6000_pseudo_register_write): Likewise.
8449         (e500_pseudo_register_read): Move checks to
8450         rs6000_pseudo_register_read.
8451         (e500_pseudo_register_write): Move checks to
8452         rs6000_pseudo_register_write.
8453         (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum.  Install
8454         rs6000_pseudo_register_read and rs6000_pseudo_register_write
8455         in gdbarch if SPE or DFP is available.  Adjust gdbarch's
8456         num_pseudo_regs to account for DFP pseudo regs.
8457
8458 2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8459
8460         * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
8461         * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
8462         (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
8463         rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
8464         e500_pseudo_register_read, e500_pseudo_register_write): Use
8465         IS_SPE_PSEUDOREG macro.
8466         (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
8467         (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
8468         Remove initialization of tdep->ppc_ev31_regnum.
8469
8470 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
8471
8472         * printcmd.c (print_formatted): Handle references as for unformatted
8473         prints.
8474
8475 2008-01-30  Joel Brobecker  <brobecker@adacore.com>
8476
8477         * eval.c (evaluate_subexp_standard): Add handling of user
8478         registers when in EVAL_AVOID_SIDE_EFFECTS mode.
8479
8480 2008-01-30  Pierre Muller  <muller@ics.u-strasbg.fr>
8481
8482         * eval.c (evaluate_subexp_standard): Support
8483         BINOP_INTDIV opcode.
8484
8485 2008-01-30  Paul N. Hilfinger  <hilfinger@adacore.com>
8486
8487         * valarith.c (value_binop): Add floating-point BINOP_MIN and
8488         BINOP_MAX cases.
8489         For BINOP_EXP, use length and signedness of left operand only for
8490         result, as for shifts.
8491         For integral operands to BINOP_EXP, use new integer_pow and
8492         uinteger_pow functions so as to get full range of results.
8493         (integer_pow): New function.
8494         (uinteger_pow): New function.
8495
8496 2008-01-30  Vladimir Prus  <vladimir@codesourcery.com>
8497
8498         Use vector for varobj_list_children interface.
8499         * gdb/varobj.c (varobj_list_children): Return vector
8500         of varobjs.
8501         * gdb/varobj.h (varobj_list_children): Adjust
8502         prototype.
8503         (varobj_p): Declare.  Declare vector thereof.
8504         * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
8505         for varobj_list_children change.
8506         * Makefile.in (varobj_h): Update dependencies.
8507
8508 2008-01-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8509
8510         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
8511         TYPE_CODE_DECFLOAT arguments.
8512         (ppc64_sysv_abi_push_dummy_call) Likewise.
8513         (get_decimal_float_return_value): New function.
8514         (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
8515         values by calling get_decimal_float_return_value.
8516         (ppc64_sysv_abi_return_value): Likewise.
8517
8518 2008-01-30  Nick Roberts  <nickrob@snap.net.nz>
8519
8520         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file):  Add field
8521         for preprocessor macro information.  Formatting changes.
8522
8523 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
8524
8525         * remote.c (struct remote_state): Add cached_wait_status.
8526         (remote_exec_file): New variable.
8527         (PACKET_vAttach, PACKET_vRun): New constants.
8528         (extended_remote_restart): Do not query for status.
8529         (struct start_remote_args): New.
8530         (remote_start_remote): Take it as a second argument.  Check
8531         whether the target is running.  Issue an error for non-running
8532         non-extended targets.  Cache the wait status.  Set inferior_ptid
8533         here.
8534         (remote_open_1): Prompt to disconnect non-running targets.  Make
8535         sure the target is marked running.  Do not set inferior_ptid here.
8536         Update call to remote_start_remote.  Do not call remote_check_symbols
8537         if the target is not running.
8538         (remote_detach_1): Rename from remote_detach.  Take an EXTENDED
8539         argument.  Handle a non-running target.
8540         (remote_detach): Use it.
8541         (extended_remote_detach): New.
8542         (remote_disconnect): Fix typo.  Use remoute_mourn_1.
8543         (extended_remote_attach_1, extended_remote_attach)
8544         (extended_async_remote_attach): New.
8545         (remote_vcont_resume): Remove unused variable.
8546         (remote_wait, remote_async_wait): Use any cached wait status.
8547         (putpkt_binary, getpkt): Clear any cached wait status.
8548         (extended_remoute_mourn_1): New.
8549         (extended_remote_mourn): Use it.
8550         (extended_async_remote_mourn, extended_remote_run): New.
8551         (extended_remote_create_inferior_1): New.
8552         (extended_remote_create_inferior): Use it.
8553         (extended_remote_async_create_inferior): Likewise.
8554         (remote_xfer_partial): Skip for non-executing targets.
8555         (init_extended_remote_ops): Set to_detach and to_attach.
8556         (init_extended_async_remote_ops): Likewise.  Use
8557         extended_async_remote_mourn.
8558         (_initialize_remote): Register vAttach, vRun, and
8559         set remote exec-file.
8560         * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.
8561
8562 2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
8563
8564         * Makefile.in (symfile.o): Update.
8565         * NEWS: Mention exec tracing support.
8566         * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
8567         exec events.
8568         * infcmd.c (kill_if_already_running, detach_command)
8569         (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
8570         * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
8571         (follow_exec): Do not check may_follow_exec.  Do not mourn and push
8572         targets.  Apply the sysroot path to the loaded executable.  Use
8573         no_shared_libraries.
8574         * linux-nat.c (linux_child_follow_fork): Print fork following
8575         messages if verbose.
8576         (kill_wait_callback): Kill again before waiting a second time.
8577         * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
8578         no_shared_libraries.
8579
8580 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
8581
8582         * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.
8583
8584 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
8585
8586         * nto-tdep.h: Remove #include "defs.h".
8587         * nto-tdep.c: Add #include "defs.h".
8588         * Makefile.in (nto_tdep_h): Update dependencies.
8589         (nto-tdep.o): Likewise.
8590
8591 2008-01-29  Joel Brobecker  <brobecker@adacore.com>
8592
8593         * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
8594         and use it.
8595         (proceed, start_remote): Update call to wait_for_inferior.
8596         * inferior.h (wait_for_inferior): Update declaration.
8597         * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
8598         solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
8599         * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
8600         TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.
8601
8602 2008-01-29  Aleksandar Ristovski  <aristovski@qnx.com>
8603
8604         * varobj (adjust_value_for_child_access): Added checking for
8605         returned value from gdb_value_ind.
8606         (c_describe_child): Likewise.
8607         (cplus_describe_child): Fixed a typo.
8608
8609 2008-01-29  Jim Blandy  <jimb@red-bean.com>
8610
8611         * MAINTAINERS: Update my info.
8612
8613 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
8614
8615         Use multiple locations for hardware watchpoints.
8616         This eliminates the need to traverse value chain, doing
8617         various checks, in three different places.
8618
8619         * breakpoint.h (struct bp_location): New fields
8620         lengths and watchpoint_type.
8621         (struct breakpoint): Remove the val_chain field.
8622         * breakpoint.c (is_hardware_watchpoint): New.
8623         (free_valchain): Remove.
8624         (update_watchpoint): New.
8625         (insert_bp_location): For hardware watchpoint, just
8626         directly insert it.
8627         (insert_breakpoints): Call update_watchpoint_locations
8628         on all watchpoints.  If we have failed to insert
8629         any location of a hardware watchpoint, remove all inserted
8630         locations.
8631         (remove_breakpoint): For hardware watchpoints, directly
8632         remove location.
8633         (watchpoints_triggered): Iterate over locations.
8634         (bpstat_stop_status): Use only first location of
8635         a resource watchpoint.
8636         (delete_breakpoint): Don't call free_valchain.
8637         (print_one_breakpoint): Don't print all
8638         locations for watchpoints.
8639         (breakpoint_re_set_one): Use update_watchpoint for
8640         watchpoints.
8641
8642 2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>
8643
8644         Don't reset watchpoint block on solib load.
8645
8646         * breakpoint.c (insert_bp_location): For watchpoints,
8647         recompute condition.
8648         (breakpoint_re_set_one): Instead of recomputing value
8649         and condition for watchpoints, just reset value and
8650         let insert_breakpoints/insert_bp_location recompute it.
8651         Don't do anything about disabled watchpoint.
8652
8653 2008-01-29  Pierre Muller  <muller@ics.u-strasbg.fr>
8654
8655         * valarith.c (value_binop): Handle unsigned integer
8656         division by zero.
8657
8658 2008-01-28  Kevin Buettner  <kevinb@redhat.com>
8659
8660         * mn10300-tdep.c (mn10300_analyze_prologue): Check for an
8661         instruction pattern that appears frequently in position
8662         independent code.  Fix bug in code which looks for "fmov" and
8663         backtracks if no "fmov" is found.
8664
8665 2008-01-28  Doug Evans  <dje@google.com>
8666
8667         * dbxread.c (read_dbx_symtab): Fix indentation.
8668         Reformat comments to 80 columns.
8669         Move local var def closer to only use.
8670
8671 2008-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
8672
8673         * fork-child.c (SHELL_FILE): Remove #ifndef.
8674         (fork_inferior): Remove SHELL_COMMAND_CONCAT.
8675
8676 2008-01-25  Pierre Muller  <muller@ics.u-strasbg.fr>
8677
8678         * i386-tdep.c (i386_skip_noop): New function.
8679         (i386_analyze_prologue): Call i386_skip_noop function.
8680
8681 2008-01-24  Michael Snyder  <msnyder@specifix.com>
8682
8683         * procfs.c (procfs_xfer_partial): Comment, cut/paste error.
8684         * win32-nat.c (win32_xfer_partial): Ditto.
8685         * target.c (default_xfer_partial): Minor whitespace adjustment.
8686
8687 2008-01-24  Pedro Alves  <pedro@codesourcery.com>
8688
8689         * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
8690         strip bit 1 even if pc doesn't point to thumb code.
8691
8692 2008-01-23  Daniel Jacobowitz  <dan@codesourcery.com>
8693
8694         * remote.c (remote_wait): Handle SIGINT between packets.
8695         (remote_async_wait): Likewise.
8696
8697 2008-01-23  Vladimir Prus  <vladimir@codesourcery.com>
8698             Chris Demetriou  <cgd@google.com>
8699
8700         * thread.c (add_thread_silent): Renamed
8701         from add_thread.
8702         (print_thread_events): New variable definition.
8703         (show_print_thread_events): New function.
8704         (_initialize_thread): Add "set print thread-events" and
8705         "show print thread-events" commands.
8706         (add_thread): Announce new thread.
8707         * gdbthread.h (add_thread_silent): Declare.
8708         (print_thread_events): New variable declaration.
8709         * inf-ttrace.c (inf_ttrace_wait): Don't
8710         inform about new thread, as add_thread is always
8711         called too, and will take care of that.
8712         * infrun.c (handle_inferior_event): Likewise.
8713         * procfs.c (procfs_wait): Likewise.
8714         * remote.c (remote_currthread): Likewise.
8715         * sol-thread.c (sol_thread_wait): Likewise.
8716         * win32-nat.c (get_win32_debug_event): Likewise.
8717         * linux-thread-db.c (attach_thread): Likewise.
8718         Remove the verbose parameter.
8719         (check_event): Make detach_thread be verbose
8720         only if print_thread_events is set.
8721         * linux-nat.c (lin_lwp_attach_lwp): Don't inform
8722         about new thread.  This is called only from
8723         linux-thread-db.c:attach_thread, which will take care.
8724         Remove the verbose parameter.
8725         * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.
8726
8727 2008-01-23  Nick Roberts  <nickrob@snap.net.nz>
8728
8729         * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.
8730
8731 2008-01-22  Vladimir Prus  <vladimir@codesourcery.com>
8732
8733         * breakpoint.c (break_command_really): New parameter
8734         ignore_count.
8735         (break_command_1): Pass 0 as
8736         ignore_count to break_command_really.
8737         (gdb_breakpoint): Pass ignore_count to
8738         break_command_really.
8739
8740 2008-01-21  Kevin Buettner  <kevinb@redhat.com>
8741
8742         * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
8743         sigcontext struct via pointer.
8744         (struct sigframe comment): Update to show new field `psc'.
8745
8746 2008-01-21  Vladimir Prus  <vladimir@codesourcery.com>
8747
8748         * infrun.c (handle_inferior_event): If
8749         we failed to remove breakpoints, error,
8750         don't try to increment PC by hand.
8751
8752 2008-01-18  Nick Hudson  <nick.hudson@dsl.pipex.com>
8753
8754         Add NetBSD/hppa target and host support.
8755
8756         * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
8757         (hppabsd_gregset): Move to ...
8758         (hppabsd_regset_from_core_section): Rename
8759         hppaobsd_regset_from_core_section and move to ...
8760         (hppabsd_find_global_pointer): Update comment.
8761         (hppabsd_init_abi): Make global. Do not register
8762         hppabsd_regset_from_core_section.
8763         (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
8764         move to ...
8765         (_initialize_hppabsd_tdep): Move to ...
8766         * hppaobsd-tdep.c: ... here. New file.
8767         * hppnbsd-tdep.c: New file.
8768         * hppnbsd-nat.c: New file.
8769         * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
8770         (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
8771         (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
8772         (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
8773         * configure.host (hppa*-*-netbsd*): New entry.
8774         * configure.tgt (hppa*-*-netbsd*): New entry.
8775         (hppa*-*-openbsd*): Update.
8776         * NEWS (New native configuration): Mention NetBSD/hppa.
8777         (New targets): Mention NetBSD/hppa.
8778
8779 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
8780
8781         * gdbarch.sh (function_list): Add new property bits_big_endian to
8782         gdbarch structure.
8783         * gdbarch.{c,h}: Regenerate.
8784
8785         * value.c (struct value): Replace BITS_BIG_ENDIAN by
8786         gdbarch_bits_big_endian (comment).
8787         (unpack_field_as_long, modify_field): Likewise.
8788         * value.h: Likewise (comment).
8789         * valops.c (value_slice): Likewise.
8790         * valarith.c (value_subscript, value_bit_index): Likewise.
8791         * gdbtypes.h (field): Likewise (comment).
8792         * eval.c (evaluate_subexp_standard): Likewise.
8793         * dwarf2read.c (dwarf2_add_field): Likewise.
8794         * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
8795         (move_bits, ada_value_assign, value_assign_to_component): Likewise.
8796
8797         * defs.h (BITS_BIG_ENDIAN): Remove.
8798
8799 2008-01-18  Markus Deuling  <deuling@de.ibm.com>
8800
8801         * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
8802         function calls.
8803         * m2-exp.y (yylex): Likewise.
8804         * objc-exp.y (yylex): Likewise.
8805
8806         * defs.h (DEPRECATED_STREQN): Remove.
8807
8808 2008-01-17  H.J. Lu  <hjl.tools@gmail.com>
8809
8810         * MAINTAINERS: Update my email address.
8811
8812 2008-01-17  Jim Blandy  <jimb@codesourcery.com>
8813
8814         * README: Mention gdbserver/README.
8815
8816 2008-01-17  Pierre Muller  <muller@ics.u-strasbg.fr>
8817
8818         * valarith.c (value_binop): Handle BINOP_INTDIV
8819         for unsigned and signed integers.
8820
8821 2008-01-17  Ulrich Weigand  <uweigand@de.ibm.com>
8822
8823         * s390-tdep.c (s390_gdbarch_init): Set default long double
8824         type to 128-bit IEEE quad.
8825
8826 2008-01-17  Joel Brobecker  <brobecker@adacore.com>
8827
8828         * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
8829
8830 2008-01-16  Mark Kettenis  <kettenis@gnu.org>
8831
8832         * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.
8833
8834         * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
8835         * value.c: All callers changed.
8836
8837 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
8838
8839         * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
8840         DEPRECATED_STREQ by its expression.
8841         * coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
8842         * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
8843         (scan_xcoff_symtab): Likewise.
8844         * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
8845         * f-lang.c (find_common_for_function): Likewise.
8846         * objc-exp.y (parse_number): Likewise.
8847
8848         * defs.h (DEPRECATED_STREQ): Remove.
8849
8850 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
8851
8852         * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
8853         * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
8854         get_frame_arch to get at the current_architecture. Update AM33_MODE
8855         call.
8856         (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
8857         (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
8858         architecture.
8859         (set_reg_offsets, mn10300_analyze_prologue): Fix indentation.
8860
8861 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
8862
8863         * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
8864         parameter.
8865         * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.
8866
8867         (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
8868         current_gdbarch by gdbarch. Update caller.
8869
8870         * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
8871         (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
8872         the current architecture. Update calls of
8873         amd64_native_gregset_supplies_p.
8874         * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
8875         (amd64bsd_store_inferior_registers): Likewise.
8876
8877 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
8878
8879         * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
8880         Replace current_gdbarch by gdbarch. Update caller.
8881
8882 2008-01-16  Markus Deuling  <deuling@de.ibm.com>
8883
8884         * dbxread.c (repeated_header_complaint, dbx_symfile_init)
8885         (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
8886         (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
8887         (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
8888         (stabsect_build_psymtabs): Fix indentation.
8889
8890 2008-01-15  Michael Snyder  <msnyder@specifix.com>
8891
8892         * corelow.c (core_xfer_partial): Comment, cut/paste error.
8893
8894 2008-01-14  Pierre Muller  <muller@ics.u-strasbg.fr>
8895
8896         * win32-nat.c (win32_create_inferior): Restore code calling
8897         CloseHandle on ProcessInformation structure.
8898
8899 2008-01-13  Nick Hudson  <nick.hudson@dsl.pipex.com>
8900
8901         * configure.ac: Check for void * as 3 argument of ptrace.
8902         * configure: regenerate.
8903
8904 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
8905
8906         * alpha-tdep.c (alpha_heuristic_proc_start)
8907         (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
8908         current_gdbarch by gdbarch.
8909
8910         (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
8911         current architecture by frame_info. Update alpha_heuristic_proc_start
8912         call.
8913
8914         (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
8915         get_frame_arch to get at the current architecture by frame_info. Update
8916         alpha_sigtramp_register_address call.
8917
8918         * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
8919         current_gdbarch by gdbarch. Update caller.
8920         (convert_to_extended, convert_from_extended): Add endianess parameter
8921         for comparison. Update caller.
8922         (arm_extract_return_value, arm_store_return_value): Use
8923         get_regcache_arch to get at the current architecture.
8924
8925         * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
8926         current_gdbarch by gdbarch. Update caller.
8927         (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
8928         gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.
8929
8930         * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
8931         gdbarch as parameter. Update caller.
8932         (h8300_init_frame_cache): Add gdbarch as parameter. Replace
8933         current_gdbarch by gdbarch. Update caller.
8934
8935         * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
8936         update caller. Replace current_gdbarch by gdbarch.
8937
8938         * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
8939         the current architecture. Replace current_gdbarch by gdbarch.
8940         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
8941         (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
8942         expression. Add gdbarch as parameter and replace current_gdbarch with
8943         it. Update caller.
8944         (M6811_TDEP): Remove.
8945         (m68hc11_frame_prev_register): Use get_frame_arch to get at the current
8946         architecture.
8947         (m68hc11_scan_prologue): Add gdbarch as parameter. Replace
8948         current_gdbarch by gdbarch. Update caller.
8949
8950         * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
8951         update caller.
8952         (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
8953         by gdbarch.
8954
8955         * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
8956         caller. Relace current_gdbarch by gdbarch.
8957         (altivec_register_p, spe_register_p): Likewise.
8958         * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
8959         parameter.
8960         * ppc-linux-nat.c (fetch_register, store_register): Update caller of
8961         altivec_register_p and spe_register_p.
8962
8963         * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
8964         caller. Replace current_gdbarch by gdbarch.
8965         (score_analyze_prologue): use get_frame_arch to get at the current
8966         architecture.
8967
8968         * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
8969         * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
8970         current_gdbarch by gdbarch. Update caller.
8971         (sparc_frame_cache): Use get_frame_arch to get at the current
8972         architecture.
8973         * sparce64-tdep.c (sparc64_skip_prologue): Update call of
8974         sparc_analyze_prologue.
8975
8976         * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
8977         parameter.
8978
8979 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
8980
8981         * exec.c: #include "arch-utils.h"
8982          (print_section_info): Use gdbarch_from_bfd to get at the
8983         current architecture. Replace current_gdbarch. Fix indention. Replace
8984         deprecated_print_address_numeric by paddress.
8985         * Makefile.in (exec.o) Add dependency to arch-utils.h.
8986
8987         * valprint.c (val_print_string): Replace
8988         deprecated_print_address_numeric.
8989         * tracepoint.c (trace_mention, scope_info): Likewise.
8990         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
8991         (print_symbol, print_partial_symbols, maintenance_info_psymtabs)
8992         (maintenance_check_symtabs): Likewise.
8993         * symfile.c (list_overlays_command): Likewise.
8994         * stack.c (frame_info, print_block_frame_labels): Likewise.
8995         * printcmd.c (print_address, print_address_demangle)
8996         (address_info): Likewise.
8997         * corefile.c (memory_error): Likewise.
8998         * infcmd.c (jump_command): Likewise.
8999         * breakpoint.c (insert_bp_location, describe_other_breakpoints)
9000         (mention, delete_breakpoint): Likewise.
9001         * c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
9002         * dwarf2read.c (dump_die): Likewise.
9003         * ada-valprint.c (ada_val_print_1): Likewise.
9004         * f-valprint.c (f_val_print): Likewise.
9005         * linux-fork.c (info_forks_command): Likewise.
9006         * m32r-com.c (m32r_load_section, m32r_load)
9007         (m32r_upload_command): Likewise.
9008
9009         * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
9010
9011 2008-01-11  Markus Deuling  <deuling@de.ibm.com>
9012
9013         * gdbarch.sh (skip_prologue): Add gdbarch
9014         as parameter.
9015         * gdbarch.{c,h}: Regenerate.
9016
9017         * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
9018         * amd64-tdep.c (amd64_skip_prologue): Likewise.
9019         * avr-tdep.c (avr_skip_prologue): Likewise.
9020         * cris-tdep.c (cris_skip_prologue): Likewise.
9021         * frv-tdep.c (frv_skip_prologue): Likewise.
9022         * h8300-tdep.c (h8300_skip_prologue): Likewise.
9023         * hppa-tdep.c (hppa_skip_prologue): Likewise.
9024         * i386-tdep.c (i386_skip_prologue): Likewise.
9025         * ia64-tdep.c (ia64_skip_prologue): Likewise.
9026         * iq2000-tdep.c (iq2000_skip_prologue): Likewise.
9027         * m32r-tdep.c (m32r_skip_prologue): Likewise.
9028         * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
9029         * m68k-tdep.c (m68k_skip_prologue): Likewise.
9030         * m88k-tdep.c (m88k_skip_prologue): Likewise.
9031         * mep-tdep.c (mep_skip_prologue): Likewise.
9032         * mips-tdep.c (mips_skip_prologue): Likewise.
9033         * mn10300-tdep.c (mn10300_skip_prologue): Likewise.
9034         * mt-tdep.c (mt_skip_prologue): Likewise.
9035         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
9036         * score-tdep.c (score_skip_prologue): Likewise.
9037         * sh64-tdep.c (sh64_skip_prologue): Likewise.
9038         * sh-tdep.c (sh_skip_prologue): Likewise.
9039         * sparc64-tdep.c (sparc64_skip_prologue): Likewise.
9040         * sparc-tdep.c (sparc32_skip_prologue): Likewise.
9041         * spu-tdep.c (spu_skip_prologue): Likewise.
9042         * v850-tdep.c (v850_skip_prologue): Likewise.
9043         * vax-tdep.c (vax_skip_prologue): Likewise.
9044         * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
9045         * xtensa-tdep.c (xtensa_skip_prologue): Likewise.
9046
9047         * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
9048         current_gdbarch by gdbarch.
9049         * m32c-tdep.c (m32c_skip_prologue): Likewise.
9050         * s390-tdep.c (s390_skip_prologue): Likewise.
9051
9052 2008-01-10  Doug Evans  <dje@google.com>
9053
9054         * defs.h (struct continuation_arg): Fix typo in comment.
9055         * target.c (target_translate_tls_address): Fix comment spelling error.
9056
9057 2008-01-09  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9058
9059         * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
9060         (DOUBLEST_SCAN_FORMAT): Likewise.
9061         * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
9062         * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
9063         * c-exp.y (parse_number): Likewise.
9064         * jv-exp.y (parse_number): Likewise.
9065         * objc-exp.y (parse_number): Likewise.
9066         * p-exp.y (parse_number): Likewise.
9067
9068 2008-01-09  Joel Brobecker  <brobecker@adacore.com>
9069
9070         * gdbtypes.c (create_array_type): Add handling of null Ada arrays.
9071         (check_typedef): Likewise.
9072
9073 2008-01-09  Luis Machado  <luisgpm@br.ibm.com>
9074
9075         * printcmd.c (printf_command): Add seen_big_h, seen_big_d and
9076         seen_double_big_d, treat the new H, D, and DD modifiers as length
9077         modifiers.
9078
9079 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
9080
9081         * dwarf2read.c (read_enumeration_type): Add comment.
9082
9083 2008-01-08  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9084
9085         * config.in: Regenerate.
9086
9087 2008-01-08  Joel Brobecker  <brobecker@adacore.com>
9088
9089         * ada-lang.c (ada_convert_actual): Renames convert_actual.
9090         Make non-static.
9091         (ada_convert_actuals): Delete.
9092         * ada-lang.h (ada_convert_actual): Add declaration.
9093         (ada_convert_actuals): Remove declaration.
9094         * infcall.c: #include "ada-lang.h".
9095         (value_arg_coerce): Add new parameter sp.  Update function
9096         documetnation.  Add handling of Ada function call parameters.
9097         * Makefile.in (infcall.o): Update dependencies.
9098
9099 2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>
9100
9101         * ada-lang.c (ensure_lval): Fix value lval kind.
9102         (convert_actual): Add handling for arguments passed by reference.
9103
9104 2008-01-08  Doug Evans  <dje@google.com>
9105
9106         * dbxread.c (read_dbx_symtab): Fix indentation.
9107
9108 2008-01-07  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9109
9110         * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
9111         (valarith.o): Depend on dfp.h.
9112         (valops.o): Likewise.
9113         * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
9114         (set_decnumber_context): New function.
9115         (decimal_check_errors): Likewise.
9116         (decimal_from_number): Likewise.
9117         (decimal_to_number): Likewise.
9118         (decimal_from_string): Use set_decnumber_context and
9119         decimal_check_errors.
9120         (decimal_from_integral): New function.
9121         (decimal_from_floating): Likewise.
9122         (decimal_to_double): Likewise.
9123         (promote_decimal): Likewise.
9124         (decimal_binop): Likewise.
9125         (decimal_is_zero): Likewise.
9126         (decimal_compare): Likewise.
9127         (decimal_convert): Likewise.
9128         * dfp.h (decimal_from_integral): New prototype.
9129         (decimal_from_floating): Likewise.
9130         (decimal_to_double): Likewise.
9131         (decimal_binop): Likewise.
9132         (decimal_is_zero): Likewise.
9133         (decimal_compare): Likewise.
9134         (decimal_convert): Likewise.
9135         * eval.c (evaluate_subexp_standard): Remove expect_type argument from
9136         call to value_from_decfloat.
9137         * valarith.c: Include dfp.h.
9138         (value_args_as_decimal): New function.
9139         (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
9140         (value_logical_not): Likewise.
9141         (value_equal): Likewise.
9142         (value_less): Likewise.
9143         (value_pos): Likewise.
9144         (value_neg): Formatting fix.
9145         * valops.c: Include dfp.h.
9146         (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
9147         * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
9148         (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
9149         (value_from_decfloat): Remove expect_type argument.
9150         * value.h (value_from_decfloat): Update prototype.
9151
9152 2008-01-07  Vladimir Prus  <vladimir@codesourcery.com>
9153
9154         Ignore change in name of dynamic linker during
9155         execution on Solaris.  This also unbreaks pending breakpoints.
9156
9157         * solist.h (struct target_so_ops): New field same.
9158         * solib-svr4.c (svr4_same): New.
9159         (_initialize_svr4_solib): Register svr4_same.
9160         * solib.c (update_solib_list): Use ops->same, if available.
9161
9162 2008-01-06  Christopher Faylor  <me+cygwin@cgf.cx>
9163
9164         * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
9165         when using MS-DOS paths.
9166
9167 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
9168
9169         * NEWS: Mention --pid and --core command line behaviour changes.
9170
9171 2008-01-05  Pedro Alves  <pedro@codesourcery.com>
9172
9173         * main.c (captured_main): Remove 'count' varible and the
9174         ALIGN_STACK_ON_ENTRY block that used it.  Error out if --core and
9175         --pid options were issued simultaneously.  If an explicit pid
9176         option was passed, don't fallback to core file.  Detect extra
9177         arguments better in the presence of explicit pid or core
9178         arguments.
9179
9180 2008-01-05  Joel Brobecker  <brobecker@adacore.com>
9181
9182         * ada-lang.c (ada_which_variant_applies): Correctly compute
9183         the value of the discriminant when the variant record is packed.
9184
9185 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
9186
9187         * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
9188         that are used to differentiate homonyms.
9189
9190 2008-01-04  Jerome Guitton  <guitton@adacore.com>
9191
9192         * ada-lang.c (decode_packed_array_type): Avoid a seg fault
9193         when the type is an anonymous pointer type.
9194         (ada_check_typedef): Avoid a seg fault when the type is null.
9195         * ada-typeprint.c (print_array_type): Add support for pointer
9196         to packed arrays.
9197
9198 2008-01-04  Paul N. Hilfinger  <hilfinger@adacore.com>
9199
9200         * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.
9201
9202 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
9203
9204         * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
9205         EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.
9206
9207 2008-01-04  Joel Brobecker  <brobecker@adacore.com>
9208
9209         * ada-exp.y (chop_separator): New function.
9210         (write_selectors): Rewrite to re-use chop_separator.
9211         (ada_nget_field_index, get_symbol_field_type): New functions.
9212         (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
9213         expressions.
9214
9215 2008-01-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9216
9217         * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
9218         of SYMBOL_VALUE when working with function symbols.
9219
9220 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
9221
9222         * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
9223         expressions.  These expressions do not need to be rewriten.
9224
9225 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
9226
9227         * dwarf2read.c (read_enumeration_type): Flag type as stub if
9228         the given die is a declaration.
9229
9230 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
9231
9232         * ada-lang.c (ada_array_bound_from_type): Make non-static.
9233         Handle properly the case when the index type is an enumerated type.
9234         Do not return the subtype of the bounds type, just return the
9235         bounds type directly - this is not needed and is more consistent
9236         with what we do for arrays when no XA parallel type exists.
9237
9238 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
9239
9240         * ada-lang.c (static_unwrap_type): Add forward declaration.
9241         (template_to_static_fixed_type): Fields of dynamic types sometimes
9242         also need to be unwrapped. Take this into account.
9243         (ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
9244         (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
9245         * ada-typeprint.c (ada_print_type): Get the typename from
9246         the original type, not the base type.
9247
9248 2008-01-03  Jerome Guitton  <guitton@adacore.com>
9249
9250         * ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
9251         (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
9252         Update calls to ada_to_fixed_type.
9253         (ada_template_to_fixed_record_type_1): Ditto, but without looking
9254         for the tag.
9255         (ada_to_fixed_type): Add check_tag parameter; do not look for
9256         tag if null.  When looking for a tag, use a fixed record type.
9257         * ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
9258         * ada-valprint.c (printable_val_type, ada_value_print): Update
9259         calls to ada_to_fixed_type.
9260
9261 2008-01-03  Luis Machado  <luisgpm@br.ibm.com>
9262
9263         * doublest.c (convert_floatformat_to_doublest): Call
9264         floatformat_to_doublest instead of floatformat_to_double and use
9265         DOUBLEST variables.
9266         (convert_doublest_to_floatformat): Call floatformat_from_doublest
9267         instead of floatformat_from_double and use DOUBLEST variables.
9268
9269 2008-01-03  Nick Hudson  <nick.hudson@dsl.pipex.com>
9270
9271         * MAINTAINERS (Write After Approval): Add self.
9272
9273 2008-01-03  Joel Brobecker  <brobecker@adacore.com>
9274
9275         * symfile.c (set_initial_language): Make non-static.
9276         * symfile.h (set_initial_language): Add declaration.
9277         * language.c: #include "symfile.h".
9278         (set_language): Call set_initial_language if the frame language
9279         could not be determined.
9280
9281 2008-01-03  Paul N. Hilfinger  <hilfinger@adacore.com>
9282
9283         * eval.c (evaluate_subexp_for_address): Provide frame address to
9284         locate_var_value only if it will be needed.
9285
9286 2008-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
9287
9288         * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.
9289
9290 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
9291
9292         * ada-lang.c (ada_evaluate_subexp): Modify the value returned
9293         when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
9294         This is needed to make sure that any other treatment applied
9295         to the resulting value does not fail for spurious reason,
9296         such as trying to take the address of this value.
9297
9298 2008-01-02  Joel Brobecker  <brobecker@adacore.com>
9299
9300         * ada-lang.c (ada_value_equal): Dereference reference types when
9301         comparing arrays.
9302
9303 2008-01-01  Daniel Jacobowitz  <dan@codesourcery.com>
9304
9305         Updated copyright notices for most files.
9306
9307 2008-01-01  Christopher Faylor  <me+gdb@cgf.cx>
9308
9309         * win32-nat.c (psapi_module_handle): Remove static.
9310         (get_module_name): Rename from psapi_get_dll_name.  Revamp slightly to
9311         return first module found if base_address is zero.  Don't initialize
9312         psapi function pointers here.  Convert to cygwin paths when
9313         appropriate.
9314         (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
9315         executable name.  Use get_module_name when that fails or when
9316         !__CYGWIN__.
9317         (_initialize_psapi): New function.  Initialize psapi stuff before it is
9318         needed or issue a warning if it is not found.  Move psapi_module_handle
9319         here.
9320
9321 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
9322
9323         * ada-lang.c (ada_remove_trailing_digits): New function.
9324         (ada_remove_po_subprogram_suffix): New function.
9325         (ada_decode): Improve. Move the description of the algorithm
9326         directly inside the code, instead of in the function global
9327         description.
9328
9329 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
9330
9331         * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
9332         and always print the dereferenced value.
9333
9334 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
9335
9336         * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
9337         of the case where the first argument is a reference.
9338         (ada_evaluate_subexp, case BINOP_ADD): Likewise.
9339
9340 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
9341
9342         Implement support for Ada interface types.
9343
9344         * ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
9345         (ada_is_ignored_field): Ignore fields that are a dispatch table
9346         of a tagged type.
9347
9348 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
9349
9350         * top.c (print_gdb_version): Update copyright year.
9351
9352 2008-01-01  Joel Brobecker  <brobecker@adacore.com>
9353
9354         * ChangeLog-2007: New ChangeLog rotation.
9355         * ChangeLog: Reset for 2008.
9356         * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
9357         ChangeLog-2007.
9358
9359 For older changes see ChangeLog-2007.
9360 \f
9361 Local Variables:
9362 mode: change-log
9363 left-margin: 8
9364 fill-column: 74
9365 version-control: never
9366 coding: utf-8
9367 End: