6b734f71f44cc563a191836cc878b8e9a47d35cf
[external/binutils.git] / gdb / ChangeLog
1 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
2
3         Revert 2009-08-07 changes for PR gdb/8869:
4
5         * language.c (set_language_command): Strip whitespace.
6         (set_type_command): Likewise.
7         (set_range_command): Likewise.
8
9         * language.c (language_completer): New function.
10         (range_or_type_completer): New function.
11         (case_completer): New function.
12         (_initialize_language): Set completers.
13         * cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
14         command.
15         (add_setshow_string_noescape_cmd): Likewise.
16         (add_setshow_integer_cmd): Likewise.
17         (add_setshow_uinteger_cmd): Likewise.
18         (add_setshow_zinteger_cmd): Likewise.
19         (add_setshow_zuinteger_cmd): Likewise.
20         * command.h (add_setshow_string_cmd,
21         add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
22         add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
23
24 2009-08-12  Michael Snyder  <msnyder@vmware.com>
25
26         * remote.c (remote_add_inferior): Remove unused local.
27         (remote_add_thread): Ditto.
28         (read_ptid): Ditto.
29         (remote_current_thread): Ditto.
30         (remote_stop_ns): Ditto.
31         (remote_parse_stop_reply): Ditto.
32         (remote_get_pending_stop_replies): Ditto.
33         (remote_wait_ns): Ditto.
34         (remote_wait_as): Ditto.
35         (send_g_packet): Ditto.
36         (remote_fetch_registers): Ditto.
37         (store_register_using_P): Ditto.
38         (remote_store_registers): Ditto.
39         (remote_remove_breakpoint): Ditto.
40         (remote_write_qxfer): Ditto.
41         (remote_read_qxfer): Ditto.
42
43 2009-08-11  Tom Tromey  <tromey@redhat.com>
44
45         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Make a cleanup.
46         (dwarf2_loc_desc_needs_frame): Likewise.
47         * dwarf2expr.h (make_cleanup_free_dwarf_expr_context): Declare.
48         * dwarf2expr.c (free_dwarf_expr_context_cleanup): New function.
49         (make_cleanup_free_dwarf_expr_context): Likewise.
50         * dwarf2-frame.c (execute_stack_op): Make a cleanup.
51
52 2009-08-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
53
54         * objfiles.c (gdb_bfd_unref): Use the bfd_usrdata accessor.
55         * solib.c (symbol_add_stub): Likewise.
56         * symfile.c (symfile_bfd_open): Assert BFD_USRDATA is NULL.
57
58 2009-08-10  Paul Pluzhnikov  <ppluzhnikov@google.com>
59
60         * objfiles.c (qsort_cmp): Remove assert.
61         (preferred_obj_section): New function.
62         (update_section_map): Filter duplicates.
63         
64 2009-08-10  Tristan Gingold  <gingold@adacore.com>
65
66         * solib-darwin.c (find_program_interpreter): Simplify the code by
67         looking up for the load_dylinker command instead of reading the
68         corresponding (but deprecated) section.
69         (darwin_solib_create_inferior_hook): Adjust: do not free the
70         interpreter path.
71
72 2009-08-10  Tristan Gingold  <gingold@adacore.com>
73
74         * i386-darwin-tdep.c (i386_m128_p): New function.
75         (i386_darwin_arg_type_alignment): Ditto.
76         (i386_darwin_push_dummy_call): Ditto.
77         (i386_darwin_init_abi): Define Darwin specific push_dummy_call.
78         Adjust long_double size.  Adjust pc offset in setjump buffer.
79
80 2009-08-10  Hui Zhu  <teawater@gmail.com>
81
82         Add Linux AMD64 process record support.
83
84         * amd64-linux-tdep.c (amd64_linux_record_tdep): New variable.
85         This struct has the argument for the function
86         "record_linux_system_call".
87         (amd64_linux_syscall_record): New function. Parse the
88         system call instruction and call function
89         "record_linux_system_call" to record execute log.
90         (i386_linux_init_abi): Initialize "amd64_linux_record_tdep".
91         Set "amd64_linux_syscall_record" to "i386_syscall_record".
92
93 2009-08-10  Hui Zhu  <teawater@gmail.com>
94
95         Add process record Linux system call 64 bits support.
96
97         * linux-record.h (linux_record_tdep): Add size_pointer,
98         size_size_t, size_iovec and arg6.  Change the values of
99         size_int, size_long and size_ulong to
100         gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT,
101         gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT,
102         gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT.
103         * i386-linux-tdep.c (i386_linux_init_abi): Ditto.
104         (i386_linux_intx80_sysenter_record): Add a check for system
105         call number.
106         * linux-record.c (record_linux_system_call): Make this
107         function support 64 bits.
108
109 2009-08-10  Hui Zhu  <teawater@gmail.com>
110
111         Add AMD64 process record instruction set support.
112
113         * i386-tdep.h (gdbarch_tdep): Add record_regmap for registers
114         because the AMD64's registers order in GDB is not same with
115         I386 instructions.
116         Add i386_syscall_record to be the syscall function handle
117         interface.
118         (record_i386_regnum): Number for record_regmap.
119         * i386-tdep.c (OT_QUAD): For 64 bits.
120         (i386_record_s): Add rex_x, rex_b, rip_offset and
121         popl_esp_hack for AMD64 instruction set. And regmap for
122         record_regmap.
123         (i386_record_lea_modrm_addr): Support AMD64 instruction set
124         64 bits lea.
125         (i386_record_lea_modrm): Ditto.
126         (i386_record_push): New function.  Record the execution log
127         of push.
128         (I386_RECORD_ARCH_LIST_ADD_REG): New macro to record the
129         register.
130         (i386_process_record): Support AMD64 instruction set.
131         * amd64-tdep.c (amd64_record_regmap): For record_regmap.
132         (amd64_init_abi): Set amd64_record_regmap to record_regmap.
133
134 2009-08-08  Pedro Alves  <pedro@codesourcery.com>
135
136         * bfd-target.c (struct target_bfd_data): New.
137         (target_bfd_xfer_partial): Adjust to get at the section table from
138         the new structure.
139         (target_bfd_get_section_table): Ditto.
140         (target_bfd_xclose): Ditto.  Get the bfd pointer from the
141         target_bfd_data structure, from the section table.
142         (target_bfd_reopen): Store a struct target_bfd_data in the
143         target_ops to_data field, instead of a target_section_table.
144
145 2009-08-08  Aleksandar Ristovski  <aristovski@qnx.com>
146             Hui Zhu  <teawater@gmail.com>
147
148         * record.c (record_store_registers): Remove unused variable.
149
150 2009-08-07  Tom Tromey  <tromey@redhat.com>
151
152         * language.c (set_language_command): Strip whitespace.
153         (set_type_command): Likewise.
154         (set_range_command): Likewise.
155
156 2009-08-07  Tom Tromey  <tromey@redhat.com>
157
158         PR gdb/8869:
159         * language.c (language_completer): New function.
160         (range_or_type_completer): New function.
161         (case_completer): New function.
162         (_initialize_language): Set completers.
163         * cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
164         command.
165         (add_setshow_string_noescape_cmd): Likewise.
166         (add_setshow_integer_cmd): Likewise.
167         (add_setshow_uinteger_cmd): Likewise.
168         (add_setshow_zinteger_cmd): Likewise.
169         (add_setshow_zuinteger_cmd): Likewise.
170         * command.h (add_setshow_string_cmd,
171         add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
172         add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
173
174 2009-08-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
175         
176         gold/10400
177         * dwarf2-frame.c (qsort_fde_cmp): Use stable sort.      
178         
179 2009-08-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
180
181         * dwarf2-frame.c (struct dwarf2_cie): Remove 'next'.
182         (struct dwarf2_cie_table): New.
183         (struct dwarf2_fde): Remove 'next'.
184         (struct dwarf2_fde_table): New.
185         (struct comp_unit): Remove 'cie'.
186         (bsearch_cie_cmp, bsearch_fde_cmp): New function.
187         (find_cie, dwarf2_frame_find_fde): Use bsearch.
188         (add_cie, add_fde): Use array instead of linked list.
189         (decode_frame_entry, decode_frame_entry_1): New parameters.
190         (qsort_fde_cmp): New function.
191         (dwarf2_build_frame_info): Adjust.
192         
193 2009-08-06  Don Lee <don.lee@sunplusct.com>
194
195         * score-tdep.c: Support a new Sunplus CT S+core variant, S+core 3.
196         * score-tdep.h: Ditto.
197         * NEWS: Ditto.
198         * configure.tgt: Test do we have a simulator.
199         * MAINTAINERS: Add myself under target score
200
201 2009-08-06  Nick Roberts  <nickrob@snap.net.nz>
202
203         * utils.c (defaulted_query): Don't ask for confirmation if server
204         prefix is used.
205
206 2009-08-05  Tom Tromey  <tromey@redhat.com>
207
208         * spu-tdep.h (SPUADDR_SPU): Cast result to int.
209
210 2009-08-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
211
212         * objfiles.h (OBJF_KEEPBFD): Delete.
213         (gdb_bfd_unref): New prototype.
214         * objfiles.c (gdb_bfd_unref): New function.
215         (free_objfile): Call gdb_bfd_unref.
216         * solib.c (free_so): Likewise.
217         (symbol_add_stub): Set refcount.
218
219 2009-08-04  Hui Zhu  <teawater@gmail.com>
220             Michael Snyder  <msnyder@vmware.com>
221
222         * record.c (record_mem_entry): New field 'mem_entry_not_accessible'.
223         (record_arch_list_add_mem): Initialize 'mem_entry_not_accessible'.
224         (record_wait): Set 'mem_entry_not_accessible' flag if target
225         memory not readable.  Don't try to change target memory if
226         'mem_entry_not_accessible' is set.
227
228 2009-08-03  Richard Guenther  <rguenther@suse.de>
229             Jan Kratochvil  <jan.kratochvil@redhat.com>
230
231         Fix memory corruption on reread of file through a symbolic link.
232         * symfile.c (find_separate_debug_file): Initialize CANON_NAME earlier.
233         Allocate DEBUGFILE with length based on CANON_NAME.  Free CANON_NAME on
234         all the return paths.
235
236 2009-08-03  Jim Ingham  <jingham@apple.com>
237             Vladimir Prus  <vladimir@codesourcery.com>
238
239         Implement -break-commands
240
241         * breakpoint.c (get_breakpoint, breakpoint_set_commands): New.
242         (commands_command): Use breakpoint_set_commands.
243         * breakpoint.h (get_breakpoint, breakpoint_set_commands): Declare.
244
245         * mi/mi-cmds.h (mi_cmd_break_commands): New.
246         * mi/mi-cmds.c: Register -break-commands.
247         * mi/mi-cmd-break.c (mi_cmd_break_commands, mi_read_next_line)
248         (mi_command_line_array, mi_command_line_array_cnt)
249         (mi_command_line_array_ptr): New.
250
251 2009-08-03  Jim Ingham  <jingham@apple.com>
252             Vladimir Prus  <vladimir@codesourcery.com>
253
254         Refactor reading of commands
255
256         * defs.h (read_command_lines_1): Declare.
257         * cli/cli-script.c (read_next_line): Only return string,
258         do not process.
259         (process_next_line): New, extracted from read_next_line.
260         (recurse_read_control_structure): Take a function pointer to the
261         read function.
262         (get_command_line) Pass the read_next_line as reader function
263         into recurse_read_control_structure.
264         (read_command_lines_1): New, extracted from...
265         (read_command_lines): ...here.
266
267 2009-07-31  Kazu Hirata  <kazu@codesourcery.com>
268
269         * procfs.c (proc_set_current_signal): Populate mysinfo before
270         copying it to arg.
271         (proc_clear_current_signal): Likewise.
272         (proc_set_watchpoint): Populate pwatch before copying it to arg.
273
274 2009-07-31  Michael Snyder  <msnyder@vmware.com>
275
276         * remote.c (store_register_using_P): Call putpkt and getpkt
277         directly instead of calling remote_send.
278         (store_registers_using_G): Ditto.
279         (fetch_register_using_p): Ditto.
280
281         * remote.c (store_register_using_P): Make error msg more verbose.
282         (store_registers_using_G): Ditto.
283         (fetch_register_using_p): Ditto.
284
285 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
286
287         * spu-tdep.c: Include "infcall.h".
288         (spu_address_class_type_flags): New function.
289         (spu_address_class_type_flags_to_name): Likewise.
290         (spu_address_class_name_to_type_flags): Likewise.
291         (spu_pointer_to_address): Handle __ea pointers.
292         (spu_auto_flush_cache_p): New static variable.
293         (spu_objfile_from_frame): New function.
294         (flush_ea_cache, spu_attach_normal_stop): Likewise.
295         (show_spu_auto_flush_cache): Likewise.
296         (spu_gdbarch_init): Install address class handlers.
297         (_initialize_spu_tdep): Attach to normal_stop observer.
298         Install "set spu auto-flush-cache" / "show spu auto-flush-cache"
299         commands.
300
301         * NEWS: Mention "set/show spu auto-flush-cache" commands.
302
303 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
304
305         * spu-tdep.c: Include "block.h".
306         (setspucmdlist, showspucmdlist): New static variables.
307         (spu_stop_on_load_p): Likewise.
308         (spu_catch_start): New function.
309         (show_spu_command, set_spu_command): New functions.
310         (show_spu_stop_on_load): Likewise.
311         (_initialize_spu_tdep): Attach spu_catch_start to new_objfile observer.
312         Install "set spu" / "show spu" prefix command handler.
313         Install "set spu stop-on-load" / "show spu stop-on-load" command.
314
315         * NEWS: Mention "set/show spu stop-on-load" commands.
316
317 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
318
319         * ppc-linux-tdep.c: Include "solib.h", "solist.h", "exceptions.h",
320         "arch-utils.h", and "spu-tdep.h".
321         (spu_context_objfile, spe_context_lm_addr, spe_context_offset):
322         New static variables.
323         (spe_context_cache_ptid, spe_context_cache_address): Likewise.
324         (ppc_linux_spe_context_lookup): New function.
325         (ppc_linux_spe_context_inferior_created): Likewise.
326         (ppc_linux_spe_context_solib_loaded): Likewise.
327         (ppc_linux_spe_context_solib_unloaded): Likewise.
328         (ppc_linux_spe_context): Likewise.
329         (struct ppu2spu_cache, struct ppu2spu_data): New data types.
330         (ppu2spu_prev_arch, ppu2spu_this_id, ppu2spu_prev_register,
331         ppu2spu_unwind_register, ppu2spu_sniffer,
332         ppu2spu_dealloc_cache): New functions.
333         (ppu2spu_unwind): New static variable.
334         (ppc_linux_init_abi): Install cross-architecture unwinder.
335         (_initialize_ppc_linux_tdep): Attach to observers.
336
337         * spu-tdep.c (struct spu2ppu_cache): New data type.
338         (spu2ppu_prev_arch, spu2ppu_this_id, spu2ppu_prev_register,
339         spu2ppu_sniffer, spu2ppu_dealloc_cache): New functions.
340         (spu2ppu_unwind): New static variable.
341         (spu_gdbarch_init): Install cross-architecture unwinder.
342
343 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
344
345         * target.h (enum strata): New value arch_stratum.
346         * target.c (target_require_runnable): Skip arch_stratum targets.
347
348         * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*): Add
349         solib-spu.o and spu-multiarch.o to gdb_target_obs.
350         * Makefile.in (ALL_TARGET_OBS): Add solib-spu.o and spu-multiarch.o.
351         (ALLDEPFILES): Add solib-spu.c and spu-multiarch.c.
352
353         * solib-spu.c: New file.
354         * solib-spu.h: New file.
355         * spu-multiarch.c: New file.
356
357         * spu-tdep.h (SPUADDR, SPUADDR_SPU, SPUADDR_ADDR): New macros.
358
359         * spu-tdep.c (struct gdbarch_tdep): New member id.
360         (spu_gdbarch_id): New function.
361         (spu_lslr): New function.
362
363         (spu_address_to_pointer): New function.
364         (spu_pointer_to_address): Support SPU ID address encoding.  Use
365         spu_gdbarch_id and spu_lslr.
366         (spu_integer_to_address): Likewise.
367         (spu_frame_unwind_cache): Update for encoded addresses.
368         (spu_unwind_pc, spu_unwind_sp): Likewise.
369         (spu_read_pc, spu_write_pc): Likewise.
370         (spu_push_dummy_call): Likewise.
371         (spu_software_single_step): Likewise.
372         (spu_get_longjmp_target): Likewise.
373         (spu_overlay_update_osect): Likewise.
374
375         (spu_dis_asm_print_address): New function.
376         (gdb_print_insn_spu): Likewise.
377
378         (spu_gdbarch_init): Store SPU ID in tdep structure.
379         Install spu_address_to_pointer and gdb_print_insn_spu.
380
381         * ppc-linux-tdep.c: Include "observer.h", "auxv.h", "elf/common.h"
382         and "solib-spu.h".
383         (ppc_linux_entry_point_addr): New static variable.
384         (ppc_linux_inferior_created): New function.
385         (ppc_linux_displaced_step_location): Likewise.
386         (ppc_linux_init_abi): Enable Cell/B.E. support if supported
387         by the target.
388         (_initialize_ppc_linux_tdep): Attach to inferior_created observer.
389
390         * NEWS: Mention multi-architecture and Cell/B.E. debugging
391         capabilities.
392
393 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
394
395         * linux-nat.c: Include <sys/vfs.h>.
396         (SPUFS_MAGIC): Define.
397         (spu_enumerate_spu_ids): New function.
398         (linux_proc_xfer_spu): New function.
399         (linux_xfer_partial): Handle TARGET_OBJECT_SPU.
400
401         (iterate_over_spus): New function.
402         (struct linux_spu_corefile_data): New data type.
403         (linux_spu_corefile_callback): New function.
404         (linux_spu_make_corefile_notes): New function.
405         (linux_nat_make_corefile_notes): Call it.
406
407         * corelow.c (struct spuid_list): New data type.
408         (add_to_spuid_list): New function.
409         (core_xfer_partial): Handle TARGET_OBJECT_SPU.
410
411 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
412
413         * features/Makefile: Allow sub-platform specific expedite settings.
414         (WHICH): Add rs6000/powerpc-cell32l and rs6000/powerpc-cell64l.
415         (rs6000/powerpc-cell32l-expedite): Define.
416         (rs6000/powerpc-cell64l-expedite): Likewise.
417         * features/rs6000/powerpc-cell32l.xml: New file.
418         * features/rs6000/powerpc-cell64l.xml: New file.
419         * features/rs6000/powerpc-cell32l.c: New generated file.
420         * features/rs6000/powerpc-cell64l.c: New generated file.
421
422         * regformats/rs6000/powerpc-cell32l.dat: New generated file.
423         * regformats/rs6000/powerpc-cell64l.dat: New generated file.
424
425         * config/djgpp/fnchange.lst: Add mappings for new files.
426
427         * ppc-linux-tdep.h (tdesc_powerpc_cell32l): Add prototype.
428         (tdesc_powerpc_cell64l): Likewise.
429         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-cell32l.c"
430         and "features/rs6000/powerpc-cell64l.c".
431         (_initialize_ppc_linux_tdep): Initialize target descriptions.
432         (ppc_linux_spu_section): New function.
433         (ppc_linux_core_read_description): Detect Cell/B.E. core files.
434         * ppc-linux-nat.c (PPC_FEATURE_CELL): Define.
435         (ppc_linux_read_description): Detect Cell/B.E. architecture.
436
437         * rs6000-tdep.c (rs6000_gdbarch_init): Do not trust BFD wordsize
438         if exec file is not PowerPC architecture.
439
440 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
441
442         * features/gdb-target.dtd (target): Accept optional
443         <compatible> elements.
444         (compatible): Define element.
445
446         * target-descriptions.h (tdesc_compatible_p): New.
447         (tdesc_add_compatible): New.
448         * target-descriptions.c (arch_p): New VEC_P type.
449         (struct target_desc): New member compatible.
450         (free_target_description): Handle it.
451         (maint_print_c_tdesc_cmd): Likewise.
452         (tdesc_compatible_p): New function.
453         (tdesc_add_compatible): New function.
454
455         * xml-tdesc.c (tdesc_end_compatible): New function.
456         (target_children): Handle <compatible> element.
457
458         * arch-utils.c (choose_architecture_for_target): Accept target
459         description instead of BFD architecture as input.  Query target
460         description for compatible architectures.
461         (gdbarch_info_fill): Update call.
462
463         * NEWS: Mention <compatible> element of target descriptions.
464
465 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
466
467         * breakpoint.c (remove_breakpoints): If removing one breakpoint
468         location fails, still continue to remove other locations.
469         (remove_hw_watchpoints): Likewise.
470         (detach_breakpoints): Likewise.
471
472 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
473
474         * breakpoint.h (enum enable_state): Add bp_startup_disabled.
475         (disable_breakpoints_before_startup): Add prototype.
476         (enable_breakpoints_after_startup): Likewise.
477
478         * breakpoint.c (executing_startup): New static variable.
479         (describe_other_breakpoints): Handle bp_startup_disabled.
480         (check_duplicates_for): Likewise.
481         (disable_breakpoints_before_startup): New function.
482         (enable_breakpoints_after_startup): New function.
483         (create_breakpoint): Mark new breakpoints as bp_startup_disabled
484         if executing_startup flag is true.
485         (break_command_really): Likewise.
486         (breakpoint_re_set_one): Skip bp_startup_disabled breakpoints.
487
488 2009-07-31  Julian Brown  <julian@codesourcery.com>
489
490         * arm-linux-tdep.c (arch-utils.h, inferior.h, gdbthread.h, symfile.h):
491         Include files.
492         (arm_linux_cleanup_svc, arm_linux_copy_svc): New.
493         (cleanup_kernel_helper_return, arm_catch_kernel_helper_return): New.
494         (arm_linux_displaced_step_copy_insn): New.
495         (arm_linux_init_abi): Initialise displaced stepping callbacks.
496         * arm-tdep.c (DISPLACED_STEPPING_ARCH_VERSION): New macro.
497         (ARM_NOP): New.
498         (displaced_read_reg, displaced_in_arm_mode, branch_write_pc)
499         (bx_write_pc, load_write_pc, alu_write_pc, displaced_write_reg)
500         (insn_references_pc, copy_unmodified, cleanup_preload, copy_preload)
501         (copy_preload_reg, cleanup_copro_load_store, copy_copro_load_store)
502         (cleanup_branch, copy_b_bl_blx, copy_bx_blx_reg, cleanup_alu_imm)
503         (copy_alu_imm, cleanup_alu_reg, copy_alu_reg)
504         (cleanup_alu_shifted_reg, copy_alu_shifted_reg, cleanup_load)
505         (cleanup_store, copy_extra_ld_st, copy_ldr_str_ldrb_strb)
506         (cleanup_block_load_all, cleanup_block_store_pc)
507         (cleanup_block_load_pc, copy_block_xfer, cleanup_svc, copy_svc)
508         (copy_undef, copy_unpred): New.
509         (decode_misc_memhint_neon, decode_unconditional)
510         (decode_miscellaneous, decode_dp_misc, decode_ld_st_word_ubyte)
511         (decode_media, decode_b_bl_ldmstm, decode_ext_reg_ld_st)
512         (decode_svc_copro, arm_process_displaced_insn)
513         (arm_displaced_init_closure, arm_displaced_step_copy_insn)
514         (arm_displaced_step_fixup): New.
515         (arm_gdbarch_init): Initialise max insn length field.
516         * arm-tdep.h (DISPLACED_TEMPS, DISPLACED_MODIFIED_INSNS): New
517         macros.
518         (displaced_step_closure, pc_write_style): New.
519         (arm_displaced_init_closure, displaced_read_reg)
520         (arm_process_displaced_insn, arm_displaced_init_closure)
521         (displaced_read_reg, displaced_write_reg, arm_displaced_step_copy_insn)
522         (arm_displaced_step_fixup): Add prototypes.
523
524 2009-07-31  Pedro Alves  <pedro@codesourcery.com>
525             Julian Brown  <julian@codesourcery.com>
526
527         * infrun.c (displaced_step_fixup): If this is a software
528         single-stepping arch, don't tell the target to single-step.
529         (maybe_software_singlestep): Return 0 if we're using displaced
530         stepping.
531         (resume): If this is a software single-stepping arch, and
532         displaced-stepping is enabled, use it for all single-step
533         requests.
534
535 2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
536
537         * Makefile.in (ACLOCAL, ACLOCAL_AMFLAGS, aclocal_m4_deps)
538         (AUTOCONF, configure_deps, AUTOHEADER): New variables.
539         ($(srcdir)/aclocal.m4, $(srcdir)/configure, $(srcdir)/config.in)
540         (am--refresh): New rules.
541         (stamp-h, config.status): List config.in and configure including
542         $(srcdir)/ prefix.
543         * aclocal.m4: Regenerate.
544         * configure: Regenerate.
545
546 2009-07-30  Thomas Schwinge  <tschwinge@gnu.org>
547
548         * gnu-nat.c (add_task_commands) <stopped>: Register the correct
549         callback function.
550
551 2009-07-30  H.J. Lu  <hongjiu.lu@intel.com>
552
553         * ia64-tdep.c (ia64_access_reg): Correct paddress.
554
555 2009-07-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
556
557         Replace public function varobj_list by all_root_varobjs iterator.
558         * mi/mi-cmd-var.c (struct mi_cmd_var_update, mi_cmd_var_update_iter):
559         New.
560         (mi_cmd_var_update): Replace the varobj_list call by all_root_varobjs.
561         Remove the variables rootlist, cr.  New variable data.
562         * varobj.c (rootcount, varobj_list): Remove.
563         (install_variable, uninstall_variable): Remove the rootcount updates.
564         (all_root_varobjs): New function.
565         (varobj_invalidate): Use the all_root_varobjs call.  Move the code to...
566         (varobj_invalidate_iter): ... a new function.
567         * varobj.h (varobj_list): Remove the prototype.
568         (all_root_varobjs): New prototype.
569
570 2009-07-29  Paul Pluzhnikov  <ppluzhnikov@google.com>
571
572         PR gdb/6817
573         * dbxread.c (read_dbx_symtab): Reduce stack use.
574         
575 2009-07-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
576
577         Fix gcc-4.5 HEAD warnings.
578         * cp-name-parser.y (%union <typed_val_int>, %token GLOBAL)
579         (GLOBAL_CONSTRUCTORS, GLOBAL_DESTRUCTORS, demangler_special <GLOBAL>):
580         Remove.
581         (yylex <"global constructors keyed to ">)
582         (yylex <"global destructors keyed to ">): Base it on DEMANGLER_SPECIAL.
583         (cp_comp_to_string): Remove variables str, prefix and buf.  Remove the
584         GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS handling.
585         (cp_print): Remove the GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS
586         handling.
587
588 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
589
590         * NEWS: Mention ARM VFP support.
591         * target-descriptions.c (tdesc_register_type): Make public.
592         (tdesc_unnumbered_register): New function.
593         (tdesc_register_reggroup_p): Allow missing
594         pseudo_register_reggroup_p.
595         * target-descriptions.h (tdesc_register_type): Declare.
596         (tdesc_unnumbered_register): Declare.
597         * arm-tdep.c (arm_neon_quad_read, arm_neon_quad_write): New functions.
598         (arm_push_dummy_call): Use arm_neon_quad_write.
599         (arm_neon_double_type, arm_neon_quad_type): New functions.
600         (arm_register_type): Handle VFP and NEON registers.  Override the
601         types of double-precision registers for NEON.  Disable FPA registers
602         if they are not present.
603         (arm_dwarf_reg_to_regnum): Add current VFP and NEON register numbers.
604         (arm_return_value): Use arm_neon_quad_write and arm_neon_quad_read.
605         (arm_register_name): Handle VFP single and NEON quad registers.
606         (arm_pseudo_read, arm_pseudo_write): New functions.
607         (arm_gdbarch_init): Check for VFP and NEON in the target description.
608         Assign numbers to double-precision registers.  Register VFP and NEON
609         pseudo registers.  Remove a shadowed "i" variable.
610         * arm-tdep.h (enum gdb_regnum): Add ARM_D0_REGNUM and
611         ARM_D31_REGNUM.
612         (struct gdbarch_tdep): Add have_neon_pseudos, have_neon,
613         have_vfp_registers, have_vfp_pseudos, neon_double_type,
614         and neon_quad_type.
615
616         * features/Makefile: Make expedite settings only architecture
617         specific.
618         (WHICH): Add new ARM descriptions.
619         * features/arm-with-neon.xml, features/arm-with-vfpv2.c,
620         features/arm-with-vfpv3.c, features/arm-vfpv2.xml,
621         features/arm-vfpv3.xml, features/arm-with-vfpv2.xml,
622         features/arm-with-vfpv3.xml, features/arm-with-neon.c: New files.
623         * regformats/arm-with-neon.dat, regformats/arm-with-vfpv2.dat,
624         regformats/arm-with-vfpv3.dat: Generate.
625
626 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
627
628         * infrun.c (handle_inferior_event): Clear trap_expected after
629         stepping past a single-step breakpoint.
630
631 2009-07-28  Joseph Myers  <joseph@codesourcery.com>
632
633         * arm-tdep.c (enum arm_vfp_cprc_base_type,
634         arm_vfp_cprc_unit_length, arm_vfp_cprc_reg_char,
635         arm_vfp_cprc_sub_candidate, arm_vfp_call_candidate,
636         arm_vfp_abi_for_function): New.
637         (arm_push_dummy_call): Handle VFP ABI.
638         (arm_extract_return_value, arm_store_return_value): Handle
639         ARM_FLOAT_VFP case.
640         (arm_return_value): Handle VFP ABI.
641         (arm_gdbarch_init): Default fp_model based on Tag_ABI_VFP_args for
642         EABI binaries.
643
644 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
645
646         * arch-utils.c (displaced_step_at_entry_point): Do not call
647         gdbarch_convert_from_func_ptr_addr.
648         * cris-tdep.c: Remove outdated comment.
649         * infcall.c (call_function_by_hand): Do not call
650         gdbarch_convert_from_func_ptr_addr after entry_point_address.
651         * objfiles.c (entry_point_address): Call both
652         gdbarch_convert_from_func_ptr_addr and
653         gdbarch_addr_bits_remove.
654
655 2009-07-28  Aleksandar Ristovski  <aristovski@qnx.com>
656
657         * nto-tdep.c (nto_thread_state_str): New array.
658         (nto_extra_thread_info): New function definition.
659         * nto-tdep.h (gdbthread.h): New include.
660         (private_thread_info): New struct.
661         (nto_extra_thread_info): New declaration.
662         * nto-procfs.c (procfs_thread_alive): Properly check if
663         thread is still alive.
664         (update_thread_private_data_name, update_thread_private_data): New
665         function definition.
666         (procfs_find_new_threads): Fetch thread private data.
667         (init_procfs_ops): Register to_extra_thread_info.
668
669 2009-07-25  Pedro Alves  <pedro@codesourcery.com>
670
671         * stack.c (backtrace_command_1): Remove dead check of NULL current
672         frame.
673
674 2009-07-23  Keith Seitz  <keiths@redhat.com>
675
676         * source.c (forward_search_command): Don't fclose the stream,
677         just run the cleanups.
678         (reverse_search_command): Likewise.
679
680 2009-07-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
681
682         * symtab.c (search_symbols): Add QUIT.
683         
684 2009-07-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
685
686         * symfile.c (symbol_file_add_with_addrs_or_offsets): Call observer.
687         
688 2009-07-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
689
690         * objfiles.h (objfiles_changed): New prototype.
691         * objfiles.c (objfiles_updated_p): Rename to objfiles_changed_p.
692         (allocate_objfile, free_objfile): Must rebuild section map.
693         (objfile_relocate): Likewise.
694         (update_section_map, find_pc_section): Adjust.
695         (set_objfiles_updated_on_exe_change): Remove.
696         (set_objfiles_updated_on_solib_activity): Remove.
697         (_initialize_objfiles): Remove.
698         (objfiles_changed): New function.
699         * symfile.c (reread_symbols): Call objfiles_changed.    
700         
701 2009-07-22  Hui Zhu  <teawater@gmail.com>
702
703         * record.c (record_xfer_partial): Call error When nquery
704         return "n".
705
706 2009-07-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
707         
708         * objfiles.c (objfiles_updated_p): New variable.
709         (qsort_cmp, bsearch_cmp, update_section_map): New function.
710         (find_pc_section): Use bsearch.
711         (set_objfiles_updated_on_exe_change): New function.
712         (set_objfiles_updated_on_solib_activity): New function.
713         (_initialize_objfiles): New function.
714         
715 2009-07-21 Michael Eager <eager@eagercon.com>
716
717         * features/rs6000/powerpc-405.xml: New.
718         * rs6000-tdep.c: Add include & initialize for
719         powerpc-405.c, add 405 to variants.
720         * features/rs6000/powerpc-405.c: Generate.
721
722 2009-07-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
723
724         * utils.c (internal_vproblem): Always print failure message.
725
726 2009-07-21  Daniel Jacobowitz  <dan@codesourcery.com>
727             Vladimir Prus <vladimir@codesourcery.com>
728
729         * valops.c (value_fetch_lazy): Handle bitfields explicitly.
730         (value_assign): Remove unnecessary FIXME.  Honor the container
731         type of bitfields if possible.
732         * value.c (struct value): Add parent field.
733         (value_parent): New function.
734         (value_free): Free the parent also.
735         (value_copy): Copy the parent also.
736         (value_primitive_field): Do not read the contents of a lazy
737         value to create a child bitfield value.  Set bitpos and offset
738         according to the container type if possible.
739         (unpack_bits_as_long): Rename from unpack_field_as_long.  Take
740         field_type, bitpos, and bitsize instead of type and fieldno.
741         (unpack_field_as_long): Use unpack_bits_as_long.
742         * value.h (value_parent, unpack_bits_as_long): New prototypes.
743
744 2009-07-21  Daniel Jacobowitz  <dan@codesourcery.com>
745
746         * value.c (struct value): Add reference_count field.
747         (allocate_value_lazy): Initialize reference_count.
748         (value_incref): New function.
749         (value_free): Check the reference count.
750         * value.h (value_incref): New prototype.
751
752 2009-07-20  Marc Khouzam  <marc.khouzam@ericsson.com>
753
754         * utils.c (defaulted_query): Update comment and remove dead code.
755
756 2009-07-20  Doug Evans  <dje@google.com>
757
758         Add support for "comdat types" from DWARF4.
759         * dwarf2read.c (dwarf2_per_objfile): New member types,
760         signatured_types.
761         (TYPES_SECTION): New macro.
762         (dwarf2_per_cu_data): Change size of length field from 30 bits
763         to 29 bits.  New member from_debug_types.
764         (signatured_type): New struct.
765         (struct attribute): New union member signatured_type.
766         (DW_SIGNATURED_TYPE): New macro.
767         (dwarf2_attr_no_follow): New function.
768         (read_type_unit_scope): New function.
769         (follow_die_ref_or_sig, follow_die_sig): New functions.
770         (dwarf2_locate_sectoins): Handle .debug_types.
771         (dwarf2_build_psymtabs): Read .debug_types.
772         (read_type_comp_unit_head): New function.
773         (hash_type_signature, eq_type_signature): New functions.
774         (create_debug_types_hash_table): New function.
775         (lookup_signatured_type): New function.
776         (process_psymtab_comp_unit): Handle type units too.
777         (process_type_comp_unit, build_type_psymtabs): New functions.
778         (dwarf2_build_psymtabs_hard): Call build_type_psymtabs.
779         (load_partial_comp_unit): Assert not called for a type unit.
780         (skip_one_die): Handle DW_FORM_sig8.
781         (queue_comp_unit): Don't call load_full_comp_unit here, or
782         update read_in_chain.
783         (psymtab_to_symtab_1): Call read_signatured_type_at_offset for
784         type units, or load_full_comp_unit for comp units after
785         queue_comp_unit returns.
786         (load_full_comp_unit): Assert not called for type units.
787         (load_full_comp_unit): Update read_in_chain here.
788         (process_die): Handle DW_TAG_type_unit.
789         (read_structure_type): Look for signatured types.
790         (read_enumeration_type): Ditto.
791         (init_cu_die_reader): Handle .debug_types.
792         (read_comp_unit): Assert hash not computed yet.
793         (read_die_and_children): Expand debugging printf to handle .debug_types.
794         (read_partial_die): Handle DW_TAG_type_unit:
795         (find_patial_die): Handle .debug_types.
796         (read_attribute_value): Handle DW_FORM_sig8.
797         (die_type): Call follow_die_ref_or_sig instead of follow_die_ref.
798         (die_containing_type): Ditto.
799         (dwarf_tag_name): Handle DW_TAG_type_unit.
800         (dwarf_attr_name): Handle DW_AT_signature.
801         (dwarf_form_name): Handle DW_FORM_sec_offset, DW_FORM_exprloc,
802         DW_FORM_flag_present, DW_FORM_sig8.
803         (dump_die_shallow): Handlel DW_FORM_sig8.
804         (maybe_queue_comp_unit): Change return type to int from void.
805         All callers updated.
806         (follow_die_ref): Handle .debug_types.
807         (lookup_signatured_type_at_offset): New function.
808         (read_signatured_type_at_offset): New function.
809         (read_signatured_type): New function.
810
811 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
812
813         * arch-utils.c (gdbarch_info_fill): Only reference GDB_OSABI_DEFAULT
814         if the macro is defined.
815
816 2009-07-20  Pedro Alves  <pedro@codesourcery.com>
817
818         * features/gdb-target.dtd (target): Accept an optional 'osabi'
819         element.
820         (osabi): Define element.
821         * features/mips-linux.xml (target): Add an osabi subelement set to
822         GNU/Linux.
823         * regformats/regdat.sh (xmlarch, xmlosabi): New variables.  Don't
824         write the architecture into $xmltarget.  Store it in $xmlarch.
825         Handle the 'osabi' type.  Handle outputting the osabi element of
826         the target description.
827         * regformats/reg-x86-64-linux.dat (osabi): Set to GNU/Linux.
828         * regformats/reg-i386-linux.dat (osabi): Set to GNU/Linux.
829
830         * target-descriptions.h (tdesc_osabi, set_tdesc_osabi): Declare.
831         * target-descriptions.c (struct target_desc) <osabi>: New field.
832         (tdesc_osabi): New function.
833         (set_tdesc_osabi): New function.
834         * xml-tdesc.c: Include osabi.h.
835         (tdesc_end_osabi): New.
836         (target_children): Parse "osabi" elements.
837         * arch-utils.c (gdbarch_info_fill): Try to get the osabi from the
838         target description if the user didn't override it or it is not
839         extractable from the bfd.  If that still fails, fallback to the
840         configured in default.
841         * osabi.h (osabi_from_tdesc_string): Declare.
842         * osabi.c (osabi_from_tdesc_string): New.
843         (gdbarch_lookup_osabi): Return GDB_OSABI_UNKNOWN instead of
844         GDB_OSABI_DEFAULT.
845
846         * NEWS: Mention that target descriptions can now describe the
847         target OS ABI.
848
849 2009-07-20  Mike Frysinger  <vapier@gentoo.org>
850
851         * configure.ac (AC_CHECK_FUNCS): Check for pipe.
852         * config.in, configure: Regenerate.
853         * tui/tui-io.c (TUI_USE_PIPE_FOR_READLINE): Define if HAVE_PIPE.
854
855 2009-07-20  Pedro Alves  <pedro@codesourcery.com>
856
857         * gnu-nat.c: Include "inf-child.h".
858         (gnu_mourn_inferior): Use the passed in target_ops
859         instead of the gnu_ops global.
860         (gnu_create_inferior): Inline `attach_to_child', use the passed in
861         target_ops instead of the gnu_ops global.
862         (gnu_can_run): Delete.
863         (gnu_attach): Use the passed in target_ops instead of the gnu_ops
864         global.
865         (gnu_detach): Ditto.
866         (gnu_prepare_to_store, gnu_open): Delete.
867         (gnu_store_registers, gnu_fetch_registers): Delete declarations.
868         (gnu_ops): Delete.
869         (init_gnu_ops): Delete.
870         (gnu_target): New.
871         (_initialize_gnu_nat): Don't call init_gnu_ops or add_target here.
872         * gnu-nat.h (gnu_target): Declare.
873         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Make
874         static.
875         (_initialize_i386gnu_nat): New.
876
877 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
878
879         * dwarf2loc.c (find_location_expression): Retrieve beginning and
880         ending address offsets in location list entries as integers,
881         not as addresses.
882
883 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
884
885         * infrun.c (wait_for_inferior): Invalidate registers and overlay
886         cache every time before calling target_wait.
887         (handle_inferior_event): Make static. Always reset waiton_ptid.
888         Never call registers_changed.
889         (prepare_to_wait): Do not invaliate registers or overlay cache
890         (moved to wait_for_inferior).  Do not reset waiton_ptid (moved
891         to handle_inferior_event).
892         (fetch_inferior_event): Remove check for always-true condition.  
893
894 2009-07-20  Thomas Schwinge  <tschwinge@gnu.org>
895
896         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Adjust to
897         2009-02-23 target_ops changes.
898
899 2009-07-18  Michael Snyder  <msnyder@vmware.com>
900
901         * infrun.c (handle_inferior_event): Remove an execution_direction
902         check in the "check for subroutine calls" test, and add some 
903         additional handling for reverse-stepping through shared libraries.
904
905 2009-07-18  Anthony Green  <green@moxielogic.com>
906
907         * moxie-tdep.c (moxie_analyze_prologue): Take gdbarch as last
908         parameter instead of frame_info.
909         (moxie_frame_cache): Call moxie_analyze_prologue with different
910         args.
911
912 2009-07-17  Ulrich Weigand  <uweigand@de.ibm.com>
913
914         * solib.c (solib_bfd_open): Do not call ops->bfd_open.
915         (solib_map_sections): Call ops->bfd_open instead of solib_bfd_open.
916         * solib-frv.c (_initialize_frv_solib): Initialize bfd_open member.
917         * solib-irix.c (_initialize_irix_solib): Likewise.
918         * solib-null.c (_initialize_null_solib): Likewise.
919         * solib-osf.c (_initialize_osf_solib): Likewise.
920         * solib-pa64.c (_initialize_pa64_solib): Likewise.
921         * solib-som.c (_initialize_som_solib): Likewise.
922         * solib-sunos.c (_initialize_sunos_solib): Likewise.
923         * solib-svr4.c (_initialize_svr4_solib): Likewise.
924         * solib-target.c (_initialize_solib_target): Likewise.
925
926 2009-07-17  Ulrich Weigand  <uweigand@de.ibm.com>
927
928         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Respect mixed_mode flag.
929
930 2009-07-16  Doug Evans  <dje@google.com>
931
932         * linux-thread.db.c (try_thread_db_load_1): Tweak comment.
933
934 2007-07-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
935
936         * linux-thread-db.c (thread_db_find_new_threads_silently):
937         New function.
938         (try_thread_db_load_1): Call it.
939
940 2009-07-15  Doug Evans  <dje@google.com>
941
942         Code reorg in preparation for adding comdat types support.
943         * dwarf2read.c (struct die_reader_specs): New struct.
944         (locate_pdi_sibling): New arg buffer.  All callers updated.
945         (load_partial_dies, read_partial_die): Ditto.
946         (read_8_bytes): Change return type to ULONGEST.
947         (read_comp_unit): Delete arg abfd.  All callers updated.
948         (read_die_and_children_1): Delete args abfd, cu.  New arg reader.
949         All callers updated.
950         (read_die_and_children, read_die_and_siblings): Ditto.
951         (read_full_die): Ditto.  Move closer to callers.
952         (skip_one_die): New arg buffer.  All callers updated.
953         (load_full_comp_unit): Change return type to void.  All callers
954         updated.
955         (partial_read_comp_unit_head): New args buffer, buffer_size.
956         All callers updated.
957         (process_psymtab_comp_unit): New function, split out from
958         dwarf2_build_psymtabs_hard.
959         (dwarf2_build_psymtabs_hard): Call it.
960         (load_partial_comp_unit): Renamed from load_comp_unit.
961         All callers updated.
962         (skip_children): New arg buffer.  All callers updated.
963         (init_cu_die_reader): New function.
964         (is_ref_attr): New function.
965         (dwarf2_get_ref_die_offset): Call it.
966         (alloc_one_comp_unit): New function.
967
968 2009-07-14  Stan Shebs  <stan@codesourcery.com>
969
970         * MAINTAINERS (Global Maintainers): Add Doug Evans.
971
972 2009-07-14  Stan Shebs  <stan@codesourcery.com>
973
974         Conditional tracepoints.
975         * ax-gdb.h (gen_eval_for_expr): Declare.
976         * ax-gdb.c (gen_expr): Generate bytecodes for BINOP_EQUAL
977         and other comparisons.
978         (gen_eval_for_expr): New function.
979         (agent_eval_command): New maintenance command.
980         (_initialize_ax_gdb): Define the command.
981         * remote.c (struct remote_state): New field cond_tracepoints.
982         (PACKET_ConditionalTracepoints): New packet config type.
983         (remote_cond_tracepoint_feature): New function.
984         (remote_protocol_features): Add ConditionalTracepoints.
985         (remote_supports_cond_tracepoints): New function.
986         (_initialize_remote): Add ConditionalTracepoints.
987         * tracepoint.c (download_tracepoint): Add conditional.
988         * NEWS: Mention conditional tracepoints.
989
990 2009-07-14  Ulrich Weigand  <uweigand@de.ibm.com>
991
992         * objfiles.c (objfile_relocate): Do not relocate the same
993         BLOCKVECTOR_MAP address map multiple times.
994
995 2009-07-14  Ulrich Weigand  <uweigand@de.ibm.com>
996
997         * remote.c (process_stop_reply): Access expedited target registers
998         in target_gdbarch.
999
1000 2009-07-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
1001
1002         Fix memory access from signed 32bit inferior registers on 64bit GDB.
1003         * linux-nat.c (linux_xfer_partial <TARGET_OBJECT_MEMORY>): New variable
1004         addr_bit.  Mask OFFSET by the ADDR_BIT width.
1005
1006 2009-07-13  Anthony Green  <green@moxielogic.com>
1007
1008         * moxie-tdep.c (moxie_gdbarch_init): Call
1009         set_gdbarch_process_record.
1010         (moxie_process_record): New.
1011         (moxie_process_readu): New.
1012
1013 2009-07-12  Michael Snyder  <msnyder@vmware.com>
1014
1015         * i386-tdep.c: Add a frame unwinder for function epilogues.
1016         (i386_in_function_epilogue_p): New function.
1017         (i386_epilogue_frame_sniffer): New function.
1018         (i386_epilogue_frame_cache): New function.
1019         (i386_epilogue_frame_this_id): New function.
1020         (i386_epilogue_frame_unwind): New struct frame_unwind.
1021         (i386_gdbarch_init): Hook the new unwinder.
1022
1023 2009-07-11  Hui Zhu  <teawater@gmail.com>
1024
1025         * cli/cli-cmds.c (disassemble_command): Add a new modifier /r
1026         to "disassemble" command to print the raw instructions in hex as
1027         well as in symbolic form.
1028         (init_cli_cmds): Ditto.
1029         (print_disassembly): Change "mixed" to "flags" to translate
1030         the behavior of disassemble.
1031         (disassemble_current_function): Ditto.
1032         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
1033         * stack.c (gdb_disassembly_stub): Ditto.
1034         * disasm.c (do_mixed_source_and_assembly): Ditto.
1035         (do_mixed_source_and_assembly): Ditto.
1036         (do_assembly_only): Ditto.
1037         (gdb_disassembly): Ditto.
1038         (dump_insns): print the raw instructions in hex as well as in
1039         symbolic form if DISASSEMBLY_RAW_INSN and flags is true.
1040         * disasm.h (DISASSEMBLY_SOURCE): Include source code with the
1041         assembly if it and flags is true.
1042         (DISASSEMBLY_RAW_INSN): Include the raw instructions in hex with
1043         the assembly if it and flags is true.
1044         (gdb_disassembly): Update extern.
1045         * NEWS: Document disassemble/r support.
1046
1047 2009-07-10  Tom Tromey  <tromey@redhat.com>
1048
1049         * dwarf2-frame.c: Include dwarf2.h, not elf/dwarf2.h.
1050         * dwarf2expr.c: Likewise.
1051         * dwarf2loc.c: Likewise.
1052         * dwarf2read.c: Likewise.
1053         * sh-tdep.c: Likewise.
1054         * xtensa-tdep.c: Likewise.
1055
1056 2009-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
1057
1058         Tidy up the code.
1059         * mi/mi-cmd-var.c (mi_cmd_var_update): Remove variable nv.  Move
1060         variables var, rootlist and cr to their local sub-block.  Move the
1061         make_cleanup_ui_out_tuple_begin_end, make_cleanup_ui_out_list_begin_end
1062         and do_cleanups calls to the common base block.  Remove the zero NV
1063         check.
1064
1065 2009-07-10 Phil Muldoon  <pmuldoon@redhat.com>
1066
1067         * python/python-internal.h (apply_varobj_pretty_printer): Update
1068         definition.
1069         (python_string_to_target_python_string): Add definition.
1070         * python/python-utils.c (unicode_to_encoded_python_string)
1071         (unicode_to_target_python_string)
1072         (python_string_to_target_python_string): New Functions.
1073         * python/python-prettyprint.c (pretty_print_one_value): Likewise.
1074         (print_string_repr): Refactor to logic to account for PyObject
1075         returned strings.
1076         (apply_varobj_pretty_printer): Likewise.
1077         * python/python-value.c (valpy_string): Parse length keyword. Use
1078         length keyword in LA_GET_STRING.
1079         * varobj.c (value_get_print_value): Refactor logic to account for
1080         PyObject returned strings.
1081         * c-lang.c (c_get_string): If the length parameter is specified,
1082         use that. Return value in characters. Update comments.
1083         * language.h: Update c_get_string prototype comments.
1084
1085 2009-07-09  Doug Evans  <dje@google.com>
1086
1087         * i386-tdep.c (i386_displaced_step_fixup): Fix order of arguments
1088         to read_memory_unsigned_integer.
1089
1090 2009-07-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
1091
1092         Report error on inaccessible memory.
1093         * cli/cli-dump.c: Include gdbcore.h.
1094         (dump_memory_to_file): Call read_memory instead of target_read_memory.
1095
1096 2009-07-09  Hui Zhu  <teawater@gmail.com>
1097
1098         * solib.c (solib_bfd_open): Output a warning if solib's
1099         architecture is not compatible with inferior's architecture.
1100
1101 2009-07-09  Ulrich Weigand  <uweigand@de.ibm.com>
1102             Jan Kratochvil  <jan.kratochvil@redhat.com>
1103
1104         * target.h (struct target_ops <to_thread_architecture>): Describe it.
1105         (target_thread_architecture): Refer to to_thread_architecture.
1106
1107 2009-07-08  Pierre Muller  <muller@ics.u-strasbg.fr>
1108
1109         * cli/cli-cmds.c (init_cli_cmds): Add "inf" alias for "info" command.
1110
1111 2009-07-07  Ulrich Weigand  <uweigand@de.ibm.com>
1112
1113         * tui/tui-stack.c (tui_make_status_line): Display PC as ?? if unknown.
1114
1115 2009-07-07  Pierre Muller  <muller@ics.u-strasbg.fr>
1116
1117         * breakpoint.c (set_raw_breakpoint): Remove static modifier.
1118
1119 2009-07-07  Tom Tromey  <tromey@redhat.com>
1120
1121         * c-lang.c (convert_octal): Only allow 3 octal digits.
1122         (print_wchar): Prefer 3-digit octal form.  Fall back to hex if
1123         needed.
1124         * c-exp.y (c_parse_escape): Only allow 3 octal digits.
1125
1126 2009-07-07  Paul Pluzhnikov  <ppluzhnikov@google.com>
1127
1128         * python/python-value.c (valpy_getitem): Remove incorrect assert.
1129         
1130 2009-07-07  Paul Pluzhnikov  <ppluzhnikov@google.com>
1131
1132         * python/python-value.c (valpy_getitem): Don't return from TRY_CATCH.
1133
1134 2009-07-07  Sami Wagiaalla  <swagiaal@redhat.com>
1135
1136         * cp-support.h (struct using_direct): Rename members inner and
1137         outer to import_src, and import_dest respectively.
1138         * cp-namespace.c (cp_add_using_directive): Update.
1139         (cp_add_using): Update.
1140         (cp_copy_usings): Update.
1141         (cp_lookup_symbol_namespace): Update.
1142         (cp_scan_for_anonymous_namespaces): Update.
1143         * cp-support.c (make_symbol_overload_list_using): Update.
1144         * cp-support.h (cp_add_using_directive, cp_add_using): Rename
1145         arguments from inner and outer to src and dest respectively.
1146         * cp-namespace.c (cp_add_using_directive): Ditto.
1147         (cp_add_using): Ditto.
1148
1149 2009-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
1150
1151         * mi/mi-cmd-var.c (mi_cmd_var_update): Replace a while loop by for loop.
1152         * varobj.c (varobj_invalidate): Replace a while loop by for loop.
1153
1154 2009-07-07  Vladimir Prus  <vladimir@codesourcery.com>
1155
1156         Fix hang in floating varobjs.
1157
1158         * varobj.c (varobj_invalidate): Advance to next
1159         element when processing floating varobj.
1160
1161 2009-07-07  Vladimir Prus  <vladimir@codesourcery.com>
1162
1163         * varobj.c: Remove unnecessary include.
1164
1165 2009-07-07  Tristan Gingold  <gingold@adacore.com>
1166
1167         * config/i386/darwin.mh (NATDEPFILES): Remove excServer.o.
1168         Remove excServer.c target.  Remove _all target.
1169         * darwin.defs: Removed.
1170
1171 2009-07-06  Aleksandar Ristovski  <aristovski@qnx.com>
1172
1173         * configure.tgt (i[34567]86-*-nto*): Add build_gdbserver=yes.
1174
1175 2009-07-06  Jan Kratochvil  <jan.kratochvil@redhat.com>
1176
1177         * source.c (find_and_open_source): Remove the `objfile' parameter.
1178         Update the function comment.
1179         (open_source_file, symtab_to_fullname, psymtab_to_fullname): Update the
1180         find_and_open_source callers.
1181
1182 2009-07-05  Pedro Alves  <pedro@codesourcery.com>
1183
1184         * coff-pe-read.c (read_pe_exported_syms): Recognize
1185         "pe-arm-wince-little" and "pei-arm-wince-little" bfd targets as PE
1186         targets.
1187
1188 2009-07-05  Pedro Alves  <pedro@codesourcery.com>
1189
1190         * arm-wince-tdep.c (arm_wince_skip_main_prologue): New.
1191         (arm_wince_init_abi): Register it as gdbarch_skip_main_prologue
1192         callback.
1193
1194 2009-06-29  Tristan Gingold  <gingold@adacore.com>
1195
1196         * i386-darwin-tdep.c (amd64_darwin_thread_state_reg_offset)
1197         (amd64_darwin_thread_state_num_regs)
1198         (amd64_darwin_sigcontext_addr, x86_darwin_init_abi_64): Moved to
1199         amd64-darwin-tdep.c
1200         (_initialize_i386_darwin_tdep): Remove 64 bits parts.
1201         (darwin_dwarf_signal_frame_p): Make public.
1202         * amd64-darwin-tdep.c: New file with most chunks from
1203         i386-darwin-tdep.c      
1204         * i386-darwin-tdep.h: Add a prototype for darwin_dwarf_signal_frame_p.
1205         (amd64_darwin_thread_state_reg_offset)
1206         (amd64_darwin_thread_state_num_regs): Moved to amd64-darwin-tdep.h
1207         * amd64-darwin-tdep.h: New file.
1208         * i386-darwin-nat.c: Only includes amd64-nat.h and amd64-darwin-tdep.h
1209         if BFD64 is defined.
1210         (i386_darwin_fetch_inferior_registers): Add #ifdef BFD64/#endif around
1211         64 bits parts.
1212         (i386_darwin_store_inferior_registers): Ditto.
1213         (darwin_set_sstep): Ditto.
1214         (darwin_complete_target): Ditto.
1215         (amd64_darwin_sstep_at_sigreturn): Ditto.
1216         * configure.tgt: Create a separate entry for x86_64-*-darwin.
1217         Add 64 bits support for i386-*-darwin if --enable-64-bit-bfd.
1218         * Makefile.in (ALLDEPFILES): Add amd64-darwin-tdep.c, darwin-nat.c,
1219         i386-darwin-tdep.c i386-darwin-nat.c
1220         (ALL_64_TARGET_OBS): Add amd64-darwin-tdep.o
1221         
1222 2009-07-02  Pedro Alves  <pedro@codesourcery.com>
1223
1224         * linux-fork.c (forks_exist_p): Drop unnecessary extern.
1225         (add_fork, linux_fork_killall, linux_fork_mourn_inferior)
1226         (linux_fork_detach): Ditto.
1227         (delete_fork_command): Rename to ...
1228         (delete_checkpoint_command): ... this.
1229         (detach_fork_command): Rename to ...
1230         (detach_checkpoint_command): ... this.
1231         (info_forks_command): Rename to ...
1232         (info_checkpoints_command): ... this.
1233         (_initialize_linux_fork): Remove stale comments.  Adjust.
1234
1235 2009-07-02  Pedro Alves  <pedro@codesourcery.com>
1236
1237         * linux-nat.c (linux_child_follow_fork): If we're staying attached
1238         to the child process, enable event reporting on it.  Don't handle
1239         checkpoints here.  Instead, add the child fork to the lwp thread
1240         and inferior lists without clobbering the previous inferior.  Let
1241         the thread_db layer learn about a new child process, even if
1242         following the parent.
1243         (linux_nat_switch_fork): Delete lwps of the current inferior only,
1244         instead of clearing the whole list.  Use thread_change_ptid to
1245         give the core the illusion the new checkpoint is still the same
1246         inferior.  Clear the register cache.
1247         (linux_handle_extended_wait): Handle checkpoints here.
1248         (linux_multi_process): Turn on.
1249         * linux-fork.c (struct fork_info) <pc>: Remove field.
1250         (init_fork_list): Do not delete the checkpoint from the inferior
1251         list (it is not there).
1252         (fork_load_infrun_state): Don't switch inferior_ptid here.  Pass
1253         the new checkpoint's ptid to linux_nat_switch_fork.
1254         (fork_save_infrun_state): Make static.  Don't stop the pc field of
1255         fork_info, it's gone.
1256         (linux_fork_mourn_inferior): Don't delete the checkpoint from the
1257         inferior list, it's not there.
1258         (linux_fork_detach): Ditto.
1259         (delete_fork_command): Replace mention of fork/checkpoint by
1260         checkpoint only.
1261         (detach_fork_command): Likewise.  Don't delete the checkpoint from
1262         the inferior list.
1263         (info_forks_command): Adjust.
1264         (restore_detach_fork): Delete.
1265         (checkpointing_pid): New.
1266         (linux_fork_checkpointing_p): New.
1267         (save_detach_fork): Delete.
1268         (checkpoint_command): Delete temp_detach_fork.  Don't remove
1269         breakpoints, that's a nop.  Store the pid of the process we're
1270         checkpointing, and use make_cleanup_restore_integer to restore it.
1271         Don't reinsert breakpoints here.
1272         (process_command, fork_command): Delete.
1273         (restart_command): Update comments to only mention checkpoints,
1274         not forks.
1275         (_initialize_linux_fork): Delete "fork", "process", "info forks"
1276         commands.
1277         * linux-fork.h (fork_save_infrun_state, fork_list): Delete
1278         declarations.
1279         (linux_fork_checkpointing_p): Declare.
1280         * cli/cli-cmds.c (killlist): New.
1281         * cli/cli-cmds.h (killlist): Declare.
1282         * gdbcmd.h (killlist): Declare.
1283         * inferior.c: Include "gdbthread.h".
1284         (detach_inferior_command, kill_inferior_command)
1285         (inferior_command): New.
1286         (info_inferiors_command): Allow specifying a specific inferior id.
1287         (_initialize_inferiors): Register "inferior", "kill inferior" and
1288         "detach inferior" commands.
1289         * infcmd.c (_initialize_infcmd): Make "kill" a prefix command.
1290         * gdbthread.h (any_thread_of_process): Declare.
1291         * thread.c (any_thread_of_process): New.
1292
1293         * NEWS: Mention multi-inferior debugging.  Mention 'info
1294         inferiors', 'inferior', 'detach inferior' and 'kill inferior' as
1295         new commands.
1296         (Removed commands): New section, mentioning that 'info forks',
1297         'fork', 'process', 'delete fork' and 'detach fork' are now gone.
1298
1299 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
1300
1301         * gdbarch.sh (current_gdbarch): Remove global variable.
1302         (find_arch_by_info): Remove, inline into ...
1303         (gdbarch_find_by_info): ... this.  Remove current_gdbarch swapping.
1304         (deprecated_current_gdbarch_select_hack): Rename to ...
1305         (deprecated_target_gdbarch_select_hack): ... this.  Do not set
1306         or access current_gdbarch.
1307         * gdbarch.c, gdbarch.h: Regenerate.
1308
1309         * arch-utils.c (gdbarch_update_p): Update call.
1310         (set_gdbarch_from_file): Likewise.
1311
1312 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
1313
1314         * defs.h (extract_signed_integer, extract_unsigned_integer,
1315         extract_long_unsigned_integer, store_signed_integer,
1316         store_unsigned_integer): Add BYTE_ORDER parameter.
1317         * findvar.c (extract_signed_integer, extract_unsigned_integer,
1318         extract_long_unsigned_integer, store_signed_integer,
1319         store_unsigned_integer): Add BYTE_ORDER parameter.  Use it
1320         instead of current_gdbarch.
1321
1322         * gdbcore.h (read_memory_integer, safe_read_memory_integer,
1323         read_memory_unsigned_integer, write_memory_signed_integer,
1324         write_memory_unsigned_integer): Add BYTE_ORDER parameter.
1325         * corefile.c (struct captured_read_memory_integer_arguments): Add
1326         BYTE_ORDER member.
1327         (safe_read_memory_integer): Add BYTE_ORDER parameter.  Store it into
1328         struct captured_read_memory_integer_arguments.
1329         (do_captured_read_memory_integer): Pass it to read_memory_integer.
1330         (read_memory_integer): Add BYTE_ORDER parameter.  Pass it to
1331         extract_signed_integer.
1332         (read_memory_unsigned_integer): Add BYTE_ORDER parameter.  Pass it to
1333         extract_unsigned_integer.
1334         (write_memory_signed_integer): Add BYTE_ORDER parameter.  Pass it
1335         to store_signed_integer.
1336         (write_memory_unsigned_integer): Add BYTE_ORDER parameter.  Pass it
1337         to store_unsigned_integer.
1338
1339         * target.h (get_target_memory_unsigned): Add BYTE_ORDER parameter.
1340         * target.c (get_target_memory_unsigned): Add BYTE_ORDER parameter.
1341         Pass it to extract_unsigned_integer.
1342
1343
1344         Update calls to extract_signed_integer, extract_unsigned_integer,
1345         extract_long_unsigned_integer, store_signed_integer,
1346         store_unsigned_integer, read_memory_integer,
1347         read_memory_unsigned_integer, safe_read_memory_integer,
1348         write_memory_signed_integer, write_memory_unsigned_integer, and
1349         get_target_memory_unsigned to pass byte order:
1350         * ada-lang.c (ada_value_binop): Update.
1351         * ada-valprint.c (char_at): Update.
1352         * alpha-osf1-tdep.c (alpha_osf1_sigcontext_addr): Update.
1353         * alpha-tdep.c (alpha_lds, alpha_sts, alpha_push_dummy_call,
1354         alpha_extract_return_value, alpha_read_insn,
1355         alpha_get_longjmp_target): Update.
1356         * amd64-linux-tdep.c (amd64_linux_sigcontext_addr): Update.
1357         * amd64obsd-tdep.c (amd64obsd_supply_uthread,
1358         amd64obsd_collect_uthread, amd64obsd_trapframe_cache): Update.
1359         * amd64-tdep.c (amd64_push_dummy_call, amd64_analyze_prologue,
1360         amd64_frame_cache, amd64_sigtramp_frame_cache, fixup_riprel,
1361         amd64_displaced_step_fixup): Update.
1362         * arm-linux-tdep.c (arm_linux_sigreturn_init,
1363         arm_linux_rt_sigreturn_init, arm_linux_supply_gregset): Update.
1364         * arm-tdep.c (thumb_analyze_prologue, arm_skip_prologue,
1365         arm_scan_prologue, arm_push_dummy_call, thumb_get_next_pc,
1366         arm_get_next_pc, arm_extract_return_value, arm_store_return_value,
1367         arm_return_value): Update.
1368         * arm-wince-tdep.c (arm_pe_skip_trampoline_code): Update.
1369         * auxv.c (default_auxv_parse): Update.
1370         * avr-tdep.c (avr_address_to_pointer, avr_pointer_to_address,
1371         avr_scan_prologue, avr_extract_return_value,
1372         avr_frame_prev_register, avr_push_dummy_call): Update.
1373         * bsd-uthread.c (bsd_uthread_check_magic, bsd_uthread_lookup_offset,
1374         bsd_uthread_wait, bsd_uthread_thread_alive,
1375         bsd_uthread_extra_thread_info): Update.
1376         * c-lang.c (c_printstr, print_wchar): Update.
1377         * cp-valprint.c (cp_print_class_member): Update.
1378         * cris-tdep.c (cris_sigcontext_addr, cris_sigtramp_frame_unwind_cache,
1379         cris_push_dummy_call, cris_scan_prologue, cris_store_return_value,
1380         cris_extract_return_value, find_step_target, dip_prefix,
1381         sixteen_bit_offset_branch_op, none_reg_mode_jump_op,
1382         move_mem_to_reg_movem_op, get_data_from_address): Update.
1383         * dwarf2expr.c (dwarf2_read_address, execute_stack_op): Update.
1384         * dwarf2-frame.c (execute_cfa_program): Update.
1385         * dwarf2loc.c (find_location_expression): Update.
1386         * dwarf2read.c (dwarf2_const_value): Update.
1387         * expprint.c (print_subexp_standard): Update.
1388         * findvar.c (unsigned_pointer_to_address, signed_pointer_to_address,
1389         unsigned_address_to_pointer, address_to_signed_pointer,
1390         read_var_value): Update.
1391         * frame.c (frame_unwind_register_signed,
1392         frame_unwind_register_unsigned, get_frame_memory_signed,
1393         get_frame_memory_unsigned): Update.
1394         * frame-unwind.c (frame_unwind_got_constant): Update.
1395         * frv-linux-tdep.c (frv_linux_pc_in_sigtramp,
1396         frv_linux_sigcontext_reg_addr, frv_linux_sigtramp_frame_cache):
1397         Update.
1398         * frv-tdep.c (frv_analyze_prologue, frv_skip_main_prologue,
1399         frv_extract_return_value, find_func_descr,
1400         frv_convert_from_func_ptr_addr, frv_push_dummy_call): Update.
1401         * f-valprint.c (f_val_print): Update.
1402         * gnu-v3-abi.c (gnuv3_decode_method_ptr, gnuv3_make_method_ptr):
1403         Update.
1404         * h8300-tdep.c (h8300_is_argument_spill, h8300_analyze_prologue,
1405         h8300_push_dummy_call, h8300_extract_return_value,
1406         h8300h_extract_return_value, h8300_store_return_value,
1407         h8300h_store_return_value): Update.
1408         * hppabsd-tdep.c (hppabsd_find_global_pointer): Update.
1409         * hppa-hpux-nat.c (hppa_hpux_fetch_register, hppa_hpux_store_register):
1410         Update.
1411         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline,
1412         hppa64_hpux_in_solib_call_trampoline,
1413         hppa_hpux_in_solib_return_trampoline, hppa_hpux_skip_trampoline_code,
1414         hppa_hpux_sigtramp_frame_unwind_cache,
1415         hppa_hpux_sigtramp_unwind_sniffer, hppa32_hpux_find_global_pointer,
1416         hppa64_hpux_find_global_pointer, hppa_hpux_search_pattern,
1417         hppa32_hpux_search_dummy_call_sequence,
1418         hppa64_hpux_search_dummy_call_sequence, hppa_hpux_supply_save_state,
1419         hppa_hpux_unwind_adjust_stub): Update.
1420         * hppa-linux-tdep.c (insns_match_pattern,
1421         hppa_linux_find_global_pointer): Update.
1422         * hppa-tdep.c (hppa_in_function_epilogue_p, hppa32_push_dummy_call,
1423         hppa64_convert_code_addr_to_fptr, hppa64_push_dummy_call,
1424         skip_prologue_hard_way, hppa_frame_cache, hppa_fallback_frame_cache,
1425         hppa_pseudo_register_read, hppa_frame_prev_register_helper,
1426         hppa_match_insns): Update.
1427         * hpux-thread.c (hpux_thread_fetch_registers): Update.
1428         * i386-tdep.c (i386bsd_sigcontext_addr): Update.
1429         * i386-cygwin-tdep.c (core_process_module_section): Update.
1430         * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn,
1431         amd64_darwin_sstep_at_sigreturn): Update.
1432         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr,
1433         amd64_darwin_sigcontext_addr): Likewise.
1434         * i386-linux-nat.c (i386_linux_sigcontext_addr): Update.
1435         * i386nbsd-tdep.c (i386nbsd_sigtramp_cache_init): Update.
1436         * i386-nto-tdep.c (i386nto_sigcontext_addr): Update.
1437         * i386obsd-nat.c (i386obsd_supply_pcb): Update.
1438         * i386obsd-tdep.c (i386obsd_supply_uthread, i386obsd_collect_uthread,
1439         i386obsd_trapframe_cache): Update.
1440         * i386-tdep.c (i386_displaced_step_fixup, i386_follow_jump,
1441         i386_analyze_frame_setup, i386_analyze_prologue,
1442         i386_skip_main_prologue, i386_frame_cache, i386_sigtramp_frame_cache,
1443         i386_get_longjmp_target, i386_push_dummy_call,
1444         i386_pe_skip_trampoline_code, i386_svr4_sigcontext_addr,
1445         i386_fetch_pointer_argument): Update.
1446         * i387-tdep.c (i387_supply_fsave): Update.
1447         * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Update.
1448         * ia64-tdep.c (ia64_pseudo_register_read, ia64_pseudo_register_write,
1449         examine_prologue, ia64_frame_cache, ia64_frame_prev_register,
1450         ia64_sigtramp_frame_cache, ia64_sigtramp_frame_prev_register,
1451         ia64_access_reg, ia64_access_rse_reg, ia64_libunwind_frame_this_id,
1452         ia64_libunwind_frame_prev_register,
1453         ia64_libunwind_sigtramp_frame_this_id,
1454         ia64_libunwind_sigtramp_frame_prev_register, ia64_find_global_pointer,
1455         find_extant_func_descr, find_func_descr,
1456         ia64_convert_from_func_ptr_addr, ia64_push_dummy_call, ia64_dummy_id,
1457         ia64_unwind_pc): Update.
1458         * iq2000-tdep.c (iq2000_pointer_to_address, iq2000_address_to_pointer,
1459         iq2000_scan_prologue, iq2000_extract_return_value,
1460         iq2000_push_dummy_call): Update.
1461         * irix5nat.c (fill_gregset): Update.
1462         * jv-lang.c (evaluate_subexp_java): Update.
1463         * jv-valprint.c (java_value_print): Update.
1464         * lm32-tdep.c (lm32_analyze_prologue, lm32_push_dummy_call, 
1465         lm32_extract_return_value, lm32_store_return_value): Update.
1466         * m32c-tdep.c (m32c_push_dummy_call, m32c_return_value,
1467         m32c_skip_trampoline_code, m32c_m16c_address_to_pointer,
1468         m32c_m16c_pointer_to_address): Update.
1469         * m32r-tdep.c (m32r_store_return_value, decode_prologue,
1470         m32r_skip_prologue, m32r_push_dummy_call, m32r_extract_return_value):
1471         Update.
1472         * m68hc11-tdep.c (m68hc11_pseudo_register_read,
1473         m68hc11_pseudo_register_write, m68hc11_analyze_instruction,
1474         m68hc11_push_dummy_call): Update.
1475         * m68linux-tdep.c (m68k_linux_pc_in_sigtramp,
1476         m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
1477         Update.
1478         * m68k-tdep.c (m68k_push_dummy_call, m68k_analyze_frame_setup,
1479         m68k_analyze_register_saves, m68k_analyze_prologue, m68k_frame_cache,
1480         m68k_get_longjmp_target): Update.
1481         * m88k-tdep.c (m88k_fetch_instruction): Update.
1482         * mep-tdep.c (mep_pseudo_cr32_read, mep_pseudo_csr_write,
1483         mep_pseudo_cr32_write, mep_get_insn, mep_push_dummy_call): Update.
1484         * mi/mi-main.c (mi_cmd_data_write_memory): Update.
1485         * mips-linux-tdep.c (mips_linux_get_longjmp_target, supply_32bit_reg,
1486         mips64_linux_get_longjmp_target, mips64_fill_gregset,
1487         mips64_fill_fpregset, mips_linux_in_dynsym_stub): Update.
1488         * mipsnbdsd-tdep.c (mipsnbsd_get_longjmp_target): Update.
1489         * mips-tdep.c (mips_fetch_instruction, fetch_mips_16,
1490         mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call,
1491         mips_o32_push_dummy_call, mips_o64_push_dummy_call, 
1492         mips_single_step_through_delay, mips_skip_pic_trampoline_code,
1493         mips_integer_to_address): Update.
1494         * mn10300-tdep.c (mn10300_analyze_prologue, mn10300_push_dummy_call):
1495         Update.
1496         * monitor.c (monitor_supply_register, monitor_write_memory,
1497         monitor_read_memory_single): Update.
1498         * moxie-tdep.c (moxie_store_return_value, moxie_extract_return_value,
1499         moxie_analyze_prologue): Update.
1500         * mt-tdep.c (mt_return_value, mt_skip_prologue, mt_select_coprocessor,
1501         mt_pseudo_register_read, mt_pseudo_register_write, mt_registers_info,
1502         mt_push_dummy_call): Update.
1503         * objc-lang.c (read_objc_method, read_objc_methlist_nmethods,
1504         read_objc_methlist_method, read_objc_object, read_objc_super,
1505         read_objc_class, find_implementation_from_class): Update.
1506         * ppc64-linux-tdep.c (ppc64_desc_entry_point,
1507         ppc64_linux_convert_from_func_ptr_addr, ppc_linux_sigtramp_cache):
1508         Update.
1509         * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_sniffer,
1510         ppcobsd_sigtramp_frame_cache): Update.
1511         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call,
1512         do_ppc_sysv_return_value, ppc64_sysv_abi_push_dummy_call,
1513         ppc64_sysv_abi_return_value): Update.
1514         * ppc-linux-nat.c (ppc_linux_auxv_parse): Update.
1515         * procfs.c (procfs_auxv_parse): Update.
1516         * p-valprint.c (pascal_val_print): Update.
1517         * regcache.c (regcache_raw_read_signed, regcache_raw_read_unsigned,
1518         regcache_raw_write_signed, regcache_raw_write_unsigned,
1519         regcache_cooked_read_signed, regcache_cooked_read_unsigned,
1520         regcache_cooked_write_signed, regcache_cooked_write_unsigned): Update.
1521         * remote-m32r-sdi.c (m32r_fetch_register): Update.
1522         * remote-mips.c (mips_wait, mips_fetch_registers, mips_xfer_memory):
1523         Update.
1524         * rs6000-aix-tdep.c (rs6000_push_dummy_call, rs6000_return_value,
1525         rs6000_convert_from_func_ptr_addr, branch_dest, 
1526         rs6000_software_single_step): Update.
1527         * rs6000-tdep.c (rs6000_in_function_epilogue_p,
1528         ppc_displaced_step_fixup, ppc_deal_with_atomic_sequence,
1529         bl_to_blrl_insn_p, rs6000_fetch_instruction, skip_prologue,
1530         rs6000_skip_main_prologue, rs6000_skip_trampoline_code,
1531         rs6000_frame_cache): Update.
1532         * s390-tdep.c (s390_pseudo_register_read, s390_pseudo_register_write,
1533         s390x_pseudo_register_read, s390x_pseudo_register_write, s390_load,
1534         s390_backchain_frame_unwind_cache, s390_sigtramp_frame_unwind_cache,
1535         extend_simple_arg, s390_push_dummy_call, s390_return_value): Update.
1536         * scm-exp.c (scm_lreadr): Update.
1537         * scm-lang.c (scm_get_field, scm_unpack): Update.
1538         * scm-valprint.c (scm_val_print): Update.
1539         * score-tdep.c (score_breakpoint_from_pc, score_push_dummy_call,
1540         score_fetch_inst): Update.
1541         * sh64-tdep.c (look_for_args_moves, sh64_skip_prologue_hard_way,
1542         sh64_analyze_prologue, sh64_push_dummy_call, sh64_extract_return_value,
1543         sh64_pseudo_register_read, sh64_pseudo_register_write,
1544         sh64_frame_prev_register): Update:
1545         * sh-tdep.c (sh_analyze_prologue, sh_push_dummy_call_fpu,
1546         sh_push_dummy_call_nofpu, sh_extract_return_value_nofpu,
1547         sh_store_return_value_nofpu, sh_in_function_epilogue_p): Update.
1548         * solib-darwin.c (darwin_load_image_infos): Update.
1549         * solib-frv.c (fetch_loadmap, lm_base, frv_current_sos, enable_break2,
1550         find_canonical_descriptor_in_load_object): Update.
1551         * solib-irix.c (extract_mips_address, fetch_lm_info, irix_current_sos,
1552         irix_open_symbol_file_object): Update.
1553         * solib-som.c (som_solib_create_inferior_hook, link_map_start,
1554         som_current_sos, som_open_symbol_file_object): Update.
1555         * solib-sunos.c (SOLIB_EXTRACT_ADDRESS, LM_ADDR, LM_NEXT, LM_NAME):
1556         Update.
1557         * solib-svr4.c (read_program_header, scan_dyntag_auxv,
1558         solib_svr4_r_ldsomap): Update.
1559         * sparc64-linux-tdep.c (sparc64_linux_step_trap): Update.
1560         * sparc64obsd-tdep.c (sparc64obsd_supply_uthread,
1561         sparc64obsd_collect_uthread): Update.
1562         * sparc64-tdep.c (sparc64_pseudo_register_read,
1563         sparc64_pseudo_register_write, sparc64_supply_gregset,
1564         sparc64_collect_gregset): Update.
1565         * sparc-linux-tdep.c (sparc32_linux_step_trap): Update.
1566         * sparcobsd-tdep.c (sparc32obsd_supply_uthread,
1567         sparc32obsd_collect_uthread): Update.
1568         * sparc-tdep.c (sparc_fetch_wcookie, sparc32_push_dummy_code,
1569         sparc32_store_arguments, sparc32_return_value, sparc_supply_rwindow,
1570         sparc_collect_rwindow): Update.
1571         * spu-linux-nat.c (parse_spufs_run): Update.
1572         * spu-tdep.c (spu_pseudo_register_read_spu,
1573         spu_pseudo_register_write_spu, spu_pointer_to_address,
1574         spu_analyze_prologue, spu_in_function_epilogue_p,
1575         spu_frame_unwind_cache, spu_push_dummy_call, spu_software_single_step,
1576         spu_get_longjmp_target, spu_get_overlay_table, spu_overlay_update_osect,
1577         info_spu_signal_command, info_spu_mailbox_list, info_spu_dma_cmdlist,
1578         info_spu_dma_command, info_spu_proxydma_command): Update.
1579         * stack.c (print_frame_nameless_args, frame_info): Update.
1580         * symfile.c (read_target_long_array, simple_read_overlay_table,
1581         simple_read_overlay_region_table): Update.
1582         * target.c (debug_print_register): Update.
1583         * tramp-frame.c (tramp_frame_start): Update.
1584         * v850-tdep.c (v850_analyze_prologue, v850_push_dummy_call,
1585         v850_extract_return_value, v850_store_return_value, 
1586         * valarith.c (value_binop, value_bit_index): Update.
1587         * valops.c (value_cast): Update.
1588         * valprint.c (val_print_type_code_int, val_print_string,
1589         read_string): Update.
1590         * value.c (unpack_long, unpack_double, unpack_field_as_long,
1591         modify_field, pack_long): Update.
1592         * vax-tdep.c (vax_store_arguments, vax_push_dummy_call,
1593         vax_skip_prologue): Update.
1594         * xstormy16-tdep.c (xstormy16_push_dummy_call,
1595         xstormy16_analyze_prologue, xstormy16_in_function_epilogue_p,
1596         xstormy16_resolve_jmp_table_entry, xstormy16_find_jmp_table_entry,
1597         xstormy16_pointer_to_address, xstormy16_address_to_pointer): Update.
1598         * xtensa-tdep.c (extract_call_winsize, xtensa_pseudo_register_read,
1599         xtensa_pseudo_register_write, xtensa_frame_cache,
1600         xtensa_push_dummy_call, call0_track_op, call0_frame_cache): Update.
1601
1602
1603         * dfp.h (decimal_to_string, decimal_from_string, decimal_from_integral,
1604         decimal_from_floating, decimal_to_doublest, decimal_is_zero): Add
1605         BYTE_ORDER parameter.
1606         (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT
1607         parameters.
1608         (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters.
1609         (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters.
1610         * dfp.c (match_endianness): Add BYTE_ORDER parameter.  Use it
1611         instead of current_gdbarch.
1612         (decimal_to_string, decimal_from_integral, decimal_from_floating,
1613         decimal_to_doublest, decimal_is_zero): Add BYTE_ORDER parameter.
1614         Pass it to match_endianness.
1615         (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT
1616         parameters.  Pass them to match_endianness.
1617         (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters.
1618         Pass them to match_endianness.
1619         (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters.
1620         Pass them to match_endianness.
1621         * valarith.c (value_args_as_decimal): Add BYTE_ORDER_X and
1622         BYTE_ORDER_Y output parameters.
1623         (value_binop): Update call to value_args_as_decimal.
1624
1625         Update calls to decimal_to_string, decimal_from_string,
1626         decimal_from_integral, decimal_from_floating, decimal_to_doublest,
1627         decimal_is_zero, decimal_binop, decimal_compare and decimal_convert
1628         to pass/receive byte order:
1629         * c-exp.y (parse_number): Update.
1630         * printcmd.c (printf_command): Update.
1631         * valarith.c (value_args_as_decimal, value_binop, value_logical_not,
1632         value_equal, value_less): Update.
1633         * valops.c (value_cast, value_one): Update.
1634         * valprint.c (print_decimal_floating): Update.
1635         * value.c (unpack_long, unpack_double): Update.
1636         * python/python-value.c (valpy_nonzero): Update.
1637
1638
1639         * ada-valprint.c (char_at): Add BYTE_ORDER parameter.
1640         (printstr): Update calls to char_at.
1641         (ada_val_print_array): Likewise.
1642         * valprint.c (read_string): Add BYTE_ORDER parameter.
1643         (val_print_string): Update call to read_string.
1644         * c-lang.c (c_get_string): Likewise.
1645         * charset.h (target_wide_charset): Add BYTE_ORDER parameter.
1646         * charset.c (target_wide_charset): Add BYTE_ORDER parameter.
1647         Use it instead of current_gdbarch.
1648         * printcmd.c (printf_command): Update calls to target_wide_charset.
1649         * c-lang.c (charset_for_string_type): Add BYTE_ORDER parameter.
1650         Pass to target_wide_charset.  Use it instead of current_gdbarch.
1651         (classify_type): Add BYTE_ORDER parameter.  Pass to
1652         charset_for_string_type.  Allow NULL encoding pointer.
1653         (print_wchar): Add BYTE_ORDER parameter.
1654         (c_emit_char): Update calls to classify_type and print_wchar.
1655         (c_printchar, c_printstr): Likewise.
1656
1657
1658         * gdbarch.sh (in_solib_return_trampoline): Convert to type "m".
1659         * gdbarch.c, gdbarch.h: Regenerate.
1660         * arch-utils.h (generic_in_solib_return_trampoline): Add GDBARCH
1661         parameter.
1662         * arch-utils.c (generic_in_solib_return_trampoline): Likewise.
1663         * hppa-hpux-tdep.c (hppa_hpux_in_solib_return_trampoline): Likewise.
1664         * rs6000-tdep.c (rs6000_in_solib_return_trampoline): Likewise.
1665         (rs6000_skip_trampoline_code): Update call.
1666
1667         * alpha-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to
1668         dynamic_sigtramp_offset and pc_in_sigtramp callbacks.
1669         (alpha_read_insn): Add GDBARCH parameter.
1670         * alpha-tdep.c (alpha_lds, alpha_sts): Add GDBARCH parameter.
1671         (alpha_register_to_value): Pass architecture to alpha_sts.
1672         (alpha_extract_return_value): Likewise.
1673         (alpha_value_to_register): Pass architecture to alpha_lds.
1674         (alpha_store_return_value): Likewise.
1675         (alpha_read_insn): Add GDBARCH parameter.
1676         (alpha_skip_prologue): Pass architecture to alpha_read_insn.
1677         (alpha_heuristic_proc_start): Likewise.
1678         (alpha_heuristic_frame_unwind_cache): Likewise.
1679         (alpha_next_pc): Likewise.
1680         (alpha_sigtramp_frame_this_id): Pass architecture to
1681         tdep->dynamic_sigtramp_offset callback.
1682         (alpha_sigtramp_frame_sniffer): Pass architecture to
1683         tdep->pc_in_sigtramp callback.
1684         * alphafbsd-tdep.c (alphafbsd_pc_in_sigtramp): Add GDBARCH parameter.
1685         (alphafbsd_sigtramp_offset): Likewise.
1686         * alpha-linux-tdep.c (alpha_linux_sigtramp_offset_1): Add GDBARCH
1687         parameter.  Pass to alpha_read_insn.
1688         (alpha_linux_sigtramp_offset): Add GDBARCH parameter.  Pass to
1689         alpha_linux_sigtramp_offset_1.
1690         (alpha_linux_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
1691         alpha_linux_sigtramp_offset.
1692         (alpha_linux_sigcontext_addr): Pass architecture to alpha_read_insn
1693         and alpha_linux_sigtramp_offset.
1694         * alphanbsd-tdep.c (alphanbsd_sigtramp_offset): Add GDBARCH parameter.
1695         (alphanbsd_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
1696         alphanbsd_sigtramp_offset.
1697         * alphaobsd-tdep.c (alphaobsd_sigtramp_offset): Add GDBARCH parameter.
1698         (alphaobsd_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
1699         alpha_read_insn.
1700         (alphaobsd_sigcontext_addr): Pass architecture to
1701         alphaobsd_sigtramp_offset.
1702         * alpha-osf1-tdep.c (alpha_osf1_pc_in_sigtramp): Add GDBARCH
1703         parameter.
1704
1705         * amd64-tdep.c (amd64_analyze_prologue): Add GDBARCH parameter.
1706         (amd64_skip_prologue): Pass architecture to amd64_analyze_prologue.
1707         (amd64_frame_cache): Likewise.
1708
1709         * arm-tdep.c (SWAP_SHORT, SWAP_INT): Remove.
1710         (thumb_analyze_prologue, arm_skip_prologue, arm_scan_prologue,
1711         thumb_get_next_pc, arm_get_next_pc): Do not use SWAP_ macros.
1712         * arm-wince-tdep.c: Include "frame.h".
1713
1714         * avr-tdep.c (EXTRACT_INSN): Remove.
1715         (avr_scan_prologue): Add GDBARCH argument, inline EXTRACT_INSN.
1716         (avr_skip_prologue): Pass architecture to avr_scan_prologue.
1717         (avr_frame_unwind_cache): Likewise.
1718
1719         * cris-tdep.c (struct instruction_environment): Add BYTE_ORDER member.
1720         (find_step_target): Initialize it.
1721         (get_data_from_address): Add BYTE_ORDER parameter.
1722         (bdap_prefix): Pass byte order to get_data_from_address.
1723         (handle_prefix_assign_mode_for_aritm_op): Likewise.
1724         (three_operand_add_sub_cmp_and_or_op): Likewise.
1725         (handle_inc_and_index_mode_for_aritm_op): Likewise.
1726
1727         * frv-linux-tdep.c (frv_linux_pc_in_sigtramp): Add GDBARCH parameter.
1728         (frv_linux_sigcontext_reg_addr): Pass architecture to
1729         frv_linux_pc_in_sigtramp.
1730         (frv_linux_sigtramp_frame_sniffer): Likewise.
1731
1732         * h8300-tdep.c (h8300_is_argument_spill): Add GDBARCH parameter.
1733         (h8300_analyze_prologue): Add GDBARCH parameter.  Pass to
1734         h8300_is_argument_spill.
1735         (h8300_frame_cache, h8300_skip_prologue): Pass architecture
1736         to h8300_analyze_prologue.
1737
1738         * hppa-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to
1739         in_solib_call_trampoline callback.
1740         (hppa_in_solib_call_trampoline): Add GDBARCH parameter.
1741         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Add GDBARCH
1742         parameter.
1743         (hppa64_push_dummy_call): Pass architecture to
1744         hppa64_convert_code_addr_to_fptr.
1745         (hppa_match_insns): Add GDBARCH parameter.
1746         (hppa_match_insns_relaxed): Add GDBARCH parameter.  Pass to
1747         hppa_match_insns.
1748         (hppa_skip_trampoline_code): Pass architecture to hppa_match_insns.
1749         (hppa_in_solib_call_trampoline): Add GDBARCH parameter.  Pass to
1750         hppa_match_insns_relaxed.
1751         (hppa_stub_unwind_sniffer): Pass architecture to
1752         tdep->in_solib_call_trampoline callback.
1753         * hppa-hpux-tdep.c (hppa_hpux_search_pattern): Add GDBARCH parameter.
1754         (hppa32_hpux_search_dummy_call_sequence): Pass architecture to
1755         hppa_hpux_search_pattern.
1756         * hppa-linux-tdep.c (insns_match_pattern): Add GDBARCH parameter.
1757         (hppa_linux_sigtramp_find_sigcontext): Add GDBARCH parameter.
1758         Pass to insns_match_pattern.
1759         (hppa_linux_sigtramp_frame_unwind_cache): Pass architecture to
1760         hppa_linux_sigtramp_find_sigcontext.
1761         (hppa_linux_sigtramp_frame_sniffer): Likewise.
1762         (hppa32_hpux_in_solib_call_trampoline): Add GDBARCH parameter.
1763         (hppa64_hpux_in_solib_call_trampoline): Likewise.
1764
1765         * i386-tdep.c (i386_follow_jump): Add GDBARCH parameter.
1766         (i386_analyze_frame_setup): Add GDBARCH parameter.
1767         (i386_analyze_prologue): Add GDBARCH parameter.  Pass to
1768         i386_follow_jump and i386_analyze_frame_setup.
1769         (i386_skip_prologue): Pass architecture to i386_analyze_prologue
1770         and i386_follow_jump.
1771         (i386_frame_cache): Pass architecture to i386_analyze_prologue.
1772         (i386_pe_skip_trampoline_code): Add FRAME parameter.
1773         * i386-tdep.h (i386_pe_skip_trampoline_code): Add FRAME parameter.
1774         * i386-cygwin-tdep.c (i386_cygwin_skip_trampoline_code): Pass
1775         frame to i386_pe_skip_trampoline_code.
1776
1777         * ia64-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter
1778         to sigcontext_register_address callback.
1779         * ia64-tdep.c (ia64_find_global_pointer): Add GDBARCH parameter.
1780         (ia64_find_unwind_table): Pass architecture to
1781         ia64_find_global_pointer.
1782         (find_extant_func_descr): Add GDBARCH parameter.
1783         (find_func_descr): Pass architecture to find_extant_func_descr
1784         and ia64_find_global_pointer.
1785         (ia64_sigtramp_frame_init_saved_regs): Pass architecture to
1786         tdep->sigcontext_register_address callback.
1787         * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Add
1788         GDBARCH parameter.
1789
1790         * iq2000-tdep.c (iq2000_scan_prologue): Add GDBARCH parameter.
1791         (iq2000_frame_cache): Pass architecture to iq2000_scan_prologue.
1792
1793         * lm32-tdep.c (lm32_analyze_prologue): Add GDBARCH parameter.
1794         (lm32_skip_prologue, lm32_frame_cache): Pass architecture to
1795         lm32_analyze_prologue.
1796
1797         * m32r-tdep.c (decode_prologue): Add GDBARCH parameter.
1798         (m32r_skip_prologue): Pass architecture to decode_prologue.
1799
1800         * m68hc11-tdep.c (m68hc11_analyze_instruction): Add GDBARCH parameter.
1801         (m68hc11_scan_prologue): Pass architecture to
1802         m68hc11_analyze_instruction.
1803
1804         * m68k-tdep.c (m68k_analyze_frame_setup): Add GDBARCH parameter.
1805         (m68k_analyze_prologue): Pass architecture to
1806         m68k_analyze_frame_setup.
1807
1808         * m88k-tdep.c (m88k_fetch_instruction): Add BYTE_ORDER parameter.
1809         (m88k_analyze_prologue): Add GDBARCH parameter.  Pass byte order
1810         to m88k_fetch_instruction.
1811         (m88k_skip_prologue): Pass architecture to m88k_analyze_prologue.
1812         (m88k_frame_cache): Likewise.
1813
1814         * mep-tdep.c (mep_get_insn): Add GDBARCH parameter.
1815         (mep_analyze_prologue): Pass architecture to mep_get_insn.
1816
1817         * mips-tdep.c (mips_fetch_instruction): Add GDBARCH parameter.
1818         (mips32_next_pc): Pass architecture to mips_fetch_instruction.
1819         (deal_with_atomic_sequence): Likewise.
1820         (unpack_mips16): Add GDBARCH parameter, pass to mips_fetch_instruction.
1821         (mips16_scan_prologue): Likewise.
1822         (mips32_scan_prologue): Likewise.
1823         (mips16_in_function_epilogue_p): Likewise.
1824         (mips32_in_function_epilogue_p): Likewise.
1825         (mips_about_to_return): Likewise.
1826         (mips_insn16_frame_cache): Pass architecture to mips16_scan_prologue.
1827         (mips_insn32_frame_cache): Pass architecture to mips32_scan_prologue.
1828         (mips_skip_prologue): Pass architecture to mips16_scan_prologue
1829         and mips32_scan_prologue.
1830         (mips_in_function_epilogue_p): Pass architecture to
1831         mips16_in_function_epilogue_p and
1832         mips32_in_function_epilogue_p.
1833         (heuristic_proc_start): Pass architecture to mips_fetch_instruction
1834         and mips_about_to_return.
1835         (mips_skip_mips16_trampoline_code): Pass architecture to
1836         mips_fetch_instruction.
1837         (fetch_mips_16): Add GDBARCH parameter.
1838         (mips16_next_pc): Pass architecture to fetch_mips_16.
1839         (extended_mips16_next_pc): Pass architecture to unpack_mips16 and
1840         fetch_mips_16.
1841
1842         * objc-lang.c (read_objc_method, read_objc_methlist_nmethods,
1843         read_objc_methlist_method, read_objc_object, read_objc_super,
1844         read_objc_class): Add GDBARCH parameter.
1845         (find_implementation_from_class): Add GDBARCH parameter, pass
1846         to read_objc_class, read_objc_methlist_nmethods, and
1847         read_objc_methlist_method.
1848         (find_implementation): Add GDBARCH parameter, pass to
1849         read_objc_object and find_implementation_from_class.
1850         (resolve_msgsend, resolve_msgsend_stret): Pass architecture
1851         to find_implementation.
1852         (resolve_msgsend_super, resolve_msgsend_super_stret): Pass
1853         architecture to read_objc_super and find_implementation_from_class.
1854
1855         * ppc64-linux-tdep.c (ppc64_desc_entry_point): Add GDBARCH parameter.
1856         (ppc64_standard_linkage1_target, ppc64_standard_linkage2_target,
1857         ppc64_standard_linkage3_target): Pass architecture to
1858         ppc64_desc_entry_point.
1859         * rs6000-tdep.c (bl_to_blrl_insn_p): Add BYTE_ORDER parameter.
1860         (skip_prologue): Pass byte order to bl_to_blrl_insn_p.
1861         (rs6000_fetch_instruction): Add GDBARCH parameter.
1862         (rs6000_skip_stack_check): Add GDBARCH parameter, pass to
1863         rs6000_fetch_instruction.
1864         (skip_prologue): Pass architecture to rs6000_fetch_instruction.
1865         
1866         * remote-mips.c (mips_store_word): Return old_contents as host
1867         integer value instead of target bytes.
1868
1869         * s390-tdep.c (struct s390_prologue_data): Add BYTE_ORDER member.
1870         (s390_analyze_prologue): Initialize it.
1871         (extend_simple_arg): Add GDBARCH parameter.
1872         (s390_push_dummy_call): Pass architecture to extend_simple_arg.
1873
1874         * scm-lang.c (scm_get_field): Add BYTE_ORDER parameter.
1875         * scm-lang.h (scm_get_field): Add BYTE_ORDER parameter.
1876         (SCM_CAR, SCM_CDR): Pass SCM_BYTE_ORDER to scm_get_field.
1877         * scm-valprint.c (scm_scmval_print): Likewise.
1878         (scm_scmlist_print, scm_ipruk, scm_scmval_print): Define
1879         SCM_BYTE_ORDER.
1880
1881         * sh64-tdep.c (look_for_args_moves): Add GDBARCH parameter.
1882         (sh64_skip_prologue_hard_way): Add GDBARCH parameter, pass to
1883         look_for_args_moves.
1884         (sh64_skip_prologue): Pass architecture to
1885         sh64_skip_prologue_hard_way.
1886         * sh-tdep.c (sh_analyze_prologue): Add GDBARCH parameter.
1887         (sh_skip_prologue): Pass architecture to sh_analyze_prologue.
1888         (sh_frame_cache): Likewise.
1889
1890         * solib-irix.c (extract_mips_address): Add GDBARCH parameter.
1891         (fetch_lm_info, irix_current_sos, irix_open_symbol_file_object):
1892         Pass architecture to extract_mips_address.
1893
1894         * sparc-tdep.h (sparc_fetch_wcookie): Add GDBARCH parameter.
1895         * sparc-tdep.c (sparc_fetch_wcookie): Add GDBARCH parameter.
1896         (sparc_supply_rwindow, sparc_collect_rwindow): Pass architecture
1897         to sparc_fetch_wcookie.
1898         (sparc32_frame_prev_register): Likewise.
1899         * sparc64-tdep.c (sparc64_frame_prev_register): Likewise.
1900         * sparc32nbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise.
1901         * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise.
1902
1903         * spu-tdep.c (spu_analyze_prologue): Add GDBARCH parameter.
1904         (spu_skip_prologue): Pass architecture to spu_analyze_prologue.
1905         (spu_virtual_frame_pointer): Likewise.
1906         (spu_frame_unwind_cache): Likewise.
1907         (info_spu_mailbox_list): Add BYTE_ORER parameter.
1908         (info_spu_mailbox_command): Pass byte order to info_spu_mailbox_list.
1909         (info_spu_dma_cmdlist): Add BYTE_ORER parameter.
1910         (info_spu_dma_command, info_spu_proxydma_command): Pass byte order
1911         to info_spu_dma_cmdlist.
1912
1913         * symfile.c (read_target_long_array): Add GDBARCH parameter.
1914         (simple_read_overlay_table, simple_read_overlay_region_table,
1915         simple_overlay_update_1): Pass architecture to read_target_long_array.
1916
1917         * v850-tdep.c (v850_analyze_prologue): Add GDBARCH parameter.
1918         (v850_frame_cache): Pass architecture to v850_analyze_prologue.
1919
1920         * xstormy16-tdep.c (xstormy16_analyze_prologue): Add GDBARCH
1921         parameter.
1922         (xstormy16_skip_prologue, xstormy16_frame_cache): Pass architecture
1923         to xstormy16_analyze_prologue.
1924         (xstormy16_resolve_jmp_table_entry): Add GDBARCH parameter.
1925         (xstormy16_find_jmp_table_entry): Likewise.
1926         (xstormy16_skip_trampoline_code): Pass architecture to
1927         xstormy16_resolve_jmp_table_entry.
1928         (xstormy16_pointer_to_address): Likewise.
1929         (xstormy16_address_to_pointer): Pass architecture to
1930         xstormy16_find_jmp_table_entry.
1931
1932         * xtensa-tdep.c (call0_track_op): Add GDBARCH parameter.
1933         (call0_analyze_prologue): Add GDBARCH parameter, pass to
1934         call0_track_op.
1935         (call0_frame_cache): Pass architecture to call0_analyze_prologue.
1936         (xtensa_skip_prologue): Likewise.
1937
1938 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
1939
1940         * defs.h (strlen_paddr, paddr, paddr_nz): Remove.
1941         (paddress): Add GDBARCH parameter.
1942         * utils.c (strlen_paddr, paddr, paddr_nz): Remove.
1943         (paddress): Add GDBARCH parameter, use it instead of current_gdbarch.
1944         * ui-out.h (ui_out_field_core_addr): Add GDBARCH parameter.
1945         * ui-out.c (ui_out_field_core_addr): Add GDBARCH parameter,
1946         use it instead of current_gdbarch.
1947
1948         Update calls to ui_out_field_core_addr to pass architecture:
1949         * ada-lang.c (print_one_exception): Update.
1950         * breakpoint.c (print_one_breakpoint_location,
1951         print_one_exception_catchpoint): Update.
1952         * disasm.c (dump_insns): Update.
1953         * darwin-nat-info.c (darwin_debug_regions_recurse): Update.
1954         * mi/mi-main.c (mi_cmd_data_read_memory): Update.
1955         * mi/mi-symbol-cmds.c: Include "objfiles.h".
1956         (mi_cmd_symbol_list_lines): Update.
1957         * stack.c (print_frame_info, print_frame): Update.
1958
1959         Update callers of paddress to pass architecture:
1960         * ada-tasks.c (info_task): Update.
1961         * ada-valprint.c (ada_val_print_1): Update.
1962         * annotate.c (annotate_source, annotate_frame_begin): Update.
1963         * breakpoint.c (insert_bp_location, describe_other_breakpoints,
1964         mention): Update.
1965         * cli/cli-cmds.c (edit_command, list_command, print_disassembly):
1966         Update.
1967         * corefile.c (memory_error): Update.
1968         * c-valprint.c (print_function_pointer_address, c_val_print): Update.
1969         * disasm.c (dis_asm_print_address): Update.
1970         * exec.c (print_section_info): Update.
1971         * f-valprint.c (f_val_print): Update.
1972         * infcmd.c: Include "arch-utils.h".
1973         (jump_command, program_info): Update.
1974         * linux-fork.c: Include "arch-utils.h".
1975         (info_forks_command): Update.
1976         * m2-valprint.c (print_function_pointer_address,
1977         print_unpacked_pointer, print_variable_at_address,
1978         m2_val_print): Update.
1979         * m32r-rom.c (m32r_load_section, m32r_load, m32r_upload_command):
1980         Update.
1981         * printcmd.c (print_address, print_address_demangle, address_info):
1982         Update.
1983         * p-valprint.c (pascal_val_print): Update.
1984         * source.c: Include "arch-utils.h".
1985         (line_info): Update.
1986         * stack.c (frame_info, print_block_frame_labels): Update.
1987         * symfile.c (add_symbol_file_command, list_overlays_command): Update.
1988         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1,
1989         print_symbol, print_partial_symbols, maintenance_info_psymtabs,
1990         maintenance_check_symtabs): Update.
1991         * symtab.c (find_pc_sect_symtab): Update.
1992         * target.c (deprecated_debug_xfer_memory): Update.
1993         * tracepoint.c (scope_info): Update.
1994         * tui/tui-stack.c (tui_make_status_line): Update.
1995         * valprint.c (val_print_string): Update.
1996
1997         Update callers of paddr_nz to use paddress instead (keeping
1998         user-visible output identical):
1999         * alpha-tdep.c (alpha_heuristic_proc_start): Update.
2000         * amd64-tdep.c (fixup_riprel, amd64_displaced_step_copy_insn,
2001         amd64_displaced_step_fixup): Update.
2002         * arch-utils.c (simple_displaced_step_copy_insn): Update.
2003         * auxv.c (fprint_target_auxv): Update.
2004         * breakpoint.c (insert_single_step_breakpoint): Update.
2005         * buildsym.c (finish_block): Update.
2006         * cli/cli-dump.c (restore_section_callback): Update.
2007         * fbsd-nat.c (fbsd_find_memory_regions): Update.
2008         * frame.c (frame_unwind_register_value): Update.
2009         * gcore.c (gcore_create_callback): Update.
2010         * hppa-tdep.c (hppa_frame_cache, hppa_skip_trampoline_code): Update.
2011         * i386-tdep.c (i386_displaced_step_fixup, i386_record_modrm,
2012         i386_record_lea_modrm_addr, i386_record_lea_modrm,
2013         i386_process_record): Update.
2014         * ia64-tdep.c (ia64_frame_this_id, ia64_sigtramp_frame_this_id,
2015         ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id,
2016         ia64_dummy_id, ia64_access_reg, ia64_access_rse_reg): Update.
2017         * infrun.c (displaced_step_prepare, displaced_step_fixup,
2018         handle_inferior_event, insert_step_resume_breakpoint_at_sal,
2019         insert_longjmp_resume_breakpoint): Update.
2020         * linux-nat.c (linux_nat_find_memory_regions): Update.
2021         * linux-record.c (record_linux_system_call): Update.
2022         * mips-tdep.c (heuristic_proc_start, mips_eabi_push_dummy_call,
2023         mips_n32n64_push_dummy_call, mips_o32_push_dummy_call,
2024         mips_o64_push_dummy_call): Update.
2025         * monitor.c (monitor_error, monitor_remove_breakpoint): Update.
2026         * record.c (record_arch_list_add_mem, record_wait,
2027         record_xfer_partial): Update.
2028         * remote-mips.c (mips_fetch_word, mips_check_lsi_error,
2029         mips_common_breakpoint): Update.
2030         * remote-sim.c (gdbsim_xfer_inferior_memory): Update.
2031         * rs6000-tdep.c (ppc_displaced_step_fixup): Update.
2032         * solib-som.c (som_current_sos): Update.
2033         * symfile.c (load_progress, generic_load): Update.
2034         * symfile-mem.c (add_vsyscall_page): Update.
2035         * valops.c (value_fetch_lazy): Update.
2036         * windows-tdep.c (windows_xfer_shared_library): Update.
2037
2038         Update callers of paddr_nz to use paddress instead (changing
2039         user-visible output to make it more correct):
2040         * dwarf2loc.c (locexpr_describe_location): Update.
2041         * ia64-tdep.c (ia64_memory_insert_breakpoint,
2042         ia64_memory_remove_breakpoint): Update.
2043         * jv-valprint.c (java_value_print): Update.
2044         * m32c-tdep.c (m32c_m16c_address_to_pointer): Update.
2045         * monitor.c (monitor_read_memory): Update.
2046
2047         Update callers of paddr to use paddress instead (changing
2048         user-visible output to make it more correct):
2049         * arm-tdep.c (arm_push_dummy_call): Update.
2050         * breakpoint.c (insert_bp_location, create_thread_event_breakpoint,
2051         create_breakpoint): Update.
2052         * darwin-nat-info.c (darwin_debug_regions): Update.
2053         * dcache.c (dcache_info): Update.
2054         * dsrec.c (load_srec, make_srec): Update.
2055         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program,
2056         dwarf2_frame_cache): Update.
2057         * gcore.c (gcore_copy_callback): Update.
2058         * gnu-nat.c (gnu_xfer_memory): Update.
2059         * mips-linux-nat.c (mips_show_dr): Update.
2060         * monitor.c (monitor_write_memory, monitor_insert_breakpoint,
2061         monitor_remove_breakpoint): Update.
2062         * remote.c (compare_sections_command): Update.
2063         * remote-m32r-sdi.c (m32r_xfer_memory, m32r_insert_breakpoint,
2064         m32r_remove_breakpoint, m32r_insert_watchpoint,
2065         m32r_remove_watchpoint): Update.
2066         * sol-thread.c (info_cb): Update.
2067         * symfile.c (load_progress): Update.
2068
2069         Update callers of paddress or paddr_nz to use hex_string instead
2070         (changes output of internal/error/debug messages only):
2071         * dwarf2read.c (dump_die_shallow): Update.
2072         * frame.c (fprint_field, fprint_frame, frame_pc_unwind,
2073         get_frame_func, create_new_frame): Update.
2074         * hppa-tdep.c (find_unwind_entry, unwind_command): Update.
2075         * ia64-tdep.c (get_kernel_table, ia64_find_proc_info_x,
2076         ia64_get_dyn_info_list): Update.
2077         * maint.c (maintenance_translate_address): Update.
2078         * mi/mi-cmd-var.c (mi_cmd_var_create): Update.
2079         * target.c (target_flash_erase): Update.
2080
2081         Update callers of paddr/paddr_nz to use phex/phex_nz instead,
2082         using an appropriate address size.  Remove use of strlen_paddr.
2083         * exec.c (exec_files_info): Update.
2084         * i386-nat.c (i386_show_dr): Update.
2085         * remote.c (remote_flash_erase): Update.
2086         * m32r-rom.c (m32r_load_section): Update.
2087         * monitor.c (monitor_vsprintf, monitor_store_register): Update.
2088         * remote.c (remote_check_symbols, remote_search_memory): Update.
2089         * remote-mips.c (mips_request, mips_common_breakpoint): Update.
2090         * scm-valprint.c (scm_ipruk, scm_scmval_print): Update.
2091         * sh64-tdep.c (sh64_show_media_regs, sh64_show_compact_regs): Update.
2092         * sh-tdep.c (sh_generic_show_regs, sh3_show_regs, sh2e_show_regs,
2093         sh2a_show_regs, sh2a_nofpu_show_regs, sh3e_show_regs,
2094         sh3_dsp_show_regs, sh4_show_regs, sh4_nofpu_show_regs,
2095         sh_dsp_show_regs): Update.
2096         * xcoffsolib.c (sharedlibrary_command): Update.
2097
2098
2099         * maint.c (maint_print_section_info): Add ADDR_SIZE parameter.
2100         Use hex_string_custom instead of paddr.
2101         (print_bfd_section_info): Pass address size.
2102         (print_objfile_section_info): Likewise.
2103
2104         * annotate.h (annotate_source): Add GDBARCH parameter.
2105         (annotate_frame_begin): Likewise.
2106         * annotate.c (annotate_source): Add GDBARCH parameter.
2107         (annotate_frame_begin): Likewise.
2108         * source.c (identify_source_line): Update call to annotate_source.
2109         * stack.c (print_frame_info, print_frame): Update call to
2110         annotate_frame_begin.
2111
2112         * breakpoint.c (describe_other_breakpoints): Add GDBARCH parameter.
2113         (create_breakpoint, create_ada_exception_breakpoint): Update call.
2114
2115         * stack.c (print_block_frame_labels): Add GDBARCH parameter.
2116         (print_frame_label_vars): Update call.
2117
2118         * symmisc.c (print_partial_symbols): Add GDBARCH parameter.
2119         (dump_psymtab): Update call to print_partial_symbols.
2120         (struct print_symbol_args): Add GDBARCH member.
2121         (dump_symtab_1): Set print_symbol_args architecture member.
2122         (print_symbol): Use it.
2123
2124         * windows-tdep.h (windows_xfer_shared_library): Add GDBARCH
2125         parameter.
2126         * windows-tdep.c (windows_xfer_shared_library): Likewise.
2127         * i386-cygwin-tdep.c (struct cpms_data): Add GDBARCH member.
2128         (core_process_module_section): Pass architecture from cpms_data to
2129         windows_xfer_shared_library.
2130         (windows_core_xfer_shared_libraries): Initialize cmps_data 
2131         architecture member.
2132         * windows-nat.c (windows_xfer_shared_libraries): Pass architecture
2133         to windows_xfer_shared_library.
2134
2135         * defs.h (print_address): Add GDBARCH parameter.
2136         * printcmd.c (print_address): Add GDBARCH parameter.
2137         (print_scalar_formatted, do_examine): Update call.
2138         * findcmd.c (find_command): Update call.
2139         * tracepoint.c: Include "arch-utils.h".
2140         (trace_find_line_command): Update call.
2141         * tui/tui-disasm.c (tui_disassemble): Update call.
2142
2143         * value.h (print_address_demangle): Add GDBARCH parameter.
2144         * printcmd.c (print_address_demangle): Add GDBARCH parameter.
2145         * c-valprint.c (print_function_pointer_address, c_val_print):
2146         Update call.
2147         * f-valprint.c (f_val_print): Update call.
2148         * gnu-v3-abi.c (gnuv3_print_method_ptr): Update call.
2149         * jv-valprint.c (java_val_print): Update call.
2150         * m2-valprint.c (print_function_pointer_address, m2_val_print):
2151         Update call.
2152         * p-valprint.c (pascal_val_print): Update call.
2153
2154         * disasm.c (gdb_disassemble_info): Install architecture into
2155         di.application_data field.
2156
2157 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2158
2159         * disasm.h (gdb_disassembly): Add GDBARCH parameter.
2160         (gdb_print_insn): Likewise.
2161         * disasm.c (dump_insns): Add GDBARCH parameter.  Use it instead
2162         of current_gdbarch.
2163         (do_mixed_source_and_assembly): Add GDBARCH parameter.  Pass to
2164         dump_insns.
2165         (do_assembly_only): Likewise.
2166         (gdb_disassembly): Add GDBARCH parameter.  Use it instead of
2167         current_gdbarch.  Pass to subroutines.
2168         (gdb_print_insn): Add GDBARCH parameter.  Use it instead of
2169         current_gdbarch.
2170
2171         * stack.c (struct gdb_disassembly_stub_args): Add GDBARCH member.
2172         (gdb_disassembly_stub): Pass architecture to gdb_disassembly.
2173         (do_gdb_disassembly): Add GDBARCH argument.  Store into args.
2174         (print_frame_info): Pass architecture to do_gdb_disassembly.
2175
2176         * printcmd.c (print_formatted): Pass architecture to gdb_print_insn.
2177
2178         * mi/mi-cmd-disas.c: Include "arch-utils.h"
2179         (mi_cmd_disassemble): Pass architecture to gdb_disassembly.
2180
2181         * cli/cli-cmds.c: Include "arch-utils.h".
2182         (print_disassembly): Add GDBARCH parameter.  Pass to gdb_disassembly
2183         and tui_show_assembly.
2184         (disassemble_current_function): Pass architecture to
2185         tui_get_low_disassembly_address and print_disassembly.
2186         (disassemble_command): Pass architecture to
2187         tui_get_low_disassembly_address and print_disassembly.
2188
2189         * tui/tui.c (tui_show_assembly): Add GDBARCH parameter.  Pass to
2190         tui_update_source_windows_with_addr.
2191
2192         * tui/tui-data.h (struct tui_locator_element): Add GDBARCH member.
2193         (struct tui_source_info): Likewise.
2194         * tui/tui-data.c (tui_clear_win_detail): Clear source_info.gdbarch.
2195
2196         * tui/tui-disasm.c (tui_disassemble): Add GDBARCH parameter.
2197         Pass to gdb_print_insn.
2198         (tui_find_disassembly_address): Add GDBARCH parameter.  Pass to
2199         tui_disassemble.
2200         (tui_set_disassem_content): Add GDBARCH parameter.  Install into
2201         source_info.gdbarch.  Pass to tui_disassemble.
2202         (tui_show_disassem): Add GDBARCH parameter.  Pass to 
2203         tui_update_source_window.
2204         (tui_show_disassem_and_update_source): Add GDBARCH parameter.  Pass to
2205         tui_show_disassem and tui_update_source_window.
2206
2207         (tui_get_begin_asm_address): Return locator architecture in addition
2208         to locator PC value.
2209
2210         (tui_get_low_disassembly_address): Add GDBARCH parameter.   Pass to
2211         tui_get_low_disassembly_address.
2212
2213         (tui_vertical_disassem_scroll): Pass architecture to subroutines.
2214
2215         * tui/tui-disasm.h (tui_set_disassem_content): Add GDBARCH parameter.
2216         (tui_show_disassem): Likewise.
2217         (tui_show_disassem_and_update_source): Likewise.
2218         (tui_get_begin_asm_address): Return architecture and PC value.
2219
2220         * tui/tui.h (tui_get_low_disassembly_address): Add GDBARCH parameter.
2221         (tui_show_assembly): Add GDBARCH parameter.
2222
2223         * tui/tui-layout.c (extract_display_start_addr): Return current window
2224         architecture in addition to current PC value.
2225
2226         (tui_set_layout): Update calls to tui_get_low_disassembly_address and
2227         extract_display_start_addr.  Pass architecture to
2228         tui_update_source_windows_with_addr.
2229
2230         * tui/tui-source.c: Include "objfiles.h".
2231         (tui_set_source_content): Initialize window architecture.
2232         (tui_show_symtab_source): Add GDBARCH parameter.  Pass to
2233         tui_update_source_window_as_is
2234
2235         * tui/tui-source.h (tui_show_symtab_source): Add GDBARCH parameter.
2236
2237         * tui/tui-stack.c (tui_set_locator_info): Add GDBARCH parameter.
2238         Install locator architecture.
2239         (tui_set_locator_filename): Update call.
2240         (tui_show_frame_info): Pass architecture to tui_set_locator_info
2241         and subroutines.
2242
2243         * tui/tui-win.c (make_visible_with_new_height): Pass architecture
2244         to tui_update_source_window.
2245
2246         * tui/tui-winsource.c: Include "objfiles.h".
2247         (tui_display_main): Update call to tui_get_begin_asm_address.
2248         Pass architecture to tui_update_source_windows_with_addr.
2249         (tui_update_source_window): Add GDBARCH parameter.  Pass to
2250         tui_update_source_window_as_is.
2251         (tui_update_source_window_as_is): Add GDBARCH parameter.
2252         Pass to tui_set_disassem_content.
2253         (tui_update_source_windows_with_addr): Add GDBARCH parameter.
2254         Pass to subroutines.
2255         (tui_update_source_windows_with_line): Pass objfile architecture
2256         to subroutines.
2257         (tui_horizontal_source_scroll): Pass architecture to 
2258         tui_update_source_window_as_is.
2259         
2260         * tui/tui-winsource.h (tui_update_source_window): Add GDBARCH
2261         parameter.
2262         (tui_update_source_window_as_is): Likewise.
2263         (tui_update_source_windows_with_addr): Likewise.
2264
2265 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2266
2267         * breakpoint.h (struct breakpoint): New member GDBARCH.
2268         * breakpoint.c: Include "arch-utils.h".
2269         (set_raw_breakpoint_without_location): Add GDBARCH parameter.
2270         Use it to set breakpoint architecture.
2271         (set_raw_breakpoint): Add GDBARCH parameter.
2272         (create_internal_breakpoint): Likewise.
2273         (create_catchpoint): Likewise.
2274         (create_fork_vfork_event_catchpoint): Likewise.
2275         (create_breakpoint): Likewise.
2276         (create_breakpoints): Likewise.
2277         (break_command_really): Likewise.
2278         (create_ada_exception_breakpoint): Likewise.
2279         Update local callers to pass architecture:
2280         (create_internal_breakpoint): Update.
2281         (create_overlay_event_breakpoint): Update.
2282         (create_longjmp_master_breakpoint): Update.
2283         (create_thread_event_breakpoint): Update.
2284         (create_solib_event_breakpoint): Update.
2285         (create_catchpoint): Update.
2286         (create_fork_vfork_event_catchpoint): Update.
2287         (set_momentary_breakpoint): Update.
2288         (clone_momentary_breakpoint): Update.
2289         (create_breakpoint): Update.
2290         (create_breakpoints): Update.
2291         (break_command_really): Update.
2292         (break_command_1): Update.
2293         (set_breakpoint): Update.
2294         (watch_command_1): Update.
2295         (catch_fork_command_1): Update.
2296         (catch_exec_commnd_1): Update.
2297         (handle_gnu_v3_exceptions): Update.
2298         (create_ada_exception_breakpoint): Update.
2299         (catch_ada_exception_command): Update.
2300         (catch_assert_command): Update.
2301         (trace_command): Update.
2302
2303         * breakpoint.h (struct bp_location): New member GDBARCH.
2304         * breakpoint.c (get_sal_arch): New function.
2305         (set_raw_breakpoint): Set location architecture.
2306         (add_location_to_breakpoint): Likewise.
2307         (clone_momentary_breakpoint): Likewise.
2308         (watch_command_1): Likewise.
2309         (update_watchpoint): Likewise.
2310         (bp_loc_is_permanent): Use location architecture instead of
2311         current_gdbarch.
2312         (adjust_breakpoint_address): Add GDBARCH parameter; use it
2313         instead of current_gdbarch.
2314         Update callers of adjust_breakpoint_address to pass
2315         breakpoint location architecture:
2316         (set_raw_breakpoint): Update.
2317         (watch_command_1): Update.
2318
2319         * tracepoint.c: (collect_symbol): Add GDBARCH parameter, use instead
2320         of current_gdbarch.
2321         (add_local_symbols): Add GDBARCH parameter.  Pass to collect_symbol.
2322         (encode_actions): Pass tracepoint architecture to add_local_symbols
2323         (encode_actions): Use tracepoint architecture instead of
2324         current_gdbarch.  Pass it to add_local_symbols and collect_symbol.
2325
2326         * breakpoint.h (struct breakpoint_ops): Replace last_addr parameter
2327         of print_one callback with last_loc.
2328         * breakpoint.c (print_one_breakpoint_location): Replace last_addr
2329         parameter with last_loc.
2330         (print_one_breakpoint): Likewise.
2331         (do_captured_breakpoint_query): Update call.
2332         (breakpoint_1): Pass last_loc instead of last_addr to
2333         print_one_breakpoint.  Pass last location architecture instead of
2334         current_gdbarch to set_next_address.
2335         Update all implementations of the print_one callback:
2336         * breakpoint.c (print_one_catch_fork): Update.
2337         (print_one_catch_vfork): Update.
2338         (print_one_catch_exec): Update.
2339         (print_one_exception_catchpoint): Update.
2340         * ada-lang.c (print_one_exception): Update.
2341         (print_one_catch_exception): Update.
2342         (print_one_catch_exception_unhandled): Update.
2343         (print_one_catch_assert): Update.
2344
2345         * breakpoint.c (print_one_breakpoint_location): Add PRINT_ADDRESS_BITS
2346         parameter.  Use it instead of gdbarch_addr_bit (current_gdbarch).
2347         (print_one_breakpoint): Add PRINT_ADDRESS_BITS parameter and pass it
2348         to print_one_breakpoint_location.
2349         (breakpoint_address_bits): New function.
2350         (do_captured_breakpoint_query): Compute number of address bits to print
2351         and pass it to print_one_breakpoint.
2352         (breakpoint_1): Likewise.  Use it instead of current_gdbarch.
2353
2354         * breakpoint.h (create_thread_event_breakpoint): Add GDBARCH.
2355         * breakpoint.c (create_thread_event_breakpoint): Likewise.
2356         Update callers to create_thread_event_breakpoint:
2357         * aix-thread.c (pd_enable): Update.
2358         * linux-thread-db.c (enable_thread_event): Update.
2359
2360         * breakpoint.h (create_solib_event_breakpoint): Add GDBARCH.
2361         * breakpoint.c (create_solib_event_breakpoint): Likewise.
2362         Update callers to create_solib_event_breakpoint:
2363         * solib-frv.c (enable_break, enable_break2): Update.
2364         * solib-pa64.c (pa64_solib_create_inferior_hook): Update.
2365         * solib-som.c (som_solib_create_inferior_hook): Update.
2366         * solib-darwin.c (darwin_solib_create_inferior_hook): Update.
2367         * solib-svr4.c (enable_break): Update.
2368
2369         * breakpoint.h (insert_single_step_breakpoint): Add GDBARCH.
2370         * breakpoint.c (insert_single_step_breakpoint): Likewise.
2371         Update callers to insert_single_step_breakpoint:
2372         * alpha-tdep.c (alpha_software_single_step): Update.
2373         * arm-linux-tdep.c (arm_linux_software_single_step): Update.
2374         * arm-tdep.c (arm_software_single_step): Update.
2375         * cris-tdep.c (cris_software_single_step): Update.
2376         * rs6000-aix-tdep.c (rs6000_software_single_step): Update.
2377         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Update.
2378         * sparc-tdep.c (sparc_software_single_step): Update.
2379         * spu-tdep.c (spu_software_single_step): Update.
2380         * mips-tdep.c (deal_with_atomic_sequence): Add GDBARCH parameter.
2381         Pass it to insert_single_step_breakpoint.
2382         (mips_software_single_step): Pass architecture to
2383         deal_with_atomic_sequence and insert_single_step_breakpoint.
2384
2385         * breakpoint.h (deprecated_insert_raw_breakpoint): Add GDBARCH.
2386         (deprecated_remove_raw_breakpoint): Likewise.
2387         * breakpoint.c (deprecated_insert_raw_breakpoint): Add GDBARCH.
2388         (deprecated_remove_raw_breakpoint): Likewise.
2389         Update callers to deprecated_insert_raw_breakpoint and
2390         deprecated_remove_raw_breakpoint:
2391         * breakpoint.c (single_step_gdbarch): New static variable.
2392         (insert_single_step_breakpoint): Pass GDBARCH parameter to
2393         deprecated_insert_raw_breakpoint.  Store it in single_step_gdbarch.
2394         (remove_single_step_breakpoints): Pass architecture stored in
2395         single_step_gdbarch to deprecated_remove_raw_breakpoint.
2396         * rs6000-nat.c (exec_one_dummy_insn): Update.
2397         * solib-irix.c (enable_break, disable_break): Update.
2398         * procfs.c (procfs_mourn_inferior): Update.
2399         (remove_dbx_link_breakpoint): Update.
2400
2401         * breakpoint.h (set_breakpoint): Add GDBARCH parameter.
2402         (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise.
2403         * breakpoint.c (set_breakpoint): Add GDBARCH parameter.
2404         (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise.
2405         Update callers to set_breakpoint, set_momentary_breakpoint and
2406         set_momentary_breakpoint_at_pc:
2407         * breakpoint.c (set_momentary_breakpoint_at_pc): Update.
2408         (until_break_command): Update.
2409         * infcall.c (call_function_by_hand): Update.
2410         * infcmd.c (finish_backward, finish_forward): Update.
2411         * infrun.c (insert_step_resume_breakpoint_at_sal): Add GDBARCH
2412         parameter.  Pass it to set_momentary_breakpoint.
2413         (insert_longjmp_resume_breakpoint): Add GDBARCH parameter.
2414         Pass it to set_momentary_breakpoint_at_pc.
2415         (handle_inferior_event): Update.
2416         (insert_step_resume_breakpoint_at_frame): Update.
2417         (insert_step_resume_breakpoint_at_caller): Update..
2418         * mi/mi-cmd-break.c: Include "arch-utils.h".
2419         (mi_cmd_break_insert): Update.
2420
2421         * target.h (struct target_ops): Add GDBARCH parameter to
2422         to_insert_breakpoint, to_remove_breakpoint, to_insert_hw_breakpoint,
2423         and to_remove_hw_breakpoint members.
2424         (target_insert_breakpoint, target_remove_breakpoint,
2425         target_insert_hw_breakpoint, target_remove_hw_breakpoint): Add GDBARCH
2426         parameter, pass to target routine.
2427         (memory_remove_breakpoint, memory_insert_breakpoint): Add GDBARCH
2428         parameter.
2429         * target.c (debug_to_insert_breakpoint, debug_to_remove_breakpoint,
2430         debug_to_insert_hw_breakpoint, debug_to_remove_hw_breakpoint): Add
2431         GDBARCH parameter, pass to target routine.
2432         (update_current_target): Update function signature.
2433         * breakpoint.c (insert_bp_location, remove_breakpoint,
2434         deprecated_insert_raw_breakpoint, deprecated_remove_raw_breakpoint):
2435         Pass architecture to target_ routines.
2436         Update all implementations of the target breakpoint routines to take
2437         GDBARCH parameter and use it instead of GDBARCH as appropriate:
2438         * corelow.c (ignore): Update.
2439         * exec.c (ignore): Update.
2440         * mem-break.c (memory_insert_breakpoint): Update.
2441         (memory_remove_breakpoint): Update.
2442         * monitor.c (monitor_insert_breakpoint): Update.
2443         (monitor_remove_breakpoint): Update.
2444         * record.c (record_insert_breakpoint): Update.
2445         (record_beneath_to_insert_breakpoint): Update.
2446         (record_remove_breakpoint): Update.
2447         (record_beneath_to_remove_breakpoint): Update.
2448         * remote.c (remote_insert_breakpoint): Update.
2449         (remote_remove_breakpoint): Update.
2450         (remote_insert_hw_breakpoint): Update.
2451         (remote_remove_hw_breakpoint): Update.
2452         * remote-m32r-sdi.c (m32r_insert_breakpoint): Update.
2453         (m32r_remove_breakpoint): Update.
2454         * remote-mips.c (mips_insert_breakpoint): Update.
2455         (mips_remove_breakpoint): Update.
2456         * i386-nat.c (i386_insert_hw_breakpoint): Update.
2457         (i386_remove_hw_breakpoint): Update.
2458         * nto-procfs.c (procfs_insert_breakpoint):  Update.
2459         (procfs_remove_breakpoint): Update.
2460         (procfs_insert_hw_breakpoint): Update.
2461         (procfs_remove_hw_breakpoint): Update.
2462
2463 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2464
2465         * frame.h (frame_unwind_arch): New.
2466         (frame_unwind_caller_arch): Likewise.
2467         * frame-unwind.h (frame_prev_arch_ftype): New type.
2468         (struct frame_unwind): New member prev_arch.
2469         * frame.c (struct frame_info): New member prev_arch.
2470         (frame_unwind_arch): New function.
2471         (frame_unwind_caller_arch): Likewise..
2472         (get_frame_arch): Reimplement in terms of frame_unwind_arch.
2473         * sentinel-frame.c (sentinel_frame_prev_arch): New function.
2474         (sentinel_frame_unwinder): Install it.
2475
2476         * frame.c (frame_pc_unwind): Use frame_unwind_arch instead
2477         of get_frame_arch.
2478         (frame_unwind_register_value): Likewise.
2479         (frame_unwind_register_signed): Likewise.
2480         (frame_unwind_register_unsigned): Likewise.
2481         * frame-unwind.c (frame_unwind_got_optimized): Likewise.
2482         (frame_unwind_got_register): Likewise.
2483         (frame_unwind_got_constant): Likewise.
2484         (frame_unwind_got_bytes): Likewise.
2485         (frame_unwind_got_address): Likewise.
2486
2487         * frame.h (enum frame_type): New value ARCH_FRAME.
2488         * frame.c (fprint_frame_type): Handle ARCH_FRAME.
2489         * stack.c (print_frame_info): Likewise.
2490
2491 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2492
2493         * target.h (struct target_ops): New member to_thread_architecture.
2494         (target_thread_architecture): New macro.
2495         * target.c (update_current_target): Inherit to_thread_architecture.
2496         (default_thread_architecture): New function.
2497         (debug_to_thread_architecture): New function.
2498         (setup_target_debug): Handle to_thread_architecture.
2499
2500         * regcache.h (get_thread_arch_regcache): New.
2501         * regcache.c (struct regcache_list): New data type.
2502         (current_regcache): Hold regcache list instead of single regcache.
2503         (current_thread_ptid, current_thread_arch): New static variables.
2504         (get_thread_arch_regcache): New function.
2505         (get_thread_regcache): Use it.  Call target_thread_architecture.
2506         (regcache_thread_ptid_changed): Update to current_regcache changes.
2507         (registers_changed): Likewise.  Reset current_thread_arch and
2508         current_thread_ptid.
2509
2510         * remote.c (remote_wait): Access target registers in target_gdbarch.
2511         * linux-nat.c (linux_nat_do_thread_registers): Likewise.
2512         * proc-service.c (ps_lgetregs, ps_lsetregs): Likewise.
2513         (ps_lgetfpregs, ps_lsetfpregs): Likewise.
2514         * sol-thread.c (ps_lgetregs, ps_lsetregs): Likewise.
2515         (ps_lgetfpregs, ps_lsetfpregs): Likewise.
2516         * solib-svr4.c (enable_break): Likewise.
2517         (svr4_relocate_main_executable): Likewise.
2518
2519 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2520
2521         * python/python-internal.h (struct language_defn): Declare.
2522         (python_gdbarch, python_language): Likewise.
2523         (ensure_python_env): Add prototype.
2524         (make_cleanup_py_restore_gil): Remove prototype.
2525
2526         * python/python.c: Include "arch-utils.h", "value.h" and "language.h".
2527         (python_gdbarch, python_language): New global variables.
2528         (struct python_env): New data type.
2529         (ensure_python_env, restore_python_env): New functions.
2530         (eval_python_from_control_command): Call ensure_python_env to
2531         install current architecture and language.
2532         (python_command, gdbpy_new_objfile): Likewise.
2533         * python/python-cmd.c: Include "arch-utils.h" and "language.h".
2534         (cmdpy_destroyer, cmdpy_function, cmdpy_completer): Call
2535         ensure_python_env.
2536         * python/python-type.c (clean_up_objfile_types): Likewise.
2537         * python/python-objfile.c: Include "language.h".
2538         (clean_up_objfile): Call ensure_python_env.
2539         * python/python-prettyprint.c (apply_val_pretty_printer): Likewise.
2540         (apply_varobj_pretty_printer): Do not call PyGILState_Ensure.
2541         * varobj.c (varobj_ensure_python_env): New helper function.
2542         (varobj_get_display_hint, update_dynamic_varobj_children,
2543         install_default_visualizer, varobj_set_visualizer, free_variable,
2544         value_get_print_value): Call it.
2545         (value_get_print_value): Add varobj argument instead of pretty
2546         printer argument.  Update all callers.
2547
2548         * python/python-utils.c (py_gil_restore, make_cleanup_py_restore_gil):
2549         Remove.
2550
2551         * value.h (internal_function_fn): Add GDBARCH and LANGUAGE argument.
2552         (call_internal_function): Likewise.
2553         * value.c (call_internal_function): Likewise.  Pass to handler.
2554         * eval.c (evaluate_subexp_standard): Update call.
2555         * python/python-function.c: Include "language.h".
2556         (fnpy_call): Add GDBARCH and LANGAUAGE arguments and call
2557         make_cleanup_python_env.
2558
2559         * python/python-value.c (builtin_type_pyint, builtin_type_pyfloat,
2560         builtin_type_pylong, builtin_type_pybool, builtin_type_pychar,
2561         valpy_str): Use python_gdbarch and python_language instead of
2562         current_gdbarch and current_language.
2563         * python/python-type.c (typy_lookup_typename): Likewise.
2564
2565 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2566
2567         * arch-utils.c (selected_byte_order): Return target_byte_order_user.
2568         (show_endian): Use target_byte_order_user if specified; otherwise
2569         use get_current_arch () instead of current_gdbarch.
2570         (show_architecture): Use set_architecture_string if specified;
2571         otherwise use get_current_arch () instead of current_gdbarch.
2572         (get_current_arch): New function.
2573         * arch-utils.h (get_current_arch): Add prototype.
2574
2575         * osabi.c (show_osabi): Use get_current_arch () instead of
2576         current_gdbarch.
2577
2578         * findcmd.c: Include "arch-utils.h".
2579         (parse_find_args): Add BIG_P argument.  Use it instead of byte order
2580         of current_gdbarch.
2581         (find_command): Use get_current_arch () instead of current_gdbarch.
2582         Pass byte order to parse_find_args.
2583
2584         * maint.c: Include "arch-utils.h".
2585         (maintenance_print_architecture): Use get_current_arch () instead
2586         of current_gdbarch.
2587
2588         * reggroups.c: Include "arch-utils.h".
2589         (maintenance_print_reggroups): Use get_current_arch () instead
2590         of current_gdbarch.
2591
2592         * symfile.c: Include "arch-utils.h".
2593         (overlay_load_command): Use get_current_arch () instead of
2594         current_gdbarch.
2595
2596         * value.c: Include "arch-utils.h".
2597         (show_convenience): Use get_current_arch () instead of
2598         current_gdbarch.
2599
2600         * tui/tui-regs.c: Include "arch-utils.h".
2601         (tui_reg_next_command): Use get_current_arch () instead of
2602         current_gdbarch.
2603
2604         * mi/mi-main.c: Include "arch-utils.h".
2605         (mi_cmd_data_read_memory): Use get_current_arch () instead of
2606         current_gdbarch.
2607
2608         * parse.c: Include "arch-utils.h".
2609         (parse_exp_in_context): Use get_current_arch () instead of
2610         current_gdbarch.
2611
2612 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2613
2614         * gdbtypes.c (make_pointer_type, make_reference_type,
2615         smash_to_memberptr_type, lookup_array_range_type, check_stub_method):
2616         Use type architecture instead of current_gdbarch.
2617
2618         * gdbtypes.h (address_space_name_to_int, address_space_int_to_name):
2619         Add GDBARCH paramter.
2620         * gdbtypes.c (address_space_name_to_int, address_space_int_to_name):
2621         Add GDBARCH parameter.   Use it instead of current_gdbarch.
2622         * c-typeprint.c (c_type_print_modifier): Update call.
2623         * parse.c (push_type_address_space): Likewise.
2624
2625         * findvar.c (extract_typed_address, store_typed_address): Use type
2626         architecture instead of current_gdbarch.
2627
2628         * value.c (value_as_address, unpack_field_as_long): Use type architecture
2629         instead of current_gdbarch.
2630
2631         * doublest.c (floatformat_from_length): Add GDBARCH argument.  Use it
2632         instead of current_gdbarch.
2633         (floatformat_from_type): Pass type architecture.
2634
2635         * infcall.c (find_function_addr): Use type architecture instead
2636         of current_gdbarch.
2637
2638         * valarith.c (value_bitstring_subscript, value_x_binop, value_neg,
2639         value_bit_index): Use type architecture instead of current_gdbarch.
2640         * valops.c (value_cast, value_slice): Likewise.
2641
2642         * value.h (modify_field): Add TYPE argument.
2643         * value.c (modify_field): Add TYPE argument.  Use type architecture
2644         instead of current_gdbarch.
2645         (set_internalvar_component): Likewise.
2646         * eval.c (evaluate_struct_tuple): Update call.
2647         * valops.c (value_assign): Likewise.
2648         * ada-lang.c (modify_general_field): Likewise.  Add TYPE argument.
2649         (make_array_descriptor): Update calls.
2650         (move_bits): Add BITS_BIG_ENDIAN_P argument.  Use it instead of
2651         current_gdbarch.
2652         (ada_value_assign, value_assign_to_component): Update calls.
2653         (decode_packed_array, ada_value_primitive_packed_val, ada_value_assign,
2654         value_assign_to_component): Use type arch instead of current_gdbarch.
2655
2656         * printcmd.c (float_type_from_length): Remove GDBARCH argument,
2657         use type architecture instead.
2658         (print_scalar_formatted, printf_command): Update calls.  Use type
2659         architecture instead of current_gdbarch.
2660         * valprint.c (val_print_type_code_int): Use type architecture
2661         instead of current_gdbarch.
2662         * varobj.c (value_get_print_value): Likewise.
2663         * python/python-prettyprint.c (print_string_repr): Add GDBARCH
2664         argument.  Use it instead of current_gdbarch.
2665         (apply_val_pretty_printer): Update call.
2666
2667         * ada-valprint.c (ada_val_print_1): Use type architecture instead
2668         of current_gdbarch.
2669         * c-valprint.c (print_function_pointer_address): Add GDBARCH argument.
2670         Use it instead of current_gdbarch.
2671         (c_val_print): Update calls passing type architecture.
2672         * f-valprint.c (f_val_print): Use type architecture instead of
2673         current_gdbarch.
2674         * jv-valprint (java_value_print): Likewise.
2675         * m2-valprint.c (print_function_pointer_address): Add GDBARCH argument.
2676         Use it instead of current_gdbarch.
2677         (print_unpacked_pointer): Update calls passing type architecture.
2678         * scm-valprint.c (scm_scmval_print): Use type architecture instead of
2679         current_gdbarch.
2680
2681         * gnu-v3-abi.c (get_class_arch): Remove.
2682         (gnuv3_rtti_type): Use get_type_arch instead of get_class_arch.  Remove
2683         special-case check for Java classes.
2684         (gnuv3_virtual_fn_field, gnuv3_baseclass_offset, gnuv3_print_method_ptr,
2685         gnuv3_method_ptr_size, gnuv3_make_method_ptr, gnuv3_method_ptr_to_value):
2686         Use get_type_arch instead of get_class_arch.
2687
2688 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2689
2690         * gdbtypes.h (TYPE_OBJFILE_OWNED, TYPE_OWNER): New macros.
2691         (TYPE_OBJFILE, TYPE_ALLOC, TYPE_ZALLOC): Reimplement.
2692         (alloc_type_arch): Add prototype.
2693         (alloc_type_copy): Likewise.
2694         (get_type_arch): Likewise.
2695         (arch_type): Likewise.
2696         (arch_integer_type): Likewise.
2697         (arch_character_type): Likewise.
2698         (arch_boolean_type): Likewise.
2699         (init_float_type): Remove, replace by ...
2700         (arch_float_type): ... this.
2701         (init_complex_type): Remove, replace by ...
2702         (arch_complex_type): ... this.
2703         (init_flags_type): Remove, replace by ...
2704         (arch_flags_type): ... this.
2705         (init_composite_type): Remove, replace by ...
2706         (arch_composite_type): ... this.
2707
2708         * gdbtypes.c (alloc_type): No longer support NULL objfile.
2709         (init_type): Likewise.
2710         (alloc_type_arch): New function.
2711         (alloc_type_copy): New function.
2712         (get_type_arch): New function.
2713
2714         (smash_type): Preserve type ownership information.
2715         (make_pointer_type, make_reference_type, make_function_type,
2716         smash_to_memberptr_type, smash_to_method_type): No longer
2717         preserve OBJFILE across smash_type calls.
2718         (make_pointer_type, make_reference_type, make_function_type,
2719         lookup_memberptr_type, lookup_methodptr_type, allocate_stub_method,
2720         create_range_type, create_array_type, create_set_type, copy_type):
2721         Use alloc_type_copy when allocating types.
2722         (check_typedef): Use alloc_type_arch.
2723         (copy_type_recursive): Likewise.  Preserve type ownership data
2724         after copying type.
2725         (recursive_dump_type): Dump type ownership data.
2726         (alloc_type_instance): Update type ownership check.
2727         (copy_type, copy_type_recursive): Likewise.
2728
2729         (arch_type): New function.
2730         (arch_integer_type): Likewise.
2731         (arch_character_type): Likewise.
2732         (arch_boolean_type): Likewise.
2733         (init_float_type): Remove, replace by ...
2734         (arch_float_type): ... this.
2735         (init_complex_type): Remove, replace by ...
2736         (arch_complex_type): ... this.
2737         (init_flags_type): Remove, replace by ...
2738         (arch_flags_type): ... this.
2739         (append_flags_type_flag): Move down.
2740         (init_composite_type): Remove, replace by ...
2741         (arch_composite_type): ... this.
2742         (append_composite_type_field_aligned,
2743         append_composite_type_field): Move down.
2744
2745         * gdbarch.c (gdbtypes_post_init): Allocate all types
2746         using per-architecture routines.
2747         * ada-lang.c (ada_language_arch_info): Likewise.
2748         * f-lang.c (build_fortran_types): Likewise.
2749         * jv-lang.c (build_java_types): Likewise.
2750         * m2-lang.c (build_m2_types): Likewise.
2751         * scm-lang.c (build_scm_types): Likewise.
2752
2753         * ada-lang.c (ada_type_of_array): Use alloc_type_copy.
2754         (packed_array_type): Likewise.
2755         (ada_template_to_fixed_record_type_1): Likewise.
2756         (template_to_static_fixed_type): Likewise.
2757         (to_record_with_fixed_variant_part): Likewise.
2758         (to_fixed_variant_branch_type): Likewise.
2759         (to_fixed_array_type): Likewise.
2760         (to_fixed_range_type): Likewise.
2761         (empty_record): Use type instead of objfile argument.
2762         Use alloc_type_copy.
2763         (to_fixed_variant_branch_type): Update call to empty_record.
2764         * jv-lang.c (type_from_class): Use alloc_type_arch.
2765
2766         * arm-tdep.c (arm_ext_type): Allocate per-architecture type.
2767         * i386-tdep.c (i386_eflags_type, i386_mxcsr_type, i387_ext_type,
2768         i386_mmx_type, i386_sse_type): Likewise.
2769         * ia64-tdep.c (ia64_ext_type): Likewise.
2770         * m32c-tdep.c (make_types): Likewise.
2771         * m68k-tdep.c (m68k_ps_type, m68881_ext_type): Likewise.
2772         * rs6000-tdep.c (rs6000_builtin_type_vec64,
2773         rs6000_builtin_type_vec128): Likewise.
2774         * sparc-tdep.c (sparc_psr_type, sparc_fsr_type): Likewise.
2775         * sparc64-tdep.c (sparc64_pstate_type, sparc64_fsr_type,
2776         sparc64_fprs_type): Likewise.
2777         * spu-tdep.c (spu_builtin_type_vec128): Likewise.
2778         * xtensa-tdep.c (xtensa_register_type): Likewise.
2779         * linux-tdep.c (linux_get_siginfo_type): Likewise.
2780         * target-descriptions.c (tdesc_gdb_type): Likewise.
2781         * gnu-v3-abi.c (build_gdb_vtable_type): Likewise.
2782
2783 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2784
2785         * i386-tdep.h (struct gdbarch_tdep): Add i386_eflags_type and
2786         i386_mxcsr_type members.
2787         (i386_eflags_type): Make into function.
2788         (i386_mxcsr_type): Likewise.
2789         * i386-tdep.c (i386_eflags_type): Make into function.
2790         (i386_mxcsr_type): Likewise.
2791         (i386_register_type): Update uses.
2792         (i386_init_types): Remove.
2793         (_initialize_i386_tdep): Do not call it.
2794         * amd64-tdep.c (amd64_register_type): Update uses.
2795
2796         * m68k-tdep.h (struct gdbarch_tdep): Add m68k_ps_type member.
2797         * m68k-tdep.c (m68k_ps_type): Make into function.
2798         (m68k_register_type): Update use.
2799         (m68k_init_types): Remove.
2800         (_initialize_m68k_tdep): Do not call it.
2801
2802         * sparc-tdep.h (struct gdbarch_tdep): Add sparc_psr_type,
2803         sparc_fsr_type, sparc64_pstate_type, sparc64_fsr_type, and
2804         sparc64_fprs_type members.
2805         * sparc-tdep.c (sparc_psr_type): Make into function.
2806         (sparc_fsr_type): Likewise.
2807         (sparc32_register_type): Update uses.
2808         (sparc_init_types): Remove.
2809         (_initialize_sparc_tdep): Do not call it.
2810         * sparc64-tdep.c (sparc64_pstate_type): Make into function.
2811         (sparc64_fsr_type): Likewise.
2812         (sparc64_fprs_type): Likewise.
2813         (sparc64_register_type): Update uses.
2814         (sparc64_init_types): Remove.
2815         (_initialize_sparc64_tdep): Likewise.
2816
2817 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2818
2819         * gdbtypes.h (builtin_type_ieee_single, builtin_type_ieee_double,
2820         builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext,
2821         builtin_type_ia64_spill, builtin_type_ia64_quad): Remove.
2822         (init_float_type, init_complex_type): Add prototypes.
2823         * gdbtypes.c (builtin_type_ieee_single, builtin_type_ieee_double,
2824         builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext,
2825         builtin_type_ia64_spill, builtin_type_ia64_quad): Remove.
2826         (_initialize_gdbtypes): Do not initialize them.
2827         (build_flt): Rename to ...
2828         (init_float_type): ... this.  Make global.
2829         (build_complex): Rename to ...
2830         (init_complex_type): ... this.  Make global.  Remove BIT argument.
2831         (gdbtypes_post_init): Update calls.
2832
2833         * ada-lang.c (ada_language_arch_info): Use init_float_type.
2834         * jv-lang.c (build_java_types): Likewise.
2835         * m2-lang.c (build_m2_types): Likewise.
2836         * f-lang.c (build_fortran_types): Use init_float_type and
2837         init_complex_type.
2838
2839         * target-descriptions.c (tdesc_gdb_type): Call init_float_type instead
2840         of using builtin_type_ieee_single, builtin_type_ieee_double, or
2841         builtin_type_arm_ext.
2842
2843         * ia64-tdep.h (struct gdbarch_tdep): Add ia64_ext_type member.
2844         * ia64-tdep.c (builtin_type_ia64_ext): Remove.
2845         (_initialize_ia64_tdep): Do not initialize it.
2846         (floatformat_valid, floatformat_ia64_ext, floatformats_ia64_ext):
2847         Move up.
2848         (ia64_ext_type): New function.
2849         (ia64_register_reggroup_p, ia64_convert_register_p,
2850         ia64_register_to_value, ia64_value_to_register,
2851         ia64_extract_return_value, ia64_store_return_value): Use ia64_ext_type
2852         instead of builtin_type_ia64_ext.
2853
2854         * i386-tdep.h (struct gdbarch_tdep): Add i387_ext_type member.
2855         (i387_ext_type): Add prototype.
2856         * i386-tdep.c (i387_ext_type): New function.
2857         (i386_extract_return_value, i386_store_return_value,
2858         i386_register_type): Use it instead of builtin_type_i387_ext.
2859         * amd64-tdep.c (amd64_register_type): Likewise.
2860         * i387-tdep.c (print_i387_value, i387_register_to_value,
2861         i387_value_to_register): Likewise.
2862         (print_i387_value, print_i387_ext): Add GDBARCH argument.
2863         (print_i387_ext, i387_print_float_info): Pass to subroutines.
2864
2865         * m68k-tdep.h (struct gdbarch_tdep): Add m68881_ext_type member.
2866         * m68k-tdep.c (m68881_ext_type): New function.
2867         (m68k_register_type, m68k_convert_register_p): Use it instead
2868         of builtin_type_m68881_ext.
2869
2870         * arm-tdep.h (struct gdbarch_tdep): Add arm_ext_type member.
2871         * arm-tdep.c (arm_ext_type): New function.
2872         (arm_register_type): Use it instead of builtin_type_arm_ext.
2873
2874         * alpha-tdep.c (alpha_register_type): Use builtin types
2875         instead of builtin_type_ieee_double.
2876
2877         * mips-tdep.c (mips_float_register_type, mips_double_register_type):
2878         Remove.
2879         (mips_register_type): Use builtin types instead of
2880         builtin_type_ieee_single and builtin_type_ieee_double.
2881         (mips_print_fp_register): Use builtin types instead of
2882         mips_float_register_type and mips_double_register_type.
2883
2884         * hppa-tdep.c (hppa32_register_type, hppa64_register_type):
2885         Use builtin types instead of builtin_type_ieee_single and
2886         builtin_type_ieee_double.
2887
2888 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2889
2890         * gdbtypes.h (builtin_type_int0, builtin_type_int8, builtin_type_uint8,
2891         builtin_type_int16, builtin_type_uint16, builtin_type_int32,
2892         builtin_type_uint32, builtin_type_int64, builtin_type_uint64,
2893         builtin_type_int128, builtin_type_uint128): Remove.
2894         (struct builtin_type): New members builtin_int0, builtin_int8,
2895         builtin_uint8, builtin_int16, builtin_uint16, builtin_int32,
2896         builtin_uint32, builtin_int64, builtin_uint64, builtin_int128,
2897         and builtin_uint128.
2898         * gdbtypes.c (builtin_type_int0, builtin_type_int8, builtin_type_uint8,
2899         builtin_type_int16, builtin_type_uint16, builtin_type_int32,
2900         builtin_type_uint32, builtin_type_int64, builtin_type_uint64,
2901         builtin_type_int128, builtin_type_uint128): Remove.
2902         (_initialize_gdbtypes): Do not initialize them.
2903         (gdbtypes_post_init): Initialize fixed-size integer types.
2904
2905         * dwarf2expr.c (unsigned_address_type, signed_address_type): Add
2906         GDBARCH argument.  Return platform-specific type.
2907         (dwarf2_read_address, execute_stack_op): Update calls.
2908
2909         * target-descriptions.c (tdesc_gdb_type): Use platform-specific types
2910         instead of global builtin_int_... variables.
2911         * mi/mi-main.c (mi_cmd_data_read_memory): Likewise.
2912         * printcmd.c (do_examine): Likewise.
2913         * jv-exp.y (parse_number): Likewise.
2914
2915         * alpha-tdep.c (alpha_register_type, alpha_push_dummy_call,
2916         alpha_store_return_value): Likewise.
2917         * amd64-linux-tdep.c (amd64_linux_register_type): Likewise.
2918         * amd64-tdep.c (amd64_register_type): Likewise.
2919         * arm-tdep.c (arm_register_type): Likewise.
2920         * avr-tdep.c (avr_register_type): Likewise.
2921         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
2922         * frv-tdep.c (frv_register_type): Likewise.
2923         * h8300-tdep.c h8300_register_type): Likewise.
2924         * hppa-tdep.c (hppa64_push_dummy_call, hppa32_register_type,
2925         hppa64_register_type): Likewise.
2926         * i386-tdep.c (i386_mmx_type, i386_sse_type): Likewise.
2927         * iq2000-tdep.c (iq2000_register_type): Likewise.
2928         * lm32-tdep.c (lm32_register_type, lm32_push_dummy_call): Likewise.
2929         * m32r-tdep.c (m32r_register_type): Likewise.
2930         * m68hc11-tdep.c (m68hc11_register_type, m68hc11_pseudo_register_read,
2931         m68hc11_pseudo_register_write): Likewise.
2932         * m68k-tdep.c (m68k_register_type): Likewise.
2933         * m88k-tdep.c (m88k_register_type, m88k_store_arguments): Likewise.
2934         * mep-tdep.c (mep_register_type): Likewise.
2935         * mips-tdep.c (mips_register_type, mips_pseudo_register_type,
2936         mips_print_fp_register): Likewise.
2937         * moxie-tdep.c (moxie_register_type): Likewise.
2938         * mt-tdep.c (mt_copro_register_type, mt_register_type): Likewise.
2939         * rs6000-tdep.c (rs6000_builtin_type_vec64,
2940         rs6000_builtin_type_vec128): Likewise.
2941         * score-tdep.c (score_register_type): Likewise.
2942         * sparc-tdep.c (sparc32_register_type, sparc32_store_arguments):
2943         Likewise.
2944         * sparc64-tdep.c (sparc64_register_type, sparc64_store_arguments):
2945         Likewise.
2946         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
2947         * v850-tdep.c (v850_register_type): Likewise.
2948         * xstormy16-tdep.c (xstormy16_register_type): Likewise.
2949         * xtensa-tdep.c (xtensa_register_type): Likewise.
2950
2951         * mt-tdep.c (struct gdbarch_tdep): New data structure.
2952         (mt_gdbarch_init): Alloc TDEP structures.
2953         (mt_register_type): Cache coprocessor type in TDEP instead of
2954         static global variable.
2955
2956         * xtensa-tdep.h (struct gdbarch_tdep): Add type_entries member.
2957         * xtensa-tdep.c (type_entries): Remove.
2958         (xtensa_register_type): Cache fixed-size types in TDEP instead
2959         of in global variable.
2960
2961 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2962
2963         * gdbtypes.h (builtin_type_true_char): Remove.
2964         (builtin_type_true_unsigned_char): Likewise.
2965         (struct builtin_type): Add builtin_true_char and
2966         builtin_true_unsigned_char members.
2967         * gdbtypes.c (builtin_type_true_char): Remove.
2968         (builtin_type_true_unsigned_char): Likewise.
2969         (_initialize_gdbtypes): Do not initialize them.
2970         (gdbtypes_post_init): Initialize builtin_true_char and
2971         builtin_true_unsigned_char members of builtin_type.
2972
2973         * printcmd.c (print_scalar_formatted): Use builtin_type
2974         members instead of builtin_type_true_char and
2975         builtin_type_true_unsigned_char.
2976         * ada-valprint.c (ada_val_print_1): Likewise.
2977
2978 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2979
2980         * gdbtypes.h (builtin_type_void): Remove.
2981         * gdbtypes.c (builtin_type_void): Remove.
2982         (_initialize_gdbtypes): Do not initialize it.
2983
2984         (safe_parse_type): Add GDBARCH argument.  Use it to construct
2985         void return type.
2986         (check_stub_method): Update call.
2987
2988         * infcall.c (call_function_by_hand): Use platform-specific type
2989         instead of builtin_type_void.
2990         * valops.c (value_cast): Use input void type instead of
2991         builtin_type_void.
2992
2993 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2994
2995         * ada-lang.c (assign_component): Use platform-specific integer type
2996         instead of builtin_type_int32 type.
2997         (ada_evaluate_subexp) [OP_ATR_SIZE]: Likewise.
2998
2999         * ax-gdb.c (gen_expr) [UNOP_NEG]: Use platform-specific integer type
3000         instead of builtin_type_int8 type.
3001         * valarith.c (value_x_unop): Likewise.
3002         * python/python-value.c (valpy_absolute): Avoid reference to
3003         builtin_type_int8 type.
3004
3005         * eval.c (evaluate_subexp_standard): Use platform-specific integer
3006         type instead of builtin_type_int8 as EVAL_SKIP return value type.
3007         * ada-lang.c (ada_evaluate_subexp): Likewise.
3008         * jv-lang.c (evaluate_subexp_java): Likewise.
3009         * m2-lang.c (evaluate_subexp_modula2): Likewise.
3010         * scm-lang.c (evaluate_exp): Likewise.
3011
3012         * value.h (value_bitstring): Add INDEX_TYPE argument.
3013         * valops.c (value_bitstring): Add INDEX_TYPE argument, use it instead
3014         of builtin_type_int32 as base range type.
3015         * eval.c (evaluate_subexp_standard): Update value_bitstring call.
3016
3017 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3018
3019         * gdbtypes.c (lookup_array_range_type): Add prototype.
3020         (lookup_string_range_type): Likewise.
3021         * gdbtypes.c (lookup_array_range_type): New function.
3022         (lookup_string_range_type): Likewise.
3023
3024         * ax-gdb.c (gen_repeat): Use lookup_array_range_type.
3025         * parse.c (follow_types): Likewise.
3026         * jv-lang.c (java_array_type): Likewise.
3027         * gnu-v3-abi.c (build_gdb_vtable_type): Likewise.
3028         * mt-tdep.c (mt_register_type): Likewise.
3029         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
3030         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
3031         * value.c (allocate_repeat_value): Likewise.
3032         * valops.c (value_array, value_cstring): Likewise.
3033         * valops.c (value_string): Use lookup_string_range_type.
3034
3035 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3036
3037         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Remove
3038         redundant check for NULL TYPE_TARGET_TYPE.
3039         * m2-valprint.c (m2_print_long_set): Likewise.
3040         * p-valprint.c (pascal_type_print_base): Likewise.
3041
3042 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3043
3044         * printcmd.c (next_gdbarch): New static variable.
3045         (set_next_address, do_examine, x_command): Set it.
3046         (decode_format): Use 'a' size to indicate width of an address.
3047         (do_examine): Add GDBARCH argument.  Handle 'a' size.
3048         (x_command): Pass architecture to do_examine.
3049         Error if called without argument the first time.  
3050         (do_one_display): Pass architecture to do_examine.
3051
3052         (examine_i_type, examine_b_type, examine_h_type, examine_w_type,
3053         examine_g_type): Remove.
3054         (_initialize_printcmd): Do not initialize them.
3055         (do_examine): Use builin_type_int... instead of examine_..._type.
3056
3057 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3058
3059         * gdbtypes.h (struct builtin_type): Add internal_fn member.
3060         * gdbtypes.c (gdbtypes_post_init): Initialize it.
3061         * value.c (internal_fn_type): Remove.
3062         (_initialize_values): Do not initialize it.
3063
3064         * value.c (struct internalvar): Add enum internalvar_kind type and
3065         kind member.  Restructure union internalvar_data type.  Remove type,
3066         canonical, and make_value members.
3067         (init_if_undefined_command): Update for data structure changes.
3068         (create_internalvar): Likewise.
3069         (create_internalvar_type_lazy): Likewise.
3070         (get_internalvar_integer): Likewise.
3071         (get_internalvar_function): Likewise.
3072         (set_internalvar_component): Likewise.
3073         (set_internalvar): Likewise.
3074         (set_internalvar_integer): Likewise.
3075         (set_internalvar_function): Likewise.
3076         (clear_internalvar): Likewise.
3077         (add_internal_function): Likewise.
3078         (preserve_one_internalvar): New function.
3079         (preserve_values): Call it.
3080
3081         * value.h (value_of_internalvar): Add GDBARCH parameter.
3082         (internalvar_make_value): Likewise.
3083         * value.c (value_of_internalvar): Add GDBARCH parameter.  Pass it to
3084         make_value callback.  Use it to generate per-architecture result value
3085         types for internal variables with no pre-defined type.  Update for data
3086         structure changes.
3087         (show_convenience): Pass architecture to value_of_internalvar.
3088         * eval.c (evaluate_subexp_standard): Likewise.
3089         * infrun.c (siginfo_make_value): Add GDBARCH parameter.  Use it
3090         instead of current frame architecture.  Return per-architecture type.
3091
3092         * value.h (set_internalvar_string): Add prototype.
3093         * value.c (set_internalvar_string): New function.
3094         * tracepoint.c (set_traceframe_context): Use it.
3095
3096 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3097
3098         * jv-lang.h (java_int_type, java_byte_type, java_short_type,
3099         java_long_type, java_boolean_type, java_char_type, java_float_type,
3100         java_double_type, java_void_type): Remove.
3101         (struct builtin_java_type): New data type.
3102         (builtin_java_type): Add prototype.
3103         (java_primitive_type): Add GDBARCH argument.
3104         (java_primitive_type_from_name): Likewise.
3105         (type_from_class): Likewise.
3106
3107         * jv-lang.c (java_int_type, java_byte_type, java_short_type,
3108         java_long_type, java_boolean_type, java_char_type, java_float_type,
3109         java_double_type, java_void_type): Remove.
3110
3111         (build_java_types, builtin_java_type): New functions.
3112         (java_type_data): New static variable.
3113         (_initialize_java_language): Initialize it.  No longer initialize
3114         global types.
3115         (java_language_arch_info): Use per-architecture types.
3116
3117         (java_primitive_type): Add GDBARCH argument.  Return per-architecture
3118         type instead of refering to global variable.
3119         (java_primitive_type_from_name): Add GDBARCH argument.
3120         (java_primitive_type_name): New function.
3121         (java_demangled_signature_length): Use it instead of
3122         java_primitive_type_from_name.
3123         (java_demangled_signature_copy): Likewise.
3124
3125         (type_from_class): Add GDBARCH argument.  Pass to java_link_class_type,
3126         java_primitive_type, and recursive type_from_class call.
3127         (java_link_class_type): Add GDBARCH argument.  Pass to type_from_class
3128         calls.  Use per-architecture types instead of global types.
3129
3130         * jv-exp.y (parse_java_type): New define.
3131         Use per-architecture types instead of global types througout.
3132
3133         * jv-valprint.c (java_value_print): Pass architecture to
3134         type_from_class and java_primitive_type_from_name.  Use per-
3135         architecture types instead of global types.
3136
3137 2009-07-01  Doug Evans  <dje@google.com>
3138
3139         * NEWS: Mention biarch amd64-linux gdbserver and hardware watchpoint
3140         support for i386-linux, amd64-linux, and i386-win32 builds of
3141         gdbserver.
3142
3143 2009-07-01  Nick Roberts  <nickrob@snap.net.nz>
3144
3145         * Makefile.in (HFILES_NO_SRCDIR): Remove entries for deleted files.
3146
3147 2009-06-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
3148
3149         * Makefile.in (TARGET_FLAGS_TO_PASS): Include also FORCE_PARALLEL.
3150         (check//%): Construct FORCE_PARALLEL for the sub-make.  Extend the
3151         comment for it.
3152
3153 2009-06-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
3154
3155         gdb/10275
3156         * dwarf2-frame.c (dwarf2_frame_state): Move cfa_offset, cfa_reg,
3157         cfa_how and cfa_exp into regs and adjust users.
3158         
3159 2009-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
3160
3161         * dwarf2read.c (inherit_abstract_dies): Work around GCC PR 40573.
3162
3163 2009-06-30  Vladimir Prus  <vladimir@codesourcery.com>
3164
3165         * mi/mi-cmd-stack.c (parse_print_values): New.
3166         (mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Use the above.
3167
3168 2009-06-30  Vladimir Prus  <vladimir@codesourcery.com>
3169
3170         * varobj.c (varobj_get_type): Use type_to_string.
3171
3172 2009-06-29  Pedro Alves  <pedro@codesourcery.com>
3173
3174         * infrun.c (handle_inferior_event): Context switch to the new
3175         thread when resuming for a new_thread_event.
3176
3177 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3178
3179         * ada-lang.h (ada_convert_actual): Add GDBARCH argument.
3180         * ada-lang.c (convert_actual): Remove stale prototype.
3181         (ensure_lval, make_array_descriptor, ada_convert_actual):
3182         Add GDBARCH argument and pass through to subroutine calls.
3183         (ensure_lval): Use GDBARCH instead of current_gdbarch.
3184         * infcall.c (value_arg_coerce): Update ada_convert_actual call.
3185
3186 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3187
3188         * ada-lang.c (resolve): Use per-architecture void type instead
3189         of platform-independent one.
3190         (ada_evaluate_subexp) [STRUCTOP_STRUCT]: Likewise.
3191         (ada_resolve_function): Reimplement fallback logic to avoid
3192         explicit reference to builtin_type_void.
3193
3194 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3195
3196         * ada-valprint.c (ada_print_scalar): Accept NULL type argument
3197         to indicate scalar should be printed as default integer.
3198         (print_optional_low_bound): Pass NULL to ada_print_scalar to
3199         indicate default integer output.
3200         * ada-typeprint.c (print_range, print_range_bound): Likewise.
3201         (print_choices): Likewise.  Thus, accept NULL as val_type.
3202         * ada-lang.c (ada_variant_discrim_type): Return NULL when failed
3203         to look up controlling discriminant name.
3204
3205 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3206
3207         * ada-lang.c (to_fixed_range_type): Add ORIG_TYPE argument.
3208         Fall back to orig_type as index type if symbol lookup fails.
3209         Allocate result types from ORIG_TYPE's objfile.
3210         (ada_array_bound_from_type, to_fixed_array_type,
3211         ada_evaluate_subexp): Pass original index type to
3212         to_fixed_range_type.  Do not pass objfile.
3213
3214         * ada-typeprint.c (print_range_type_named): Add ORIG_TYPE argument.
3215         Fall back to orig_type as index type if symbol lookup fails.
3216         (print_array_type, ada_print_type): Pass original index type
3217         to print_range_type_named.
3218
3219 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3220
3221         * ada-lang.c (ada_index_type): Update comment.
3222
3223 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3224
3225         * ada-lang.c (ada_index_type): Make static.  Add NAME argument.
3226         Throw error on invalid input arguments.  Return NULL if unable
3227         to determine index type.
3228
3229         (ada_array_bound_from_type): Remove TYPEP argument.
3230         (ada_array_bound): Make static.  Return LONGEST instead of value.
3231         Update for ada_array_bound_from_type change.
3232         (ada_array_length): Return LONGEST instead of value.
3233         Update for ada_array_bound_from_type change.
3234         (make_array_descriptor): Update for ada_array_bound change.
3235
3236         (ada_evaluate_subexp) [OP_ATR_RANGE, OP_ATR_FIRST, OP_ATR_LAST,
3237         OP_ATR_LENGTH]: Update for ada_array_bound_from_type,
3238         ada_array_bound, ada_array_length, ada_index_type changes.
3239         Always use ada_index_type to compute result type; fall back
3240         to architecture-specific integer type if ada_index_type fails.
3241
3242         * ada-lang.h (ada_index_type): Remove prototype.
3243         (ada_array_bound): Likewise.
3244
3245 2009-06-29  Pedro Alves  <pedro@codesourcery.com>
3246
3247         * dbxread.c (read_dbx_symtab): Clear has_line_numbers when ending
3248         a psymtab.
3249
3250 2009-06-29  Tom Tromey  <tromey@redhat.com>
3251
3252         * README: Mention parallel check.
3253
3254 2009-06-29  Sami Wagiaalla  <swagiaal@redhat.com>
3255
3256         * dwarf2read.c (read_import_statement): Properly set import location
3257         and destination.
3258         * cp-support.h (cp_add_using, cp_add_using_directive): Now take char*
3259         inner, char* outer arguments. Updated callers.
3260
3261 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3262
3263         * value.h (value_subscript, value_subscripted_rvalue,
3264         value_bitstring_subscript, value_ptradd): Use LONGEST instead
3265         of value as type of the index argument.
3266         (value_ptrsub): Remove.
3267         * valarith.c (value_subscript, value_subscripted_rvalue,
3268         value_bitstring_subscript, value_ptradd): Use LONGEST instead
3269         of value as type of the index argument.
3270         (value_ptrsub): Remove.
3271
3272         * wrapper.h (gdb_value_subscript): Use LONGEST instead of
3273         value as type of the index argument.
3274         * wrapper.c (gdb_value_subscript): Likewise.
3275
3276         Update calls to gdb_value_subscript, value_subscript,
3277         value_subscripted_rvalue, value_bitstring_subscript and
3278         value_ptradd to use LONGEST instead of value as index
3279         argument type.  Use value_ptradd instead of value_ptrsub.
3280         * ada-lang.c (ada_value_subscript, ada_value_ptr_subscript,
3281         ada_tag_name_2): Update.
3282         * ada-tasks.c (read_atcb): Update.
3283         * eval.c (evaluate_subexp_standard): Update.
3284         * valarith.c (value_subscript): Update.
3285         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Update.
3286         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
3287         gnuv3_method_ptr_to_value): Update.
3288         * jv-lang.c (evaluate_subexp_java): Update.
3289         * m2-lang.c (evaluate_subexp_modula2): Update.
3290         * python/python-value.c (valpy_getitem, valpy_binop): Update.
3291         * wrapper.c (gdb_value_subscript): Update.
3292         * varobj.c (c_describe_child): Update.
3293
3294 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3295
3296         * gdbtypes.h (make_function_type): Remove OBJFILE parameter.
3297         * gdbtypes.c (make_function_type): Remove OBJFILE parameter.
3298         (lookup_function_type): Update call.
3299         * stabsread.c (read_type): Likewise.
3300         * dwarf2read.c (read_subroutine_type): Use lookup_function_type
3301         instead of make_function_type.
3302         * jv-lang.c (type_from_class): Likewise.  Do not allocate types
3303         on the fake "dynamics" obstack.
3304
3305 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3306
3307         * gdbtypes.h (struct builtin_type): Remove builtin_core_addr,
3308         nodebug_text_symbol, nodebug_data_symbol, nodebug_unknown_symbol,
3309         and nodebug_tls_symbol members.
3310         (struct objfile_type): New data structure.
3311         (objfile_type): Add prototype.
3312         * gdbtypes.c (gdbtypes_post_init): Remove initialization code
3313         for types no longer in struct builtin_type.
3314         (objfile_type_data): New static variable.
3315         (_initialize_gdbtypes): Initialize it.
3316         (objfile_type): New function.
3317
3318         * gdbtypes.h (builtin_type_error): Remove.
3319         * gdbtypes.c (build_complex): Do not use builtin_type_error.
3320         * symtab.c (builtin_type_error): Remove.
3321         (_initialize_symtab): Remove initialization.
3322
3323         * stabsread.c (dbx_lookup_type, define_symbol, error_type,
3324         rs6000_builtin_type, read_range_type): Use per-objfile types
3325         instead of global or per-architecture builtin types.
3326         * coffread.c (decode_type): Likewise.
3327         * dwarf2read.c (read_array_type, read_tag_string_type,
3328         new_symbol, die_type): Likewise.
3329         * mdebugread.c (parse_symbol, basic_type, upgrade_type,
3330         parse_procedure, psymtab_to_symtab_1): Likewise.
3331         * xcoffread.c (process_xcoff_symbol): Likewise.
3332         * parse.c (write_exp_msymbol): Likewise.
3333
3334         * stabsread.c (rs6000_builtin_type_data): New static variable.
3335         (_initialize_stabsread): Initialize it.
3336         (rs6000_builtin_type): Add OBJFILE argument.  Allocate builtin
3337         types per-objfile instead of globally.
3338
3339         * stabsread.c (dbx_lookup_type): Add OBJFILE argument.  Use it
3340         instead of current_objfile; pass it to rs6000_builtin_type.
3341         (dbx_alloc_type, read_type, read_range_type): Update calls.
3342         (cleanup_undefined_types_noname): Add OBJFILE argument and
3343         pass it to dbx_lookup_type.
3344         (cleanup_undefined_types): Add OBJFILE argument and pass it
3345         to cleanup_undefined_types_noname.
3346         * stabsread.h (cleanup_undefined_types): Add OBJFILE argument.
3347         * buildsym.c (end_symtab): Update call.
3348
3349 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3350
3351         * darwin-nat-info.c (darwin_debug_regions_recurse): Use
3352         target_gdbarch instead of current_gdbarch.
3353
3354 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
3355
3356         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-windows-tdep.o.
3357         (ALL_TARGET_OBS): Add moxie-tdep.o, i386-darwin-tdep.o, and
3358         solib-darwin.o.
3359
3360         * configure.tgt: Add comment.
3361
3362 2009-06-28  Paul Pluzhnikov  <ppluzhnikov@google.com>
3363
3364         * mi/mi-cmds.c (mi_cmds): Remove unimplemented entries.
3365         
3366 2009-06-27  Daniel Jacobowitz  <dan@codesourcery.com>
3367             Jan Kratochvil  <jan.kratochvil@redhat.com>
3368
3369         * NEWS: Document inlined function support.
3370         * Makefile.in (SFILES): Add inline-frame.c.
3371         (COMMON_OBS): Add inline-frame.o.
3372         * block.c (contained_in): Rewrite to use lexical nesting.
3373         (block_linkage_function): Skip inlined function blocks.
3374         (block_inlined_p): New.
3375         * block.h (struct block): Update comment.
3376         (block_inlined_p): New prototype.
3377         * blockframe.c (get_frame_block): Handle inlined functions.
3378         (get_frame_function): Do not use block_linkage_function.
3379         (block_innermost_frame): Use get_frame_block and contained_in.
3380         * breakpoint.c (watchpoint_check): Remove extra reinit_frame_cache.
3381         Skip over inlined functions.  Simplify epilogue check.
3382         (bpstat_check_breakpoint_conditions): Use get_stack_frame_id.
3383         Update comments.
3384         (set_momentary_breakpoint): Only accept non-inlined frames.
3385         (watch_command_1): Use frame_unwind_caller_pc and
3386         frame_unwind_caller_id instead of get_prev_frame.
3387         (until_break_command): Likewise.  Use get_stack_frame_id.
3388         * buildsym.c (end_symtab): Set SYMBOL_SYMTAB for block functions.
3389         * dwarf2loc.c (dwarf_expr_frame_base): Use block_linkage_function.
3390         * dwarf2read.c (process_die): Handle DW_TAG_inlined_subroutine.
3391         (read_func_scope, new_symbol): Likewise.  Handle arguments specially
3392         for inlined functions without call site information.
3393         (inherit_abstract_dies): Allow tag mismatch for inlined subroutines.
3394         (die_specification): Treat DW_AT_abstract_origin as a specification.
3395         (read_type_die): Handle DW_TAG_inlined_subroutine.
3396         * frame-unwind.c (frame_unwind_init): Add inline_frame_unwind.
3397         * frame.c (fprint_frame_id): Print inline depth.
3398         (fprint_frame_type): Handle INLINE_FRAME and SENTINEL_FRAME.
3399         (skip_inlined_frames, get_stack_frame_id): New.
3400         (frame_unwind_caller_id): Use skip_inlined_frames.
3401         (frame_id_inlined_p): New.
3402         (frame_id_eq): Make the logic match the comments.  Add inline_depth
3403         check.
3404         (frame_id_inner): Handle inlined functions.
3405         (frame_unwind_pc): New function, copied from frame_unwind_caller_pc.
3406         (frame_unwind_caller_pc): Use skip_inlined_frames and frame_unwind_pc.
3407         (get_prev_frame_1): Check for inline frames.  Split out frame
3408         allocation to get_prev_frame_raw.
3409         (get_prev_frame_raw): New function.
3410         (get_prev_frame): Handle inline frames.
3411         (get_frame_pc): Use frame_unwind_pc.
3412         (get_frame_address_in_block): Skip inlined frames on both sides.
3413         (pc_notcurrent): Delete.
3414         (find_frame_sal): Rewrite to handle inline call sites.  Use
3415         get_frame_address_in_block.
3416         (deprecated_update_frame_pc_hack): Make static.
3417         * frame.h: Update comments.
3418         (struct frame_id): Add inline_depth.
3419         (enum frame_type): Add INLINE_FRAME.
3420         (frame_id_inlined_p, get_stack_frame_id): New prototypes.
3421         * gdbthread.h (struct thread_info): Add step_stack_frame_id field.
3422         * infcmd.c (set_step_frame): New function.
3423         (step_once): Use set_step_frame.  Handle inlined functions.
3424         (until_next_command): Use set_step_frame.
3425         (finish_backward), finish_forward): Use get_stack_frame_id.
3426         (finish_command): Support inlined functions.
3427         * inferior.h (set_step_info): New prototype.
3428         * infrun.c (RESUME_ALL): Use minus_one_ptid.
3429         (clear_proceed_status): Clear step_stack_frame_id.
3430         (init_wait_for_inferior): Call clear_inline_frame_state.
3431         (init_execution_control_state): Make static.
3432         (set_step_info): New function.
3433         (init_thread_stepping_state): Do not set the symtab or line here.
3434         (stepped_in_from): New function.
3435         (handle_inferior_event): Handle inlined functions.  Use set_step_info.
3436         (insert_step_resume_breakpoint_at_frame): Use get_stack_frame_id.
3437         (struct inferior_status): Add step_stack_frame_id.
3438         (save_inferior_status, restore_inferior_status): Save and restore
3439         step_stack_frame_id.
3440         * inline-frame.c, inline-frame.h: New files.
3441         * minsyms.c (prim_record_minimal_symbol_and_info): Use XCALLOC.
3442         * regcache.c (regcache_write_pc): Call reinit_frame_cache.
3443         * s390-tdep.c (s390_prologue_frame_unwind_cache): Handle INLINE_FRAME.
3444         * stack.c (frame_show_address): New.
3445         (print_frame_info, print_frame): Use it.
3446         (find_frame_funname): Use get_frame_function.  Handle inlined blocks.
3447         (frame_info): Mark inlined functions.
3448         (backtrace_command_1): Use get_current_user_frame.
3449         (print_frame_local_vars, print_frame_label_vars): Update comments.
3450         (return_command): Refuse inlined functions.
3451         * symtab.c (lookup_symbol_aux_local): Stop at inlined function
3452         boundaries.
3453         (find_function_start_sal): Avoid inlined functions.
3454         (completion_list_add_fields): New function.
3455         (default_make_symbol_completion_list): Use it.  Use block_static_block
3456         and block_global_block.  Check for inlined functions.
3457         (skip_prologue_using_sal): Avoid line number comparison across
3458         inlining.
3459         * symtab.h (struct symbol): Add is_inlined.
3460         (SYMBOL_INLINED): New.
3461         * target.c (target_resume): Call clear_inline_frame_state.
3462         * valops.c (value_of_variable): Check block_inlined_p.
3463
3464 2009-06-27  Daniel Jacobowitz  <dan@codesourcery.com>
3465
3466         * frame.c (frame_unwind_id): Renamed to ...
3467         (frame_unwind_caller_id): ... this.  All callers updated.
3468         (frame_pc_unwind): Renamed to ...
3469         (frame_unwind_caller_pc): ... this.  All callers updated.
3470         * frame.h: Document frame_unwind_caller_WHAT functions.
3471         (frame_unwind_id): Renamed to ...
3472         (frame_unwind_caller_id): ... this.
3473         (frame_pc_unwind): Renamed to ...
3474         (frame_unwind_caller_pc): ... this.
3475         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Correct comment.
3476         * stack.c (parse_frame_specification_1): Do not rely on
3477         frame_unwind_id.
3478
3479 2009-06-27  Michael Snyder  <msnyder@vmware.com>
3480
3481         * infrun.c (handle_inferior_event): Improve handling of
3482         reverse-stepping into and over shared library functions.
3483
3484 2009-06-25  Karen Osmond  <karen.osmond@gmail.com>
3485
3486         * linespec.c (find_method): Add new not_found_ptr parameter to
3487         bring in line with symtab_from_filename, decode_variable.
3488         (decode_compound): Likewise.  Also propagate not_found_ptr to 
3489         find_method.
3490         (decode_line_1): Propagate not_found_ptr to decode_compound.
3491         (cplusplus_error): Now throws NOT_FOUND_ERROR.
3492
3493 2009-06-25  Karen Osmond  <karen.osmond@gmail.com>
3494
3495         * MAINTAINERS (Write After Approval): Add self.
3496
3497 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
3498
3499         * valops.c (value_one): Reimplement broken decimal-float case.
3500
3501 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
3502
3503         * eval.c (evaluate_subexp_standard): Use expression architecture
3504         instead of current_gdbarch.
3505
3506         * infrun.c (handle_inferior_event): Avoid unncessary reference
3507         to current_gdbarch and get_current_frame ().
3508
3509 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
3510
3511         * breakpoint.h (set_longjmp_breakpoint): Add THREAD argument.
3512         (enum bptype): Add bp_longjmp_master.
3513
3514         * breakpoint.c (create_longjmp_master_breakpoint): New function.
3515         (update_breakpoints_after_exec): Handle bp_longjmp_master
3516         breakpoints.  Call create_longjmp_master_breakpoint.
3517         (print_it_typical, bpstat_stop_status, bpstat_what,
3518         print_one_breakpoint_location, allocate_bp_location, mention,
3519         delete_command, breakpoint_re_set_one): Handle bp_longjmp_master.
3520         (breakpoint_re_set): Call create_longjmp_master_breakpoint.
3521         (create_longjmp_breakpoint): Delete.
3522         (set_longjmp_breakpoint): Add THREAD argument.  Reimplement
3523         to install momentary clones of bp_longjmp_master breakpoints.
3524
3525         * infcmd.c (step_1): Pass thread to set_longjmp_breakpoint.
3526
3527 2009-06-23  Cary Coutant  <ccoutant@google.com>
3528
3529         * dwarf2read.c (dwarf_decode_lines): Ignore rows where is_stmt is 0.
3530         Set basic_block to 0 after a special opcode.
3531
3532 2009-06-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
3533
3534         Fix a regression by the mmap patch from 2009-06-16.
3535         * symfile.c (reread_symbols): Move sym_finish and clear_objfile_data
3536         calls before deleting the OBJFILE obstack.  Extend the comment.
3537
3538 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
3539
3540         * jv-lang.h (JAVA_OBJECT_SIZE): Remove.
3541         (get_java_object_header_size): Add GDBARCH parameter.
3542         * jv-lang.c (get_java_object_header_size): Add GDBARCH parameter.
3543         Use it instead of current_gdbarch.
3544         (evaluate_subexp_java): Replace JAVA_OBJECT_SIZE with call to
3545         get_java_object_header_size.
3546         * jv-valprint.c (java_value_print): Likewise.
3547
3548 2009-06-23  Sami Wagiaalla  <swagiaal@redhat.com>
3549
3550         * dwarf2read.c (process_die): Handle import statements
3551         (DW_TAG_imported_declaration, case DW_TAG_imported_module)
3552         (read_import_statement): New.
3553         (read_func_scope): Update using_directives to point to current context
3554         (read_lexical_block_scope): Ditto.
3555         * cp-support.h: Added prototype for cp_add_using.
3556         * cp-namespace.c: Removed local context_stack.
3557         (cp_initialize_namespace): Deleted.
3558         (cp_finalize_namespace): Deleted.
3559         (cp_add_using_directive): Use using_directives instead of using_list.
3560         (cp_add_using): No longer static.
3561         * buildsym.h: Created global using_direct variable.
3562         Created using_direct variable in context_stack.
3563         * buildsym.c (finish_block): Set using directives for the block under
3564         construction.
3565         (start_symtab): Removed call to cp_initialize_namespace().
3566         (end_symtab): Removed call to cp_finalize_namespace().
3567         (push_context): Save and reset using_directives.
3568         * block.c (block_using): Return using directives for given
3569         block instead of static block.
3570
3571 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
3572
3573         * target-descriptions.h (struct type): Do not declare.
3574         (struct tdesc_type): Declare.
3575         (tdesc_named_type): Change return type to struct tdesc_type *.
3576         (tdesc_record_type): Remove.
3577         (tdesc_create_vector): Add prototype.
3578         (tdesc_create_union): Likewise.
3579         (tdesc_add_field): Likewise.
3580
3581         * target-descriptions.c (struct tdesc_reg): Replace gdb_type
3582         member by tdesc_type member.
3583         (struct tdesc_type_field, tdesc_type_field): Add type and vector def.
3584         (struct tdesc_type, tdesc_type_p): Likewise.
3585         (struct tdesc_arch_reg, tdesc_arch_reg): Likewise.
3586         (struct tdesc_feature): Change type of "types" to VEC(tdesc_type_p).
3587         (struct tdesc_arch_data): Replace registers member by arch_regs.
3588
3589         (tdesc_predefined_types): Change to array of pre-defined
3590         struct tdesc_type structures.  Add "code_ptr" and "data_ptr".
3591         (tdesc_named_type): Return struct tdesc_type * instead of GDB type.
3592         (tdesc_gdb_type): New function.
3593
3594         (target_find_description): Update for data structure changes.
3595         (tdesc_data_cleanup): Likewise.
3596         (tdesc_numbered_register): Likewise.
3597         (tdesc_use_registers): Likewise.
3598         (tdesc_create_reg): Likewise.
3599         
3600         (tdesc_find_arch_register): New function.
3601         (tdesc_find_register): Use it.
3602         (tdesc_register_type): Use tdesc_gdb_type to generate GDB type from
3603         tdesc_type on demand; cache generated types in tdesc_arch_reg.
3604
3605         (tdesc_free_type): New function.
3606         (tdesc_free_feature): Call it.
3607
3608         (tdesc_create_vector): New function.
3609         (tdesc_create_union): Likewise.
3610         (tdesc_add_field): Likewise.
3611         (tdesc_record_type): Remove.
3612
3613         (tdesc_type_id): Remove.
3614         (maint_print_c_tdesc_cmd): Update for data structure changes.  Update
3615         generated code to create tdesc_type structures instead of GDB types.
3616
3617         * xml-tdesc.c: Do not include "gdbtypes.h".
3618         (struct tdesc_parsing_data): Change type of current_union to
3619         struct tdesc_type *.
3620         (tdesc_start_reg): Do not special-case "code_ptr" or "data_ptr".
3621         (tdesc_start_union): Call tdesc_create_union.
3622         (tdesc_start_field): Call tdesc_add_field.
3623         (tdesc_start_vector): Call tdesc_create_vector.
3624         (tdesc_end_union): Remove.
3625         (feature_children): Remove reference to tdesc_end_union.
3626
3627         * features/arm-with-iwmmxt.c: Regenerate.
3628         * features/mips-linux.c: Regenerate.
3629         * features/mips64-linux.c: Regenerate.
3630         * features/rs6000/powerpc-32.c: Regenerate.
3631         * features/rs6000/powerpc-32l.c: Regenerate.
3632         * features/rs6000/powerpc-403.c: Regenerate.
3633         * features/rs6000/powerpc-403gc.c: Regenerate.
3634         * features/rs6000/powerpc-505.c: Regenerate.
3635         * features/rs6000/powerpc-601.c: Regenerate.
3636         * features/rs6000/powerpc-602.c: Regenerate.
3637         * features/rs6000/powerpc-603.c: Regenerate.
3638         * features/rs6000/powerpc-604.c: Regenerate.
3639         * features/rs6000/powerpc-64.c: Regenerate.
3640         * features/rs6000/powerpc-64l.c: Regenerate.
3641         * features/rs6000/powerpc-7400.c: Regenerate.
3642         * features/rs6000/powerpc-750.c: Regenerate.
3643         * features/rs6000/powerpc-860.c: Regenerate.
3644         * features/rs6000/powerpc-altivec32.c: Regenerate.
3645         * features/rs6000/powerpc-altivec32l.c: Regenerate.
3646         * features/rs6000/powerpc-altivec64.c: Regenerate.
3647         * features/rs6000/powerpc-altivec64l.c: Regenerate.
3648         * features/rs6000/powerpc-e500.c: Regenerate.
3649         * features/rs6000/powerpc-e500l.c: Regenerate.
3650         * features/rs6000/powerpc-isa205-32l.c: Regenerate.
3651         * features/rs6000/powerpc-isa205-64l.c: Regenerate.
3652         * features/rs6000/powerpc-isa205-altivec32l.c: Regenerate.
3653         * features/rs6000/powerpc-isa205-altivec64l.c: Regenerate.
3654         * features/rs6000/powerpc-isa205-vsx32l.c: Regenerate.
3655         * features/rs6000/powerpc-isa205-vsx64l.c: Regenerate.
3656         * features/rs6000/powerpc-vsx32.c: Regenerate.
3657         * features/rs6000/powerpc-vsx32l.c: Regenerate.
3658         * features/rs6000/powerpc-vsx64.c: Regenerate.
3659         * features/rs6000/powerpc-vsx64l.c: Regenerate.
3660         * features/rs6000/rs6000.c: Regenerate.
3661
3662 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
3663
3664         * ada-lang.c (decode_packed_array): If the value is a pointer to
3665         an array, then use value_ind to dereference it, not ada_value_ind.
3666         (ada_template_to_fixed_record_type_1): Handle the case where a
3667         dynamic field is an aligner type.
3668         (to_fixed_array_type): Add handling for packed array types.
3669         (ada_get_base_type): Do not follow the XVS type if the type is
3670         an aligner type.
3671         (ada_evaluate_subexp): Split a few statements up for clarity
3672         and debuggability.
3673         <OP_FUNCALL>: Add handling of the case of a packed array that
3674         has already been fixed.
3675
3676 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
3677
3678         * ada-lang.c (evaluate_subexp): Delete.  Use the version from eval.c.
3679         (evaluate_subexp_type): Reimplement using evaluate_subexp.
3680         * value.h (evaluate_subexp): Add declaration.
3681         * eval.c (evaluate_subexp): Make non-static.
3682         * objc-lang.c (print_object_command): Use evaluate_subexp.
3683
3684 2009-06-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
3685
3686         Revert 2009-05-14 breakpoint commit (no longer needed).
3687         * breakpoint.h (breakpoint_re_set_objfile): Remove
3688         * breakpoint.c (breakpoint_re_set_objfile): Likewise
3689         (create_overlay_event_breakpoint): Remove objfile parameter,
3690         iterate over all objfiles.
3691         * objfiles.c (objfile_relocate): Update.
3692         * symfile.c (new_symfile_objfile): Likewise.    
3693         
3694 2009-06-23  Tom Tromey  <tromey@redhat.com>
3695
3696         PR gdb/10309:
3697         * c-lang.c (classify_type): Iterate over typedefs.
3698         * c-valprint.c (textual_element_type): Iterate over typedefs.
3699
3700 2009-06-22  Tristan Gingold  <gingold@adacore.com>
3701
3702         * darwin-nat.c (darwin_xfer_partial): Use host_address_to_string
3703         instead of "%p".
3704
3705 2009-06-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
3706
3707         PR gdb/9988:
3708         * buildsym.c (block_compar): New function.
3709         (end_symtab): Replace the bubble sort by a qsort based code.
3710
3711 2009-06-22  Sami Wagiaalla  <swagiaal@redhat.com>
3712
3713         * MAINTAINERS (Write After Approval): Add self.
3714
3715 2009-06-22  Ulrich Weigand  <uweigand@de.ibm.com>
3716
3717         * spu-tdep.c (spu_get_longjmp_target): New function.
3718         (spu_gdbarch_init): Install it.
3719
3720 2009-06-22  H.J. Lu  <hongjiu.lu@intel.com>
3721
3722         PR server/10306
3723         * remote.c (getpkt_or_notif_sane_1): Initialize val to -1.
3724
3725 2009-06-21  Michael Snyder  <msnyder@vmware.com>
3726
3727         * inferior.h: Update ancient comment.
3728
3729 2009-06-20  Aleksandar Ristovski  <aristovski@qnx.com>
3730             Pedro Alves  <pedro@codesourcery.com>
3731
3732         * solib-svr4.c (IGNORE_FIRST_LINK_MAP_ENTRY): Avoid dereferencing
3733         NULL pointer.
3734         (scan_dyntag): Skip if input bfd isn't elf flavoured.
3735         (locate_base): Call elf_locate_base even without an exec_bfd.
3736
3737 2009-06-19  Samuel Bronson  <naesten@gmail.com>
3738
3739         PR cli/9903:
3740         * cli/cli-decode.c (apropos_cmd): Skip traversing abbreviations
3741         for prefix commands to avoid duplicates in the output.
3742
3743 2009-06-19  Samuel Bronson  <naesten@gmail.com>
3744
3745         PR cli/9903:
3746         * cli/cli-decode.c (apropos_cmd): Fix avoidance of double
3747         printing.
3748
3749 2009-06-19  Jerome Guitton  <guitton@adacore.com>
3750
3751         * breakpoint.c (expand_line_sal_maybe): When explicit_line,
3752         skip prologue on each sals.
3753         (skip_prologue_sal): Return explicit_line and explicit_pc
3754         unmodified.
3755
3756 2009-06-19  Tristan Gingold  <gingold@adacore.com>
3757
3758         * darwin-nat.c (_initialize_darwin_inferior): Remove commented-out
3759         line.
3760
3761 2009-06-19  Tristan Gingold  <gingold@adacore.com>
3762         * machoread.c (macho_symtab_read): Adjust for bfd changes.
3763         * darwin-nat.h (struct darwin_exception_msg): New type to describe
3764         a mach exception.
3765         (struct private_thread_info): New type to describe the state of the
3766         thread.
3767         (DEF_VEC_I thread_t): Removed, replaced by ...
3768         (DEF_VEC_O darwin_thread_t): ... this new type.
3769         (struct darwin_inferior): Renamed to ...
3770         (struct private_inferior): ... this type.  Fields added.
3771         (darwin_not_port): Moved into the private inferior structure.
3772         * darwin-nat.c: Add includes, improve comments.
3773         Rewrite to handle multiple threads and processes.
3774         (darwin_resume_to): New function and protype.
3775         (darwin_resume, darwin_wait_to, darwin_wait): Ditto.
3776         (darwin_kill_inferior): Add ops argument.
3777         (darwin_pid_to_str): New function.
3778         (darwin_thread_alive): Ditto.
3779         (darwin_inf, darwin_not_port): Removed.
3780         (darwin_inf_fake_stop): New variable.
3781         (msgin, msgout, msg_state, exc_msg): Removed.
3782         (mach_check_error): Use warning instead of error.
3783         (darwin_ptrace): Adjust debug level.
3784         (cmp_thread_t): Fix names (typo).
3785         (darwin_check_new_threads): Argument is now an inferior,
3786         adjust for new structures, add no change check, ignore dead ports,
3787         handle first thread case.
3788         (find_inferior_task_it): New function.
3789         (find_inferior_notify_it): Ditto.
3790         (darwin_find_inferior_by_task): Ditto.
3791         (darwin_find_inferior_by_notify): Ditto.
3792         (darwin_find_thread): Ditto.
3793         (darwin_suspend_inferior): Ditto.
3794         (darwin_resume_inferior): Ditto.
3795         (catch_exception_raise_state): Removed.
3796         (catch_exception_raise_state_identity): Removed.
3797         (darwin_suspend_inferior_it): New function.
3798         (darwin_resume_inferior_it): Ditto.
3799         (darwin_dump_message): New function, extracted from darwin_wait.
3800         (darwin_decode_exception_message): New function.
3801         (darwin_encode_reply): New function.
3802         (catch_exception_raise): Removed.
3803         (darwin_send_reply): New function, extracted from darwin_resume.
3804         (darwin_resume_thread): New function, extracted from darwin_resume.
3805         (struct resume_inferior_threads_param): New type.
3806         (darwin_resume_inferior_threads_it): New function.
3807         (darwin_resume_inferior_threads): New function.
3808         (darwin_suspend_inferior_threads): New function.
3809         (darwin_resume): Mostly rewritten to handle multiple threads and
3810         some corner cases.
3811         (darwin_decode_message): New function extracted from darwin_wait.
3812         (cancel_breakpoint): New function.
3813         (darwin_wait): Mostly rewritten.  Handle multiple threads.
3814         (darwin_mourn_inferior): Adjust for per process structures.
3815         (darwin_reply_to_all_pending_messages): New function.
3816         (darwin_stop_inferior): Adjust for per inferior structures.
3817         (darwin_attach_pid): Ditto.
3818         (darwin_init_thread_list): Ditto.
3819         (darwin_attach): Ditto.
3820         (darwin_detach): Ditto.
3821         (darwin_files_info): Now empty.
3822         (darwin_pid_to_str): Adjust returns string to match one expected by
3823         the testsuite.
3824         (darwin_read_write_inferior): Rename err variable to match other uses.
3825         Adjust debug message.  Handle submaps.
3826         (darwin_xfer_memory): Adjust for per inferior structures.
3827         (set_enable_mach_exceptions): Ditto.
3828         (darwin_pid_to_exec_file): New function.
3829         (darwin_get_ada_task_ptid): Ditto.
3830         (darwin_supports_multi_process): Ditto.
3831         (_initialize_darwin_inferior): Remove useless assertion, adjust for
3832         per inferior structures.  Add new target operations.
3833
3834 2009-06-18  Hui Zhu  <teawater@gmail.com>
3835             Michael Snyder  <msnyder@vmware.com>
3836
3837         * infrun.c (handle_inferior_event): Improve reverse stepping
3838         through function epilogue.
3839
3840         * infrun.c (handle_inferior_event): Reverse-next through
3841         trampoline.
3842
3843 2009-06-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
3844
3845         * dwarf2-frame.c (struct comp_unit): Use bfd_size_type for
3846         dwarf_frame_size.
3847
3848 2009-06-17  Tom Tromey  <tromey@redhat.com>
3849
3850         * dwarf2read.c (zlib_decompress_section): Use a cleanup.
3851
3852 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
3853
3854         * gdbarch.sh (pointer_to_address): Change to type 'm'.
3855         (address_to_pointer): Likewise.
3856         * gdbarch.c, gdbarch.h: Regenerate.
3857
3858         * inferior.h (unsigned_pointer_to_address): Add GDBARCH argument.
3859         (signed_pointer_to_address): Likewise.
3860         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
3861         * findvar.c (unsigned_pointer_to_address): Likewise.
3862         (signed_pointer_to_address): Likewise.
3863         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
3864
3865         * avr-tdep.c (avr_address_to_pointer): Likewise.
3866         (avr_pointer_to_address): Likewise.
3867         * iq2000-tdep.c (iq2000_pointer_to_address): Likewise.
3868         (iq2000_address_to_pointer): Likewise.
3869         * m32c-tdep.c (m32c_m16c_address_to_pointer): Likewise.
3870         (m32c_m16c_pointer_to_address): Likewise.
3871         * spu-tdep.c (spu_pointer_to_address): Likewise.
3872         * xstormy16-tdep.c (xstormy16_pointer_to_address): Likewise.
3873         (xstormy16_address_to_pointer): Likewise.
3874
3875 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
3876
3877         * printcmd.c (print_scalar_formatted): Always truncate
3878         unsigned data types.
3879
3880         * cli-dump.c (struct callback_data): Change type of load_offset
3881         to CORE_ADDR.
3882         (restore_binary_file): Update type casts.
3883         (restore_command): Parse load_offset as address, not long.
3884
3885         * utils.c (string_to_core_addr): Do not sign-extend value.
3886         * varobj.c (find_frame_addr_in_frame_chain): Truncate frame_base
3887         before comparing against requested frame address.
3888
3889 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
3890
3891         * gdbarch.sh (gcore_bfd_target): New gdbarch callback.
3892         * gdbarch.h, gdbarch.c: Regenerate.
3893
3894         * gcore.c (default_gcore_target): Make return value const.
3895         Call gdbarch_gcore_bfd_target if present.
3896         (default_gcore_arch, default_gcore_mach): Use target_gdbarch.
3897
3898         * corelow.c (core_read_description): Call gdbarch_core_read_description
3899         on core_gdbarch instead of current_gdbarch.
3900
3901         * ppc-linux-tdep.c (ppc_linux_init_abi): Install gcore_bfd_target.
3902
3903 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
3904
3905         * gdbtypes.c (create_string_type): Receive character type as argument.
3906         * gdbtypes.h (create_string_type): Add character type argument.
3907         * dwarf2read.c (read_tag_string_type): Pass character type to
3908         create_string_type.
3909
3910         * value.h (value_string): Add character type argument.
3911         * valops.c (value_string): Add character type argument.  Pass it to
3912         create_string_type.  Do not allocate space in inferior.
3913         * valarith.c (value_concat): Pass character type to value_string.
3914
3915         * value.h (value_typed_string): Rename to ...
3916         (value_cstring): ... this.
3917         * valops.c (value_typed_string): Rename to ...
3918         (value_cstring): ... this.
3919         * c-lang.c (evaluate_subexp_c): Update.
3920
3921         * python/python-value.c (builtin_type_pychar): New define.
3922         (convert_value_from_python): Call value_cstring instead
3923         of value_from_string.
3924         * value.c (value_from_string): Remove.
3925         * value.h (value_from_string): Remove.
3926
3927         * eval.c (evaluate_subexp_standard): Pass character type to
3928         value_string.  Pass expression architecture to value_nsstring
3929         and lookup_child_selector.
3930         * objc-lang.h (lookup_objc_class): Add GDBARCH parameter.
3931         (lookup_child_selector): Likewise.
3932         (value_nsstring): Likewise.
3933         * objc-lang.c (lookup_objc_class): Add GDBARCH parameter.
3934         Pass character type to value_string..
3935         (lookup_child_selector): Likewise.
3936         (value_nsstring): Add GDBARCH parameter, use it instead of
3937         objfile architecture.  Pass architecture to lookup_objc_class
3938         and lookup_child_selector. Pass character type to value_string.
3939         (end_msglist): Pass architecture to lookup_objc_class.
3940         * objc-exp.y: Pass architecture to lookup_objc_class.
3941
3942 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
3943
3944         * gdbtypes.h (struct language_defn): Add forward declaration.
3945         (lookup_typename): Add LANGUAGE and GDBARCH parameters.
3946         (lookup_unsigned_typename): Likewise.
3947         (lookup_signed_typename): Likewise.
3948         * gdbtypes.c (lookup_typename): Add LANGUAGE and GDBARCH parameters.
3949         Use them instead of current_language and current_gdbarch.
3950         (lookup_unsigned_typename): Add LANGUAGE and GDBARCH parameters.
3951         Pass them to lookup_typename.
3952         (lookup_signed_typename): Likewise.
3953
3954         * c-exp.y: Pass parse_language and parse_gdbarch to
3955         lookup_unsigned_typename and lookup_signed_typename.
3956         * objc-exp.y: Likewise.
3957         * m2-exp.y: Pass parse_language and parse_gdbarch to lookup_typename.
3958
3959         * c-lang.c (evaluate_subexp_c): Pass expression language and
3960         gdbarch to lookup_typename.
3961         * printcmd.c (printf_command): Pass current language and
3962         gdbarch to lookup_typename.
3963         * python/python-type.c (typy_lookup_typename): Likewise.
3964         Include "language.h".
3965
3966 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
3967
3968         * sparc64-nat.c (sparc64_gregset_supplies_p): Add GDBARCH parameter.
3969         Use it instead of current_gdbarch.  Pass architecture to
3970         sparc32_gregset_supplies_p.
3971         (sparc64_fpregset_supplies_p): Add GDBARCH parameter.  Use it instead
3972         of current_gdbarch.  Pass architecture to sparc32_fpregset_supplies_p.
3973         * sparc64nbsd-nat.c (sparc64nbsd_gregset_supplies_p,
3974         sparc64nbsd_fpregset_supplies_p): Likewise.
3975         * sparc-nat.c (sparc_gregset_supplies_p, sparc_fpregset_supplies_p):
3976         Add GDBARCH parameter.
3977         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
3978         (sparc_fetch_inferior_registers): Pass regcache architecture to
3979         sparc_gregset_supplies_p and sparc_fpregset_supplies_p.
3980         (sparc_store_inferior_registers): Likewise.
3981         * sparc-nat.h (sparc_gregset_supplies_p, sparc_fpregset_supplies_p:
3982         Add GDBARCH parameter.
3983         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
3984
3985 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
3986
3987         * ada-tasks.c (read_known_tasks_array): Use target_gdbarch instead
3988         of current_gdbarch.
3989         * aix-thread.c (pd_enable): Likewise.
3990         * amd64-linux-nat.c (ps_get_thread_area): Likewise.
3991         * bsd-uthread.c (bsd_uthread_activate): Likewise.
3992         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
3993         * linux-thread-db.c (enable_thread_event): Likewise.
3994         * monitor.c (monitor_write_memory, monitor_read_memory): Likewise.
3995         * nto-procfs.c (procfs_open): Likewise.
3996         * procfs.c (invalidate_cache, procfs_insert_watchpoint,
3997         info_proc_mappings, info_mappings_callback): Likewise.
3998         * record.c (record_open): Likewise.
3999         * rs6000-nat.c (ARCH64): Likewise.
4000         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
4001         (darwin_bfd_open): Likewise.
4002         * memattr.c (mem_info_command): Likewise.
4003
4004         * windows-nat.c (win32_resume): Use current regcache architecture
4005         instead of current_gdbarch.
4006
4007         * dbug-rom.c (dbug_regname): Remove check against number of
4008         registers in current_gdbarch.
4009         * solib-pa64.c (read_dynamic_info): Remove unused variable.
4010
4011 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4012
4013         * dummy-frame.c (deprecated_pc_in_call_dummy): Add GDBARCH parameter,
4014         use it instead of current_gdbarch.
4015         * frame.h (deprecated_pc_in_call_dummy): Add GDBARCH parameter.
4016         * arm-tdep.c (arm_skip_prologue): Pass architecture to
4017         deprecated_pc_in_call_dummy.
4018
4019         * symtab.c (skip_prologue_using_sal): Add GDBARCH parameter.
4020         Use it instead of current_gdbarch.
4021         * symtab.h (skip_prologue_using_sal): Add GDBARCH parameter.
4022         * breakpoint.c (expand_line_sal_maybe): Pass architecture to
4023         skip_prologue_using_sal.
4024         * arm-tdep.c (skip_prologue_using_sal): Likewise.
4025         * lm32-tdep.c (lm32_skip_prologue): Likewise.
4026         * m32-tdep.c (m32c_skip_prologue): Likewise.
4027         * mips-tdep.c (mips_skip_prologue): Likewise.
4028         * moxie-tdep.c (moxie_skip_prologue): Likewise.
4029         * mt-tdep.c (mt_frame_unwind_cache): Likewise.
4030         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
4031         * frv-tdep.c (frv_analyze_prologue): Add GDBARCH parameter, pass
4032         it to skip_prologue_using_sal.  Update call sites ...
4033         (frv_skip_prologue, frv_frame_unwind_cache): ... here.
4034
4035         * mn10300-tdep.c (struct mn10300_prologue): Add GDBARCH member.
4036         (check_for_saved): Use it instead of current_gdbarch.
4037         (mn10300_analyze_prologue): Set it.
4038
4039         * value.c (using_struct_return): Add GDBARCH parameter.  Use it
4040         instead of current_gdbarch.
4041         * value.h (using_struct_return): Add GDBARCH parameter.
4042         * eval.c (evaluate_subexp_standard): Pass architecture to
4043         using_struct_return.
4044         * infcall.c (call_function_by_hand): Likewise.
4045         * stack.c (return_command): Likewise.
4046         * sparc-tdep.c (sparc32_push_dummy_code): Likewise.
4047
4048         * symtab.c (in_prologue): Add GDBARCH parameter.  Use it instead of
4049         current_gdbarch.
4050         * symtab.h (in_prologue): Add GDBARCH parameter.
4051         * infrun.c (handle_inferior_event): Pass architecture to in_prologue.
4052
4053         * eval.c (evaluate_subexp_standard): Use expression architecture
4054         instead of current_gdbarch.
4055
4056         * c-lang.c (evaluate_subexp_c): Use expression architecture and
4057         language instead of current_gdbarch and current_language.
4058
4059         * printcmd.c (do_one_display): Use expression architecture instead
4060         of current_gdbarch.
4061
4062         * infcmd.c (print_return_value): Use architecture of stop_regcache
4063         instead of current_gdbarch.
4064         (print_vector_info, print_float_info): Remove GDBARCH argument,
4065         use frame architecture instead.
4066         (vector_info, float_info): Update calls.
4067
4068         * objc-lang.c (objc_skip_trampoline): Use frame architecture
4069         instead of current_gdbarch.
4070
4071         * parse.c (write_dollar_variable): Use parse architecture instead
4072         of current_gdbarch.
4073
4074         * source.c (line_info): Use objfile architecture instead of
4075         current_gdbarch.
4076
4077         * symtab.c (find_function_start_sal): Use gdbarch instead of
4078         current_gdbarch.
4079         (print_msymbol_info): Use objfile architecture instead of
4080         current_gdbarch.
4081
4082         * valops.c (value_assign): Use frame architecture instead of
4083         current_gdbarch.
4084
4085 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4086
4087         * buildsym.c (record_line): Remove call to gdbarch_addr_bits_remove.
4088
4089         * coffread.c (coff_symtab_read): Call gdbarch_addr_bits_remove before
4090         calling record_line.
4091         (enter_linenos): Likewise.
4092         * dbxread.c (process_one_symbol): Likewise.
4093         * dwarf2read.c (dwarf_decode_lines): Likewise.
4094         * mdebugread.c (psymtab_to_symtab_1): Likewise.
4095         * xcoffread.c (enter_line_range): Likewise.
4096
4097 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4098
4099         * ax-gdb.c (gen_bitfield_ref): Add EXP argument, use expression
4100         architecture instead of current_gdbarch.
4101         (gen_struct_ref): Add EXP argument, pass to get_bitfield_ref.
4102         (gen_expr): Pass expression to get_struct_ref.
4103
4104         * symtab.h (struct symbol_ops): Add GDBARCH parameter to
4105         tracepoint_var_ref callback.
4106         * ax-gdb.c (gen_var_ref): Pass architecture to tracepoint_var_ref
4107         symbol operation callback.
4108         * dwarf2loc.c (dwarf2_tracepoint_var_ref): Add GDBARCH parameter.
4109         Use it instead of current_gdbarch.
4110         (locexpr_tracepoint_var_ref): Add GDBARCH parameter.  Pass it to
4111         dwarf2_tracepoint_var_ref.
4112         (loclist_tracepoint_var_ref): Likewise.
4113
4114 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4115
4116         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
4117         Use it instead of address bits of current_gdbarch.
4118         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
4119         * arm-tdep.c (thumb_analyze_prologue): Pass address bits to
4120         make_pv_area.
4121         (arm_scan_prologue): Likewise.
4122         * m32c-tdep.c (m32c_analyze_prologue): Likewise.
4123         * mep-tdep.c (mep_analyze_prologue): Likewise.
4124         * mn10300-tdep.c (mn10300_analyze_prologue): Likewise.
4125         * s390-tdep.c (s390_analyze_prologue): Likewise.
4126
4127 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4128
4129         * mi/mi-main.c (mi_cmd_data_list_register_names): Use selected
4130         frame architecture instead of current_gdbarch.
4131         (mi_cmd_data_list_changed_registers): Likewise.
4132         (mi_cmd_data_list_register_values): Likewise.  Pass selected
4133         frame to get_register.
4134         (get_register): Add FRAME argument, use it as frame to retrieve
4135         registers from (instead of selected frame).  Use frame architecture
4136         instead of current_gdbarch.
4137         (mi_cmd_data_write_register_values): Use current regcache
4138         architecture instead of current_gdbarch.
4139
4140 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4141
4142         * tui/tui-regs.c (tui_show_register_group): Remove GDBARCH parameter;
4143         use frame architecture instead.  Replace current_gdbarch uses.
4144         (tui_show_registers): Update call.
4145         (tui_get_register): Remove GDBARCH parameter; use frame architecture
4146         instead.
4147         (tui_show_register_group): Update call.
4148         (tui_check_register_values): Likewise.
4149         (tui_register_format): Remove GDBARCH parameter; use frame
4150         architecture instead.  Replace current_gdbarch uses.
4151         (tui_get_register): Update call.
4152
4153 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4154
4155         * gdbarch.sh (construct_inferior_arguments): Remove.
4156         * gdbarch.c, gdbarch.h: Regenerate.
4157         * infcmd.c (get_inferior_args): Call construct_inferior_arguments
4158         directly instead of gdbarch_construct_inferior_arguments.
4159         (construct_inferior_arguments): Remove GDBARCH argument.
4160         * inferior.h (construct_inferior_arguments): Likewise.
4161
4162 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4163
4164         * symfile.c (section_is_mapped): Use objfile architecture instead
4165         of current_gdbarch.
4166         (TARGET_LONG_BYTES): Remove.
4167         (read_target_long_array): Add SIZE argument.  Use it instead of
4168         TARGET_LONG_BYTES.
4169         (simple_read_overlay_table): Retrieve long size from objfile
4170         architecture; pass it to read_target_long_array.
4171         (simple_read_overlay_region_table): Likewise.
4172         (simple_overlay_update_1): Likewise.
4173
4174 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4175
4176         * infrun.c (cleanup_displaced_step_closure): Remove.
4177         (displaced_step_clear_cleanup): Move to before displaced_step_prepare.
4178         (displaced_step_prepare): Use displaced_step_clear_cleanup instead
4179         of cleanup_displaced_step_closure.
4180         (handle_inferior_event, keep_going): Use thread architecture instead
4181         of current_gdbarch.
4182
4183 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
4184
4185         * infrun.c (handle_inferior_event): Use current frame architecture
4186         or thread architecture instead of current_gdbarch.  Pass to
4187         handle_step_into_function and handle_step_into_function_backward.
4188         (handle_step_into_function): Add GDBARCH parameter.  Use it instead
4189         of current_gdbarch.
4190         (handle_step_into_function_backward): Likewise.
4191         (insert_step_resume_breakpoint_at_frame): Use frame architecture
4192         instead of current_gdbarch.
4193         (insert_step_resume_breakpoint_at_caller): Likewise.
4194
4195 2009-06-17  Pierre Muller  <muller@ics.u-strasbg.fr>
4196         Pedro Alves  <pedro@codesourcery.com>
4197         
4198         * infcmd.c (post_create_inferior): Call breakpoint_re_set after target
4199         is pushed for watchpoint promotion to hardware watchpoint.
4200
4201 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
4202
4203         * dwarf2read.c (dwarf_info_section, dwarf_abbrev_section)
4204         (dwarf_line_section, dwarf_pubnames_section, dwarf_aranges_section)
4205         (dwarf_loc_section, dwarf_macinfo_section, dwarf_str_section)
4206         (dwarf_ranges_section, dwarf_frame_section)
4207         (dwarf_eh_frame_section): Removed.
4208         (dwarf2_resize_section): Likewise.
4209         (dwarf2_read_section): Now static, use bfd_mmap() if possible.
4210         (dwarf2_get_section_info): New function.
4211         (munmap_section_buffer): Likewise.
4212         (dwarf2_per_objfile_cleanup): Likewise.
4213         (section_is_p): Signature change.
4214         * dwarf2-frame.c (dwarf2_build_frame_info): Use
4215         dwarf2_get_section_info instead of dwarf2_read_section.
4216         
4217 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
4218
4219         * solib.c (symbol_add_stub): New FLAGS parameter.
4220         (solib_read_symbols): FROM_TTY -> FLAGS, call symbol_add_stub
4221         directly.
4222         (solib_add): Defer breakpoint_re_set until after all solibs.
4223         * bsd-uthread.c (bsd_uthread_solib_loaded): Adjust.
4224         * rs6000-nat.c (objfile_symbol_add): Adjust.
4225         * symfile.c (syms_from_objfile): Merge parameters into ADD_FLAGS.
4226         (new_symfile_objfile): Likewise.
4227         (symbol_file_add_with_addrs_or_offsets): Likewise.
4228         (symbol_file_add_from_bfd): Likewise.
4229         (symbol_file_add): Likewise.
4230         * symfile.h (enum symfile_add_flags): New. Adjust prototypes.
4231         * symfile-mem.c (symbol_file_add_from_memory): Adjust.
4232         * windows-nat.c (safe_symbol_file_add_stub): Adjust.
4233         * machoread.c (macho_oso_symfile, macho_symfile_read): Adjust.
4234         
4235 2009-06-16  Keith Seitz  <keiths@redhat.com>
4236
4237         * linespec.c (collect_methods): Delete.
4238         (add_matching_methods): Reove destructor special case.
4239         (find_method): Call find_methods directly instead of
4240         collect_methods.
4241         * valops.c (value_struct_elt): Remove destructor
4242         special cases.
4243         (check_field): Likewise.
4244         (value_struct_elt_for_reference): Likewise.
4245         (destructor_name_p): Remove misleading comment about dtors
4246         being "special cases". 
4247         * gdbtypes.h (get_destructor_fn_field): Remove. No longer needed.
4248         * gdbtypes.c (get_destructor_fn_field): Likewise. 
4249
4250 2009-06-16  Pedro Alves  <pedro@codesourcery.com>
4251
4252         * mi/mi-main.c (mi_cmd_data_read_memory): Dispatch
4253         TARGET_OJECT_MEMORY reads to the topmost target, not to the
4254         flattened current_target.
4255
4256 2009-06-16  Tristan Gingold  <gingold@adacore.com>
4257
4258         * avr-tdep.c (struct gdbarch_tdep): Replace the unused field with
4259         call_length field.
4260         (avr_register_name): Add const to register_names.
4261         (avr_scan_arg_moves): Move inside avr_scan_prologue.
4262         (avr_scan_prologue): Add pc_end argument.
4263         Only read prologue bytes that can be read.
4264         Limit the scan to the known prologue length.
4265         Makes pattern variables static and const.
4266         Fix indentation.
4267         (avr_skip_prologue): Pass func_end argument to avr_scan_prologue.
4268         Fix indentation.
4269         (avr_breakpoint_from_pc): Constify avr_break_insn.
4270         (avr_extract_return_value): Fix function comment.
4271         (avr_frame_unwind_cache): Fix GNU style violations.
4272         Pass current_pc argument to avr_scan_prologue to stop prologue
4273         analysis to the current pc.  This fixes the bug with the 'next'
4274         command.
4275         Correctly set the SP register of the previous frame (use call_length).
4276         (avr_frame_prev_register): Fix indentation.
4277         Correctly read PC from the stack on avr6 architectures.
4278         (avr_push_dummy_call): Fix indentation.
4279         (avr_gdbarch_init): Set call_length according to the architecture.
4280
4281 2009-06-15  Phil Muldoon  <pmuldoon@redhat.com>
4282
4283         * infcall.c (show_unwind_on_terminating_exception_p): New
4284         function.
4285         (call_function_by_hand): Create breakpoint and clean-up call for
4286         std::terminate.breakpoint. Add unwind_on_terminating_exception_p
4287         gate. Pop frame on breakpoint hit.
4288         (_initialize_infcall): Add add_setshow_boolean_cmd for
4289         unwind-on-terminating-exception.
4290
4291 2009-06-12  Kevin Buettner  <kevinb@redhat.com>
4292
4293         * dwarf2read.c (dwarf2_psymtab_to_symtab): Propagate
4294         `has_section_at_zero' flag from stripped objfile to separate,
4295         debug info only, objfile.
4296
4297 2009-06-12  Pedro Alves  <pedro@codesourcery.com>
4298
4299         * exec.h (section_table_xfer_memory_partial): Improve description,
4300         mention SECTION_NAME.
4301         * exec.c (section_table_xfer_memory_partial): Remove stale
4302         description.
4303
4304 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
4305
4306         * nto-tdep.h (nto_generic_supply_gpregset)
4307         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
4308         * nto-tdep.c (nto_generic_supply_gpregset)
4309         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
4310
4311 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
4312
4313         * i386-nto-tdep.c (I386_NTO_SIGCONTEXT_OFFSET): Remove define.
4314         (i386nto_sigcontext_addr): Change the way context address is calculated.
4315         (i386nto_init_abi): Remove usage of deprecated sc_reg_offset and
4316         sc_sp_offset and set sc_reg_offset and sc_num_regs.
4317
4318 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
4319
4320         * i386-nto-tdep.c (i386_nto_target): Remove definition.
4321         (init_i386nto_ops): Use macros to set fields to global
4322         current_nto_target directly.
4323         (i386nto_init_abi): Remove unused nto_set_target call.
4324         * nto-tdep.h (nto_set_target): Remove unused declaration.
4325         * nto-tdep.c (nto_set_target): Remove unused function.
4326
4327 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
4328
4329         * breakpoint.c (break_command_really): Rename local variable
4330         breakpoint_chain to bkpt_chain.
4331
4332 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
4333
4334         Add support for XMM registers.
4335         * i386-nto-tdep.c (i386nto_regset_id): Add case for SSE register set.
4336         (i386nto_register_area): Correctly calculate offsets and sizes for
4337         all supported registers.
4338
4339 2009-06-11  Tom Tromey  <tromey@redhat.com>
4340
4341         * eval.c (evaluate_subexp_standard) <OP_OBJC_MSGCALL>: Remove
4342         'static' from local variable definitions.
4343
4344 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
4345
4346         * symtab.c (append_expanded_sal): Remove unused local variables.
4347
4348 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
4349
4350         * infrun.c (sched_multi): New global.
4351         (resume): If sched_multi is set, resume only threads of the
4352         current inferior.
4353         (prepare_to_proceed): Don't switch over to wait_ptid if we're
4354         resuming a different inferior, and sched_multi is off.
4355         (show_schedule_multiple): New.
4356         (_initialize_infrun): Register new "set schedule-multiple" command.
4357         * inferior.h (sched_multi): Declare.
4358         * NEWS: Mention new "schedule-multiple" setting.
4359
4360 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
4361
4362         * varobj.c (varobj_create): Properly restore the selected frame.
4363
4364 2009-06-05  Tom Tromey  <tromey@redhat.com>
4365
4366         * inferior.c (print_inferior): Make a table, not a list.  Emit
4367         table headers.
4368
4369 2009-06-10  Jonas Maebe  <jonas.maebe@elis.ugent.be>
4370
4371         * darwin-nat.c (darwin_stop_inferior): Pass 0 as options to
4372         darwin_wait (blocking wait).
4373         (darwin_kill_inferior): Likewise.
4374
4375 2009-06-10  Pedro Alves  <pedro@codesourcery.com>
4376
4377         * infrun.c (handle_inferior_event): Update comment around trying
4378         to revert back to a stepping thread that has exited.
4379
4380 2009-06-10  Cary Coutant  <ccoutant@google.com>
4381
4382         * dwarf2read.c (dwarf_decode_lines): Recognize and ignore
4383         DW_LNE_set_discriminator.
4384
4385 2009-06-10  Pierre Muller  <muller@ics.u-strasbg.fr>
4386
4387         * breakpoint.c: ARI fixes.
4388         (create_overlay_event_breakpoint): Avoid assignment inside if statement.
4389         (print_one_breakpoint_location): Likewise.
4390         (create_longjmp_breakpoint): Likewise.
4391         (tracepoint_save_command): Likewise
4392         (bpstat_find_step_resume_breakpoint): No operator at end of line.
4393         (bpstat_stop_status): Likewise.
4394         (describe_other_breakpoints): Likewise.
4395         (hw_watchpoint_used_count): Likewise.
4396         (expand_line_sal_maybe): Likewise.
4397         (break_command_really): Likewise.
4398         (delete_command): Likewise.
4399         (do_enable_breakpoint): Likewise.
4400         (delete_trace_command): Likewise.
4401         (catch_exception_command_1): Likewise and remove extra parentheses.
4402
4403 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
4404
4405         * breakpoint.c (_initialize_breakpoint): Remove "bu" command alias of
4406         "ubreak" command that does not exist.
4407
4408 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
4409
4410         * cli/cli-decode.c (add_alias_cmd): Correct assertion.
4411
4412 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
4413
4414         * hppa-tdep.c (_initialize_hppa_tdep): Add declaration.
4415
4416 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
4417
4418         * procfs.h: New.
4419         * proc-utils.h (procfs_first_available): Don't declare here.
4420         * sol-thread.c: Include procfs.h instead of sys/procfs.h and
4421         proc-utils.h.
4422         * procfs.c: Include procfs.h.
4423         (procfs_target): Make it public.  Don't register
4424         procfs_can_use_hw_breakpoint here.
4425         (proc_set_watchpoint): Check for PCWATCH or PIOCSWATCH being
4426         defined instead of TARGET_HAS_HARDWARE_WATCHPOINTS.
4427         (procfs_can_use_hw_breakpoint): Remove check of
4428         TARGET_HAS_HARDWARE_WATCHPOINTS.
4429         (procfs_use_watchpoints): Register procfs_can_use_hw_breakpoint
4430         here.
4431         (_initialize_procfs): Don't add the procfs target here.
4432
4433         * i386-sol2-nat.c: Include target.h and procfs.h.
4434         (_initialize_amd64_sol2_nat): Install the procfs target here,
4435         customized with watchpoints support.
4436         * irix5-nat.c: Include target.h.
4437         (_initialize_core_irix5): Rename to ...
4438         (_initialize_irix5_nat): ... this.  Install the procfs target
4439         here, customized with watchpoints support.
4440         * alpha-nat.c: Include procfs.h.
4441         (_initialize_core_alpha): Rename to...
4442         (_initialize_alpha_nat): ... this.  Install the procfs target
4443         here, customized with watchpoints support.
4444         * sparc-sol2-nat.c: Include target.h and procfs.h.
4445         (_initialize_sparc_sol2_nat): New.
4446
4447         * config/i386/nm-i386sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
4448         * config/sparc/nm-sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
4449         * config/mips/irix5.mh (NAT_FILE): Delete.
4450         * config/mips/irix6.mh (NAT_FILE): Delete.
4451         * config/mips/nm-irix5.h: Delete.
4452
4453 20009-06-07  Pedro  Alves  <pedro@codesourcery.com>
4454
4455         * auxv.c (procfs_xfer_auxv): Change type of the `object' argument
4456         to enum target_object.  Cleanup comments.
4457         * auxv.h: Include "target.h".  Cleanup comments to not mention
4458         NATIVE_XFER_AUXV anymore.
4459
4460 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
4461
4462         * inferior.h (procfs_first_available): Move declaration to...
4463         * proc-utils.h: ... here.
4464         * sol-thread.c: Include procfs.h and proc-utils.h.
4465
4466 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
4467
4468         * inferior.h (proc_iterate_over_mappings): Delete declaration.
4469         * nto-tdep.h (proc_iterate_over_mappings): Delete declaration.
4470         * procfs.c (proc_iterate_over_mappings): Delete.
4471
4472 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
4473
4474         * target.h (struct target_ops): Make to_has_all_memory,
4475         to_has_memory, to_has_stack, to_has_registers and to_has_execution
4476         methods instead of variables.
4477         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1)
4478         (target_has_registers_1, target_has_execution_1): Declare
4479         functions.
4480         (target_has_all_memory): Rewrite to call target_has_all_memory_1.
4481         (target_has_memory): Rewrite to call target_has_memory_1.
4482         (target_has_stack): Rewrite to call target_has_all_stack_1.
4483         (target_has_registers): Rewrite to call target_has_registers_1.
4484         (target_has_execution): Rewrite to call target_has_execution_1.
4485         (default_child_has_all_memory, default_child_has_memory)
4486         (default_child_has_stack, default_child_has_registers)
4487         (default_child_has_execution): Declare.
4488         (target_mark_running, target_mark_exited): Delete declarations.
4489         * target.c (default_child_has_all_memory,
4490         default_child_has_memory, default_child_has_stack,
4491         default_child_has_registers, default_child_has_execution): New.
4492         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1,
4493         target_has_registers_1, target_has_execution_1): New.
4494         (add_target): Default the to_has_all_memory, to_has_all_memory,
4495         to_has_memory, to_has_stack, to_has_registers and to_has_execution
4496         callbacks to return 0.
4497         (update_current_target): Do not inherit to_has_all_memory,
4498         to_has_memory, to_has_stack, to_has_registers or to_has_execution.
4499         (target_mark_running, target_mark_exited): Delete.
4500         (memory_xfer_partial): Adjust.
4501         (target_read_memory, target_write_memory, target_search_memory):
4502         Dispatch to the the top-most target, not the flattened
4503         current_target.
4504         (target_info): Adjust.
4505         (init_dummy_target): Install return_zero as callback for
4506         to_has_all_memory, to_has_memory, to_has_stack, to_has_registers,
4507         to_has_execution.
4508         (set_maintenance_target_async_permitted): Use have_live_inferiors
4509         instead of target_has_execution.
4510         * target-memory.c (target_write_memory_blocks): Dispatch memory
4511         writes to the the top-most target, not the flattened
4512         current_target.
4513
4514         * breakpoint.c (insert_breakpoints): Don't check for
4515         target_has_execution here.
4516         (update_global_location_list): Check if there are live inferiors
4517         to debug instead of target_has_execution.
4518         * infcmd.c (kill_command, detach_command): Check if there are
4519         inferiors instead of target_has_execution.
4520         * inferior.h (have_live_inferiors): Declare.
4521         * inferior.c (have_live_inferiors): New.
4522         * infrun.c (normal_stop): Don't check for target_has_execution to
4523         finish the thread states.
4524         * thread.c (is_thread_state, is_stopped, is_exited, is_running)
4525         (any_running, is_executing): Remove checks for
4526         target_has_execution.
4527         * top.c (kill_or_detach): Don't try to kill core inferiors.
4528         (quit_target): Don't check for target_has_execution.
4529
4530         * corelow.c (core_has_memory, core_has_stack, core_has_registers):
4531         New.
4532         (init_core_ops): Install core_has_memory, core_has_stack and
4533         core_has_registers.
4534         * exec.c (exec_has_memory): New.
4535         (init_exec_ops): Install exec_has_memory.
4536         * remote.c (remote_add_inferior): Don't call target_mark_running.
4537         (remote_start_remote): Don't call target_mark_exited or call
4538         target_mark_running.
4539         (remote_open_1): Use have_inferiors instead of
4540         target_has_execution.  Don't use target_mark_exited.
4541         (init_remote_ops): Install deafult_child_has_all_memory,
4542         default_child_has_memory, default_child_has_stack,
4543         default_child_has_registers, default_child_has_execution.
4544         * bsd-kvm.c (bsd_kvm_return_one): New.
4545         (bsd_kvm_add_target): Register bsd_kvm_return_one as
4546         to_has_memory, to_has_stack and to_has_registers callbacks.
4547         * remote-m32r-sdi.c (m32r_return_one): New.
4548         (init_m32r_ops): Register it.
4549         * inf-child.c (inf_child_target): Adjust to register
4550         default_child_has_all_memory, default_child_has_memory,
4551         default_child_has_stack, default_child_has_registers,
4552         default_child_has_execution callbacks.
4553         * gnu-nat.c (init_gnu_ops): Likewise.
4554         * go32-nat.c (init_go32_ops): Likewise.
4555         * hpux-thread.c (init_hpux_thread_ops): Likewise.
4556         * monitor.c (init_base_monitor_ops): Likewise.
4557         * nto-procfs.c (init_procfs_ops): Likewise.
4558         * remote-mips.c (_initialize_remote_mips): Likewise.
4559         * windows-nat.c (init_windows_ops): Likewise.
4560         * remote-sim.c (gdbsim_create_inferior): Don't use
4561         target_mark_running or target_mark_exited.
4562         (gdbsim_mourn_inferior): Don't call target_mark_exited.
4563         (init_gdbsim_ops): Adjust to register
4564         default_child_has_all_memory, default_child_has_memory,
4565         default_child_has_stack, default_child_has_registers,
4566         default_child_has_execution callbacks.
4567
4568         * linux-nat.c (linux_nat_xfer_partial): If reading memory, and
4569         there's no inferior selected, defer to a lower stratum.
4570
4571 2009-06-05  Tom Tromey  <tromey@redhat.com>
4572
4573         * varobj.c (update_dynamic_varobj_children): Wrap error text in
4574         _().
4575         (install_visualizer): Likewise.
4576         (varobj_set_visualizer): Likewise.
4577
4578 2009-06-05  Marc Khouzam  <marc.khouzam@ericsson.com>
4579
4580         * mi/mi-main.c (mi_cmd_exec_continue)
4581         (mi_cmd_exec_interrupt): Adjust parsing of thread group
4582         ids to current reality, where they don't have any 'p' prefix.
4583
4584 2009-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
4585
4586         * corelow.c (core_open): Check for core_gdbarch before calling
4587         gdbarch_target_signal_from_host.
4588
4589 2009-06-05  Tom Tromey  <tromey@redhat.com>
4590
4591         * c-exp.y (parse_number): Don't use K&R definition.
4592         (yylex): Likewise.
4593         (yyerror): Likewise.
4594
4595 2009-06-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
4596
4597         * varobj.c (varobj_update): Fix out of scope varobjs to not to change.
4598
4599 2009-06-04  Ulrich Weigand  <uweigand@de.ibm.com>
4600
4601         * symtab.h: Rename SYMBOL_OPS to SYMBOL_COMPUTED_OPS.
4602         * ax-gdb.c (gen_var_ref): Likewise.
4603         * findvar.c (read_var_value, symbol_read_needs_frame): Likewise.
4604         * printcmd.c (address_info): Likewise.
4605         * dwarf2loc.c (dwarf_expr_frame_base): Likewise.
4606         * dwarf2read.c (dwarf2_symbol_mark_computed): Likewise.
4607         * symtab.h: Rename struct symbol_ops to struct symbol_computed_ops.
4608         * dwarf2loc.h: Likewise.
4609         * dwarf2loc.c (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Likewise.
4610
4611         * symtab.h: (struct symbol_register_ops): New struct definition.
4612         (struct symbol): Make "ops" member a union of symbol_computed_ops and
4613         symbol_register_ops callback pointers.
4614         (SYMBOL_REGISTER_OPS): New macro.
4615         * tracepoint.c: Include "objfiles.h".
4616         (scope_info, collect_symbol): Use SYMBOL_REGISTER_OPS register_number
4617         callback to retrieve register numbers.
4618         * ax-gdb.c (gen_var_ref): Likewise.
4619         * findvar.c (read_var_value): Likewise.
4620         * printcmd.c (address_info): Likewise.
4621
4622         * coffread.c (coff_reg_to_regnum): New function.
4623         (coff_register_funcs): New static variable.
4624         (process_coff_symbol): Do not call gdbarch_sdb_reg_to_regnum.
4625         Install SYMBOL_REGISTER_OPS callbacks.
4626         * mdebugread.c (mdebug_reg_to_regnum): New function.
4627         (mdebug_register_funcs): New static variable.
4628         (parse_symbol): Do not call gdbarch_ecoff_reg_to_regnum.
4629         Install SYMBOL_REGISTER_OPS callbacks.
4630         * stabsread.c (stab_reg_to_regnum): New function.
4631         (stab_register_funcs): New static variable.
4632         (define_symbol): Do not call gdbarch_stab_reg_to_regnum.
4633         Install SYMBOL_REGISTER_OPS callbacks.
4634
4635 2009-06-03  Doug Evans  <dje@google.com>
4636
4637         * symfile.c (reread_symbols): Reset psymtabs_addrmap to NULL
4638         after discarding its contents.
4639
4640 2009-06-03  Pedro Alves  <pedro@codesourcery.com>
4641
4642         * target.c: Include "exec.h".
4643         (update_current_target): Don't inherit to_sections or
4644         to_sections_end.
4645         (target_get_section_table): New.
4646         (target_section_by_addr): Fetch the section table from the passed
4647         in target.
4648         (memory_xfer_partial): Handle unmapped overlay sections before
4649         anything else.  Get the overlay mapped address here.  Adjust to
4650         use section_table_xfer_memory_partial.
4651         (get_target_memory): Request a TARGET_OBJECT_RAW_MEMORY object
4652         instead of TARGET_OBJECT_MEMORY.
4653         (target_resize_to_sections): Delete.
4654         (remove_target_sections): Adjust to remove target sections from
4655         `current_target_sections', and use resize_section_table.
4656         * target.h (struct target_ops) <to_sections, to_sections_end>:
4657         Remove fields.
4658         <to_get_section_table>: New method.
4659         (xfer_memory, print_section_info): Delete declarations.
4660         (struct target_section_table): New type.
4661         (target_get_section_table): Declare.
4662         (target_resize_to_sections): Delete declaration.
4663         (remove_target_sections): Delete declaration.
4664         * bfd-target.c (target_bfd_xfer_partial): Get the section table
4665         from to_data.
4666         (target_bfd_get_section_table): New.
4667         (target_bfd_xclose): Adjust.
4668         (target_bfd_reopen): Store the section table in the to_data field.
4669         * corelow.c (core_data): New.
4670         (core_close): Adjust to release core_data and its sections.
4671         (core_open): Allocate core_data, and build its target sections
4672         table.
4673         (deprecated_core_resize_section_table): New.
4674         (core_files_info): Pass core_data to print_section_info.
4675         (core_xfer_partial): Adjust to use
4676         section_table_xfer_memory_partial for TARGET_OBJECT_MEMORY xfers.
4677         (init_core_ops): Do not install a deprecated_xfer_memory callback
4678         anymore.
4679         * solib.c (update_solib_list): Add the shared library sections
4680         to the current target sections table.
4681         * exec.c (current_target_sections_1): New global.
4682         (current_target_sections): New global.
4683         (exec_close_1): New function, refactored from exec_close.  Remove
4684         the exec_bfd's sections from the current target sections table.
4685         Adjust to not use to_sections.
4686         (exec_close): Remove all target sections.  Call exec_close_1.
4687         (exec_file_clear): Use exec_close_1 instead of unpushing the
4688         target.
4689         (exec_file_attach): Likewise.  Adjust to not use to_sections.  Add
4690         exec_bfd's sections to the current target sections table.  Don't
4691         push the exec_ops target here.
4692         (resize_section_table): New.
4693         (add_target_sections): New.
4694         (remove_target_sections): Moved here.
4695         (section_table_xfer_memory): Adjust to implement the xfer_partial
4696         interface, and rename to...
4697         (section_table_xfer_memory_partial): ... this, replacing the
4698         current function of that same name.
4699         (exec_get_section_table): New.
4700         (exec_xfer_partial): New.
4701         (xfer_memory): Delete.
4702         (print_section_info): Replace the target_ops parameter by a
4703         target_section_table parameter.
4704         (exec_files_info, set_section_command, exec_set_section_address):
4705         Adjust to use the current sections table.
4706         (init_exec_ops): Do not register a deprecated_xfer_memory
4707         callback.  Register to_xfer_partial and to_get_section_table
4708         callbacks.
4709         * infrun.c (handle_inferior_event): Update comments around
4710         solib_add.
4711         * rs6000-nat.c (xcoff_relocate_core): Adjust to use
4712         deprecated_core_resize_section_table.
4713         * exec.h (resize_section_table): Declare.
4714         (section_table_xfer_memory_partial): Add const char * argument.
4715         (remove_target_sections): Declare here.
4716         (add_target_sections): Declare.
4717         (print_section_info): Declare here.
4718         * gdbcore.h (deprecated_core_resize_section_table): Declare.
4719
4720 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
4721
4722         * value.h (struct internalvar): Remove.
4723         (get_internalvar_integer): Add prototype.
4724         (set_internalvar_integer): Add prototype.
4725         (clear_internalvar): Add prototype.
4726
4727         * value.c (struct internalvar): Move here.  Add type member.  Remove
4728         endian member.  Add union_internalvar member instead of value member.
4729         (init_if_undefined_command): Use intvar->type.
4730         (create_internalvar): Do not initialize value/endian, but type.
4731         (create_internalvar_type_lazy): Call create_internalvar.
4732         (value_of_internalvar): Handle host-side internalvar contents.
4733         (set_internalvar_component): Likewise.
4734         (set_internalvar): Likewise.
4735         (get_internalvar_integer): New function.
4736         (clear_internalvar): Likewise.
4737         (set_internalvar_integer): Likewise.
4738         (preserve_values): Handle host-side internalvar contents.
4739
4740         * breakpoint.c (set_breakpoint_count, set_tracepoint_count): Call
4741         set_internalvar_integer instead of set_internalvar.
4742         * findcmd.c (find_command): Likewise.
4743         * infrun.c (handle_inferior_event): Likewise.
4744         * source.c (forward_search_command, reverse_search_command): Likewise.
4745         * tracepoint.c (set_traceframe_num, set_tracepoint_num,
4746         set_traceframe_context): Likewise.
4747
4748         * printcmd.c (x_command): Call clear_internalvar instead of
4749         set_internalvar.
4750         * tracepoint.c (set_traceframe_context): Likewise.
4751         
4752         * breakpoint.c (get_number_trailer): Call get_internalvar_integer
4753         instead of value_of_internalvar.
4754         * linespec.c (decode_dollar): Likewise.
4755
4756         * expprint.c (dump_subexp_body_standard): Use internalvar_name
4757         instead of accessing internalvar private elements.
4758         * valops.c (value_assign): Copy from original source instead of
4759         accessing internalvar private elements.
4760
4761 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
4762
4763         * scm-lang.c (builtin_type_scm): Remove.
4764         (scm_lookup_name): Add GDBARCH parameter.  Use it instead of
4765         objfile architecture.  Use per-architecture builtin_scm_type instead
4766         of builtin_type_scm.
4767         (evaluate_exp): Pass expression architecture to scm_lookup_name.
4768
4769         (scm_get_field): Add SIZE parameter.  Use it instead of 
4770         TYPE_LENGTH (builtin_type_scm).
4771
4772         (build_scm_types): New function.
4773         (scm_type_data): New variable.
4774         (builtin_scm_type): New function.
4775         (_initialize_scheme_language): Do not initialize builtin_type_scm.
4776         Register build_scm_types as post-init function for scm_type_data.
4777
4778         * scm-exp.c (scm_lreadr): Use per-architecture builtin_scm_type
4779         instead of builtin_type_scm.
4780
4781         * scm-lang.h (SCM_CAR, SCM_CDR): Pass SCM_SIZE to scm_get_field.
4782         (scm_get_field): Add SIZE paramter.
4783         (scm_scmval_print): Remove prototype.
4784         (builtin_type_scm): Remove.
4785         (struct builtin_scm_type): Add structure definition.
4786         (builtin_scm_type): Add prototype.
4787
4788         * scm-valprint.c (scm_inferior_print): Add TYPE parameter.  Use it
4789         instead of builtin_core_addr type; do not use objfile architecture.
4790         (scm_scmlist_print): Add TYPE parameter.  Use it to define SCM_SIZE.
4791         Pass type to scm_scmval_print.
4792         (scm_ipruk): Add TYPE parameter.  Use it to define SCM_SIZE.
4793         (scm_scmval_print): Make static.  Add TYPE parameter.  Use it to
4794         define SCM_SIZE.  Pass type to scm_ipruk and scm_scmlist_print.
4795         (scm_val_print): Pass type to scm_inferior_print and scm_scmval_print.
4796
4797 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
4798
4799         * mdebugread.c (mdebug_type_void, mdebug_type_char, mdebug_type_short,
4800         mdebug_type_int, mdebug_type_int_32, mdebug_type_int_64,
4801         mdebug_type_long_32, mdebug_type_long_64, mdebug_type_long_long_64,
4802         mdebug_type_unsigned_char, mdebug_type_unsigned_short,
4803         mdebug_type_unsigned_int_32, mdebug_type_unsigned_int_64,
4804         mdebug_type_unsigned_long_32, mdebug_type_unsigned_long_64,
4805         mdebug_type_unsigned_long_long_64, mdebug_type_adr_32,
4806         mdebug_type_adr_64, mdebug_type_float, mdebug_type_double,
4807         mdebug_type_complex, mdebug_type_double_complex,
4808         mdebug_type_fixed_dec, mdebug_type_float_dec, mdebug_type_string):
4809         Remove.
4810
4811         (basic_type_data): New global variable.
4812         (basic_type): New function.
4813         (parse_type): Remove static basic type map map_bt.  Call basic_type
4814         to get basic types instead of using mdebug_type_ variables.
4815
4816         (parse_symbol): Use builtin types instead of mdebug_type_ variables.
4817         (upgrade_type): Likewise.
4818         (parse_procedure): Likewise.
4819         (psymtab_to_symtab_1): Likewise.
4820
4821         (_initialize_mdebugread): Do not initialize mdebug_type_ variables.
4822         Initialize basic_type_data.
4823
4824 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
4825
4826         * dfp.h (decimal_binop): Convert LEN_RESULT to input parameter.
4827         * dfp.c (promote_decimal): Remove.
4828         (decimal_binop): Convert LEN_RESULT to input parameter.
4829         Remove call to decimal_binop.
4830         (decimal_compare): Remove call to decimal_binop.
4831
4832         * valarith.c (value_binop): Pass desired result type length
4833         to decimal_binop.
4834
4835 2009-06-01  Tristan Gingold  <gingold@adacore.com>
4836
4837         * configure.tgt (avr): Set gdb_sim to use the simulator.
4838
4839 2009-05-29  Doug Evans  <dje@google.com>
4840
4841         * infrun.c (prepare_to_proceed): Document.  Assert !non_stop.
4842         If scheduler-locking is enabled, we're not going to be singlestepping
4843         any other previously stopped thread.
4844
4845 2009-05-29  Pedro Alves  <pedro@codesourcery.com>
4846
4847         * mi/mi-interp.c (mi_on_resume): Initialize `count' to 0.
4848
4849 2009-05-29  Eli Zaretskii  <eliz@gnu.org>
4850
4851         * i386-tdep.c (i386_go32_init_abi): Use SVR4 register numbering
4852         for stabs and COFF debug info.
4853
4854 2009-05-28  Pedro Alves  <pedro@codesourcery.com>
4855
4856         * infrun.c (handle_inferior_event): When thread hoping, switch
4857         inferior_ptid to the event thread before removing breakpoints from
4858         the target.  If not stopping, also try to revert back to a thread
4859         that was doing a "next".  Check if that thread still exists before
4860         resuming.
4861         (currently_stepping_thread): Delete and merge with ...
4862         (currently_stepping): ... this.
4863         (currently_stepping_callback): Rename to ...
4864         (currently_stepping_or_nexting_callback): ... this, and also
4865         return true if the thread was stepping over a call (has a
4866         step-resume breakpoint).
4867
4868 2009-05-28  Tom Tromey  <tromey@redhat.com>
4869
4870         * python/python.c (gdbpy_parameter): Rename.  Fix error message.
4871         (GdbMethods): Change "get_parameter" to "parameter".
4872
4873 2009-05-28  Pierre Muller  <muller@ics.u-strasbg.fr>
4874             Paul Pluzhnikov  <ppluzhnikov@google.com>
4875
4876         * configure.ac (!have_libpython): Add python-prettyprint source
4877         and object files.
4878         * configure: Regenerate.
4879         * python/python-prettyprint.c: Move "#ifdef HAVE_PYTHON" before
4880         python headers.
4881         
4882 2009-05-27  Vladimir Prus  <vladimir@codesourcery.com>
4883             Tom Tromey  <tromey@redhat.com>
4884             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4885
4886         * mi/mi-main.c (mi_cmd_list_features): List "python" feature.
4887         * varobj.h (varobj_set_visualizer): Declare.
4888         (varobj_get_display_hint): Likewise.
4889         (varobj_update_result_t) <children_changed, value_installed>: New
4890         fields.
4891         * mi/mi-cmds.c (mi_cmds): Add var-set-visualizer.
4892         * mi/mi-cmds.h (mi_cmd_var_set_visualizer,
4893         mi_cmd_var_set_child_range): Declare.
4894         * mi/mi-cmd-var.c (mi_cmd_var_set_visualizer): New function.
4895         (mi_cmd_var_list_children): Emit display hint.
4896         (varobj_update_one): Emit display hint.  Handle dynamic children.
4897         * python/python.c (GdbMethods): Add "default_visualizer".
4898         * python/python-internal.h (apply_varobj_pretty_printer,
4899         gdbpy_get_varobj_pretty_printer, gdbpy_get_display_hint):
4900         Declare.
4901         (gdbpy_default_visualizer): Likewise.
4902         * varobj.c: Include python.h, python-internal.h.
4903         (PyObject): New typedef.
4904         (struct varobj) <children_requested, pretty_printer>: New fields.
4905         (varobj_create): Call install_default_visualizer.
4906         (instantiate_pretty_printer): New function.
4907         (varobj_set_display_format): Update.
4908         (varobj_get_display_hint): New function.
4909         (update_dynamic_varobj_children): New function.
4910         (varobj_get_num_children): Handle dynamic children.
4911         (varobj_list_children): Likewise.
4912         (install_new_value): Likewise.
4913         (varobj_add_child): New function.
4914         (install_visualizer): Likewise.
4915         (install_default_visualizer): Likewise.
4916         (varobj_set_visualizer): Likewise.
4917         (varobj_update): Handle dynamic children.
4918         (create_child): Use create_child_with_value.
4919         (create_child_with_value): New function.
4920         (value_get_print_value): Call pretty printer.  Add value_formatter
4921         argument.
4922         (c_value_of_variable): Update.
4923         (varobj_invalidate): Always free all_rootvarobj.
4924         * python/python-prettyprint.c (apply_varobj_pretty_printer): New
4925         function.
4926         (gdbpy_get_varobj_pretty_printer): Likewise.
4927         (gdbpy_default_visualizer): Likewise.
4928
4929 2009-05-27  Tom Tromey  <tromey@redhat.com>
4930             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4931             Phil Muldoon  <pmuldoon@redhat.com>
4932             Paul Pluzhnikov  <ppluzhnikov@google.com>
4933             Vladimir Prus  <vladimir@codesourcery.com>
4934
4935         * python/python-value.c (value_object_to_value): New function.
4936         * python/python-internal.h: Include frameobject.h.
4937         (gdbpy_children_cst, gdbpy_to_string_cst, gdbpy_display_hint_cst):
4938         Declare.
4939         (value_object_to_value): Declare.
4940         * printcmd.c (struct format_data) <raw>: New field.
4941         (last_format): Default to 0.
4942         (decode_format): Initialize val.raw.  Handle /r flag.
4943         (print_command_1): Initialize fmt.raw and opts.raw.
4944         (output_command): Likewise.
4945         (x_command): Fix initialization of fmt.format.  Initialize
4946         fmt.raw.
4947         (display_command): Initialize fmt.raw.
4948         (do_one_display): Set opts.raw.
4949         * python/python.c (gdbpy_to_string_cst, gdbpy_children_cst,
4950         gdbpy_display_hint_cst): New globals.
4951         (_initialize_python): Initialize them.  Set gdb.pretty_printers.
4952         * cp-valprint.c: Include python.h.
4953         (cp_print_value): Call apply_val_pretty_printer.
4954         * python/python.h (apply_val_pretty_printer): Declare.
4955         * stack.c (print_this_frame_argument_p): Remove.
4956         (print_frame_args): Compute summary flag.  Don't use
4957         print_this_frame_argument_p.
4958         * valprint.c: Include python.h.
4959         (user_print_options): Initialize new fields.
4960         (scalar_type_p): New function.
4961         (val_print): Handle 'raw' and 'summary' modes.  Call
4962         apply_val_pretty_printer.
4963         (value_print): Handle 'raw' mode.
4964         * valprint.h (struct value_print_options) <raw, summary>: New
4965         fields.
4966         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-prettyprint.o
4967         (SUBDIR_PYTHON_SRCS): Add python-prettyprint.c.
4968         (python-prettyprint.o): New target.
4969         * python/python-prettyprint.c: New file.
4970
4971 2009-05-27  Tom Tromey  <tromey@redhat.com>
4972             Paul Pluzhnikov  <ppluzhnikov@google.com>
4973
4974         * mi/mi-main.c (mi_cmd_data_evaluate_expression): Use
4975         value_address.
4976         * cli/cli-dump.c (dump_value_to_file): Use value_address.
4977         * valprint.c (common_val_print): Likewise.
4978         * v850-tdep.c (v850_push_dummy_call): Use value_address.
4979         * tracepoint.c (encode_actions): Use value_address.
4980         * printcmd.c (print_formatted): Use value_address.
4981         (x_command): Likewise.
4982         * p-valprint.c (pascal_object_print_static_field): Use
4983         value_address.
4984         * mn10300-tdep.c (mn10300_push_dummy_call): Use value_address.
4985         * mips-tdep.c (mips_eabi_push_dummy_call): Use value_address.
4986         * m32r-tdep.c (m32r_push_dummy_call): Use value_address.
4987         * jv-valprint.c (java_value_print): Use value_address.
4988         * infcall.c (find_function_addr): Use value_address.
4989         * gnu-v3-abi.c (gnuv3_rtti_type): Use value_address.
4990         * gnu-v2-abi.c (gnuv2_value_rtti_type): Use value_address.
4991         * frv-tdep.c (frv_push_dummy_call): Use value_address.
4992         * frame.c (frame_register_unwind): Use value_address.
4993         (frame_unwind_register_value): Likewise.
4994         * darwin-nat-info.c (info_mach_region_command): Use
4995         value_address.
4996         * cp-valprint.c (cp_print_static_field): Use value_address.
4997         * c-valprint.c (c_value_print): Use value_address.
4998         * breakpoint.c (update_watchpoint): Use value_address.
4999         (can_use_hardware_watchpoint): Likewise.
5000         * ada-valprint.c (ada_val_print_1): Use value_address.
5001         (ada_value_print): Likewise.
5002         * ada-tasks.c (read_fat_string_value): Use value_address.
5003         * jv-lang.c (java_link_class_type): Use set_value_address.
5004         (java_link_class_type): Likewise.
5005         (get_java_utf8_name): Use value_address.
5006         (type_from_class): Likewise.
5007         (java_link_class_type): Likewise.
5008         * findvar.c (value_of_register): Use set_value_address.
5009         (read_var_value): Likewise.
5010         (read_var_value): Likewise.
5011         * eval.c (evaluate_subexp_standard): Use set_value_address.
5012         (evaluate_subexp_standard): Use value_address.
5013         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Use set_value_address.
5014         * ada-lang.c (coerce_unspec_val_to_type): Use set_value_address.
5015         (ada_value_primitive_packed_val): Likewise.
5016         (ensure_lval): Likewise.
5017         (thin_data_pntr): Use value_address.
5018         (desc_bounds): Likewise.
5019         (ada_value_primitive_packed_val): Likewise.
5020         (value_assign_to_component): Likewise.
5021         (ensure_lval): Likewise.
5022         (make_array_descriptor): Likewise.
5023         (ada_to_fixed_value): Likewise.
5024         (unwrap_value): Likewise.
5025         * value.c (deprecated_value_address_hack): Remove.
5026         (value_address): New function.
5027         (value_raw_address): Likewise.
5028         (set_value_address): Likewise.
5029         (value_fn_field): Use set_value_address.
5030         (value_from_contents_and_address): Likewise.
5031         (value_fn_field): Likewise.
5032         (allocate_value_lazy): Don't use VALUE_ADDRESS.
5033         (value_as_address): Use value_address.
5034         (value_static_field): Likewise.
5035         * valops.c (search_struct_field): Use set_value_address.
5036         (value_at): Likewise.
5037         (value_at_lazy): Likewise.
5038         (value_repeat): Likewise.
5039         (value_cast_structs): Use value_address.
5040         (value_cast): Likewise.
5041         (value_fetch_lazy): Likewise.
5042         (value_assign): Likewise.
5043         (value_repeat): Likewise.
5044         (address_of_variable): Likewise.
5045         (value_coerce_array): Likewise.
5046         (value_coerce_function): Likewise.
5047         (value_addr): Likewise.
5048         (search_struct_field): Likewise.
5049         (search_struct_method): Likewise.
5050         (find_method_list): Likewise.
5051         (value_struct_elt_for_reference): Likewise.
5052         (value_full_object): Likewise.
5053         * jv-valprint.c (java_value_print): Use set_value_address.
5054         * value.h (deprecated_value_address_hack): Remove.
5055         (VALUE_ADDRESS): Remove.
5056         (value_address): Declare.
5057         (value_raw_address): Declare.
5058         (set_value_address): Declare.
5059
5060 2009-05-27  Tom Tromey  <tromey@redhat.com>
5061             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5062             Phil Muldoon  <pmuldoon@redhat.com>
5063             Paul Pluzhnikov  <ppluzhnikov@google.com>
5064
5065         * python/python.c (_initialize_python): Call
5066         gdbpy_initialize_types.
5067         (GdbMethods): Add "lookup_type".
5068         * python/python-value.c (value_object) <type>: New field.
5069         (valpy_dealloc): Decref type.
5070         (valpy_new): Initialize type.
5071         (valpy_get_type): New function.
5072         (value_to_value_object): Initialize type.
5073         (valpy_cast): New function.
5074         (value_object_getset): Add "type".
5075         (value_object_methods): Add "cast".
5076         * python/python-internal.h (type_to_type_object): Declare.
5077         (type_object_to_type): Likewise.
5078         (gdbpy_initialize_types): Likewise.
5079         (gdbpy_lookup_type): Declare.
5080         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-type.o.
5081         (SUBDIR_PYTHON_SRCS): Add python-type.c.
5082         (python-type.o): New target.
5083         * python/python-type.c: New file.
5084
5085 2009-05-27  Tom Tromey  <tromey@redhat.com>
5086             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5087             Phil Muldoon  <pmuldoon@redhat.com>
5088
5089         * python/python.c: Include objfiles.h, observer.h.
5090         (gdbpy_auto_load): New global.
5091         (gdbpy_current_objfile): Likewise.
5092         (GDBPY_AUTO_FILENAME): New define.
5093         (gdbpy_new_objfile): New function.
5094         (gdbpy_get_current_objfile): Likewise.
5095         (gdbpy_objfiles): Likewise.
5096         (_initialize_python): Add "maint set auto-load".  Call
5097         gdbpy_initialize_objfile.  Attach objfile observer.
5098         (GdbMethods): New methods current_objfile, objfiles.
5099         * python/python-objfile.c: New file.
5100         * python/python-internal.h (objfile_to_objfile_object): Declare.
5101         (objfpy_get_printers): Likewise.
5102         (gdbpy_initialize_objfile): Likewise.
5103         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-objfile.o.
5104         (SUBDIR_PYTHON_SRCS): Add python-objfile.c.
5105         (python-objfile.o): New target.
5106
5107 2009-05-27  Pedro Alves  <pedro@codesourcery.com>
5108
5109         * infrun.c (follow_exec): Clear the stop_requested flag.
5110         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
5111         Add debug output.
5112
5113 2009-05-27  Aleksandar Ristovski  <aristovski@qnx.com>
5114
5115         * nto-procfs.c (get_regset): Pass correct pointer.
5116
5117 2009-05-26  Doug Evans  <dje@google.com>
5118
5119         * dwarf2read.c (follow_die_ref): Add comment.
5120         (dwarf2_mark_helper): Tweak comment.
5121         (dwarf2_mark): Move description to its proper place.
5122
5123 2009-05-25  Pierre Muller  <muller@ics.u-strasbg.fr>
5124
5125         * procfs.c (procfs_wait): Add options parameter.
5126
5127 2009-05-24  Doug Evans  <dje@google.com>
5128
5129         Global renaming of find_thread_pid to find_thread_ptid.
5130         * gdbthread.h (find_thread_ptid): Renamed from find_thread_pid.
5131         * thread.c (find_thread_ptid): Renamed from find_thread_pid.
5132         All callers updated.
5133
5134         * infrun.c (follow_fork): Initialize new step_* locals
5135         to avoid "may be used uninitialized" warnings.
5136
5137 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
5138
5139         * inflow.c (copy_terminal_info): Deep copy `run_terminal'.
5140
5141 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
5142
5143         * gdbthread.h (struct thread_info): New `pending_follow' field.
5144         * thread.c (new_thread): New function.
5145         (add_thread_silent): Use it.
5146         * breakpoint.c (internal_breakpoint_number): New global, moved
5147         from inside...
5148         (create_internal_breakpoint): ... this.
5149         (clone_momentary_breakpoint): New.
5150         * breakpoint.h (clone_momentary_breakpoint): Declare.
5151         * infrun.c (nullify_last_target_wait_ptid): Move declaration
5152         higher.
5153         (pending_follow): Delete.
5154         (follow_fork): Handle pending follow fork event here.  Moved the
5155         preserving of thread stepping state here.
5156         (resume): Don't handle pending follow fork events here.  Only
5157         install the inferior's terminal modes if we're about to resume it.
5158         (proceed): Handle possible pending follow fork events here.
5159         (init_wait_for_inferior): No need to clear pending_follow anymore,
5160         it's gone.
5161         (handle_inferior_event): Adjust to per-thread `pending_follow'.
5162         Call `follow_fork' to handle following the fork.  If the
5163         follow-fork is cancelled, stop stepping.
5164         * linux-nat.c (linux_child_follow_fork): Adjust to per-thread
5165         `pending_follow' events.  Remove code that handled preserving the
5166         thread stepping state.
5167         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
5168         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
5169
5170 2009-05-24  Pierre Muller  <muller@ics.u-strasbg.fr>
5171
5172         * symfile.c (add_shared_symbol_files_command): Remove
5173         prototype and function.
5174         (_initialize _symfile): Move "add-shared-symbol-files"
5175         command and "assf" alias.
5176         * windows-nat.c (_initialize_windows_nat): to here.
5177         Change "add-shared-symbol-files" to alias.
5178         
5179         * config/i386/cygwin.mh: Remove NAT_FILE.
5180         * config/i386/mingw.mh: Remove NAT_FILE.
5181         * config/i386/mingw64.mh: Remove NAT_FILE.
5182         * config/i386/nm-cygwin.h: Remove file.
5183         * config/i386/nm-cygwin64.h: Remove file.
5184
5185 2009-05-24  Hui Zhu  <teawater@gmail.com>
5186
5187         * i386-linux-tdep.c (I386_LINUX_RECORD_SIZE_*,
5188         I386_LINUX_RECORD_IOCTL_*,
5189         I386_LINUX_RECORD_FCNTL_*) Removed.
5190         (i386_linux_init_abi): Change size of record from macros to
5191         numbers.
5192
5193 2009-05-24  Hui Zhu  <teawater@gmail.com>
5194
5195         * i386-linux-tdep.c (i386_linux_init_abi): Remove size_char.
5196         * linux-record.c (record_linux_system_call): Ditto.
5197         * linux-record.h (linux_record_tdep): Ditto.
5198
5199 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
5200
5201         Replace the savestring calls by xstrdup calls where possible.
5202         * breakpoint.c (condition_command, set_raw_breakpoint)
5203         (create_catchpoint, update_breakpoint_locations): Replace the
5204         savestring calls by xstrdup calls where possible.
5205         * buildsym.c (start_subfile, patch_subfile_names, record_debugformat)
5206         (record_producer): Likewise.
5207         * coffread.c (coff_start_symtab, complete_symtab): Likewise.
5208         * corefile.c (set_gnutarget): Likewise.
5209         * dbxread.c (add_new_header_file): Likewise.
5210         * demangle.c (set_demangling_command, set_demangling_style): Likewise.
5211         * event-top.c (push_prompt, pop_prompt, command_line_handler)
5212         (set_async_prompt): Likewise.
5213         * infcmd.c (set_inferior_io_terminal, attach_command_post_wait):
5214         Likewise.
5215         * language.c (set_language_command, _initialize_language): Likewise.
5216         * linespec.c (decode_line_2): Likewise.
5217         * rs6000-nat.c (add_vmap): Likewise.
5218         * top.c (set_prompt, init_history, init_main): Likewise.
5219         * tracepoint.c (stringify_collection_list): Likewise.
5220         * varobj.c (varobj_create): Remove variable expr_len.  Replace the 
5221         savestring calls by xstrdup calls where possible.
5222         (value_of_root, c_name_of_variable, c_describe_child): Replace the
5223         savestring calls by xstrdup calls where possible.
5224         * xcoffread.c (complete_symtab): Likewise.
5225         * cli/cli-script.c (build_command_line, define_command): Likewise.
5226         * cli/cli-setshow.c (do_setshow_command): Likewise.
5227
5228 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
5229
5230         Remove already unreachable code.
5231         * varobj.c (varobj_get_handle): Fix comment when error is called.
5232         All callers updated.
5233
5234 2009-05-23  Eli Zaretskii  <eliz@gnu.org>
5235
5236         * README (`configure' options): Document GDB-specific options to
5237         `configure'.
5238
5239         * symtab.c (skip_prologue_using_lineinfo): New function.
5240         (find_function_start_sal): Use it to get to the first line of
5241         function's body that has an entry in the lineinfo table.
5242
5243         * symmisc.c (dump_symtab): Switch the current language to
5244         the language of the symtab we are dumping only if the symtab's
5245         language is neither language_auto nor language_unknown.
5246
5247         * coffread.c (coff_symtab_read): Set language_minimal as the
5248         language for the "_globals_" pseudo-file.
5249         (process_coff_symbol): Set the symbol's language to the language
5250         of current_subfile.
5251
5252 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
5253
5254         * target.h (struct section_table): Rename to ...
5255         (struct target_section): ... this.
5256         * exec.c: Adjust all references.
5257         * exec.h: Adjust all references.
5258         * nto-tdep.c: Adjust all references.
5259         * nto-tdep.h: Adjust all references.
5260         * ppc-linux-tdep.c: Adjust all references.
5261         * rs6000-nat.c: Adjust all references.
5262         * s390-tdep.c: Adjust all references.
5263         * solib-darwin.c: Adjust all references.
5264         * solib-frv.c: Adjust all references.
5265         * solib-irix.c: Adjust all references.
5266         * solib-null.c: Adjust all references.
5267         * solib-osf.c: Adjust all references.
5268         * solib-pa64.c: Adjust all references.
5269         * solib-som.c: Adjust all references.
5270         * solib-sunos.c: Adjust all references.
5271         * solib-svr4.c: Adjust all references.
5272         * solib-target.c: Adjust all references.
5273         * solib.c: Adjust all references.
5274         * solist.h: Adjust all references.
5275         * symfile.c: Adjust all references.
5276         * symfile.h: Adjust all references.
5277         * target.c: Adjust all references.
5278
5279 2009-05-22  Hui Zhu  <teawater@gmail.com>
5280
5281         Add sys_fcntl argument interfaces to linux_record_tdep.
5282
5283         * linux-record.h (linux_record_tdep): Add fcntl_F_GETLK,
5284         fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be
5285         interfaces.
5286         * i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK,
5287         I386_LINUX_RECORD_FCNTL_F_GETLK64,
5288         I386_LINUX_RECORD_FCNTL_F_SETLK64,
5289         I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values
5290         of I386 Linux sys_fcntl arguments.
5291         (i386_linux_init_abi): Set macros values to linux_record_tdep.
5292         * linux-record.c (record_linux_system_call): Change to use
5293         the interface in linux_record_tdep in sys_fcntl and
5294         sys_fcntl64.
5295
5296         * linux-record.c (record_linux_system_call): Fix the process
5297         record build error about type in CYGWIN.
5298
5299 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
5300
5301         * inflow.c (kill_command): Delete left over static declaration.
5302
5303 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
5304
5305         * bfd-target.c: Don't include gdb_assert.h or gdb_string.h.
5306         Include exec.h.
5307         (struct section_closure): Delete.
5308         (add_to_section_table): Delete.
5309         (build_target_sections_from_bfd): Delete.
5310         (target_bfd_xfer_partial): Use section_table_xfer_memory_partial.
5311         (target_bfd_reopen): Use build_section_table.
5312         * exec.c (xfer_memory): Move most code except for overlay
5313         debugging support from here...
5314         (section_table_xfer_memory): ... to this new function.
5315         (section_table_xfer_memory_partial): New.
5316         * exec.h (section_table_xfer_memory_partial): Declare.
5317         * bfd-target.h (build_target_sections_from_bfd): Delete
5318         declaration.
5319
5320 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
5321
5322         * remote.c (compare_sections_command): Don't declare exec_bfd.
5323         * tracepoint.c: Include "gdbcore.h".
5324         (remote_set_transparent_ranges): Don't declare exec_bfd.
5325
5326 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
5327
5328         * aix-thread.c (init_aix_thread_ops): Whitespace.
5329
5330 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
5331
5332         * dec-thread.c (dec_thread_wait): Add options parameter.  Use it
5333         to call the to_wait method in the target beneath.
5334         * remote-m32r-sdi.c (m32r_wait): Add options parameter.
5335
5336 2009-05-21  Joel Brobecker  <brobecker@adacore.com>
5337
5338         * aix-thread.c (aix_thread_wait): Add options parameter.  Use it
5339         to call the to_wait method in the target_beneath.
5340
5341 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
5342
5343         * linux-nat.c (linux_nat_terminal_inferior)
5344         (linux_nat_terminal_ours): Don't check sync_execution.
5345         * remote.c (remote_terminal_inferior, remote_terminal_ours):
5346         Don't check sync_execution.  Update comments.
5347         * target.c (target_terminal_inferior): New.
5348         * target.h (target_terminal_inferior): Delete macro, and declare
5349         as function.
5350         * event-top.c (async_disable_stdin): Make idempotent.  Don't give
5351         the target the terminal here.
5352         * inflow.c (terminal_ours_1): Don't return early without setting
5353         `terminal_is_ours'.
5354
5355 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
5356
5357         * target.h (TARGET_WNOHANG): New.
5358         * target.c (target_wait): Add `options' argument.  Adjust.
5359         (struct target_ops) <to_wait>: Add `options' argument.
5360         (target_wait): Add `options' argument.
5361         * infrun.c (wait_for_inferior): Pass 0 as options to
5362         target_wait (blocking wait).
5363         (fetch_inferior_event): Pass TARGET_WNOHANG as options to
5364         target_wait.
5365         * fork-child.c (startup_inferior): Pass 0 as options to
5366         target_wait (blocking wait).
5367         * linux-nat.c (linux_nat_create_inferior): Remove async masking.
5368         (linux_nat_wait_1): Add `target_options' argument.  Use it instead
5369         of checking on target_can_async_p.
5370         (linux_nat_wait): Add `target_options' argument.  Adjust.
5371         * remote.c (remote_wait_ns): Add `options' argument.  Adjust to
5372         check on TARGET_WNOWAIT instead of checking on remote_is_async_p.
5373         (remote_wait_as): Add `options' argument.  Adjust to check on
5374         TARGET_WNOWAIT instead of checking on remote_is_async_p.  If doing
5375         a blocking wait, keep waiting until an interesting event comes
5376         out.
5377         (remote_wait): Add `options' argument.  Don't loop here if the
5378         target is in async mode, and a blocking wait has been requested.
5379
5380         * top.c (deprecated_target_wait_hook): Add `options' argument.
5381         * linux-thread-db.c (thread_db_wait): Add `options' argument, and
5382         pass it down to the layer beneath.
5383         * inf-ptrace.c (inf_ptrace_wait): Add `options' argument.
5384         * record.c (record_beneath_to_wait): Add `options' argument.
5385         (record_wait): Add `options' argument, and pass it down to the
5386         layer beneath.
5387         * bsd-uthread.c (bsd_uthread_wait): Add `options' argument.
5388         * darwin-nat.c (darwin_wait): Likewise.
5389         * defs.h (deprecated_target_wait_hook): Likewise.
5390         * gnu-nat.c (gnu_wait): Add `options' argument.
5391         * go32-nat.c (go32_wait): Likewise.
5392         * hpux-thread.c (hpux_thread_wait): Add `options' argument, and
5393         pass it down to the layer beneath.
5394         * inf-ttrace.c (inf_ttrace_wait): Add `options' argument.
5395         * monitor.c (monitor_wait): Likewise.
5396         * nto-procfs.c (procfs_wait): Likewise.
5397         * remote-mips.c (mips_wait): Add `options' argument.
5398         * remote-sim.c (gdbsim_wait): Likewise.
5399         * rs6000-nat.c (rs6000_wait): Add `options' argument.
5400         * sol-thread.c (sol_thread_wait): Add `options' argument, and pass
5401         it down to the layer beneath.
5402         * spu-linux-nat.c (spu_child_wait): Add `options' argument.
5403         * windows-nat.c (windows_wait): Likewise.
5404         * tui/tui-hooks.c (tui_target_wait_hook): Likewise.  Adjust.
5405
5406 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
5407
5408         * mi/mi-interp.c (mi_on_resume): Account for whole process
5409         resumes.
5410
5411 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
5412
5413         * m2-exp.y (MAX_FUNC): Fix trailing UNOP_MAX.
5414
5415 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
5416
5417         * dwarf2read.c (set_cu_language): Recognize also DW_LANG_C99.
5418
5419 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
5420
5421         Fix parsing DW_AT_const_value using DW_FORM_string.
5422         * dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New.
5423
5424 2009-05-20  Joel Brobecker  <brobecker@adacore.com>
5425
5426         * aix-thread.c (giter_count): Do not count the main thread.
5427         (giter_accum): Do not include the main thread.
5428
5429 2009-05-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
5430
5431         Remove the PROT parameter from openp.
5432         * source.c (openp): Remove the parameter PROT.  Assertion check MODE.
5433         defs.h (openp): Update the prototype.
5434         Update all the openp callers.
5435
5436 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
5437
5438         * inflow.c (kill_command): Moved to infcmd.c.
5439         (_initialize_inflow): Don't add the "kill" command or clear
5440         inferior_ptid here.
5441         * infcmd.c (kill_command): Moved here from inflow.c.
5442         (_initialize_infcmd): Add the "kill" command here.
5443
5444 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
5445
5446         * fork-child.c: Don't include frame.h.  Include terminal.h.
5447         (fork_inferior): Call new_tty_postfork after forking adn adding
5448         the child to the inferior list.
5449         * inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare
5450         here.
5451         * inflow.c (struct terminal_info): Remove const qualifier from
5452         `run_terminal' field.
5453         (inferior_thisrun_terminal): Tweak comment.
5454         (inflow_inferior_exit): Release the `run_terminal' field.
5455         (copy_terminal_info): New function.
5456         (new_tty_postfork): New function.
5457         * terminal.h (new_tty_prefork, new_tty, new_tty_postfork,
5458         (copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare.
5459         * inf-ptrace.c: Include terminal.h.
5460         (inf_ptrace_follow_fork): Copy the parent's terminal info to the
5461         child.
5462         * linux-nat.c: Include terminal.h.
5463         (linux_child_follow_fork): Copy the parent's terminal info to the
5464         child.
5465         * inf-ttrace.c: Include terminal.h.
5466         (inf_ttrace_follow_fork): Copy the parent's terminal info to the
5467         child.
5468
5469 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
5470
5471         * breakpoint.c (insert_breakpoints, breakpoint_init_inferior)
5472         (update_global_location_list): Use gdbarch_has_global_breakpoints
5473         instead of gdbarch_has_global_solist and
5474         target_supports_multi_process.
5475         * dicos-tdep.c (dicos_init_abi): Set
5476         gdbarch_has_global_breakpoints.
5477         * gdbarch.sh (has_global_solist): Update comment.
5478         (has_global_breakpoints): New.
5479         * remote.c (remote_start_remote): Use
5480         gdbarch_has_global_breakpoints instead of
5481         gdbarch_has_global_solist.
5482         * target.c (target_detach): Use gdbarch_has_global_breakpoints
5483         instead of gdbarch_has_global_solist.
5484         * infcmd.c (attach_command): Use gdbarch_has_global_solist instead
5485         of target_supports_multi_process.
5486
5487 2009-05-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
5488
5489         * objc-lang.c (find_methods): Plug a small memory leak.
5490
5491 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
5492
5493         * solib-svr4.c: Include observer.h.
5494         (debug_base, debug_loader_offset_p, debug_loader_offset)
5495         (debug_loader_name, main_lm_addr): Move these globals...
5496         (struct svr4_info): ... into this new structure.
5497         (svr4_info_p): New typedef.
5498         (svr4_info): New global.
5499         (get_svr4_info, remove_svr4_info, solib_svr4_inferior_exit): New
5500         functions.
5501         (locate_base, solib_svr4_r_map, solib_svr4_r_brk)
5502         (solib_svr4_r_ldsomap): Add svr4_info argument.  Adjust to
5503         per-inferior svr4.
5504         (open_symbol_file_object): Adjust to per-inferior svr4.
5505         (svr4_default_sos, svr4_current_sos, svr4_fetch_objfile_link_map):
5506         Ditto.
5507         (enable_break): Add svr4_info argument.  Adjust to per-inferior
5508         svr4.
5509         (enable_break, svr4_solib_create_inferior_hook, svr4_clear_solib):
5510         Adjust to per-inferior svr4.
5511         (_initialize_svr4_solib): Install the solib_svr4_inferior_exit
5512         observer.
5513
5514 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
5515
5516         * linux-nat.h (linux_proc_get_tgid): Declare.
5517         * linux-nat.c (linux_proc_get_tgid): New.
5518         * linux-thread-db.c (struct thread_db_info): New field
5519         `need_stale_parent_threads_check'.
5520         (add_thread_db_info): Set it.
5521         (find_new_threads_callback): Ignore stale fork parent threads.
5522         (thread_db_resume): New.
5523         (init_thread_db_ops): Install thread_db_resume.
5524
5525 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
5526
5527         * fork-child.c (fork_inferior): Only reset the thread list if this
5528         is the first inferior.
5529         (startup_inferior): If the target support multi-process, tell it
5530         to resume only the new process.
5531         * linux-nat.c (num_lwps): Delete global.
5532         (purge_lwp_list): New function.
5533         (num_lwps): New function.
5534         (add_lwp, delete_lwp): Adjust.
5535         (ptid_match): New.
5536         (iterate_over_lwps): Add filter argument.  Handle it.
5537         (linux_nat_attach): Remove FIXME note.
5538         (linux_nat_detach): Adjust to iterate over threads of the inferior
5539         we're detaching from.  Adjust to num_lwps being a function.  Don't
5540         assume the head of the lwp list is the main thread of the process
5541         we're detaching from.  Don't destroy the LWP list.
5542         (resume_callback): Add debug output.
5543         (linux_nat_resume): Handle resuming a single inferior.  Allow a
5544         wildcard resume in non-stop mode.
5545         (linux_handle_extended_wait): Don't assume inferior_ptid is the
5546         correct inferior of the parent LWP.
5547         (status_callback): Also check lp->waitstatus.
5548         (select_event_lwp): Add new filter parameter.  Handle it.
5549         (linux_nat_filter_event): Adjust to num_lwps being a function.
5550         (linux_nat_wait_1): When adding the first lwp of the inferior, use
5551         an is_lwp check instead of checking for the number of lwps.
5552         (linux_nat_wait_1): Handle waiting for a specific tgid.  Handle
5553         pending process exit statuses.
5554         (linux_nat_mourn_inferior): Don't destroy all the LWP info.
5555         Instead delete LWPs of the inferior that we're mourning.  Don't
5556         unregister from the event loop here.
5557         (linux_nat_pid_to_str): Use `num_lwps'.
5558         (linux_nat_make_corefile_notes): Adjust to walk over lwps of a
5559         single inferior.
5560         (linux_nat_is_async_p): Check if async was masked out.
5561         (linux_multi_process): New global.
5562         (linux_nat_supports_multi_process): New.
5563         (linux_nat_stop_lwp): Remove LWP filtering.  It is done by the
5564         caller.
5565         (linux_nat_stop): Adjust to make iterate_over_lwps itself do the
5566         LWP filtering.
5567         (linux_nat_close): New.
5568         (linux_nat_add_target): Register linux_nat_close and
5569         linux_nat_supports_multi_process.
5570         * linux-nat.h (iterate_over_lwps): Add filter argument.
5571         * linux-thread-db.c (thread_db_handle): Delete.
5572         (proc_handle, thread_agent, td_init_p, td_ta_new_p)
5573         (td_ta_map_id2thr_p, td_ta_map_lwp2thr_p, td_ta_thr_iter_p)
5574         (td_ta_event_addr_p, td_ta_set_event_p, td_ta_event_getmsg_p)
5575         (td_thr_validate_p, td_thr_get_info_p, td_thr_event_enable_p)
5576         (td_thr_tls_get_addr_p, td_create_bp_addr, td_death_bp_addr): No
5577         longer globals, moved to...
5578         (struct thread_db_info): ... this new structure.
5579         (thread_db_list): New.
5580         (add_thread_db_info, get_thread_db_info, delete_thread_db_info):
5581         New.
5582         (have_threads_callback): Filter out threads of all inferiors but
5583         the one specified by the ARGS argument.
5584         (have_threads): Add ptid argument specifying the inferior we're
5585         interested in.  Handle it.
5586         (struct thread_get_info_inout): New.
5587         (thread_get_info_callback, thread_from_lwp): Adjust to use it.
5588         (thread_db_attach_lwp): Check that inferior of the passed in
5589         thread is using thread-db.  Adjust.
5590         (enable_thread_event): Remove thread_agent parameter.  Instead,
5591         get it from the per-inferior thread-db info.
5592         (dladdr_to_soname): Move higher up.
5593         (enable_thread_event_reporting): Adjust to use per-inferior
5594         thread-db info.
5595         (try_thread_db_load_1): Replace `handle' parameter by a
5596         thread_db_info parameter.  Adjust to use per-inferior thread-db
5597         info.
5598         (try_thread_db_load): Adjust to use per-inferior thread-db info.
5599         (thread_db_load, disable_thread_event_reporting): Ditto.
5600         (check_for_thread_db): Remove conditional reporting of which
5601         libthread_db is in use.
5602         (thread_db_new_objfile): Add comment about inferior_ptid.
5603         (attach_thread): Adjust to use per-inferior thread-db info.
5604         (thread_db_detach): Adjust to use per-inferior thread-db info.
5605         Remove thread event breakpoints of the current inferior.  Only
5606         unpush the thread-db target if there are no more processes using
5607         it.
5608         (check_event): Adjust to use per-inferior thread-db info.
5609         (thread_db_wait): Adjust to use per-inferior thread-db info.  Only
5610         unpush the thread-db target if there are no more processes using
5611         it.
5612         (thread_db_mourn_inferior): Adjust to use per-inferior thread-db
5613         info.  Mark breakpoints of the current inferior out before
5614         deleting them.  Only unpush the thread-db target if there are no
5615         more processes using it.
5616         (find_new_threads_callback): Adjust to use per-inferior thread_db
5617         info.
5618         (thread_db_find_new_threads_1): Add new ptid argument.  Adjust to
5619         use per-inferior thread-db info.
5620         (thread_db_find_new_threads): Adjust to use per-inferior thread-db
5621         info.
5622         (thread_db_get_thread_local_address): Adjust.
5623         (thread_db_get_ada_task_ptid): Adjust.
5624         * inf-ptrace.c (inf_ptrace_mourn_inferior): Only unpush the target
5625         if there no more processes left to debug.
5626         * thread.c (set_running, set_executing): Handle resuming all
5627         threads of a single inferior.
5628         * mi/mi-interp.c (mi_output_running_pid): New.
5629         (mi_inferior_count): New.
5630         (mi_on_resume): For backwards compatibility, if resuming all
5631         threads of an inferior, and there is only one inferior, output
5632         "all".
5633
5634 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
5635
5636         * ada-lang.c (ada_find_any_type): Move check for primitive types ...
5637         (to_fixed_range_type): ... to here.
5638
5639 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
5640
5641         * ada-lang.c (desc_data_type): Remove, replace by ...
5642         (desc_data_target_type): ... this.
5643         (thin_data_pntr): Use desc_data_target_type instead of desc_data_type.
5644         (ada_is_array_descriptor_type): Likewise.
5645         (ada_type_of_array): Likewise.
5646         (ada_coerce_to_simple_array_type): Likewise.
5647         (ada_array_element_type): Likewise.
5648
5649 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
5650
5651         * ada-valprint.c (ada_val_print_1): Use val_print_string to print
5652         result of ada_vax_float_print_function inferior call.
5653
5654 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
5655
5656         * ada-lang.c (ada_coerce_to_simple_array_type): Reimplement to
5657         avoid creating a dummy value.
5658
5659 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
5660
5661         * p-valprint.c (pascal_val_print): Use extract_typed_address
5662         to extract reference value.
5663
5664 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
5665
5666         * doublest.c (NAN): Remove unused define.
5667         (extract_floating_by_length, deprecated_extract_floating): Remove.
5668         (store_floating_by_length, deprecated_store_floating): Remove.
5669         (extract_typed_floating): Do not call extract_floating_by_length.
5670         (store_typed_floating): Do not call store_floating_by_length.
5671         (convert_typed_floating): Remove redundant assertions.
5672         * doublest.h (deprecated_extract_floating): Remove.
5673         (deprecated_store_floating): Remove.
5674         * sh64-tdep.c (sh64_register_convert_to_raw): Call
5675         extract_typed_floating instead of deprecated_extract_floating.
5676
5677 2009-05-18  Jon Beniston <jon@beniston.com>
5678         
5679         * MAINTAINERS: Add lm32 target.        
5680         * Makefile.in: Add lm32 dependencies.        
5681         * NEWS: Indicate lm32 is a new target.
5682         * configure.tgt: Add lm32 targets.
5683         * lm32-tdep.c: New file.
5684
5685 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
5686
5687         * corelow.c (core_open): Flush the register cache before doing
5688         anything with registers.
5689
5690 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
5691
5692         * inflow.h (our_process_group): Remove declaration.
5693         (inferior_process_group): Delete global variable declaration.
5694         (inferior_process_group): New function declaration.
5695         * inflow.c: Include observer.h.
5696         (inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours):
5697         Delete.
5698         (struct terminal_info): New struct.
5699         (our_terminal_info): New global.
5700         (inferior_process_group): New function.
5701         (inferior_thisrun_terminal): Extend description comment.
5702         (gdb_has_a_terminal): Adjust to write to our_terminal_info fields
5703         instead of globals.
5704         (terminal_init_inferior_with_pgrp): Adjust to per-inferior
5705         terminal settings.
5706         (terminal_inferior): Ditto.
5707         (terminal_ours_1): Ditto.
5708         (inflow_new_inferior, inflow_inferior_exit): New functions.
5709         (child_terminal_info): Adjust to per-inferior terminal settings.
5710         (osig_set): New global.
5711         (set_sigint_trap): Adjust to per-inferior terminal settings.  Set
5712         or clear `osig_set' accordingly.
5713         (clear_sigint_trap): Check `osig_set' to decide wheater to restore
5714         SIGINT handler, instead of checking the current inferior (which
5715         may be none).
5716         (_initialize_inflow): Attach inflow_new_inferior and
5717         inflow_inferior_exit to the "new_inferior" and "inferior_exit"
5718         notifications, respectively.
5719         * inferior.h (struct terminal_info): Forward declare.
5720         (struct inferior): Add `terminal_info' field.
5721         * inferior.c (delete_inferior_1): Notify the inferior_exit
5722         observers before removing the inferior from the lists and deleting
5723         it.
5724         * inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now
5725         a function instead of a variable.  Adjust.
5726         * procfs.c (procfs_stop): Ditto.
5727
5728 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
5729
5730         * infrun.c (handle_inferior_event): When handling a
5731         TARGET_WAITKIND_FORKED, detach breakpoints from the fork child
5732         immediatelly.
5733         * linux-nat.c (linux_child_follow_fork): Only detach breakpoints
5734         from the child if vforking.
5735         * inf-ptrace.c (inf_ptrace_follow_fork): No need to detach
5736         breakpoints from the child here.
5737
5738 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
5739
5740         * infrun.c (pending_follow): Remove execd_pathname member.
5741         (resume): No longer handle TARGET_WAITKIND_EXECD pending follow.
5742         (handle_inferior_event): When handling a TARGET_WAITKIND_EXECD
5743         event, don't copy `execd_pathname' to pending_follow, use the
5744         event copy instead.  Release `execd_pathname' once done with
5745         handling the event.
5746
5747         * infrun.c (pending_follow): Remove mention of exec events.
5748
5749 2009-05-17  Hui Zhu  <teawater@gmail.com>
5750
5751         * i386-tdep.c (i386_process_record): Make it extern.
5752         (i386_gdbarch_init): Don't call set_gdbarch_process_record
5753         here.
5754         * i386-tdep.h (i386_process_record): Declare.
5755         * i386-linux-tdep.c (i386_linux_init_abi): Call
5756         set_gdbarch_process_record.
5757
5758 2009-05-17  Vladimir Prus  <vladimir@codesourcery.com>
5759
5760         Always report varobj as changed when in_scope attribute changes.
5761
5762         * varobj.c (install_new_value): If non-NULL-ness of value
5763         changed, return 1.
5764
5765 2009-05-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
5766         
5767         * NEWS: Mention set/show libthread-db-search-path.
5768         * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define.
5769         (LIBTHREAD_DB_SO): Moved from linux-thread-db.c
5770         * linux-thread-db.c (libthread_db_search_path): New setting.
5771         (thread_db_handle): New variable (replaces using_thread_db).
5772         (try_thread_db_load_1): New function.
5773         (try_thread_db_load, thread_db_load_search): Likewise.
5774         (dladdr_to_soname): Likewise.
5775         (thread_db_load): Iterate over possibly multiple libthread_db's.
5776         (check_for_thread_db): Attempt to load new libthread_db.
5777         (thread_db_detach, thread_db_wait): Unload libthread_db.
5778         (thread_db_mourn_inferior): Likewise.
5779         (_initialize_thread_db): Add new libthread-db-search-path option.
5780         Defer loading of libthread_db to check_for_thread_db.
5781         * solib.c (libpthread_name_p): New function.
5782         (libpthread_solib_p): Call it.
5783         * solib.h (libpthread_name_p): New prototype.
5784         
5785 2009-05-15  Pierre Muller  <muller@ics.u-strasbg.fr>
5786
5787         * MAINTAINERS: Update my email address.
5788         
5789 2009-05-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
5790
5791         * breakpoint.h: Add breakpoint_re_set_objfile prototype.
5792         * breakpoint.c (create_overlay_event_breakpoint): Renamed
5793         from create_overlay_event_breakpoint_1, old
5794         create_overlay_event_breakpoint deleted.
5795         (breakpoint_re_set_objfile): Don't rescan all objfiles
5796         unnecessarily.
5797         (breakpoint_re_set): New function.
5798         * symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile
5799         instead of breakpoint_re_set.
5800         * objfiles.c (objfile_relocate): Likewise.
5801         
5802 2009-05-14  Joel Brobecker  <brobecker@adacore.com>
5803
5804         * gdbarch.sh: Add comment documenting the target_gdbarch global.
5805         gdbarch.h does NOT need to be regenerated as the corresponding
5806         change has already been made in a previous commit.
5807
5808 2009-05-14  Pierre Muller  <muller@ics.u-strasbg.fr>
5809
5810         Remove all i386 debug register low level macros in config nm files.
5811         (I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR): Remove.
5812         (I386_DR_LOW_GET_STATUS, I386_DR_LOW_SET_CONTROL): Remove.
5813         (I386_USE_GENERIC_WATCHPOIINTS): Remove.
5814
5815         * i386-nat.h: New file (adapted from config/i386/nm-i386.h).
5816         (struct i386_dr_low_type): New type.
5817         (i386_dr_low): New global variable.
5818         * i386-nat.c (TARGET_HAS_DR_LEN_8): Update macro.
5819         (i386_insert_aligned_watchpoint): Replace i386 dr low macros by
5820         i386_dr_low struct variable fields.
5821         (i386_remove_aligned_watchpoint): Likewise.
5822         (i386_stopped_data_address): Likewise.
5823         (i386_stopped_by_hwbp): Likewise.
5824         (show_debug_regs_command_added): New static variable.
5825         (add_show_debug_regs_command): New static function.
5826         (i386_use_watchpoints): Call add_show_debug_regs_command if not done.
5827         (i386_set_debug_register_length): New function.
5828         (_initialize_i386_nat): Delete.
5829         
5830         * amd64-linux-nat.c: Include "i386-nat.h".
5831         (amd64_linux_dr_set_control):  Change to static.
5832         (amd64_linux_dr_get_status): Change to static.
5833         (amd64_linux_dr_set_addr,amd64_linux_dr_reset_addr): Likewise.
5834         (_initialize_amd64_linux_nat): Set i386_dr_low variable fields.
5835         
5836         * go32-nat.c: Include "i386-nat.h".
5837         (go32_set_addr): Change to static.
5838         (go32_set_dr7): Change to static. Change arg type to unisgned long.
5839         (go32_get_dr6): Change to static. Change return type to unisnged long.
5840         (init_go32_ops):  Set i386_dr_low variable fields.
5841         * i386-linux-nat.c: Include "i386-nat.h".
5842         (i386_linux_dr_set_control, i386_linux_dr_get_status): Change to static.
5843         (i386_linux_dr_set_addr, i386_linux_dr_reset_addr): Idem.
5844         (_initialize_i386_linux_nat):  Set i386_dr_low variable fields.
5845         * i386bsd-nat.h: Declare functions used for
5846         i386_dr_low fields in i386fbsd-nat.c.
5847         * i386fbsd-nat.c: Include "i386-nat.h".
5848         (_initialize_i386fbsd_nat): Set i386_dr_low variable fields.
5849         * windows-nat.c: Include "i386-nat.h".
5850         (cygwin_set_dr, cygwin_get_dr6, cygwin_set_dr7): Add prototypes.
5851         Change to static.
5852         (cygwin_get_dr6): Change return type to unisnged long.
5853         (cygwin_set_dr7): Change arg type to unisgned long.
5854         (init_windows_ops): Set i386_dr_low function fields.
5855
5856         * amd64-windows-nat.c (_initialize_amd64_windows_nat): Call 
5857         i386_set_debug_register_length.
5858         * i386-windows-nat.c (_initialize_i386_windows_nat): Likewise.
5859
5860         * config/i386/nm-cygwin.h: Remove all I386_* macros.
5861         * config/i386/nm-cygwin64.h: Likewise.
5862         * config/i386/nm-fbsd.h: Likewise.
5863         * config/i386/nm-linux.h: Likewise.
5864         * config/i386/nm-i386.h: Remove completely.
5865         * config/i386/nm-go32.h: Remove completely.
5866         * config/i386/nm-linux64.h: Remove completely.
5867         * config/i386/go32.mh (NAT_FILE): Remove entry.
5868         * config/i386/linux64.h (NAT_FILE): Change to config/nm-linux.h.
5869
5870 2009-05-14  Jon Beniston  <jon@beniston.com>
5871
5872         * MAINTAINERS: Add Jon Beniston to write after approval list.
5873
5874 2009-05-13  Paul Pluzhnikov  <ppluzhnikov@google.com>
5875
5876         * objc-lang.c (objc_objfile_data): New variable.
5877         (find_methods): Skip objfiles without Obj-C methods.
5878         (_initialize_objc_lang): New function.
5879
5880 2009-05-13  Joel Brobecker  <brobecker@adacore.com>
5881
5882         * c-lang.c (print_wchar): Remove unnecessary cast.
5883
5884 2009-05-12  Jim Blandy  <jimb@red-bean.com>
5885
5886         * MAINTAINERS: Remove self as m32c target maintainer.
5887
5888 2009-05-12  Pedro Alves  <pedro@codesourcery.com>
5889
5890         * cli/cli-decode.c (deprecated_add_set_cmd): Delete.
5891         * command.h (deprecated_add_set_cmd): Delete declaration.
5892         * gnu-nat.c (_initialize_gnu_nat): Replace 'maint gnu-debug' with
5893         'set debug gnu-nat' and 'show debug gnu-nat'.
5894         * i386-nat.c (_initialize_i386_nat): Replace 'maint
5895         show-debug-registers' with 'maint set show-debug-registers' and
5896         'maint show show-debug-registers'.
5897         * mips-linux-nat.c (_initialize_mips_linux_nat): Replace 'maint
5898         show-debug-registers' with 'maint set show-debug-registers' and
5899         'maint show show-debug-registers'.
5900
5901 2009-05-12  Joel Brobecker <brobecker@adacore.com>
5902
5903         * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
5904         pushing it on the output obstack.
5905
5906 2009-05-11  Joel Brobecker <brobecker@adacore.com>
5907
5908         Fix internal error on breaking at a multi-locations caller source line.
5909         * breakpoint.c (parse_breakpoint_sals): Set EXPLICIT_PC for the `break'
5910         command with no parameters.
5911
5912 2009-05-11  Pedro Alves  <pedro@codesourcery.com>
5913
5914         * linux-nat.c (enum sigchld_state): Delete.
5915         (linux_nat_async_events_state): Delete.
5916         (struct waitpid_result): Delete.
5917         (waitpid_queue): Delete.
5918         (queued_waitpid_1): Delete.
5919         (async_file_flush): New.
5920         (queued_waitpid, push_waitpid): Delete.
5921         (async_file_mark): New.
5922         (drain_queued_events): Delete.
5923         (my_waitpid): Remove locally queued events handling.
5924         (linux_test_for_tracefork): Upjust.
5925         (linux_child_follow_fork): Ditto.
5926         (sync_sigchld_action): Delete.
5927         (blocked_mask): Reinstate.
5928         (async_sigchld_action): Rename to...
5929         (sigchld_action): ... this.
5930         (block_child_signals): New.
5931         (restore_child_signals_mask): New.
5932         (lin_lwp_attach_lwp): Adjust.
5933         (linux_nat_create_inferior): Ditto.
5934         (linux_nat_attach): Also use lp->status in async mode.
5935         (get_pending_status): Don't use queued_waitpid.
5936         (linux_nat_detach): Don't drain locally queued events.
5937         (linux_nat_resume): Allow pending wait statuses stored lp->status
5938         in async mode.  If returning early due to a pending event,
5939         re-register the event source.
5940         (stop_wait_callback): Allow pending wait statuses stored
5941         lp->status in async mode.
5942         (pipe_to_local_event_queue, local_event_queue_to_pipe): Delete.
5943         (linux_nat_wait): Rename to ...
5944         (linux_nat_wait_1): ... this.  Allow pending wait statuses stored
5945         lp->status in async mode.  Always add WNOHANG to the waitpid
5946         options in async mode.
5947         (linux_nat_wait): New.
5948         (kill_callback): Don't drain locally queued events.
5949         (sigchld_handler): Rewrite.
5950         (linux_nat_is_async_p, linux_nat_can_async_p): Fix comments to
5951         refer to "set target-async".
5952         (linux_nat_async_mask): If in non-stop, and re-enabling async
5953         mode, re-register the target event source in the event loop.
5954         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push)
5955         (get_pending_events, async_sigchld_handler)
5956         (linux_nat_async_events): Delete.
5957         (handle_target_event): New.
5958         (linux_nat_async_file_handler): Delete.
5959         (linux_async_pipe): New.
5960         (linux_nat_async): Only re-register in the event loop if not
5961         registered yet.  Always notify the event-loop once if enabling the
5962         event source.
5963         (linux_nat_stop_lwp): Rewrite to handle pending events stored in
5964         lp->status, not in the locally queued event list.
5965         (linux_nat_stop): Don't mask out async event handling.
5966         (linux_nat_setup_async): Delete.
5967         (_initialize_linux_nat): Adjust.
5968         (lin_thread_get_thread_signals): blocked_mask is global again.
5969         Adjust.
5970
5971 2009-05-11  Pierre Muller  <muller@ics.u-strasbg.fr>
5972
5973         Unify target macros.
5974
5975         * target.h (STOPPED_BY_WATCHPOINT): Delete, replaced by ...
5976         (target_stoppped_by_watchpoint): New macro.
5977         (HAVE_STEPPABLE_WATCHPOINT): Delete, replaced by ...
5978         (target_have_steppable_watchpoint): New macro.
5979         (HAVE_CONTINUABLE_WATCHPOINT): Delete, replace by ...
5980         (target_have_continuable_watchpoint): New macro.
5981         (TARGET_CAN_USE_HARDWARE_WATCHPOINT):Delete, replaced by ...
5982         (target_can_use_hardware_watchpoint): New macro.
5983         (TARGET_REGION_OK_FOR_HW_WATCHPOINT):Delete, replaced by ...
5984         (target_region_ok_for_hw_watchpoint): New macro.
5985
5986         * breakpoint.c (update_watchpoint): Use new macros.
5987         (bpstat_alloc): Likewise.
5988         (create_breakpoint): Likewise.
5989         (watch_command_1): Likewise.
5990         (can_use_hardware_watchpoint): Likewise.
5991         (do_enable_breakpoint): Likewise.
5992         * infrun.c (handle_inferior_event): Adapt to new macros.
5993         * mips-tdep.c (mips_gdbarch_init): Update comments.
5994         * procfs.c (procfs_set_watchpoint): Update comment.
5995         (procfs_insert_watchpoint): Adapt to new macros.
5996         * remote-m32r-sdi.c (m32r_stop):
5997         * remote-mips.c (mips_remove_breakpoint):
5998         * target.c (debug_to_region_ok_for_hw_watchpoint): Update to new macros.
5999         (debug_to_stopped_by_watchpoint): Likewise.
6000
6001
6002 2009-05-10  Pierre Muller  <muller@ics.u-strasbg.fr>
6003
6004         * src/gdb/target.h: Remove all tests for already defined
6005         macros. All macros defined here should not be set in config
6006         headers anymore.
6007
6008 2009-05-08  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
6009
6010         * ppc-linux-nat.c (have_ptrace_getsetregs): New variable.
6011         (have_ptrace_getsetfpregs): Likewise.
6012         fetch_all_gp_regs): New function.
6013         (fetch_gp_regs): New function.
6014         (fetch_all_fp_regs): Likewise.
6015         (fetch_fp_regs): New function.
6016         (fetch_ppc_registers): Using the new methods to fetch general-
6017         purpose and floating-pointer registers.
6018         (store_all_gp_regs): New function.
6019         (store_gp_regs): Likewise.
6020         (store_all_fp_regs): New function.
6021         (store_fp_regs): Likewise.
6022         (store_ppc_registers): Using the new methods to store general-
6023         purpose and floating-pointer registers.
6024
6025 2009-05-08  Doug Evans  <dje@google.com>
6026
6027         * linux-nat.c (linux_xfer_siginfo): Delete unused locals lp, n.
6028
6029 2009-05-07  Sergio Durigan Junior  <sergiodj@linux.vnet.ibm.com>
6030
6031         * MAINTAINERS (Write After Approval): Add self.
6032
6033 2009-05-07  Joel Brobecker  <brobecker@adacore.com>
6034
6035         * gdbarch.h (target_gdbarch): Add comment documenting this global.
6036
6037 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
6038
6039         * acinclude.m4 (AM_ICONV): Prefer in-tree libiconv if present over
6040         system iconv.
6041         * configure: Regenerate.
6042
6043 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
6044
6045         * utils.c: Add include of gdb_usleep.h.
6046         (defaulted_query): Detect false EOF conditions that happen
6047         on terminals opened with the O_NONBLOCK flag when there is
6048         nothing to read.
6049
6050 2009-05-06  Pedro Alves  <pedro@codesourcery.com>
6051
6052         * inferior.c (add_inferior): Move observer_notify_new_inferior
6053         call to ...
6054         (add_inferior_silent): ... here.
6055
6056 2009-05-06  Pierre Muller  <muller@ics.u-strasbg.fr>
6057             Pedro Alves  <pedro@codesourcery.com>
6058
6059         * procfs.c (procfs_insert_watchpoint, procfs_remove_watchpoint)
6060         (procfs_region_ok_for_hw_watchpoint, procfs_use_watchpoints): New
6061         functions.
6062         (procfs_stopped_by_watchpoint): Made static, ptid argument
6063         removed.
6064         (_initialize_procfs): Register new watchpoint related target
6065         functions.
6066         * config/i386/nm-i386sol2.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT)
6067         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT)
6068         (HAVE_CONTINUABLE_WATCHPOINT): Delete.
6069         (target_insert_watchpoint, target_remove_watchpoint): Delete.
6070         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
6071         declarations.
6072         * config/mips/nm-irix5.h (STOPPED_BY_WATCHPOINT)
6073         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
6074         (target_insert_watchpoint, target_remove_watchpoint): Delete.
6075         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
6076         declarations.
6077         * config/sparc/nm-sol2.h (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT)
6078         (HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT): Delete.
6079         (target_insert_watchpoint, target_remove_watchpoint): Delete.
6080         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
6081         declarations.
6082
6083 2009-05-06  Hui Zhu  <teawater@gmail.com>
6084
6085         * i386-tdep.c (i386_process_record): Change bzero to memset.
6086
6087 2009-05-06  Hui Zhu  <teawater@gmail.com>
6088
6089         * NEWS: Add item for process record and replay.
6090
6091 2009-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
6092
6093         * xtensa-tdep.c (xtensa_frame_cache): Use pc instead of cache->pc.
6094
6095 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
6096
6097         * inferior.h (read_pc, write_pc): Remove.
6098         * regcache.c (read_pc, write_pc): Remove.
6099
6100         * infrun.c (displaced_step_fixup): Use regcache_read_pc instead
6101         of read_pc.
6102         (handle_inferior_event): Use regcache_read_pc instead of read_pc
6103         when determining value of stop_pc.  Replace subsequent uses of
6104         read_pc by inspecting already-retrieved stop_pc value.
6105         (keep_going): Use regcache_read_pc instead of read_pc.
6106
6107         * breakpoint.c (watchpoint_check): Use current frame architecture
6108         and PC instead of current_gdbarch and read_pc ().
6109         * tracepoint.c (set_traceframe_context): Replace PC argument
6110         with FRAME argument.
6111         (trace_start_command, finish_tfind_command): Update calls.
6112         (finish_tfind_command): Compare frame IDs to identify transitions
6113         between frames.
6114         (trace_find_pc_command): Use regcache_read_pc instead of read_pc.
6115         * rs6000-nat.c (exec_one_dummy_insn): Pass in regcache instead
6116         of gdbarch.  Use regcache_read_pc and regcache_write_pc instead
6117         of read_pc and write_pc.
6118         (store_register): Make regcache argument non-const.  Update call
6119         to exec_one_dummy_insn.
6120
6121         * thread.c (switch_to_thread): Use regcache_read_pc instead of read_pc.
6122         * infcmd.c (post_create_inferior): Likewise.
6123         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
6124         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
6125         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
6126         * solib-svr4.c (enable_break, svr4_relocate_main_executable): Likewise.
6127         * linux-fork.c (fork_load_infrun_state): Likewise.
6128         * hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Likewise.
6129         * record.c (record_wait): Likewise.
6130         * procfs.c (procfs_wait): Likewise.
6131         * remote-mips.c (common_open, mips_wait): Likewise.
6132         * remote-m32r-sdi.c (m32r_resume): Likewise.
6133
6134         * symfile.c (generic_load): Use regcache_write_pc instead of write_pc.
6135         * monitor.c (monitor_create_inferior, monitor_load): Likewise.
6136         * m32r-rom.c (m32r_load, m32r_upload_command): Likewise.
6137         * remote-m32r-sdi.c (m32r_create_inferior, m32r_load): Likewise.
6138         * remote-mips.c (mips_create_inferior, mips_load): Likewise.
6139
6140         * solib-darwin.c: Include "regcache.h".
6141         * solib-pa64.c: Include "regcache.h".
6142         * solib-svr4.c: Include "regcache.h.".
6143
6144         * symfile.c: Do not mention read_pc or write_pc in comments.
6145         * dink32-rom.c: Likewise.
6146         * m32r-rom.c: Likewise.
6147         * mips-tdep.c: Likewise.
6148
6149 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
6150
6151         * fork-child.c (startup_inferior): Move setting stop_pc ...
6152         * infcmd.c (post_create_inferior): ... to here.
6153
6154 2009-05-04  Michael Snyder  <msnyder@vmware.com>
6155
6156         * NEWS: Add item for reverse debugging commands.
6157
6158 2009-05-04  Pedro Alves  <pedro@codesourcery.com>
6159
6160         * go32-nat.c (go32_stop): Delete.
6161         (go32_kill_inferior): Rewrite to only call go32_mourn_inferior.
6162         (go32_create_inferior): Don't call go32_stop or
6163         go32_kill_inferior.
6164         (go32_mourn_inferior): Inline go32_stop and go32_kill_inferior
6165         here.
6166         (init_go32_ops): Don't register go32_stop.
6167
6168 2009-05-02  Eli Zaretskii  <eliz@gnu.org>
6169
6170         * dbxread.c (read_dbx_symtab): Avoid compiler warnings for
6171         sym_name.
6172
6173         * infcall.c (find_function_addr): Avoid compiler warnings for
6174         funaddr.
6175
6176 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
6177
6178         * dictionary.c (dict_hashed_vector, dict_hashed_expandable_vector)
6179         (dict_linear_vector, dict_linear_expandable_vector): Fix a comment typo.
6180
6181 2009-05-01  Doug Evans  <dje@google.com>
6182
6183         * linux-thread-db.c (thread_db_pid_to_str): Delete unused assignment
6184         to thread_info.
6185
6186 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
6187
6188         * record.c (_initialize_record): Reformat and clarify doc strings
6189         for stop-at-limit and insn-number-max.
6190
6191         * go32-nat.c: Add comments about dirty secrets of DJGPP debugging.
6192
6193 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
6194
6195         Make specifiable the make_function_type type memory ownership.
6196         * gdbtypes.c (make_function_type): New parameter `objfile', use it
6197         explicitely instead of TYPE-initialized removed local variable
6198         `objfile'.  Describe `objfile' it in the function comment.
6199         (lookup_function_type): Update make_function_type callers.
6200         * gdbtypes.h (make_function_type): Update the prototype.
6201         * jv-lang.c (java_link_class_type): Update make_function_type callers.
6202         * dwarf2read.c (read_subroutine_type): Likewise.
6203         * stabsread.c (read_type): Likewise.
6204
6205 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
6206
6207         * go32-nat.c (go32_pid_to_str): Call normal_pid_to_str instead of
6208         printing a bogus "Thread <main>".
6209         (go32_thread_alive): Don't return 1 for null_ptid.
6210
6211         * i386-tdep.c (i386_go32_init_abi): Override the number of
6212         registers due to non-support of SSE.
6213
6214 2009-04-30  Anthony Green  <green@moxielogic.com>
6215
6216         * configure.tgt: Link the moxie simulator in with gdb.
6217
6218 2009-04-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
6219
6220         * elfread.c (elf_symtab_read): Don't assume .data and .rodata
6221         are present.
6222
6223 2009-04-30  Hui Zhu  <teawater@gmail.com>
6224             Michael Snyder  <msnyder@vmware.com>
6225
6226         I386 Linux process record and replay support.
6227
6228         * i386-linux-tdep.c (i386_linux_record_tdep): New variable.
6229         This struct has the argument for the function
6230         "record_linux_system_call".
6231         (i386_linux_intx80_sysenter_record): New function. Parse the
6232         system call instruction and call function
6233         "record_linux_system_call" to record execute log.
6234         (i386_linux_init_abi): Initialize "i386_linux_record_tdep".
6235         Set "i386_linux_intx80_sysenter_record" to
6236         "i386_intx80_record" and "i386_sysenter_record".
6237
6238 2009-04-30  Hui Zhu  <teawater@gmail.com>
6239             Michael Snyder  <msnyder@vmware.com>
6240
6241         I386 architecture process record and replay support.
6242
6243         * i386-tdep.c (PREFIX_REPZ, PREFIX_REPNZ, PREFIX_LOCK,
6244         PREFIX_DATA, PREFIX_ADDR): New macros. Help decode the i386
6245         instruction set.
6246         (aflag, dflag, override, modrm, mod, reg, rm, ot,
6247         i386_record_pc): New variables. Ditto.
6248         (i386_record_modrm, i386_record_lea_modrm_addr,
6249         i386_record_lea_modrm): New functions. Ditto.
6250         (i386_process_record): New function. Parse the instruction in
6251         address "addr" and record the values of registers and memory
6252         that will be changed by this instruction.
6253         (i386_gdbarch_init): Set "i386_process_record" to GDBARCH
6254         "process_record" interface.
6255         * i386-tdep.h (gdbarch_tdep): New function pointers
6256         "i386_intx80_record" and "i386_sysenter_record" that point to
6257         the function that can record "intx80" and "sysenter" execute
6258         log.
6259
6260 2009-04-30  Hui Zhu  <teawater@gmail.com>
6261             Michael Snyder  <msnyder@vmware.com>
6262
6263         * infrun.c (use_displaced_stepping): Return false if process
6264         record and replay target is used.
6265         (proceed): Call function "record_not_record_set" if pocess
6266         record and replay target is used.
6267
6268 2009-04-30  Hui Zhu  <teawater@gmail.com>
6269             Michael Snyder  <msnyder@vmware.com>
6270
6271         Linux process record and replay support.
6272
6273         * Makefile.in (ALLDEPFILES): Add linux-record.c.
6274         (ALL_TARGET_OBS): Add linux-record.o.
6275         * configure.tgt (x86_64-*-linux*): Add linux-record.o.
6276         (i[34567]86-*-linux*): Add linux-record.o.
6277         * linux-record.c, linux-record.h: New file.
6278
6279 2009-04-30  Hui Zhu  <teawater@gmail.com>
6280             Michael Snyder  <msnyder@vmware.com>
6281
6282         Process record and replay target.
6283
6284         * Makefile.in (SFILES): Add record.c.
6285         (COMMON_OBS): Add record.o.
6286         * record.c, record.h: New file.
6287
6288 2009-04-30  Hui Zhu  <teawater@gmail.com>
6289             Michael Snyder  <msnyder@vmware.com>
6290
6291         * target.h (strata): New stratum "record_stratum".
6292
6293 2009-04-30  Hui Zhu  <teawater@gmail.com>
6294             Michael Snyder  <msnyder@vmware.com>
6295
6296         GDBARCH interface for process record and replay.
6297
6298         * gdbarch.sh (process_record): This interface point to the
6299         function that records the inferior execute log.
6300
6301 2009-04-29  Doug Evans  <dje@google.com>
6302
6303         * i386-nat.c (child_post_startup_inferior): Delete, unused.
6304
6305 2009-04-29  Pedro Alves  <pedro@codesourcery.com>
6306
6307         * breakpoint.c (print_exception_catchpoint): Access `b' directly
6308         instead of `b->loc->owner'.
6309         (print_mention_exception_catchpoint): Ditto.
6310
6311 2009-04-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
6312
6313         * macrocmd.c (info_macro_command): Print -Dname=value if LINE is zero.
6314
6315 2009-04-27  Tom Tromey  <tromey@redhat.com>
6316
6317         * c-exp.y (yylex): Handle '[' and ']' like '(' and ')'.
6318
6319 2009-04-27  Jerome Guitton  <guitton@adacore.com>
6320
6321         * symtab.c (append_exact_match_to_sals): New function, extracted
6322         from expand_line_sal.
6323         (expand_line_sal): Use append_exact_match_to_sals to append exact
6324         matches. If none found, append all best items.
6325
6326 2009-04-27  Jerome Guitton  <guitton@adacore.com>
6327
6328         * main.c (captured_main): Move gdbinit lookups after gdb_init.
6329
6330 2009-04-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
6331
6332         PR gdb/9675:
6333         * dwarf2read.c (unsigned_int_compar, inherit_abstract_dies): New.
6334         (read_func_scope): Call inherit_abstract_dies.
6335
6336 2009-04-25  Eli Zaretskii  <eliz@gnu.org>
6337
6338         * Makefile.in (ALLDEPFILES): Remove duplicate entries for
6339         sparc-sol2-nat.c and sparc-sol2-tdep.c.
6340
6341         * stack.c (_initialize_stack) <disassemble-next-line>: Doc fix.
6342
6343 2009-04-24  Pierre Muller  <muller@ics.u-strasbg.fr>
6344
6345         ARI change: Use "/* ARI: rule */" pattern.
6346         * utils.c: Update ARI patterns.
6347         * gdb_dirent.h: Likewise.
6348
6349 2009-04-23  Anthony Green  <green@moxielogic.com>
6350
6351         * MAINTAINERS: Add moxie target.
6352         * configure.tgt: Add moxie-*-elf target.
6353         * moxie-tdep.c: New file.
6354         * moxie-tdep.h: New file.
6355
6356 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
6357
6358         * ada-lang.c: Remove an extra empty line. No code change.
6359
6360 2009-04-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
6361
6362         Fix double free on error inserting the breakpoint instruction.
6363         * breakpoint.c (create_breakpoints): Move the
6364         update_global_location_list call to ...
6365         (break_command_really): ... here together with the second local call
6366         both unified after all the cleanups.
6367
6368 2009-04-23  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
6369             Tom Tromey  <tromey@redhat.com>
6370
6371         * configure, config.in: Regenerate.
6372         * configure.ac: Support for relocatable GDB datadir.  Use
6373         GDB_AC_WITH_DIR.  Always define TARGET_SYSTEM_ROOT_RELOCATABLE.
6374         * acinclude.m4 (GDB_AC_WITH_DIR): New defun.
6375         * top.c (init_main): Add "set data-directory".
6376         * defs.h (gdb_datadir): Declare.
6377         * main.c (gdb_datadir): New global.
6378         (captured_main): Initialize gdb_datadir.  Use relocate_directory.
6379         (relocate_path): New function.
6380         (relocate_directory): Likewise.
6381         (get_init_files): Use relocate_path.
6382         (README): Mention --with-gdb-datadir.
6383
6384 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
6385
6386         * ada-tasks (task_command_1): Call target_find_new_threads.
6387
6388 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
6389
6390         * stack.c (do_gdb_disassembly): Print the exception message if an
6391         error was thrown while trying to perform the disassembly.
6392
6393 2009-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
6394
6395         * varobj.c (free_variable): Replace free_current_contents by xfree.
6396
6397 2009-04-22  Kazu Hirata  <kazu@codesourcery.com>
6398
6399         * arm-linux-nat.c (fetch_register, store_register): Use
6400         ARM_CPSR_GREGNUM instead of ARM_CPSR_REGNUM.
6401         * arm-linux-tdep.c (arm_linux_supply_gregset,
6402         arm_linux_collect_gregset): Likewise.
6403         * arm-linux-tdep.h (ARM_CPSR_GREGNUM): New.
6404         * arm-tdep.h (ARM_CPSR_REGNUM): Remove.
6405
6406 2009-04-22  Hui Zhu  <teawater@gmail.com>
6407
6408         * stack.c (_initialize_stack): Set the default of
6409         disassemble-next-line to off.
6410
6411 2009-04-21  Tom Tromey  <tromey@redhat.com>
6412
6413         * acinclude.m4: Use AS_HELP_STRING, not AC_HELP_STRING.
6414         * configure.ac: Use AS_HELP_STRING, not AC_HELP_STRING.
6415
6416 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
6417
6418         * configure.ac: Add quotes to not lose brackets in help text.
6419         * configure: Rebuild.
6420
6421 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
6422
6423         * configure.ac: Don't postprocess Makefile in config.status.
6424         Substitute GDB_NM_FILE.  Don't substitute nm_h.
6425         * Makefile.in (GDB_NM_FILE): Substitute.
6426         (TAGS): Use $(GDB_NM_FILE) instead of $(NAT_FILE).
6427         * configure: Regenerate.
6428         * gnulib/Makefile.in: Regenerate.
6429
6430 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
6431
6432         * configure.ac (--with-datarootdir, --with-docdir, --with-pdfdir,
6433         --with-htmldir): New.
6434         * configure: Regenerate.
6435
6436 2009-04-21  Tom Tromey  <tromey@redhat.com>
6437
6438         * configure: Rebuild.
6439         * configure.ac: Use lower case for start of help strings.  Clean
6440         up --with-sysroot help.
6441
6442 2009-04-21  Tom Tromey  <tromey@redhat.com>
6443
6444         * configure: Rebuild.
6445         * acinclude.m4 (AM_ICONV): Use AC_HELP_STRING.
6446         * configure.ac: Use AC_HELP_STRING.  Use upper case for variables
6447         in help.
6448
6449 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
6450
6451         ARI fix: remove "%p".
6452         * ia64-tdep.c (ia64_frame_this_id): Use host_address_to_string function.
6453         (ia64_sigtramp_frame_this_id): Ditto.
6454         (ia64_libunwind_frame_this_id): Ditto.
6455         (ia64_libunwind_sigtramp_frame_this_id): Ditto.
6456         * symmisc.c (maintenance_info_psymtabs): Ditto.
6457
6458 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
6459
6460         * configure.ac (--with-relocated-sources): New.
6461         * configure, config.in: Regenerate.
6462         * source.c (add_substitute_path_rule): Remove static.
6463         * source.h (add_substitute_path_rule): Declare.
6464         * main.c: Include "source.h".
6465         (captured_main): Add substitution rule if RELOC_SRCDIR.
6466
6467 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
6468
6469         * gnu-nat.h (proc_debug): Add missing continuation line in macro.
6470
6471 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
6472
6473         * NEWS: Mention MIPS/Linux hardware watchpoint support.
6474
6475 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
6476
6477         * mips-linux-nat.c (command.h, gdbcmd.h, gdb_assert.h): New #includes.
6478         (maint_show_dr, super_close): New variables.
6479         (super_fetch_registers, super_store_registers): Make static.
6480         (PTRACE_GET_WATCH_REGS, PTRACE_SET_WATCH_REGS, W_BIT, R_BIT, I_BIT)
6481         (W_MASK, R_MASK, I_MASK, IRW_MASK, MAX_DEBUG_REGISTER): Define.
6482         (pt_watch_style): Define new enum.
6483         (mips32_watch_regs, mips64_watch_regs, pt_watch_regs, mips_watchpoint):
6484         Define new structs.
6485         (watch_readback_valid, watch_readback, current_watches, watch_mirror):
6486         New variables.
6487         (get_irw_mask, get_reg_mask, get_num_valid, get_watchlo)
6488         (set_watchlo, get_watchhi, set_watchhi, mips_show_dr)
6489         (mips_linux_read_watch_registers, mips_linux_can_use_hw_breakpoint)
6490         (mips_linux_stopped_by_watchpoint, mips_linux_stopped_data_address)
6491         (type_to_irw, fill_mask, try_one_watch)
6492         (mips_linux_region_ok_for_hw_watchpoint, write_watchpoint_regs)
6493         (mips_linux_new_thread, populate_regs_from_watches)
6494         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
6495         (mips_linux_close): New functions.
6496         (_initialize_mips_linux_nat): Register watchpoint functions with
6497         the target_ops.  Add show-debug-regs maintenance command.
6498
6499 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
6500
6501         * infrun.c (handle_inferior_event): Move gegisters_changed call down.
6502
6503 2009-04-19  Pedro Alves  <pedro@codesourcery.com>
6504
6505         * NEWS: Mention gdbserver support for x86 Windows CE.
6506
6507 2009-04-19  Eli Zaretskii  <eliz@gnu.org>
6508
6509         * config/djgpp/fnchange.lst: Fix typos.
6510
6511         Set default host and target charsets in the DJGPP port.
6512
6513         * config/djgpp/config.sed (am_cv_langinfo_codeset)
6514         (bash_cv_langinfo_codeset, ac_cv_header_nl_types_h): Set to "yes"
6515         in all configure scripts that define ac_cv_env_CPP_value.
6516
6517         * go32-nat.c (dos_codepage, nl_langinfo): New functions.
6518         Include langinfo.h.
6519
6520         * config/djgpp/nl_types.h: New file.
6521
6522         * config/djgpp/langinfo.h: New file.
6523
6524         * config/i386/go32.mh (MH_CFLAGS): Add $(srcdir)/config/djgpp.
6525
6526 2009-04-18  Carlos O'Donell  <carlos@codesourcery.com>
6527
6528         * Makefile.in (MAKEHTML): Set to makeinfo --html.
6529         (MAKEHTMLFLAGS): Set to empty.
6530
6531 2009-04-18  Eli Zaretskii  <eliz@gnu.org>
6532
6533         * NEWS: Mention all new set/show commands added since GDB 6.8 was
6534         released.
6535
6536         * go32-nat.c (go32_sysinfo): Check if the call to
6537         __dpmi_get_capabilities fills the buffer with information, and
6538         don't use the buffer if not.
6539
6540 2009-04-17  Tom Tromey  <tromey@redhat.com>
6541
6542         * charset.c (_initialize_charset): Add special case for "646".
6543
6544 2009-04-17  Carlos O'Donell  <carlos@codesourcery.com>
6545
6546         * configure.ac: AC_SUBST datarootdir, docdir, htmldir, pdfdir.
6547         * configure: Regenerate.
6548         * Makefile.in: Set datarootdir, docdir, htmldir, and pdfdir from
6549         configure substitutions.
6550         (FLAGS_TO_PASS): Add datarootdir, docdir, and htmldir.
6551
6552 2009-04-17  Pierre Muller  <muller@ics.u-strasbg.fr>
6553
6554         ARI fix: Do not use %p, replace by call to host_address_to_string
6555         for host pointers.
6556         * darwin-nat.c (darwin_xfer_partial): Apply change.
6557         * gnu-nat.c (inf_continue, gnu_xfer_memory): Ditto.
6558         * gnu-nat.h (proc_debug): Ditto.
6559         * symmisc.c (maintenance_info_symtabs): Ditto.
6560         (maintenance_info_psymtabs): Ditto.
6561         * windows-nat.c (handle_load_dll): Ditto.
6562         (handle_unload_dll, info_w32_command, handle_exception): Ditto.
6563         * xtensa-tdep.c (xtensa_unwind_pc): Ditto.
6564
6565 2009-04-17  Joseph Myers  <joseph@codesourcery.com>
6566
6567         * configure.tgt (i[34567]86-*-linux*): Use 64-bit configuration if
6568         --enable-64-bit-bfd.
6569         (sparc-*-linux*): Likewise.
6570
6571 2009-04-17  Eli Zaretskii  <eliz@gnu.org>
6572
6573         * go32-nat.c (go32_sysinfo): Update list of Windows versions of
6574         the NT family.
6575
6576 2009-04-16  Pedro Alves  <pedro@codesourcery.com>
6577
6578         * remote.c (remote_query_attached): Fix pasto in packet_ok result
6579         checking.
6580
6581 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
6582
6583         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
6584         Revert the previous change.  Might not be correct, actually.
6585
6586 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
6587
6588         * ada-lang.h (ada_adjust_exception_stop, ada_print_exception_stop)
6589         (ada_get_current_task, ada_print_exception_breakpoint_nontask)
6590         (ada_print_exception_breakpoint_task, ada_reset_thread_registers):
6591         Remove declaration. These are non-existent functions.
6592
6593 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
6594
6595         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
6596         Fix a compilation warning on mips-irix due to casting from
6597         a pointer of different size.
6598
6599 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
6600
6601         * ada-lang.c (symtab_for_sym): Delete.
6602         (user_select_syms): Use sym->symtab instead of calling symtab_for_sym.
6603
6604 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
6605
6606         * ada-lang.c (extract_string): Delete.
6607         (ada_main_name): Reimplement using target_read_string instead of
6608         extract_string.
6609
6610 2009-04-16  Andreas Schwab  <schwab@linux-m68k.org>
6611
6612         * m68klinux-nat.c: Remove obsolete comment.
6613         (fetch_register, store_register): Don't call
6614         gdbarch_cannot_fetch_register or gdbarch_cannot_store_register,
6615         which are always nops here.
6616
6617 2009-04-14  Tom Tromey  <tromey@redhat.com>
6618
6619         * c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING.
6620         (c_printstr): Likewise.
6621         * charset.c: Include gdb_wait.h.
6622         (make_wchar_iterator): Use INTERMEDIATE_ENCODING.
6623         (find_charset_names): Use pexecute.  Handle libiconv's output.
6624         Detect errors.
6625         (_initialize_charset): Use xstrdup.
6626         * gdb_wchar.h: Check HAVE_BTOWC.  Split PHONY_ICONV and wchar
6627         cases.
6628         (INTERMEDIATE_ENCODING): New define.
6629         * configure, config.in: Rebuild.
6630         * configure.ac: Check for btowc.
6631
6632 2009-04-15  Tom Tromey  <tromey@redhat.com>
6633
6634         * c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP.
6635
6636 2009-04-15  Eli Zaretskii  <eliz@gnu.org>
6637
6638         * utils.c (parse_escape): Initialize target_char to pacify GCC.
6639
6640 2009-04-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
6641
6642         * c-lang.c (c_get_string): Fix xfree crash on a failed string read.
6643
6644 2009-04-14  Pierre Muller  <muller@ics.u-strasbg.fr>
6645
6646         ARI fix: sprintf rule.
6647         * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
6648         * ada-lang.c (add_angle_brackets): Use xstrprintf.
6649         (ada_decode): Replace sprintf by xsnprintf.
6650         (find_old_style_renaming_symbol): Ditto.
6651         (ada_to_fixed_type_1, ada_enum_name): Ditto.
6652
6653
6654 2009-04-14  Joel Brobecker  <brobecker@adacore.com>
6655
6656         * target.c (target_mourn_inferior): Call bfd_cache_close_all
6657         after having executed the target mourn_inferior routine.
6658
6659 2009-04-14  Eli Zaretskii  <eliz@gnu.org>
6660
6661         * config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if
6662         undefined.
6663
6664 2009-04-13  David Daney  <ddaney@caviumnetworks.com>
6665
6666         * infrun.c (maybe_software_singlestep): New function.
6667         (resume): Call maybe_software_singlestep.
6668         (handle_inferior_event): Same.
6669
6670 2009-04-13  Tom Tromey  <tromey@redhat.com>
6671
6672         * python/python-frame.c (frapy_richcompare): Return
6673         Py_NotImplemented, not an error.  Handle Py_NE as well.
6674
6675 2009-04-13  Eli Zaretskii  <eliz@gnu.org>
6676
6677         * charset.c (EILSEQ): Define if not defined by system headers.
6678
6679 2009-04-11  Eli Zaretskii  <eliz@gnu.org>
6680
6681         * config/djgpp/config.sed: Tweak ac_config_files in intl/configure
6682         to be consistent with renaming config.intl.in into config_intl.in.
6683
6684         * go32-nat.c (go32_attach, go32_detach): Fix prototypes to be
6685         consistent with the change from 2008-11-09.
6686
6687 2009-04-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
6688
6689         * gdbtypes.c: Remove excessive parentheses at the return keywords.
6690         * varobj.c (varobj_invalidate): Fix indentation.
6691         * varobj.c (varobj_invalidate): Fix formatting text width.
6692
6693 2009-04-08  Vladimir Prus  <vladimir@codesourcery.com>
6694
6695         Implement -exec-jump.
6696
6697         * mi/mi-cmds.h (mi_cmd_exec_jump): Declare.
6698         * mi/mi-main.c (mi_cmd_exec_jump): New.
6699         * mi/mi-cmds.c (mi_cmds): Register exec-jump.
6700
6701 2009-04-07  Doug Evans  <dje@google.com>
6702
6703         * symfile.c (symbol_file_clear): Fix indentation.
6704
6705 2009-04-06  Mark Kettenis  <kettenis@gnu.org>
6706
6707         * sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
6708
6709 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
6710
6711         * ppc-linux-nat.c (ppc_linux_target_wordsize): New function.
6712         (ppc_linux_auxv_parse): New function.
6713         (ppc_linux_read_description): Use ppc_linux_target_wordsize.
6714         (_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse.
6715
6716 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
6717
6718         * spu-linux-nat.c (spu_bfd_open): Set filename of in-memory
6719         BFD to contents of SPU name note.
6720         (spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd
6721         with "from_tty" argument 1 instead of 0.
6722
6723 2009-04-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
6724
6725         * dwarf2read.c
6726         (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>):
6727         Create the symbol in local scope.
6728         * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part.
6729
6730 2009-04-02  Keith Seitz  <keiths@redhat.com>
6731
6732         * stabsread.c (read_member_functions): GCC may emit an extra space
6733         at the end of the names "__base_ctor" and "__base_dtor"; so ignore
6734         whitespace when looking for these functions.
6735
6736 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
6737
6738         Change the default value for "set print frame-arguments" to scalars.
6739
6740         * stack.c (print_frame_arguments): Set initial value to "scalars".
6741
6742 2009-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
6743
6744         * mips-tdep.c (mips_numeric_register_alieses): New definition.
6745         (mips_gdbarch_init): Add user registers from
6746         mips_numeric_register_aliases.
6747
6748 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
6749
6750         * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
6751
6752 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
6753
6754         * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
6755         this is the last one.
6756
6757 2009-04-01  Pedro Alves  <pedro@codesourcery.com>
6758
6759         * remote.c (append_resumption): New.
6760         (remote_vcont_resume): Use it.
6761
6762 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
6763
6764         * windows-nat.c (+windows_get_ada_task_ptid): New function.
6765         (init_windows_ops): Set windows_ops.to_get_ada_task_ptid.
6766
6767 2009-03-31  Daniel Jacobowitz  <dan@codesourcery.com>
6768             Keith Seitz  <keiths@redhat.com>
6769             Jan Kratochvil  <jan.kratochvil@redhat.com>
6770
6771         PR gdb/6817
6772         * Makefile.in (dbxread.o): Update.
6773         * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string.
6774         * dwarf2read.c (GDB_FORM_cached_string): New.
6775         (read_partial_die): Use dwarf2_canonicalize_name.
6776         (dwarf2_linkage_name): Use dwarf2_name.
6777         (dwarf2_canonicalize_name): New.
6778         (dwarf2_name): Use dwarf2_canonicalize_name.
6779         (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string.
6780         * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string.
6781         * symtab.c (lookup_symbol_in_language): Canonicalize input before
6782         searching.
6783         * cp-name-parser.y: operator() requires two parameters,
6784         according to libiberty.
6785         * minsyms.c (lookup_minimal_symbol): Canonicalize input
6786         before searching.
6787         * NEWS: Update.
6788
6789 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
6790
6791         Provide support for (Ada) task-specific breakpoints.
6792
6793         * ada-lang.h (ada_get_task_number): Add declaration.
6794         (breakpoint_ada_task_match): Delete declaration.
6795         * ada-tasks.c (ada_get_task_number): Make non-static.
6796         * breakpoint.h (struct breakpoint): Add field "task".
6797         * breakpoint.c (print_one_breakpoint_location): Add handling of
6798         task-specific breakpoints.
6799         (create_breakpoint, create_breakpoints, find_condition_and_thread):
6800         New parameter "task".
6801         (break_command_really): Update calls to find_condition_and_thread
6802         and create_breakpoints.
6803         (breakpoint_re_set_one): Update call to find_condition_and_thread.
6804         Set b->task.
6805
6806 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
6807
6808         * ada-tasks.c (short_task_info): Eliminate the "Running" task state.
6809
6810 2009-03-31  Pedro Alves  <pedro@codesourcery.com>
6811
6812         * remote.c (remote_notice_new_inferior): Use ptid_is_pid.  Check
6813         if the thread's ptid without a thread id field is in the list
6814         before calling thread_change_ptid.
6815         (extended_remote_attach_1): In non-stop mode, do not rely on
6816         querying the current thread, instead, query the thread list, and
6817         select the first thread of the process.
6818         * gdbthread.h (first_thread_of_process): Declare.
6819         * thread.c (first_thread_of_process): Define.
6820
6821 2009-03-30  Stan Shebs  <stan@codesourcery.com>
6822
6823         Make tracepoints into a type of breakpoint.
6824         * breakpoint.h (enum bptype): Add bp_tracepoint.
6825         (struct breakpoint): Add fields step_count, pass_count, actions.
6826         (get_tracepoint, get_tracepoint_by_number): Declare.
6827         (all_tracepoints): Declare.
6828         * breakpoint.c: Include tracepoint.h, readline.h.
6829         (ALL_TRACEPOINTS): Move here from tracepoint.c.
6830         (tracepoint_count): Ditto.
6831         (should_be_inserted): GDB does not insert tracepoints itself.
6832         (print_it_typical): Add tracepoint case.
6833         (bpstat_what): Ditto.
6834         (print_one_breakpoint_location): Ditto, and add printing for
6835         pass count, step count, and action list.
6836         (user_settable_breakpoint): Add tracepoint case.
6837         (allocate_bp_location): Ditto.
6838         (set_breakpoint_location_function): Ditto.
6839         (disable_breakpoints_in_shlibs): Ditto.
6840         (mention): Ditto.
6841         (break_command_really): Add argument traceflag, use to choose
6842         basic breakpoint type.
6843         (break_command_1): Pass extra argument.
6844         (set_breakpoint, handle_gnu_v3_exceptions): Ditto.
6845         (breakpoint_re_set_one): Add tracepoint case.
6846         (disable_command, enable_command): Ditto.
6847         (set_tracepoint_count): Move here from tracepoint.c.
6848         (trace_command): Move here from tracepoint.c and use
6849         break_command_really.
6850         (tracepoints_info): Move here from tracepoint.c and call
6851         breakpoints_info.
6852         (enable_trace_command): Move here from tracepoint.c and call
6853         enable_command.
6854         (disable_trace_command): Move here from tracepoint.c and call
6855         disable_command.
6856         (delete_trace_command): Move here from tracepoint.c and call
6857         delete_breakpoint.
6858         (trace_pass_command): Move here from tracepoint.c.
6859         (get_tracepoint_by_number): Ditto.
6860         (tracepoint_save_command): Ditto.
6861         (get_tracepoint): New function.
6862         (all_tracepoints): New function.
6863         (_initialize_breakpoint): Move tracepoint init from tracepoint.c,
6864         deprecate "enable trace" and "disable trace" commands.
6865         * tracepoint.h (struct tracepoint): Remove.
6866         (tracepoint_chain): Remove decl.
6867         (deprecated_create_tracepoint_hook): Remove decl.
6868         (deprecated_delete_tracepoint_hook): Remove decl.
6869         (deprecated_modify_tracepoint_hook): Remove decl.
6870         (ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove.
6871         (free_actions): Update signature.
6872         (validate_actionline): Update signature.
6873         (end_actions_pseudocommand): Declare.
6874         (while_stepping_pseudocommand): Declare.
6875         * tracepoint.c: Include breakpoint.h.
6876         (tracepoint_chain, tracepoint_count): Remove.
6877         (free_actions, make_cleanup_free_actions): Update signature.
6878         (trace_command, set_raw_tracepoint): Remove.
6879         (trace_mention): Remove.
6880         (tracepoints_info): Remove.
6881         (tracepoint_operation, map_args_over_tracepoints): Remove.
6882         (get_tracepoint_by_number): Remove.
6883         (enable_trace_command, disable_trace_command): Remove.
6884         (delete_trace_command, trace_pass_command): Remove.
6885         (trace_actions_command, read_actions): Update signature.
6886         (validate_actionline): Update signature, use bp loc.
6887         (encode_actions): Ditto.
6888         (download_tracepoint): New function, body of trace_start_command.
6889         (trace_start_command): Call it, use all_tracepoints.
6890         (tracepoint_save_command): Remove.
6891         (tracepoint_dump_command): Use get_tracepoint.
6892         (end_actions_pseudocommand): Make globally visible.
6893         (while_stepping_pseudocommand): Ditto.
6894         (_initialize_tracepoint): Move command definitions to breakpoint.c.
6895
6896 2009-03-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
6897
6898         Expose frames to Python.
6899         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o.
6900         (SUBDIR_PYTHON_SRCS): Add python-frame.c.
6901         (python-frame.o): New target.
6902         * python/python-frame.c: New file.
6903         * python/python-internal.h (gdbpy_frames, gdbpy_newest_frame,
6904         gdbpy_frame_stop_reason_string, gdbpy_selected_frame,
6905         gdbpy_initialize_frames): New prototypes.
6906         * python/python.c (_initialize_python): Call gdbpy_initialize_frames.
6907         (GdbMethods): Add `selected_frame' and `frame_stop_reason_string'
6908         entries.
6909         * stack.c (find_frame_funname): New function, factored out of
6910         print_frame.
6911         (print_frame): Call find_frame_funname.
6912         * stack.h (find_frame_funname): Add prototype.
6913
6914 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
6915
6916         Remove unused value_object attribute `owned_by_gdb'.
6917         * python/python-value.c (value_object): Remove owned_by_gdb
6918         attribute.
6919         (valpy_dealloc): Remove reference to self->owned_by_gdb.
6920         (valpy_new): Likewise.
6921         (value_to_value_object): Likewise.
6922
6923 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
6924
6925         Change gdb.Value.address from a method to an attribute.
6926         * python/python-value.c (value_object): Add `address' element.
6927         (valpy_dealloc): Decrement reference to self->address if set.
6928         (valpy_new): Initialize val_obj->address.
6929         (valpy_address): Rename to ...
6930         (valpy_get_address): ... this.  Change signature from method to
6931         attribute.  Update self->address if not set.
6932         (value_to_value_object): Initialize val_obj->address.
6933         (value_object_getset): Add `address' element.
6934         (value_object_methods): Remove `address' element.
6935
6936 2009-03-29  Andreas Schwab  <schwab@linux-m68k.org>
6937
6938         * observer.sh: Set LANG/LC_ALL to C, not c.
6939
6940 2009-03-28  Kevin Buettner  <kevinb@redhat.com>
6941
6942         * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
6943         `char' is unsigned.
6944
6945 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
6946
6947         * remote.c (remote_stop_ns): If multi-process extensions are off,
6948         and GDB is requesting the whole process to stop, sent "vCont;t",
6949         not "vCont;t:-1"
6950
6951 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
6952
6953         * inf-loop.c (inferior_event_handler): Avoid calling is_running on
6954         null inferior_ptid.
6955
6956 2009-03-27  Eli Zaretskii  <eliz@gnu.org>
6957
6958         * config/djgpp/fnchange.lst: Update to fix ARI-reported problems.
6959
6960 2009-03-26  Doug Evans  <dje@google.com>
6961
6962         * thread.c (do_restore_current_thread_cleanup): Redo test for
6963         whether to restore old->inferior_ptid.
6964
6965 2009-03-26  Tom Tromey  <tromey@redhat.com>
6966
6967         * breakpoint.c (resolve_sal_pc): Preserve original line number
6968         when skipping prologue.
6969
6970 2009-03-26  Doug Evans  <dje@google.com>
6971
6972         * thread.c (inferior_thread) Remove "extern" in definition.
6973
6974 2009-03-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
6975
6976         Add gdb.Value.is_optimized_out attribute.
6977         * python/python-value.c (valpy_get_is_optimized_out): New
6978         function.
6979         (value_object_getset): New variable.
6980         (value_object_type): Initialize tp_getset element.
6981
6982 2009-03-26  Joel Brobecker  <brobecker@adacore.com>
6983
6984         Recognize missing DW_AT_location as <value optimized out>.
6985         * dwarf2read.c
6986         (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>):
6987         Call add_symbol_to_list.
6988
6989 2009-03-25  Tom Tromey  <tromey@redhat.com>
6990
6991         * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
6992         * stack.c (print_this_frame_argument_p): Use check_typedef.
6993
6994 2009-03-25  Tom Tromey  <tromey@redhat.com>
6995
6996         * configure: Rebuild.
6997         * acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv.
6998         Rearrange flags setting.  Add comments.
6999
7000 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
7001
7002         * config/i386/nm-i386.h: Remove code within
7003         I386_WATCHPOINTS_IN_TARGET_VECTOR conditional.
7004         * config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR
7005         macro.
7006         * config/i386/nm-cygwin64.h: Ditto.
7007         * config/i386/nm-fbsd.h: Ditto.
7008         * config/i386/nm-go32.h: Ditto.
7009         * config/i386/nm-linux.h: Ditto.
7010         * config/i386/nm-linux64.h: Ditto.
7011
7012 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
7013
7014         ARI fix: "xasprintf" rule.
7015         * printcmd.c (sym_info): Replace xasprintf by xstrprintf.
7016
7017 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
7018
7019         * remote.c (remote_start_remote): In non-stop mode, call
7020         init_wait_for_inferior before adding threads and inferiors.
7021
7022 2009-03-25  Joel Brobecker  <brobecker@adacore.com>
7023
7024         * breakpoint.c (breakpoint_thread_match): Split a large condition
7025         into several smaller conditions.  No behavior change.
7026
7027 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
7028
7029         * infrun.c (infrun_thread_thread_exit): New.
7030         (_initialize_infrun): Attach it to the thread_exit observer.
7031         * thread.c (delete_thread_1): Always call the observer, passing it
7032         the silent flag.
7033         * mi/mi-interp.c (mi_thread_exit): Add "silent" parameter.  If
7034         SILENT, return immediately.
7035
7036 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
7037
7038         * infrun.c (normal_stop): Use has_stack_frames instead of
7039         target_has_stack.
7040         * mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread
7041         when there is no thread selected.
7042         (mi_cmd_execute): Don't special case commands that can run without
7043         a valid selected thread.
7044         * top.c (execute_command): Don't special case commands that can
7045         run without a valid selected thread.  Use has_stack_frames.
7046         * infcmd.c (ensure_valid_thread): New.
7047         (continue_1, step_1, jump_command, signal_command): Use it.
7048         (detach_command): Error out if there's no selected thread/inferior.
7049         * thread.c (print_thread_info): Allow having no thread selected.
7050         (switch_to_thread): Don't read the PC if there is no current thread.
7051         (do_restore_current_thread_cleanup): Don't record the current
7052         frame if there is no current thread.
7053         (make_cleanup_restore_current_thread): Don't read frame info if
7054         there is no selected thread.
7055         (_initialize_thread): Don't mark commands as
7056         "no_selected_thread_ok".
7057         * frame.c (get_current_frame): Error out if there is no valid
7058         selected thread.
7059         (has_stack_frames): Return false if there is no valid
7060         selected thread.
7061         * cli/cli-cmds.c (init_cli_cmds): Don't mark commands as
7062         "no_selected_thread_ok".
7063         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
7064         (get_cmd_no_selected_thread_ok): Delete.
7065         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete.
7066         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
7067         Delete declaration.
7068         * stack.c (get_selected_block): Use has_stack_frames.
7069
7070 2009-03-25  Thiago Jung Bauermann  <bauerman@br.ibm.com>
7071
7072         Fix size of FPSCR in Power 7 processors.
7073         * ppc-linux-nat.c (PPC_FEATURE_ARCH_2_05): Remove #define.
7074         (PPC_FEATURE_HAS_DFP): New #define.
7075         (ppc_linux_read_description): Check for DFP feature instead of
7076         ISA 2.05 to decide on size of the FPSCR.
7077
7078 2009-03-25  Kevin Buettner  <kevinb@redhat.com>
7079
7080         * mn10300-tdep.c (trad-frame.h): Don't include.
7081         (prologue-value.h): Include.
7082         (mn10300_frame_unwind_cache, set_reg_offsets): Delete.
7083         (struct mn10300_prologue): Define.
7084         (push_reg, translate_rreg, check_for_saved): New functions.
7085         (mn10300_analyze_prologue): Rewrite, using prologue-value
7086         machinery.  Handle more instructions than before.  Permit
7087         instructions to occur in any order.
7088         (mn10300_skip_prologue): Find the extents of the function
7089         in question; mn10300_analyze_prologue no longer does this.
7090         (mn10300_analyze_frame_prologue): New function.
7091         (mn10300_frame_base): New function.
7092         (mn10300_frame_this_id): Rewrite, no longer using trad-frame
7093         implementation.
7094         (mn10300_frame_prev_register): Likewise.
7095         (mn10300_frame_base_address, mn10300_frame_base struct): Delete.
7096         (mn10300_unwind_pc, mn10300_unwind_sp): Rename `next_frame' to
7097         `this_frame'.
7098         (mn10300_frame_unwind_init): Don't call frame_base_set_default().
7099
7100 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
7101
7102         Fix completer problem for filename completion on the first try.
7103
7104         * gdb/completer.h (gdb_completion_word_break_characters): New function.
7105         * gdb/completer.c: Include gdb_assert.h.
7106         (complete_line_internal_reason): New enum.
7107         (complete_line_internal): Change last argument type to
7108         complete_line_internal_reason.
7109         Modify function to handle the different complete_line_internal_reason
7110         argument values.
7111         (complete_line): Adapt to change in complete_line_internal.
7112         (command_completer): Ditto.
7113         (gdb_completion_word_break_characters): Implement new function.
7114         * top.c (init_main): Set  rl_completion_word_break_hook to
7115         gdb_completion_word_break_characters.
7116
7117
7118 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
7119
7120         ARI fix: "strlen d_name" rule.
7121         * linux-nat.c (linux_nat_xfer_osdata): Use NAMELEN macro.
7122
7123
7124 2009-03-24  Tom Tromey  <tromey@redhat.com>
7125             Pedro Alves  <pedro@codesourcery.com>
7126
7127         * configure, config.in: Rebuild.
7128         * configure.ac: Check for libiconvlist.
7129         * charset.c: Check HAVE_LIBICONVLIST.
7130         * acinclude.m4 (AM_ICONV): Don't subst LIBICONV, LIBICONV_INCLUDE,
7131         LIBICONV_LIBDIR.  Update CPPFLAGS and LIBS.
7132         * Makefile.in (LIBICONV, LIBICONV_INCLUDE, LIBICONV_LIBDIR):
7133         Remove.
7134         (INTERNAL_CFLAGS_BASE): Update.
7135         (INTERNAL_LDFLAGS): Update.
7136         (CLIBS): Update.
7137
7138 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
7139
7140         * configure.ac: Initialize the variable $PREFER_CURSES.
7141         * configure: Regenerated.
7142
7143 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
7144
7145         * configure.ac: Enable $PREFER_CURSES even with default $ENABLE_TUI.
7146         * configure: Regenerated.
7147
7148 2009-03-24  Pierre Muller  <muller@ics.u-strasbg.fr>
7149
7150         ARI fix: "strerror" rule.
7151         * darwin-nat.c (darwin_ptrace): Use safe_strerror.
7152         (darwin_stop_inferior, darwin_attach, darwin_detach): Ditto.
7153
7154 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
7155
7156         * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
7157         before looking up the fields inside our struct type.
7158
7159 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
7160
7161         * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
7162         trying to resolve the type qualification.
7163
7164 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
7165
7166         * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure
7167         we try to apply the attribute on the real type, rather than
7168         its associated typedef.
7169
7170 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
7171
7172         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef
7173         to make sure we try to get the modulus of the actual type, not the
7174         associated typedef.
7175
7176 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
7177
7178         * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST]
7179         [OP_ATR_LENGTH]: When using the attribute on a type, make sure
7180         to get the real type, not the associated typedef.
7181
7182 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
7183
7184         * ada-lang.c (ada_get_field_index): Add handling of the case
7185         when TYPE is a typedef of a struct.
7186
7187 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
7188
7189         Add gdb_usleep as a portable version of usleep based on gdb_select.
7190         * gdb_usleep.h, gdb_usleep.c: New files.
7191         * Makefile.in (SFILES): Add gdb_usleep.c.
7192         (HFILES_NO_SRCDIR): Add gdb_usleep.h.
7193         (COMMON_OBS): Add gdb_usleep.o.
7194         * ser-unix.c (hardwire_send_break): Replace call to gdb_select
7195         by call to gdb_usleep.
7196
7197 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
7198
7199         * buildsym.c (end_symtab): If we ignore the subfiles, then
7200         unlink the associated symtabs if they were already allocated.
7201
7202 2009-03-23  Jerome Guitton  <guitton@adacore.com>
7203
7204         Provide a way to force building of GDB with libcurses.
7205         * configure.ac: Add --with-curses.
7206         * configure: Regenerated.
7207
7208 2009-03-23  Tom Tromey  <tromey@redhat.com>
7209
7210         * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_uninit>: Fix typo in
7211         error message.
7212
7213 2009-03-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
7214
7215         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Use
7216         solib_contains_address_p instead of searching.
7217
7218 2009-03-23  Tom Tromey  <tromey@redhat.com>
7219
7220         * charset.c (ICONV_CONST) <PHONY_ICONV>: Define.
7221         (iconv): Make 'inbuf' argument const.
7222         (convert_between_encodings): Use ICONV_CONST.
7223         (wchar_iterate): Likewise.
7224
7225 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
7226
7227         * windows-nat.c (AdjustTokenPrivileges): Implement macro wraparound for
7228         dynamically loaded function.
7229         (LookupPrivilegeValueA): Ditto.
7230         (OpenProcessToken): Ditto.
7231         (AdjustTokenPrivileges): Rename and define placeholder for address of
7232         dynamically loaded function.
7233         (LookupPrivilegeValueA): Ditto.
7234         (OpenProcessToken): Ditto.
7235         (set_process_privilege): Remove check for loaded functions.
7236         (bad_OpenProcessToken): Define.
7237         (_initialize_loadable): Load token functions from advapi here, setting
7238         OpenProcessToken function to a dummy static function which always return
7239         error if OS doesn't support this functionality.
7240
7241 2009-03-22   Nicolas Roche  <roche@adacore.com>
7242              Christopher Faylor <me+cygwin@cgf.cx>
7243
7244         * win32-nat.c (ctrl_c_handler): New function.
7245         (win32_wait): Register ctrl_c_handler as Ctrl-C handler if the inferior
7246         is run in a separate console.
7247
7248 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
7249
7250         * windows-nat.c (DebugActiveProcessStop): Implement macro wraparound
7251         for dynamically loaded function.
7252         (DebugBreakProcess): Ditto.
7253         (DebugSetProcessKillOnExit): Ditto.
7254         (EnumProcessModules): Ditto.
7255         (GetModuleFileNameExA): Ditto.
7256         (GetModuleInformation): Ditto.
7257         (DebugActiveProcessStop): Rename and define placeholder for address of
7258         dynamically loaded function.
7259         (DebugBreakProcess): Ditto.
7260         (DebugSetProcessKillOnExit): Ditto.
7261         (EnumProcessModules): Ditto.
7262         (GetModuleFileNameExA): Ditto.
7263         (GetModuleInformation): Ditto.
7264         (psapi_loaded): Delete.
7265         (get_module_name): Don't check psapi_loaded, just rely on the fact that
7266         dynamically loaded functions will return failure if they weren't
7267         previously found.
7268         (has_detach_ability): Delete.
7269         (windows_attach): Remove call to has_detach_ability ().  Just rely on
7270         functions being callable.
7271         (bad_DebugActiveProcessStop): Define.
7272         (bad_DebugBreakProcess): Ditto.
7273         (bad_DebugSetProcessKillOnExit): Ditto.
7274         (bad_EnumProcessModules): Ditto.
7275         (bad_GetModuleFileNameExA): Ditto.
7276         (bad_GetModuleInformation): Ditto.
7277         (_initialize_loadable): Rename from _initialize_psapi.  Initialize all
7278         dynamic storage here, setting nonexistent functions to dummy static
7279         functions which always return error.
7280
7281 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
7282
7283         * mi/mi-interp.c (mi_interpreter_init): Attach mi_about_to_proceed
7284         to the about_to_proceed observer notification.
7285         (mi_about_to_proceed): New.
7286         (mi_on_resume): Only output ^running and the prompt here if the
7287         target was proceeded.
7288         * breakpoint.c (breakpoint_proceeded): New static.
7289         (breakpoint_about_to_proceed): New.
7290         (_initialize_breakpoints): Attach breakpoint_about_to_proceed to
7291         the about_to_proceed observer notification.
7292         * inferior.h (breakpoint_proceeded): Delete declaration.
7293         * infrun.c (clear_proceed_status): Don't set breakpoint_proceeded.
7294         Notify the about_to_proceed observers.
7295         (struct inferior_status): Delete breakpoint_proceeded member.
7296         (save_inferior_status): Don't save it.
7297         (restore_inferior_status): Don't restore it.
7298         * mi-main.h (mi_proceeded): Declare.
7299         * mi/mi-main.c (mi_cmd_execute): Clear mi_proceeded before running
7300         a command.
7301
7302 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
7303
7304         * gdbthread.h (struct thread_info): Add in_infcall member.
7305         * infcall.c (run_inferior_call): Save, set and restore in_infcall.
7306         Remove reverences to suppress_resume_observer.  Refresh
7307         `call_thread' after returning from `proceed'.
7308         * infcmd.c (suppress_resume_observer): Delete.
7309         * inferior.h (suppress_resume_observer): Delete declaration.
7310         * mi/mi-interp.c (mi_on_resume): Suppress output while calling an
7311         inferior function.
7312         * thread.c (set_running): Remove references to
7313         suppress_resume_observer.
7314         * infrun.c (struct inferior_status): Add in_infcall member.
7315         (save_inferior_status): Save it.
7316         (restore_inferior_status): Restore it.
7317
7318 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
7319
7320         * infcall.c (run_inferior_call): Remove references to
7321         suppress_stop_observer.
7322         * infcmd.c (suppress_stop_observer): Delete.
7323         (finish_command_continuation): Remove NOTE.  Don't clear
7324         suppress_stop_observer anymore.
7325         (finish_command_continuation_free_arg): Likewise.
7326         (finish_forward): Remove references to suppress_stop_observer.
7327         Call normal_stop observer if we haven't already.
7328         * inferior.h (suppress_stop_observer): Delete.
7329         * infrun.c (normal_stop): When deciding to suppress the
7330         normal_stop observer, check for proceed_to_finish instead of
7331         suppress_stop_observer.
7332
7333 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
7334
7335         * symfile.c (symfile_relocate_debug_section): Remove check for
7336         SEC_DEBUGGING.
7337
7338 2009-03-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
7339             Jim Blandy  <jimb@red-bean.com>
7340             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7341             Tom Tromey  <tromey@redhat.com>
7342
7343         Miscellaneous fixes to the Python code.
7344         * python/python-cmd.c (cmdpy_init): Accept keyword
7345         arguments.
7346         * python/python-value.c (valpy_string): Accept keyword
7347         arguments.
7348         (valpy_binop): Use `break' to exit from the TRY_CATCH block.
7349         Do not call value_to_value_object on NULL RES_VAL.
7350         (value_object_methods): Change `string' entry to also accept
7351         keyword arguments.
7352         (convert_value_from_python): Return a copy of the value if obj is
7353         a gdb.Value object.
7354         (value_object_methods): Mark the `string' method as accepting
7355         keywords, and show method "prototype" in the doc string.
7356         * python/python.c (get_parameter): Don't return inside a
7357         TRY_CATCH.
7358
7359 2009-03-20  Tom Tromey  <tromey@redhat.com>
7360
7361         Add support for convenience functions in Python.
7362         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-function.o.
7363         (SUBDIR_PYTHON_SRCS): Add python-function.c.
7364         (python-function.o): New target.
7365         * eval.c: Include "python/python.h" and <ctype.h>.
7366         (evaluate_subexp_standard): Handle values of type
7367         TYPE_CODE_INTERNAL_FUNCTION.
7368         * gdbtypes.h (type_code): Add TYPE_CODE_INTERNAL_FUNCTION.
7369         * parse.c (write_exp_string): Remove duplicate word in comment.
7370         * python/python-function.c: New file.
7371         * python/python-internal.h (gdbpy_initialize_functions): Add
7372         prototype.
7373         * python/python.c (_initialize_python): Call
7374         gdbpy_initialize_functions.
7375         * valprint.c (value_check_printable): Handle values of type
7376         TYPE_CODE_INTERNAL_FUNCTION.
7377         * value.c: Include "cli/cli-decode.h".
7378         (internal_function): New struct.
7379         (functionlist, internal_fn_type): New static variables.
7380         (lookup_only_internalvar,
7381         lookup_internalvar): Add const qualifier to name argument.
7382         (create_internalvar): Likewise.  Initialize new field.
7383         (set_internal_var): Fix typo in comment.  Don't allow assignment
7384         to canonical variable.
7385         (value_create_internal_function, value_internal_function_name,
7386         call_internal_function, function_command, function_destroyer,
7387         add_internal_function): New functions.
7388         (_initialize_values): Create `function' placeholder command.
7389         Initialize internal_fn_type.
7390         * value.h (lookup_only_internalvar, create_internalvar,
7391         lookup_internalvar): Add const qualifier to name argument.
7392         (internal_function_fn, add_internal_function, call_internal_function,
7393         value_internal_function_name): Add prototypes.
7394         (struct internalvar) <canonical>: New field.
7395
7396 2009-03-20  Tom Tromey  <tromey@redhat.com>
7397
7398         * c-lang.c (evaluate_subexp_c): Call check_typedef.
7399
7400 2009-03-20  Tom Tromey  <tromey@redhat.com>
7401             Julian Brown  <julian@codesourcery.com>
7402
7403         PR i18n/7220, PR i18n/7821, PR exp/8815, PR exp/9103,
7404         PR i18n/9401, PR exp/9613:
7405         * NEWS: Update
7406         * value.h (value_typed_string): Declare.
7407         (val_print_string): Update.
7408         * valprint.h (print_char_chars): Update.
7409         * valprint.c (print_char_chars): Add type argument.  Update.
7410         (val_print_string): Likewise.
7411         * valops.c (value_typed_string): New function.
7412         * utils.c (host_char_to_target): New function.
7413         (parse_escape): Use host_char_to_target, host_hex_value.  Update.
7414         Remove '^' case.
7415         (no_control_char_error): Remove.
7416         * typeprint.c (print_type_scalar): Update.
7417         * scm-valprint.c (scm_scmval_print): Update.
7418         * scm-lang.h (scm_printchar, scm_printstr): Update.
7419         * scm-lang.c (scm_printchar): Add type argument.
7420         (scm_printstr): Likewise.
7421         * printcmd.c (print_formatted): Update.
7422         (print_scalar_formatted): Update.
7423         (printf_command) <wide_string_arg, wide_char_arg>: New constants.
7424         Handle '%lc' and '%ls'.
7425         * parser-defs.h (struct typed_stoken): New type.
7426         (struct stoken_vector): Likewise.
7427         (write_exp_string_vector): Declare.
7428         * parse.c (write_exp_string_vector): New function.
7429         * p-valprint.c (pascal_val_print): Update.
7430         * p-lang.h (is_pascal_string_type, pascal_printchar,
7431         pascal_printstr): Update.
7432         * p-lang.c (is_pascal_string_type): Remove 'char_size' argument.
7433         Add 'char_type' argument.
7434         (pascal_emit_char): Add type argument.
7435         (pascal_printchar): Likewise.
7436         (pascal_printstr): Likewise.
7437         * objc-lang.c (objc_emit_char): Add type argument.
7438         (objc_printchar): Likewise.
7439         (objc_printstr): Likewise.
7440         * macroexp.c (get_character_constant): Handle unicode characters.
7441         Use c_parse_escape.
7442         (get_string_literal): Handle unicode strings.  Use
7443         c_parse_escape.
7444         * m2-valprint.c (print_unpacked_pointer): Update.
7445         (m2_print_array_contents): Update.
7446         (m2_val_print): Update.
7447         * m2-lang.c (m2_emit_char): Add type argument.
7448         (m2_printchar): Likewise.
7449         (m2_printstr): Likewise.
7450         * language.h (struct language_defn) <la_printchar>: Add type
7451         argument.
7452         <la_printstr, la_emitchar>: Likewise.
7453         (LA_PRINT_CHAR): Likewise.
7454         (LA_PRINT_STRING): Likewise.
7455         (LA_EMIT_CHAR): Likewise.
7456         * language.c (unk_lang_emit_char): Add type argument.
7457         (unk_lang_printchar): Likewise.
7458         (unk_lang_printstr): Likewise.
7459         * jv-valprint.c (java_val_print): Update.
7460         * jv-lang.c (java_emit_char): Add type argument.
7461         * f-valprint.c (f_val_print): Update.
7462         * f-lang.c (f_emit_char): Add type argument.
7463         (f_printchar): Likewise.
7464         (f_printstr): Likewise.
7465         * expprint.c (print_subexp_standard): Update.
7466         * charset.h (target_wide_charset): Declare.
7467         (c_target_char_has_backslash_escape, c_parse_backslash,
7468         host_char_print_literally, host_char_to_target,
7469         target_char_to_host, target_char_to_control_char): Remove.
7470         (enum transliterations): New type.
7471         (convert_between_encodings): Declare.
7472         (HOST_ESCAPE_CHAR): New define.
7473         (host_letter_to_control_character, host_hex_value): Declare.
7474         (enum wchar_iterate_result): New enum.
7475         (struct wchar_iterator): Declare.
7476         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
7477         wchar_push_back): Declare.
7478         * charset-list.h: New file.
7479         * c-valprint.c (textual_name): New function.
7480         (textual_element_type): Handle wide character types.
7481         (c_val_print): Pass original type to textual_element_type.  Handle
7482         wide character types.
7483         (c_value_print): Use textual_element_type.  Pass original type of
7484         value to val_print.
7485         * c-lang.h (enum c_string_type): New type.
7486         (c_printchar, c_printstr): Update.
7487         * c-lang.c (classify_type): New function.
7488         (print_wchar): Likewise.
7489         (c_emit_char): Add type argument.  Handle wide characters.
7490         (c_printchar): Likewise.
7491         (c_printstr): Add type argument.  Handle wide and multibyte
7492         character sets.
7493         (convert_ucn): New function.
7494         (emit_numeric_character): Likewise.
7495         (convert_octal): Likewise.
7496         (convert_hex): Likewise.
7497         (ADVANCE): New macro.
7498         (convert_escape): New function.
7499         (parse_one_string): Likewise.
7500         (evaluate_subexp_c): Likewise.
7501         (exp_descriptor_c): New global.
7502         (c_language_defn): Use exp_descriptor_c.
7503         (cplus_language_defn): Likewise.
7504         (asm_language_defn): Likewise.
7505         (minimal_language_defn): Likewise.
7506         (charset_for_string_type): New function.
7507         * c-exp.y (%union): Add 'svec' and 'tsval'.
7508         (CHAR): New token.
7509         (exp): Add CHAR production.
7510         (string_exp): Rewrite.
7511         (exp) <string_exp>: Rewrite.
7512         (tempbuf): Now global.
7513         (tempbuf_init): New global.
7514         (parse_string_or_char): New function.
7515         (yylex) <tempbuf>: Now global.
7516         <tokptr, tempbufindex, tempbufsize, token_string, class_prefix>:
7517         Remove.
7518         Handle 'u', 'U', and 'L' prefixes.  Call parse_string_or_char.
7519         (c_parse_escape): New function.
7520         * auxv.c (fprint_target_auxv): Update.
7521         * ada-valprint.c (ada_emit_char): Add type argument.
7522         (ada_printchar): Likewise.
7523         (ada_print_scalar): Update.
7524         (printstr): Add type argument.  Update calls to ada_emit_char.
7525         (ada_printstr): Add type argument.
7526         (ada_val_print_array): Update.
7527         (ada_val_print_1): Likewise.
7528         * ada-lang.c (emit_char): Add type argument.
7529         * ada-lang.h (ada_emit_char, ada_printchar, ada_printstr): Add
7530         type arguments.
7531         * gdb_locale.h: Include langinfo.h.
7532         * charset.c (_initialize_charset): Set default host charset from
7533         the locale.  Don't register charsets.  Add target-wide-charset
7534         commands.  Call find_charset_names.
7535         (struct charset, struct translation): Remove.
7536         (GDB_DEFAULT_HOST_CHARSET): Remove.
7537         (GDB_DEFAULT_TARGET_WIDE_CHARSET): New define.
7538         (target_wide_charset_name): New global.
7539         (show_host_charset_name): Handle "auto".
7540         (show_target_wide_charset_name): New function.
7541         (host_charset_enum, target_charset_enum): Remove.
7542         (charset_enum): New global.
7543         (all_charsets, register_charset, lookup_charset, all_translations,
7544         register_translation, lookup_translation): Remove.
7545         (simple_charset, ascii_print_literally, ascii_to_control): Remove.
7546         (iso_8859_print_literally, iso_8859_to_control,
7547         iso_8859_family_charset): Remove.
7548         (ebcdic_print_literally, ebcdic_to_control,
7549         ebcdic_family_charset): Remove.
7550         (struct cached_iconv, check_iconv_cache, cached_iconv_convert,
7551         register_iconv_charsets): Remove.
7552         (target_wide_charset_be_name, target_wide_charset_le_name): New
7553         globals.
7554         (identity_either_char_to_other): Remove.
7555         (set_be_le_names, validate): New functions.
7556         (backslashable, backslashed, represented): Remove.
7557         (default_c_target_char_has_backslash_escape): Remove.
7558         (default_c_parse_backslash, iconv_convert): Remove.
7559         (ascii_to_iso_8859_1_table, ascii_to_ebcdic_us_table,
7560         ascii_to_ibm1047_table, iso_8859_1_to_ascii_table,
7561         iso_8859_1_to_ebcdic_us_table, iso_8859_1_to_ibm1047_table,
7562         ebcdic_us_to_ascii_table, ebcdic_us_to_iso_8859_1_table,
7563         ebcdic_us_to_ibm1047_table, ibm1047_to_ascii_table,
7564         ibm1047_to_iso_8859_1_table, ibm1047_to_ebcdic_us_table): Remove.
7565         (table_convert_char, table_translation, simple_table_translation):
7566         Remove.
7567         (current_host_charset, current_target_charset,
7568         c_target_char_has_backslash_escape_func,
7569         c_target_char_has_backslash_escape_baton): Remove.
7570         (c_parse_backslash_func, c_parse_backslash_baton): Remove.
7571         (host_char_to_target_func, host_char_to_target_baton): Remove.
7572         (target_char_to_host_func, target_char_to_host_baton): Remove.
7573         (cached_iconv_host_to_target, cached_iconv_target_to_host):
7574         Remove.
7575         (lookup_charset_or_error, check_valid_host_charset): Remove.
7576         (set_host_and_target_charsets): Remove.
7577         (set_host_charset, set_target_charset): Remove.
7578         (set_host_charset_sfunc, set_target_charset_sfunc): Rewrite.
7579         (set_target_wide_charset_sfunc): New function.
7580         (show_charset): Print target wide character set.
7581         (host_charset, target_charset): Rewrite.
7582         (target_wide_charset): New function.
7583         (c_target_char_has_backslash_escape): Remove.
7584         (c_parse_backslash): Remove.
7585         (host_letter_to_control_character): New function.
7586         (host_char_print_literally): Remove.
7587         (host_hex_value): New function.
7588         (target_char_to_control_char): Remove.
7589         (cleanup_iconv): New function.
7590         (convert_between_encodings): New function.
7591         (target_char_to_host): Remove.
7592         (struct wchar_iterator): Define.
7593         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
7594         wchar_push_back): New functions.
7595         (do_cleanup_iterator): New function.
7596         (char_ptr): New typedef.
7597         (charsets): New global.
7598         (add_one, find_charset_names): New functions.
7599         (default_charset_names): New global.
7600         (auto_host_charset_name): Likewise.
7601         * aclocal.m4, config.in, configure: Rebuild.
7602         * configure.ac: Call AM_LANGINFO_CODESET.
7603         (GDB_DEFAULT_HOST_CHARSET): Default to UTF-8.
7604         (AM_ICONV): Invoke earlier.
7605         * acinclude.m4: Include codeset.m4.  Subst LIBICONV_INCLUDE and
7606         LIBICONV_LIBDIR.  Check for libiconv in build tree.
7607         * Makefile.in (LIBICONV_LIBDIR, LIBICONV_INCLUDE): New macros.
7608         (INTERNAL_CFLAGS_BASE): Add LIBICONV_INCLUDE.
7609         (INTERNAL_LDFLAGS): Add LIBICONV_LIBDIR.
7610         * gdb_obstack.h (obstack_grow_wstr): New define.
7611         * gdb_wchar.h: New file.
7612         * defs.h: Include it.
7613
7614 2009-03-20  Tom Tromey  <tromey@redhat.com>
7615             Jan Kratochvil  <jan.kratochvil@redhat.com>
7616
7617         * dwarf2read.c (process_die): Handle DW_TAG_typedef.
7618         * eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single
7619         typedef.
7620         * ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the
7621         SYMBOL_TYPE result.
7622         * ada-typeprint.c (print_array_type): Do the NULL check
7623         unconditionally.
7624
7625 2009-03-19  Tom Tromey  <tromey@redhat.com>
7626
7627         * utils.c (do_obstack_free): New function.
7628         (make_cleanup_obstack_free): Likewise.
7629         * defs.h (make_cleanup_obstack_free): Declare.
7630
7631 2009-03-18  Doug Evans  <dje@google.com>
7632
7633         * linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an
7634         int, not a long long.
7635         (linux_nat_info_proc_cmd): Store pid in long instead of long long.
7636
7637         * expprint.c (dump_raw_expression): Print note if non-NULL.
7638
7639         * printcmd.c (display_uses_solib_p): Redo loop, scan element list
7640         backwards.
7641
7642 2009-03-18  Nathan Sidwell  <nathan@codesourcery.com>
7643
7644         * Makefile.in: Update license to GPLv3.
7645         * ada-exp.y: Update license to GPLv3.
7646         * ada-lex.l: Update license to GPLv3.
7647         * c-exp.y: Update license to GPLv3.
7648         * cp-name-parser.y: Update license to GPLv3.
7649         * darwin-nat-info.c: Update license to GPLv3.
7650         * f-exp.y: Update license to GPLv3.
7651         * gdb_thread_db.h: Update license to GPLv3.
7652         * hppanbsd-nat.c: Update license to GPLv3.
7653         * hppanbsd-tdep.c: Update license to GPLv3.
7654         * hppaobsd-tdep.c: Update license to GPLv3.
7655         * jv-exp.y: Update license to GPLv3.
7656         * m2-exp.y: Update license to GPLv3.
7657         * objc-exp.y: Update license to GPLv3.
7658         * p-exp.y: Update license to GPLv3.
7659         * reply_mig_hack.awk: Update license to GPLv3.
7660         * reverse.c: Update license to GPLv3.
7661         * xtensa-xtregs.c: Update license to GPLv3.
7662
7663 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
7664
7665         * remote.c (remote_close): Don't call generic_mourn_inferior.
7666         (remote_mourn_1): Call generic_mourn_inferior after closing the
7667         target.
7668
7669 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
7670
7671         * remote.c (remote_start_remote): Add missing call to
7672         init_wait_for_inferior in non-stop mode.
7673
7674 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
7675
7676         * breakpoint.c (bpstat_should_step): Only consider software
7677         watchpoints that have a location.
7678
7679 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
7680
7681         Add a target_ops parameter to the to_kill method in struct target_ops.
7682
7683         * target.h (struct target_ops): Add a "target_ops *" parameter to
7684         method to_kill.
7685         (target_kill): Remove macro. Add declaration.
7686         * target.c (debug_to_kill): Delete, no longer necessary.
7687         (target_kill): New function.
7688         (update_current_target):  Stop inheriting the to_kill method.
7689         Do not de_fault it to no_process either.
7690         (setup_target_debug): Do not set current_target.to_kill.
7691         * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c,
7692         linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c,
7693         remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update
7694         accordingly.
7695
7696 2009-03-17  Doug Evans  <dje@google.com>
7697
7698         * amd64-linux-nat.c (si_timerid,si_overrun): Provide definition for
7699         glibc 2.3.2 and earlier.
7700
7701 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
7702
7703         * frame.c (get_prev_frame_1): Do not perform the inner_frame
7704         sanity check if this_frame is not NORMAL.
7705         (frame_id_inner): Update the description of this function.
7706
7707 2009-03-17  Hui Zhu  <teawater@gmail.com>
7708
7709         * stack.c: Change the introduce of "disassemble-next-line".
7710
7711 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
7712
7713         * mi/mi-main.h (mi_print_timing_maybe): Add strict prototype,
7714         declare as extern.
7715
7716 2009-03-17  Hui Zhu  <teawater@gmail.com>
7717
7718         * stack.c: Include valprint.h.
7719         (disassemble_next_line): New enum.
7720         (show_disassemble_next_line): New function.  Show the current
7721         value of disassemble-next-line.
7722         (gdb_disassembly_stub_args): New struct for argument passing
7723         between function do_gdb_disassembly and function
7724         gdb_disassembly_stub.
7725         (gdb_disassembly_stub): New function.  Helper for
7726         gdb_disassembly.
7727         (do_gdb_disassembly): New function.  Use TRY_CATCH to catch
7728         the exception from the gdb_disassembly because it will be
7729         broken by filter sometime.
7730         (print_frame_info): If disassemble-next-line is set to auto
7731         or on and doesn't have the line debug messages for $pc,
7732         output the next instruction.
7733         If disassemble-next-line is set to on and there is line debug
7734         messages, output assembly codes for next line.
7735         (_initialize_stack): Make the "set disassemble-next-line"
7736         command an auto-boolean command.  Change its class to
7737         class_stack.  Place it in the top level set list.  Extend help
7738         to describe the auto mode.
7739
7740 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
7741
7742         * infrun.c (normal_stop): Don't overwrite old_chain.
7743
7744 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
7745
7746         * remote-mips.c (mips_load): Replace call to regcache_set_valid_p,
7747         which is undefined, by call to regcache_invalidate, which should
7748         do what the original author wanted to do.
7749
7750 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
7751
7752         * remote-mips.c (mips_mourn_inferior): Add missing ops parameter.
7753         (mips_create_inferior): Likewise.
7754
7755 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
7756
7757         * go32-nat.c (go32_create_inferior): Add missing ops parameter.
7758
7759 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
7760
7761         * darwin-nat.c (darwin_resume): Fix a compiler warning when
7762         building on x86_64-darwin.
7763
7764 2009-03-16  Tristan Gingold  <gingold@adacore.com>
7765
7766         * configure.tgt: Add handling for x86_64-darwin.
7767
7768 2009-03-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
7769
7770         * auxv.c (fprint_target_auxv): New TAG for AT_RANDOM.
7771
7772 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
7773
7774         * aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str):
7775         Use the ops parameter to get to the target beneath, rather than
7776         using the current_target global.  Using the current_target global
7777         was an unintended accident.
7778
7779 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
7780
7781         Fix an error happening while loading symbols from a core file
7782         (on AIX).
7783
7784         * rs6000-nat.c (xcoff_relocate_symtab): Use target_has_execution
7785         to detect whether we're debugging a core file or not.
7786
7787 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
7788
7789         Modernize the aix-thread later by getting rid of the base_target
7790         global.  This brings back to life the AIX port which was otherwise
7791         crashing all the time.
7792
7793         * aix-thread.c (base_target): Delete.
7794         (pd_enable): Do not set base_target.
7795         (aix_thread_attach): Use find_target_beneath instead of base_target.
7796         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
7797         (aix_thread_fetch_registers, aix_thread_store_registers),
7798         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
7799         (aix_thread_thread_alive, aix_thread_pid_to_str): Likewise.
7800         (aix_thread_kill): Delete. Does not seem necessary.
7801         (init_aix_thread_ops): Do not set aix_thread_ops.to_kill.
7802
7803 2009-03-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
7804
7805         * stack.c (return_command <retval_exp>): New variables retval_expr
7806         and old_chain.  Inline parse_and_eval to initialize retval_expr.  Check
7807         RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type
7808         if RETURN_TYPE is NULL.
7809
7810 2009-03-14  Pedro Alves  <pedro@codesourcery.com>
7811
7812         * remote.c (PACKET_qAttached): New.
7813         (remote_query_attached): New.
7814         (remote_add_inferior): Add new `attached' argument.  Handle it.
7815         (remote_notice_new_inferior, remote_start_remote): Adjust to pass
7816         -1 to remote_add_inferior in new parameter.
7817         (extended_remote_attach_1): Adjust to pass 1 to
7818         remote_add_inferior in the new parameter.
7819         (extended_remote_create_inferior_1): Adjust to pass 0 to
7820         remote_add_inferior in the new parameter.
7821         (_initialize_remote): Add "set/show remote query-attached-packet"
7822         commands.
7823
7824 2009-03-13  Tom Tromey  <tromey@redhat.com>
7825
7826         * symtab.c (lookup_symbol_in_language): Use a cleanup.
7827
7828 2009-03-13  Doug Evans  <dje@google.com>
7829
7830         * exceptions.h: Clean up some comments on catch_exceptions usage.
7831         * exceptions.c: Ditto.  Plus mark catch_errors as superseded by
7832         catch_exceptions.
7833
7834 2009-02-17  Joel Brobecker  <brobecker@adacore.com>
7835
7836         The following patch helps getting rid of a warning inside solib-som.c.
7837
7838         * source.c (source_full_path_of): Constify parameter filename.
7839         * defs.h (source_full_path_of): Update declaration accordingly.
7840
7841 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
7842
7843         * ada-lang.c (ada_evaluate_subexp): Merge case BINOP_REM and
7844         BINOP_MOD cases with the handling of case BINOP_DIV and BINOP_MUL.
7845         Remove useless op value checks when EVAL_AVOID_SIDE_EFFECTS.
7846
7847 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
7848
7849         * ada-lang.c (ada_evaluate_subexp) <BINOP_DIV>: make sure to
7850         promote the operands when noside is EVAL_AVOID_SIDE_EFFECTS.
7851
7852 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
7853
7854         * ada-tasks.c (ada_task_is_alive): Move up and make static.
7855         * ada-lang.h (ada_task_is_alive): Remove declaration.
7856
7857 2009-03-12  Jerome Guitton  <guitton@adacore.com>
7858
7859         * ada-lang.c (ada_delta): Change the type of numerators and
7860         denominators to DOUBLEST, as they may not fit into a long.
7861         (scaling_factor): Ditto.
7862
7863 2009-03-12  Jerome Guitton  <guitton@adacore.com>
7864
7865         * language.c (lang_bool_type): Set lai->bool_type_symbol to NULL.
7866
7867 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
7868
7869         * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: For tagged
7870         types, if we are unable to determine the actual symbol type
7871         from its tag, then use the static approximation instead.
7872
7873 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
7874
7875         Fix crash printing packed record with packed array.
7876
7877         * ada-lang.c (ada_modulus_from_name): New function.
7878         (ada_modulus): In the case where the type length is bigger than
7879         the size of the type used to hold the bounds, try determining
7880         the modulus from the type name.
7881         (ada_value_primitive_packed_val): Fix bug in the computation of
7882         ntarg causing an out-of-buffer invalid access.
7883
7884 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
7885
7886         Fix segfault when printing short_integer'last.
7887
7888         * ada-lang.c (ada_find_any_type): Search in the primitive types
7889         if a symbol could not be found.
7890
7891 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
7892
7893         * ada-tasks.c (task_states,long_task_states): Add new states
7894         Activating and Acceptor_Delay_Sleep.  Update the description
7895         of state Acceptor_Sleep.
7896
7897 2009-03-12  Jonas Maebe <jonas.maebe@elis.ugent.be>  (obvious change)
7898
7899         Fix a build failure on Darwin following some changes in
7900         the profile of some target_ops methods.
7901
7902         * darwin-nat.c (darwin_kill_inferior): Add target_ops parameter
7903         where missing.
7904         (darwin_stop_inferior, darwin_detach): Likewise.
7905
7906 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
7907
7908         Include token in ^running notification for CLI commands.
7909
7910         * mi/mi-main.c (mi_execute_command): Set current_token here.
7911         (mi_cmd_execute): Do not set current_token here.
7912
7913 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
7914
7915         Fix MI timings.
7916
7917         * mi/mi-main.c (mi_print_timing_maybe): New.
7918         (captured_mi_execute_command): Simplify. Output timings to
7919         CLI commands, too.
7920         (mi_execute_async_cli_command): Do not print timings.
7921         * mi/mi-main.h (mi_print_timing_maybe): Declare.
7922         * mi/mi-interp.c (mi_on_normal_stop): Call mi_print_timing_maybe.
7923
7924 2009-03-12  Jerome Guitton  <guitton@adacore.com>
7925
7926         * xcoffread.c (process_linenos): Check if the line in the
7927         include table refers to the main source file and, if so,
7928         add them to the main subfile.
7929
7930 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
7931
7932         Fix a build failure on AIX introduced after a change in the profile
7933         of some of the "methods" in the target_ops structure.
7934         * aix-thread.c: Add missing target_ops parameter throughout.
7935
7936         Implement Ada task switching on AIX.
7937         * aix-thread.c (aix_thread_get_ada_task_ptid): New function.
7938         (init_aix_thread_ops): Set aix_thread_ops.to_get_ada_task_ptid.
7939
7940 2009-03-11  Daniel Jacobowitz  <dan@codesourcery.com>
7941
7942         * breakpoint.c (bpstat_check_breakpoint_conditions): Use
7943         value_mark and value_free_to_mark.
7944         * objfiles.c (free_objfile): Call objfile_free_data before
7945         freeing the BFD.
7946
7947 2009-03-10  Hui Zhu  <teawater@gmail.com>
7948
7949         * disasm.c (gdb_disassembly): Remove unused argument
7950         "line_num".
7951         * disasm.h (gdb_disassembly): Ditto.
7952         * cli/cli-cmds.c (print_disassembly): Ditto.
7953         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
7954
7955 2009-03-09  Paul Pluzhnikov  <ppluzhnikov@google.com>
7956
7957         * solib.c (solib_contains_address_p): New function.
7958         (solib_name_from_address): Use it.
7959         * printcmd.c (display_uses_solib_p): Use it.
7960         * solib.h (solib_contains_address_p): Declare it.
7961
7962 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
7963
7964         * varobj.c (free_variable): Call value_free.
7965
7966 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
7967
7968         PR gdb/9873:
7969         * dwarf2read.c (dwarf_decode_macros): New variable `at_commandline'.
7970         Move the variable `macinfo_type' out of the loop.  Create a new
7971         processing pass before the current one to pre-create `current_file'.
7972         New complaint on misplaced zero/non-zero definitions/includes.
7973         Skip first DW_MACINFO_start_file with `at_commandline' set.
7974
7975 2008-03-09  Vladimir Prus  <vladimir@codesourcery.com>
7976
7977        * solib.c (reload_shared_libraries): Give
7978        inferior a chance to reset solib breakpoint.
7979        Reinit frame cache.
7980
7981 2009-03-08  Christopher Faylor  <me+cygwin@cgf.cx>
7982
7983         * windows-nat.c (dr): Redefine to use largest possible integer which
7984         holds a pointer.
7985         (cygwin_set_dr): Avoid coercion.
7986
7987 2009-03-08  Oswald Buddenhagen  <oswald.buddenhagen@trolltech.de>
7988
7989         * windows-nat.c (windows_create_inferior): Implement --tty handling on
7990         non-cygwin.
7991
7992 2009-03-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
7993
7994         Rename solib_address to solib_name_from_address.
7995         * breakpoint.c (insert_bp_location, disable_breakpoints_in_shlibs)
7996         (disable_breakpoints_in_unloaded_shlib): Update.
7997         * printcmd.c (display_uses_solib_p): Likewise.
7998         * stack.c (print_frame): Likewise.
7999         * solib.c: Rename.
8000         * solib.h: Rename.
8001
8002 2009-03-05  Paul Pluzhnikov  <ppluzhnikov@google.com>
8003
8004         * printcmd.c (do_one_display): Reparse exp_string.
8005         (display_uses_solib_p): New function.
8006         (clear_dangling_display_expressions): New function.
8007         (_initialize_printcmd): Add observer.
8008         * solib.c (no_shared_libraries): Swap order of calls to
8009         clear_solib and objfile_purge_solibs.
8010
8011 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
8012
8013         Implement the target-specific part of Ada tasking support
8014         on Tru64.
8015
8016         * dec-thread.c (dec_thread_get_ada_task_ptid): New function.
8017         (init_dec_thread_ops): Set the to_get_ada_task_ptid method.
8018
8019 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
8020
8021         Get rid of the global "base_target" and use "find_target_beneath"
8022         to find the underlying target.
8023         * dec-thread.c (base_target): Delete.
8024         (enable_dec_thread): Remove assignement to base_target.
8025         (dec_thread_detach, dec_thread_wait, dec_thread_wait)
8026         (dec_thread_fetch_registers, dec_thread_store_registers)
8027         (dec_thread_mourn_inferior, dec_thread_pid_to_str):
8028         Update the function profile if necessary.
8029         Use find_target_beneath to call the same method but from
8030         the underlying target, removing the need for "base_target".
8031
8032         * dec-thread.c (dec_thread_get_regsets, dec_thread_set_regsets):
8033         Fix a copy/paste error in a few debug traces...
8034
8035         * solib-osf.c (init_so): Use a simpler method for computing
8036         the size of lm_info structure. This also gets rid of warning
8037         emitted by the compiler.
8038
8039 2009-03-05  Pedro Alves  <pedro@codesourcery.com>
8040
8041         * breakpoint.c (check_duplicates_for): Skip permanent breakpoints
8042         duplicates of permanent breakpoints.
8043
8044 2009-03-04  Pedro Alves  <pedro@codesourcery.com>
8045
8046         * inferior.h (notice_new_inferior): Declare.
8047         * infcmd.c (notice_new_inferior): New.
8048         * remote.c (remote_add_inferior, remote_add_thread): New.
8049         (notice_new_inferiors): Rename to...
8050         (remote_notice_new_inferior): ... this.  Add RUNNING argument.
8051         Use remote_add_thread instead of add_thread, passing it the
8052         RUNNING argument.  Add an inferior with remote_add_inferior.  If
8053         we just learned about an inferior, call notice_new_inferior.
8054         (record_currthread): Adjust.
8055         (remote_threads_info): Adjust to use remote_notice_new_inferior.
8056         (remote_start_remote, extended_remote_attach_1): Use
8057         remote_add_inferior.
8058         (process_stop_reply): Adjust.  Call remote_notice_new_inferior
8059         after handling expedited registers and watchpoint state.
8060         (extended_remote_create_inferior_1): Use remote_add_inferior.
8061
8062 2009-03-04  Aleksandar Ristovski  <aristovski@qnx.com>
8063
8064         * infcmd.c (registers_info): Remove register number case.
8065
8066 2009-03-03  Pedro Alves  <pedro@codesourcery.com>
8067
8068         * top.c (quit_target): Check for target_has_execution before
8069         killing or detaching from inferiors.
8070
8071 2009-03-02  Joel Brobecker  <brobecker@adacore.com>
8072
8073         Remove some unused routines.
8074
8075         * ada-lang.c (is_suppressed_name, ada_suppress_symbol_printing):
8076         Delete.
8077         * ada-lang.c (ada_task_list_iterator_ftype)
8078         (iterate_over_live_ada_tasks): Delete.
8079         * ada-tasks.c (ada_get_environment_task, iterate_over_live_ada_tasks):
8080         Delete.
8081
8082 2009-03-01  Doug Evans  <dje@google.com>
8083
8084         * symtab.c: Remove trailing whitespace throughout the file.
8085         (expand_line_sal): Fix some typos and whitespace.
8086
8087         * Makefile.in (clean): rm -f $(DEPDIR)/*.
8088
8089         * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common.
8090         (init.c): signals/ -> common/.
8091         (signals.o): Update.
8092         * target.h (target_signal_to_string,target_signal_to_string)
8093         (target_signal_from_name,target_signal_to_host_p)
8094         (target_signal_from_host,target_signal_to_host): Move to ...
8095         * common/gdb_signals.h: ... here.  New file.
8096         * common/signals.c: Moved here from signals/signals.c.
8097         #include gdb_signals.h, remove #include of target.h in gdb case.
8098         (target_signal_from_command,default_target_signal_to_host)
8099         (default_target_signal_from_host): Move inside #ifndef GDBSERVER.
8100
8101         Include thread ID in target_wait debugging output.
8102         * infrun.c (print_target_wait_results): New function.
8103         (wait_for_inferior,fetch_inferior_event): Call it.
8104
8105 2009-02-27  Pedro Alves  <pedro@codesourcery.com>
8106
8107         * gdb_proc_service.h (struct ps_prochandle): Replace pid_t field
8108         with a ptid_t field.
8109         * linux-thread-db.c (thread_get_info_callback): Build the ptid
8110         using the pid stored in proc_handle.ptid.
8111         (thread_from_lwp, thread_db_attach_lwp, enable_thread_event)
8112         (check_for_thread_db, thread_db_detach, check_event)
8113         (thread_db_mourn_inferior, find_new_threads_callback)
8114         (thread_db_find_new_threads_1): Adjust.
8115         * proc-service.c (ps_xfer_memory, ps_lgetregs, ps_lsetregs)
8116         (ps_lgetfpregs, ps_lsetfpregs, ps_getpid): Adjust.
8117
8118 2009-02-27  Phil Muldoon  <pmuldoon@redhat.com>
8119
8120         * valprint.c (read_string): Rework clean-up logic. Use
8121         free_current_contents to clean-up buffer.
8122
8123 2009-02-27  Andreas Schwab  <schwab@linux-m68k.org>
8124
8125         * MAINTAINERS: Update e-mail address.
8126
8127 2009-02-26  Phil Muldoon  <pmuldoon@redhat.com>
8128
8129         * python/python-utils.c (python_string_to_unicode): Always return
8130         a new reference.
8131         (python_string_to_target_string): Decrement transient python
8132         instance.
8133         (python_string_to_host_string): Likewise.
8134
8135 2007-02-26  Pedro Alves  <pedro@codesourcery.com>
8136
8137         * mips-linux-nat.c (mips64_linux_fetch_registers): Pass `ops' to
8138         call to super_fetch_registers.
8139         (mips64_linux_store_registers): Pass `ops' to call to
8140         super_store_registers.
8141
8142 2009-02-25  Doug Evans  <dje@google.com>
8143
8144         * breakpoint.c (insert_bp_location): Add \n to overlay breakpoint
8145         error message.
8146
8147         * breakpoint.c (disable_breakpoints_in_shlibs): Delete local
8148         disabled_shlib_breaks, unused.
8149
8150         * printcmd.c (build_address_symbolic): Fix comment.
8151
8152 2009-02-25  Hui Zhu  <teawater@gmail.com>
8153
8154         * cli/cli-script.c (define_command): Add _() to query.
8155         * gnu-nat.c (inf_validate_task_sc): Ditto.
8156         * infcmd.c (kill_if_already_running): Ditto.
8157         (jump_command): Ditto.
8158         (attach_command): Ditto.
8159         * inflow.c (kill_command): Ditto.
8160         * infrun.c (handle_command): Ditto.
8161         * maint.c (maintenance_dump_me): Ditto.
8162         * memattr.c (mem_delete_command): Ditto.
8163         * monitor.c (monitor_interrupt_query): Ditto.
8164         * nto-procfs.c (interrupt_query): Ditto.
8165         * printcmd.c (undisplay_command): Ditto.
8166         * remote-mips.c (mips_kill): Ditto.
8167         * remote.c (interrupt_query): Ditto.
8168         * solib-irix.c (irix_open_symbol_file_object): Ditto.
8169         * solib-osf.c (osf_open_symbol_file_object): Ditto.
8170         * solib-pa64.c (pa64_open_symbol_file_object): Ditto.
8171         * solib-som.c (som_open_symbol_file_object): Ditto.
8172         * solib-svr4.c (open_symbol_file_object): Ditto.
8173         * symfile.c (symbol_file_add_with_addrs_or_offsets): Ditto.
8174         * target.c (kill_or_be_killed): Ditto.
8175         * tracepoint.c (delete_trace_command): Ditto.
8176         * top.c (quit_confirm): Add _() to s that will be used
8177         in query.
8178
8179 2009-02-24  Pierre Muller  <muller@ics.u-strasbg.fr>
8180
8181         Fix windows-nat.c compilation failure.
8182
8183         * windows-nat.c (windows_thread_alive): Fix forward declaration.
8184         (get_windows_debug_event): Add ops parameter to call to windows_resume.
8185
8186 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
8187
8188         * remote-sim.c (gdbsim_resume): Add target_ops* argument.
8189
8190 2009-02-23  Jay Krell  <jay.krell@cornell.edu>  (tiny change)
8191
8192         * symtab.c (find_line_symtab): Initialize exact to avoid
8193         a compiler warning.
8194
8195 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
8196
8197         * i386-linux-nat.c (i386_linux_fetch_inferior_registers): Pass
8198         `ops' to recursive call.
8199
8200 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
8201
8202         * corelow.c (get_core_registers): Adjust.
8203         (core_file_thread_alive): Rename to...
8204         (core_thread_alive): ... this.
8205         (core_pid_to_str): Try gdbarch_core_pid_to_str first.
8206         (init_core_ops): Adjust.
8207         (coreops_suppress_target): Delete.
8208         (_initialize_corelow): Unconditionally add core_ops.
8209         * procfs.c: Include "inf-child.h".
8210         (procfs_ops): Delete.
8211         (init_procfs_ops): Delete.  Reimplement as...
8212         (procfs_target): ... this, inheriting from inf-child.
8213         (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust.
8214         (procfs_prepare_to_store): Delete.
8215         (procfs_store_registers, procfs_resume): Adjust.
8216         (procfs_open): Delete.
8217         (procfs_suppress_run): Delete.
8218         (procfs_can_run): Delete.
8219         (procfs_mourn_inferior): Adjust.
8220         (procfs_init_inferior): Add target_ops parameter.  Adjust.
8221         (procfs_create_inferior): Don't pass procfs_init_inferior to
8222         fork_inferior.  Instead call it after fork_inferior returns.
8223         (procfs_find_new_threads): Adjust.
8224         (_initialize_procfs): Adjust to use procfs_target instead of
8225         init_procfs_ops.
8226         * sol-thread.c (orig_core_ops, sol_core_ops): Delete.
8227         (lwp_to_thread): Use target_thread_alive.
8228         (sol_thread_open): Delete.
8229         (sol_thread_attach): Delete.
8230         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8231         (sol_thread_fetch_registers, sol_thread_store_registers): Adjust
8232         to use find_target_beneath.
8233         (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete.
8234         (sol_thread_xfer_partial): Adjust to use find_target_beneath.
8235         (sol_thread_files_info, sol_thread_kill_inferior): Delete.
8236         (check_for_thread_db): New.
8237         (sol_thread_notice_signals, sol_thread_create_inferior): Delete.
8238         (sol_thread_new_objfile): Call check_for_thread_db.
8239         (sol_thread_mourn_inferior): Adjust to use find_target_beneath.
8240         (sol_thread_can_run): Delete.
8241         (sol_thread_alive): Adjust to use find_target_beneath.
8242         (sol_thread_stop): Delete.
8243         (rw_common): Use target_write_memory or target_read_memory.
8244         (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers.
8245         (ps_lsetregs, ps_lsetfpregs): Use target_store_registers.
8246         (solaris_pid_to_str): Remove check for libthread_db initialization
8247         failing.
8248         (sol_find_new_threads): Remove check for libthread_db
8249         initialization failing, or for an invalid inferior_ptid.  Adjust
8250         to use find_target_beneath.
8251         (sol_core_open, sol_core_close, sol_core_detach,
8252         sol_core_files_info, sol_find_memory_regions,
8253         sol_make_note_section, ignore): Delete.
8254         (init_sol_thread_ops): Make it a thread_stratum target.  Remove
8255         unneeded callback settings.
8256         (init_sol_core_ops): Delete.
8257         (_initialize_sol_thread): No longer call init_sol_core_ops, set
8258         procfs_suppress_run, or hack with core_ops.
8259
8260         * target.h (struct target_ops): Add a target_ops * parameter to
8261         to_resume, to_fetch_registers, to_store_registers, to_thread_alive
8262         and to_find_new_threads.
8263         (target_fetch_registers, target_store_registers)
8264         (target_thread_alive, target_find_new_threads): Redeclare as
8265         function.
8266
8267         * target.c (update_current_target): Do not inherit or de_fault
8268         to_resume, to_fetch_registers, to_store_registers,
8269         to_thread_alive, to_find_new_threads.
8270         (target_resume): Adjust.
8271         (target_thread_alive, target_find_new_threads): New.
8272         (debug_to_resume, debug_to_fetch_registers): Delete.
8273         (target_fetch_registers): New.
8274         (debug_to_store_registers): Delete.
8275         (target_store_registers): New.
8276         (debug_to_thread_alive, debug_to_find_new_threads): Delete.
8277         (setup_target_debug): Adjust.
8278
8279         * gdbcore.h (core_ops): Delete declaration.
8280
8281         * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c,
8282         inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c,
8283         i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c,
8284         hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c,
8285         nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c,
8286         alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c,
8287         bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c,
8288         hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c,
8289         ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c,
8290         m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c,
8291         mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c,
8292         ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c,
8293         shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c,
8294         vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes.
8295
8296         * gdbarch.sh (core_pid_to_str): New gdbarch callback.
8297         * gdbarch.h, gdbarch.c: Regenerate.
8298
8299         * sol2-tdep.c: Include "inferior.h".
8300         (sol2_core_pid_to_str): New.
8301         * sol2-tdep.h (sol2_core_pid_to_str): Declare.
8302
8303         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
8304         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
8305         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
8306         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
8307
8308 2009-02-22  Doug Evans  <dje@google.com>
8309
8310         * exec.c (exec_file_attach): Fix comment.
8311
8312 2009-02-22  Pedro Alves  <pedro@codesourcery.com>
8313
8314         Silence a few -Wmissing-prototypes warnings.
8315
8316         PR build/9877:
8317         * alpha-linux-tdep.c (alpha_linux_regset_from_core_section): Make
8318         it static.
8319         * alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Declare.
8320         * amd64fbsd-tdep.c (amd64fbsd_init_abi): Make it static.
8321         * amd64nbsd-tdep.c (_initialize_amd64nbsd_ndep): Rename to ...
8322         (_initialize_amd64nbsd_tdep): ... this.
8323         * arm-linux-tdep.c (arm_linux_software_single_step): Make it static.
8324         (_initialize_arm_linux_tdep): Declare.
8325         * armbsd-tdep.c (armbsd_fpreg_offset): Make it static.
8326         * armnbsd-tdep.c (_initialize_arm_netbsd_tdep): Declare.
8327         * armobsd-tdep.c (_initialize_armobsd_tdep): Declare.
8328         * avr-tdep.c (avr_return_value): Make it static.
8329         (avr_frame_unwind_cache): Ditto.
8330         * bsd-uthread.c (bsd_uthread_inferior_created): Ditto.
8331         (bsd_uthread_solib_loaded): Ditto.
8332         (bsd_uthread_solib_unloaded): Ditto.
8333         (bsd_uthread_target): Ditto.
8334         (_initialize_bsd_uthread): Declare.
8335         * cris-tdep.c (crisv32_single_step_through_delay): Make it static.
8336         (cris_frame_unwind_cache): Ditto.
8337         * frv-tdep.c (frv_return_value): Ditto.
8338         * h8300-tdep.c (h8300_use_struct_convention): Ditto.
8339         (h8300h_use_struct_convention): Ditto.
8340         * hppa-tdep.c (hppa_sign_extend, hppa_low_hppa_sign_extend):
8341         Ditto.
8342         * hppa-tdep.h (hppa_low_sign_extend, hppa_sign_extend): Delete
8343         declarations.
8344         * hppabsd-tdep.c: Include hppabsd-tdep.h.
8345         (hppabsd_find_global_pointer): Make it static.
8346         * hppabsd-tdep.h: New.
8347         * hppanbsd-tdep.c: Include hppabsd-tdep.h.
8348         (hppabsd_init_abi): Remove declaration.
8349         (_initialize_hppabsd_tdep): Remove declaration.
8350         (_initialize_hppanbsd_tdep): Declare.
8351         * hppaobsd-tdep.c: Include hppabsd-tdep.h.
8352         (hppabsd_init_abi): Delete declaration.
8353         (hppaobsd_init_abi): Make it static.
8354         * i386-nto-tdep.c (_initialize_i386nto_tdep): Declare.
8355         * i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Declare.
8356         * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Declare.
8357         * ia64-tdep.c (ia64_register_reggroup_p): Make it static.
8358         * iq2000-tdep.c (_initialize_iq2000_tdep): Declare.
8359         * m32c-tdep.c (m32c_register_reggroup_p): Make it static.
8360         (m32c_analyze_prologue, m32c_virtual_frame_pointer): Ditto.
8361         (_initialize_m32c_tdep): Declare.
8362         * m32r-rom.c (_initialize_m32r_rom): Declare.
8363         * m32r-tdep.c (m32r_skip_prologue): Make it static.
8364         (m32r_return_value): Ditto.
8365         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Make it static.
8366         (m68hc11_return_value): Ditto.
8367         * m68klinux-tdep.c (_initialize_m68k_linux_tdep): Declare.
8368         * m88k-tdep.c (m88k_frame_cache): Make it static.
8369         * mep-tdep.c (mep_gdb_print_insn): Ditto.
8370         (mep_return_value): Ditto.
8371         (_initialize_mep_tdep): Declare.
8372         * mips-irix-tdep.c (_initialize_mips_irix_tdep): Declare.
8373         * mips-linux-tdep.c (supply_64bit_reg): Make it static.
8374         (mips_linux_syscall_next_pc): Ditto.
8375         (_initialize_mips_linux_tdep): Declare.
8376         * mips-tdep.c (mips_single_step_through_delay): Make it static.
8377         * mipsnbsd-tdep.c (_initialize_mipsnbsd_tdep): Declare.
8378         * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Declare.
8379         * mn10300-tdep.c (_initialize_mn10300_tdep): Declare.
8380         * mt-tdep.c (_initialize_mt_tdep): Declare.
8381         * nbsd-tdep.c: Include nbsd-tdep.h.
8382         * nto-tdep.c (find_load_phdr): Make it static.
8383         (_initialize_nto_tdep): Declare.
8384         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make it
8385         static.
8386         (_initialize_ppc_linux_tdep): Declare.
8387         * remote-m32r-sdi.c (m32r_can_use_hw_watchpoint)
8388         (m32r_insert_watchpoint, m32r_remove_watchpoint)
8389         (m32r_stopped_data_address, m32r_stopped_by_watchpoint): Make
8390         static.
8391         * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Declare.
8392         * rs6000-nat.c: Include xcoffread.h.
8393         (find_toc_address): Don't extern declare get_toc_offset.  Adjust
8394         to call xcoff_get_to_offset.
8395         * rs6000-tdep.c (ppc_vsx_support_p, ppc_displaced_step_fixup)
8396         (rs6000_skip_main_prologue, rs6000_in_solib_return_trampoline)
8397         (rs6000_skip_trampoline_code): Make static.
8398         * s390-tdep.c (s390_regset_from_core_section): Ditto.
8399         * sh-tdep.c (sh_register_reggroup_p): Ditto.
8400         * shnbsd-tdep.c (shnbsd_regset_from_core_section): Ditto.
8401         (_initialize_shnbsd_tdep): Declare.
8402         * solib-frv.c (displacement_from_map): Make static.
8403         (_initialize_frv_solib): Declare.
8404         * solib-irix.c (fetch_lm_info): Make static.
8405         (_initialize_irix_solib): Declare.
8406         * solib-som.c: Include solib-som.h.
8407         (som_solib_select): Line break.
8408         * sparc-tdep.c (sparc_regset_from_core_section): Make static.
8409         * sparcnbsd-tdep.c (_initialize_sparnbsd_tdep): Rename to ...
8410         (_initialize_sparcnbsd_tdep): ... this.
8411         * spu-tdep.c (spu_software_single_step): Make it static.
8412         (_initialize_spu_tdep): Declare.
8413         * vax-tdep.c (vax_frame_cache): Make it static.
8414         * xcoffread.c: Include xcoffread.h.
8415         (get_toc_offset): Rename to ...
8416         (xcoff_get_toc_offset): ... this.
8417         (_initialize_xcoffread): Declare.
8418         * xcoffread.h: New.
8419         * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Declare.
8420         * xtensa-tdep.c (xtensa_skip_prologue, xtensa_derive_tdep): Make
8421         static.
8422         (_initialize_xtensa_tdep): Declare.
8423
8424 2008-02-21  Pedro Alves  <pedro@codesorcery.com>
8425
8426         Silence a few -Wmissing-prototypes warnings.
8427
8428         PR build/9877:
8429         * amd64-nat.c: Include "amd64-nat.h".
8430         * fork-child.c (_initialize_fork_child): Ditto.
8431         * gcore.c (_initialize_gcore): Ditto.
8432         * inf-ptrace.c: Include "inf-ptrace.h".
8433         (inf_ptrace_store_registers): Make it static.
8434         * linux-nat.c (linux_nat_terminal_ours): Make it static.
8435         (_initialize_linux_nat): Declare before definition.
8436         * linux-tdep.c: Include "linux-tdep.h".
8437         * linux-thread-db.c (_initialize_thread_db): Declare before
8438         definition.
8439         * proc-service.c (_initialize_proc_service): Ditto.
8440         * remote.c (remote_send_printf): Make it static.
8441         * solib.c: Include "solib.h".
8442         * symfile-mem.c (_initialize_symfile_mem): Declare before
8443         definition.
8444         * ada-lang.c (ada_la_decode, ada_match_name)
8445         (ada_suppress_symbol_printing, ada_is_array_type)
8446         (ada_value_ptr_subscript, ada_array_length)
8447         (ada_to_static_fixed_value): Make them static.
8448         (_initialize_ada_language): Declare before definition.
8449         * ada-tasks.c (ada_get_task_number, ada_get_environment_task)
8450         (ada_task_list_changed, ada_new_objfile_observer): Make them
8451         static.
8452         (_initialize_tasks): Declare before definition.
8453         * addrmap.c (_initialize_addrmap): Declare before definition.
8454         * auxv.c (default_auxv_parse): Make it static.
8455         * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make
8456         them static.
8457         * breakpoint.c (remove_sal): Add line break.
8458         (expand_line_sal_maybe): Make it static.
8459         * cp-name-parser.y: Include "cp-support.h".
8460         * cp-valprint.c (cp_find_class_member): Make it static.
8461         * eval.c (value_f90_subarray): Ditto.
8462         * exceptions.c (print_any_exception): Ditto.
8463         * findcmd.c (_initialize_mem_search): Declare before definition.
8464         * frame.c (frame_observer_target_changed): Make it static.
8465         * gnu-v3-abi.c (gnuv3_find_method_in): Make it static.
8466         * inf-child.c: Include "inf-child.h".
8467         * inferior.h (valid_inferior_id): Rename to ...
8468         (valid_gdb_inferior_id): ... this.
8469         * infrun.c (infrun_thread_stop_requested, siginfo_make_value):
8470         Make them static.
8471         * jv-lang.c (java_language_arch_info): Make it static.
8472         * m2-typeprint.c (m2_get_discrete_bounds): Ditto.
8473         * osdata.c (info_osdata_command): Make it static.
8474         * regcache.c (regcache_observer_target_changed): Make it static.
8475         * reverse.c (_initialize_reverse): Declare before definition.
8476         * stabsread.c (cleanup_undefined_types_noname)
8477         (cleanup_undefined_types_1): Make them static.
8478         * symfile.c (place_section): Make it static.
8479         * symtab.c (find_pc_sect_psymtab_closer): Make it static.
8480         * target-descriptions.c (_initialize_target_descriptions): Declare
8481         before definition.
8482         * target.c (default_get_ada_task_ptid, find_default_can_async_p)
8483         (find_default_is_async_p, find_default_supports_non_stop): Make
8484         them static.
8485         (target_supports_non_stop): Add prototype.
8486         (dummy_pid_to_str): Make it static.
8487         * utils.c (_initialize_utils): Declare before definition.
8488         * ada-exp.y (_initialize_ada_exp): Declare before definition.
8489         * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype.
8490         * target.h (struct target_ops): Add a prototype to the
8491         to_can_execute_reverse callback.
8492         * macroscope.c (_initialize_macroscope): Declare before definition.
8493         * cp-namespace.c (_initialize_cp_namespace): Declare before definition.
8494         * python/python.c (_initialize_python): Declare before definition.
8495         * tui/tui-command.c: Include "tui/tui-command.h".
8496         * tui/tui-data.c (init_content_element, init_win_info): Make them
8497         static.
8498         * tui/tui-disasm.c: Include "tui/tui-disasm.h".
8499         * tui/tui-interp.c (_initialize_tui_interp): Declare before
8500         definition.
8501         * tui/tui-layout.c: Include "tui/tui-layout.h".
8502         (_initialize_tui_layout): Declare before definition.
8503         * tui/tui-regs.c: Include "tui/tui-regs.h".
8504         (tui_display_reg_element_at_line): Make it static.
8505         (_initialize_tui_regs): Declare before definition.
8506         * tui/tui-stack.c (_initialize_tui_stack): Declare before
8507         definition.
8508         * tui/tui-win.c: Include "tui/tui-win.h".
8509         (_initialize_tui_win): Declare before definition.
8510         (tui_sigwinch_handler): Make it static.  Wrap in ifdef SIGWINCH.
8511         * tui/tui-win.h (tui_sigwinch_handler): Delete declaration.
8512         (tui_get_cmd_list): Add a prototype.
8513         * tui/tui-windata.c: Include tui-windata.h.
8514         * tui/tui-wingeneral.c (box_win): Make it static.
8515         * cli/cli-logging.c (show_logging_command): Make it static.
8516         (_initialize_cli_logging): Declare before definition.
8517         * mi/mi-common.c (_initialize_gdb_mi_common): Declare before
8518         definition.
8519
8520 2009-02-20  Pierre Muller  <muller@ics.u-strasbg.fr>
8521
8522         Extend use of i386_use_watchpoints to all i386 native files
8523         using hardware watchpoints.
8524         * go32-nat.c (init_go32_ops): Call i386_use_watchpoints.
8525         * i386fbsd-nat.c (_initialize_i386fbsd_nat): Ditto.
8526         * windows-nat.c (init_windows_ops): Ditto.
8527         * config/i386/nm-cygwin.h: Define I386_WATCHPOINTS_IN_TARGET_VECTOR.
8528         * config/i386/nm-cygwin64.h: Ditto.
8529         * config/i386/nm-fbsd.h: Ditto.
8530         * config/i386/nm-go32.h: Ditto.
8531
8532 2009-02-19  Joel Brobecker  <brobecker@adacore.com>
8533
8534         * ada-typeprint.c (ada_typedef_print): Remove.  Unused.
8535
8536 2009-02-18  Vladimir Prus  <vladimir@codesourcery.com>
8537
8538         * mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New.
8539         (mi_interpreter_init): Register the above.
8540         * solib.c (clear_solib): Notify solib unload.
8541         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not
8542         disable breakpoints on a.out targets.
8543
8544 2009-02-17  Vladimir Prus  <vladimir@codesourcery.com>
8545
8546         * observer.c (observer_test_first_notification_function)
8547         (observer_test_second_notification_function)
8548         (observer_test_third_notification_function): Adjust prototype.
8549
8550 2009-02-17  Pedro Alves  <pedro@codesourcery.com>
8551
8552         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-dicos-tdep.o.
8553         (ALL_TARGET_OBS): Add dicos-tdep.o.
8554         (ALLDEPFILES): Add amd64-dicos-tdep.c and dicos-tdep.c.
8555         * configure.tgt (i[34567]86-*-dicos*): Add dicos-tdep.o to
8556         gdb_target_obs.
8557         (x86_64-*-dicos*): Add dicos-tdep.o and amd64-dicos-tdep.o to
8558         gdb_target_obs.
8559         * dicos-tdep.h, dicos-tdep.c: New.
8560         * amd64-dicos-tdep.c: New.
8561         * i386-dicos-tdep.c: Don't include solib.h, solib-target.h or
8562         inferior.h.  Include dicos-tdep.h.
8563         (i386_dicos_init_abi): Call dicos_init_abi.
8564         (i386_dicos_bfd_has_symbol_p): Delete.
8565         (i386_dicos_osabi_sniffer): Use dicos_load_module_p.
8566
8567         * NEWS: Mention x86-64 DICOS target support.
8568
8569 2009-02-16  Doug Evans  <dje@google.com>
8570
8571         * amd64-tdep.c (amd64_skip_prefixes): Renamed from skip_prefixes.
8572         All callers updated.
8573         (amd64_get_insn_details): Handle more 3-byte opcode insns.
8574         (amd64_breakpoint_p): Delete.
8575         (amd64_displaced_step_fixup): When fixing up after stepping an int3,
8576         don't back up pc to the start of the int3.
8577         * i386-tdep.c: #include opcode/i386.h.
8578         (i386_skip_prefixes): New function.
8579         (i386_absolute_jmp_p): Constify argument.
8580         (i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto.
8581         (i386_breakpoint_p): Delete.
8582         (i386_displaced_step_fixup): Handle unnecessary or redundant prefixes.
8583         When fixing up after stepping an int3, don't back up pc to the start
8584         of the int3.
8585
8586 2009-02-16  Pedro Alves  <pedro@codesourcery.com>
8587
8588         * corelow.c (core_close): Don't hardcode the core's pid.
8589         (core_open): Find core threads before calling
8590         post_create_inferior.
8591         (add_to_thread_list, get_core_register_section): Take into account
8592         systems where the regset section names encode the pid of the
8593         inferior.
8594
8595         * gdbarch.sh (core_reg_section_encodes_pid): New gdbarch setting.
8596         * gdbarch.h, gdbarch.c: Regenerate.
8597
8598         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
8599         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
8600         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
8601         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
8602
8603 2009-02-14  Vladimir Prus  <vladimir@codesourcery.com>
8604
8605         Include frame information for *stopped due to CLI commands.
8606
8607         * ada-tasks.c (ada_normal_stop_observer): Adjust prototype.
8608         * infcmd.c (finish_command_continuation): Pass '1' for
8609         'print_frame' parameter to the observer.
8610         * infrun.c (normal_stop): Don't print mi-specific information
8611         here. Pass 'stop_print_frame' to the 'print_frame' parameter
8612         of the observer.
8613         * mi/mi-interp.c (mi_on_normal_stop): Adjust prototype.
8614         If we need to print frame, and current uiout is not the MI one,
8615         print frame again.
8616
8617 2009-02-13  Pierre Muller  <muller@ics.u-strasbg.fr>
8618
8619         * xtensa-tdep.c (call0_analyze_prologue): Delete BSZ macro.
8620         Replace BSZ macro uses by XTENSA_ISA_BSZ macro.
8621
8622 2009-02-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
8623
8624         PR fortran/9806
8625         * dwarf2read.c (process_die <DW_TAG_module>, read_module)
8626         (scan_partial_symbols <DW_TAG_module>, add_partial_module): New.
8627
8628 2009-02-11  Pierre Muller  <muller@ics.u-strasbg.fr>
8629
8630         * dwarf2read.c (read_base_type): Set code to TYPE_CODE_CHAR
8631         for DW_ATE_signed_char and DW_ATE_unsigned_char
8632         for pascal language.
8633
8634 2009-02-11  Jim Meyering  <meyering@redhat.com>
8635             Jan Kratochvil  <jan.kratochvil@redhat.com>
8636
8637         Avoid NULL dereference.
8638         * stack.c (return_command): Guard use of SYMBOL_TYPE (thisfun).
8639         New variable func_type.
8640
8641 2009-02-11  Pedro Alves  <pedro@codesourcery.com>
8642
8643         * gdbarch.c: Regenerate.
8644
8645 2009-02-10  Pierre Muller  <muller@ics.u-strasbg.fr>
8646
8647         * p-lang.c (is_pascal_string_type): Fix comment.
8648         Determine exact size of char elements for GPC
8649         strings.
8650         (pascal_printstr): Handle char width of 2 or 4.
8651         * p-valprint.c (pascal_val_print): Handle char
8652         of width 2 or 4.
8653
8654 2009-02-07  Daniel Jacobowitz  <dan@codesourcery.com>
8655
8656         * dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and highpc
8657         inside the loop.  Only call addrmap_set_empty if the compilation unit
8658         had DW_AT_high_pc and DW_AT_low_pc.  Update call to
8659         scan_partial_symbols.
8660         (scan_partial_symbols): Take NEED_PC argument and pass it along with
8661         LOWPC and HIGHPC.
8662         (add_partial_namespace): Take NEED_PC argument and pass it through.
8663         (add_partial_subprogram): Take NEED_PC argument.  Update the addrmap
8664         if necessary.
8665
8666 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
8667
8668         * NEWS: Mention inspecting extra signal information, $_siginfo,
8669         and the qXfer:siginfo:read and qXfer:siginfo:write packets.
8670
8671 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
8672
8673         * linux-nat.c (PTRACE_SETSIGINFO): Define if PTRACE_GETSIGINFO
8674         isn't defined.
8675
8676 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
8677
8678         * amd64-linux-nat.c (compat_int_t, compat_uptr_t, compat_time_t)
8679         (compat_timer_t, compat_clock_t, struct compat_timeval)
8680         (compat_sigval_t, compat_siginfo_t): New types.
8681         (cpt_si_pid, cpt_si_uid, cpt_si_timerid, cpt_si_overrun)
8682         (cpt_si_status, cpt_si_utime, cpt_si_stime, cpt_si_ptr)
8683         (cpt_si_addr, cpt_si_band, cpt_si_fd): New defines.
8684         (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
8685         (amd64_linux_siginfo_fixup): New.
8686         * linux-nat.c (linux_nat_siginfo_fixup): New.
8687         (siginfo_fixup): New.
8688         (linux_xfer_siginfo): Use siginfo_fixup to convert between the
8689         siginfo layout expected by ptrace and the siginfo layout of the
8690         inferior.
8691         (linux_nat_set_siginfo_fixup): New.
8692         * linux-nat.h (linux_nat_set_siginfo_fixup): Declare.
8693
8694 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
8695
8696         * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO.
8697         * infrun.c (siginfo_value_read, siginfo_value_write): New.
8698         (siginfo_value_funcs): New.
8699         (siginfo_make_value): New.
8700         (_initialize_infrun): Create the $_siginfo convenience variable.
8701         * gdbtypes.h (append_composite_type_field_aligned): Declare.
8702         * gdbtypes.c (append_composite_type_field): Rename to...
8703         (append_composite_type_field_aligned): ... this.  Add ALIGNMENT
8704         argument.  Handle it.
8705         (append_composite_type_field): Rewrite on top of
8706         append_composite_type_field_aligned.
8707         * value.h (internalvar_make_value): New typedef.
8708         (struct internalvar) <make_value>: New field.
8709         (create_internalvar_type_lazy): Declare.
8710         * value.c (create_internalvar): Clear make_value.
8711         (create_internalvar_type_lazy): New.
8712         (value_of_internalvar): If make_value is set use it.
8713         (preserve_values): Skip internal variables that don't have a
8714         value.
8715         * gdbarch.sh (get_siginfo_type): New.
8716         * gdbarch.h, gdbarch.c: Regenerate.
8717
8718         * linux-tdep.h, linux-tdep.c: New.
8719         * amd64-linux-tdep.c: Include "linux-tdep.h".
8720         (amd64_linux_init_abi): Register linux_get_siginfo_type and
8721         linux_get_siginfo_mapper.
8722         * i386-linux-tdep.c: Include "linux-tdep.h".
8723         (i386_linux_init_abi): Register linux_get_siginfo_type and
8724         linux_get_siginfo_mapper.
8725         * arm-linux-tdep.c: Include "linux-tdep.h".
8726         (i386_linux_init_abi): Register linux_get_siginfo_type and
8727         linux_get_siginfo_mapper.
8728
8729         * linux-nat.c (linux_xfer_siginfo): New.
8730         (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
8731         * remote.c (PACKET_qXfer_siginfo_read)
8732         (PACKET_qXfer_siginfo_write): New.
8733         (feature remote_protocol_features): Add "qXfer:siginfo:read" and
8734         "qXfer:siginfo:write" features.
8735         (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
8736         (_initialize_remote): Add "set/show remote read-siginfo-object"
8737         and "set/show remote write-siginfo-object" commands.
8738
8739         * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o.
8740         (HFILES_NO_SRCDIR): Add linux-tdep.h.
8741         (ALLDEPFILES): Add linux-tdep.c.
8742
8743         * configure.tgt (arm*-*-linux* | arm*-*-uclinux*)
8744         (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to
8745         gdb_target_obs.
8746
8747 2009-02-06  Jim Blandy  <jimb@codesourcery.com>
8748             Daniel Jacobowitz  <dan@codesourcery.com>
8749             Vladimir Prus  <vladimir@codesourcery.com>
8750             Pedro Alves  <pedro@codesourcery.com>
8751
8752         * defs.h (enum lval_type): New value: lval_computed.
8753         * value.h (struct lval_funcs): New type.
8754         (allocate_computed_value, value_computed_funcs)
8755         (value_computed_closure): New declarations.
8756         * value.c (struct value): Add a structure to the location union
8757         for computed lvalues, containing 'funcs' and 'closure' members.
8758         (allocate_computed_value, value_computed_funcs)
8759         (value_computed_closure): New functions.
8760         (value_free): For computed lvalues, call the closure's
8761         'free_closure' function before freeing the value itself.
8762         (value_copy): If we're copying an lval_computed value, call the
8763         closure's 'copy_closure' function.
8764         (set_value_component_location): If the original value is a
8765         computed lvalue, then call the closure's 'copy_closure' function.
8766         (value_of_internalvar): If an internal variable's value is a
8767         computed lvalue, make retrieving its value produce an equivalent
8768         computed lvalue.
8769         * valops.c (value_fetch_lazy): Unlazy computed lvalues by calling
8770         their read function.
8771         (value_assign): Assign to computed lvalues by calling their write
8772         function.
8773
8774 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
8775
8776         * linux-nat.c (linux_nat_wait): Adjust.
8777         (linux_nat_pid_to_str): Adjust.  Remove call to thread_db_init.
8778         * linux-nat.h (thread_db_init): Delete declaration.
8779         * linux-thread-db.c (target_beneath): Delete.
8780         (thread_db_init): Delete.
8781         (thread_db_detach): Use find_target_beneath.
8782         (thread_db_wait): Adjust interface.  Use find_target_beneath.
8783         (thread_db_mourn_inferior): Use find_target_beneath.
8784         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
8785         (thread_db_async_mask): Delete.
8786         (thread_db_pid_to_str): Adjust interface.  Use
8787         find_target_beneath.
8788         (thread_db_get_thread_local_address): Adjust interface.  Use
8789         find_target_beneath.
8790         (init_thread_db_ops): Delete references to delete functions.
8791         * target.c (update_current_target): Don't inherit or default
8792         to_wait.  Don't inherit to_pid_to_str and
8793         to_get_thread_local_address.
8794         (target_translate_tls_address): Look for a pushed target that
8795         implements to_get_thread_local_address, and use it instead of
8796         checking for target_get_thread_local_address_p.
8797         (target_wait, target_pid_to_str): Reimplement as functions.
8798         (dummy_pid_to_str): New.
8799         (init_dummy_target): Register it.
8800         (debug_to_wait): Delete.
8801         * target.h (struct target_ops): Make to_wait, to_pid_to_str and
8802         to_get_thread_local_address accept a pointer to struct target_ops.
8803         (target_wait): Delete macro, and declare as function.
8804         (target_pid_to_str): Likewise.
8805         (target_get_thread_local_address)
8806         (target_get_thread_local_address_p): Delete.
8807         (noprocess): Add NORETURN and ATTR_NORETURN tags.
8808         * inf-ptrace.c (inf_ptrace_wait): Adjust.
8809         (inf_ptrace_pid_to_str): New.
8810         (inf_ptrace_target): Use inf_ptrace_pid_to_str.
8811         * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust.
8812         * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust.
8813         * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str):
8814         Adjust.
8815         * corelow.c (core_pid_to_str): Adjust.
8816         * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust.
8817         * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust.
8818         * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust.
8819         * go32-nat.c (go32_wait, go32_pid_to_str): Adjust.
8820         * hpux-thread.c (hpux_thread_wait): Adjust.
8821         * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust.
8822         * monitor.c (monitor_wait, monitor_pid_to_str): Adjust.
8823         * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust.
8824         * procfs.c (procfs_pid_to_str): Adjust.
8825         * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust.
8826         * remote-mips.c (mips_wait): Adjust.
8827         * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust.
8828         * remote.c (remote_wait, remote_pid_to_str)
8829         (remote_get_thread_local_address): Adjust.
8830         * rs6000-nat.c (rs6000_wait): Adjust.
8831         * sol-thread.c (procfs_pid_to_str): Adjust declaration.
8832         (sol_thread_wait, solaris_pid_to_str): Adjust.
8833         * spu-linux-nat.c (spu_child_wait): Adjust.
8834         * windows-nat.c (windows_wait, windows_pid_to_str): Adjust.
8835
8836 2009-02-06  Tom Tromey  <tromey@redhat.com>
8837
8838         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o.
8839         (SUBDIR_PYTHON_SRCS): Add python-cmd.c.
8840         (python-cmd.o): New target.
8841         * cli/cli-decode.c (set_cmd_completer): Add self parameter to
8842         completer prototype.
8843         (add_cmd): Initialize destroyer member of cmd_list_element. Use
8844         make_symbol_completion_list_fn as completer.
8845         (delete_cmd): Call destroyer if one is set.
8846         * cli/cli-decode.h (cmd_list_element): Add cmd parameter to
8847         completer member.  Add destroyer member.
8848         (set_cmd_completer): Add self parameter to
8849         completer prototype.
8850         * command.h (set_cmd_completer): Add cmd parameter to
8851         completer prototype.
8852         * completer.c (noop_completer, filename_completer,
8853         location_completer, expression_completer, command_completer): Adapt
8854         to new completer prototype.
8855         (complete_line_internal): Pass new parameter to completer function.
8856         * completer.h (noop_completer, filename_completer,
8857         location_completer, expression_completer, command_completer): Adapt
8858         prototypes to new completer prototype.
8859         * interps.c (interpreter_completer): Adapt to new completer
8860         prototype.
8861         * python/python-cmd.c: New file.
8862         * python/python-internal.h (gdbpy_initialize_commands): Add
8863         prototype.
8864         (gdbpy_doc_cst): Add forward declaration.
8865         * python/python.c (gdbpy_doc_cst): Declare.
8866         (_initialize_python): Call gdbpy_initialize_commands.  Initialize
8867         gdbpy_doc_cst.
8868         * symtab.c (make_symbol_completion_list_fn): New function.
8869         * symtab.h (make_symbol_completion_list_fn): Add prototype.
8870
8871 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
8872
8873         * target.c (target_get_osdata): Check for equal or higher than
8874         process_stratum, not dummy_stratum.
8875
8876 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
8877
8878         * remote.c (extended_remote_can_run): Delete.
8879         (init_remote_ops): Don't register it.
8880         * target.c (target_get_osdata): Don't check for target_can_run.
8881         Instead any target that has already been pushed, otherwise
8882         fallback to the default run target.
8883
8884 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
8885
8886         * target.c (target_create_inferior, target_detach)
8887         (target_mourn_inferior, target_attach, target_close): Do target
8888         debug output.
8889         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
8890         (debug_to_mourn_inferior, debug_to_close): Delete.
8891         (setup_target_debug): Adjust.
8892
8893 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
8894
8895         * target.h (target_stopped_data_address_p): Delete declaration,
8896         and don't define as macro.
8897         * target.c (target_stopped_data_address_p): Delete.
8898
8899 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8900             Tom Tromey  <tromey@redhat.com>
8901
8902         * python/python-utils.c (target_string_to_unicode): New function.
8903         * python/python-internal.h (target_string_to_unicode): New prototype.
8904         * python/python-value.c (valpy_string): New function.
8905         (value_object_methods): Add `string' entry.
8906
8907 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
8908
8909         * target.h (target_tid_to_str): Delete.
8910         * thread.c (print_thread_info, thread_apply_all_command)
8911         (thread_apply_command, thread_command, do_captured_thread_select):
8912         Use target_pid_to_str instead of target_tid_to_str.
8913         * linux-fork.c (delete_fork_command): Likewise.
8914
8915 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
8916
8917         * frame.c (has_stack_frames): Make public.
8918         (get_prev_frame): Don't allow a NULL this_frame anymore.
8919         * frame.h (has_stack_frames): Declare.
8920         * varobj.c (find_frame_addr_in_frame_chain): Don't ever pass NULL
8921         to get_prev_frame, instead start at get_current_frame.
8922         (varobj_create): Check has_stack_frames before getting any frame;
8923         eliminate one usage of deprecated_safe_get_selected_frame.
8924
8925 2009-02-05  Tom Tromey  <tromey@redhat.com>
8926             Thiago Jung Bauermann  <bauerman@br.ibm.com>
8927
8928         * python/python.c (GdbMethods): Move to bottom of file.
8929         (get_parameter, execute_gdb_command, gdbpy_write,
8930         gdbpy_flush): Remove forward declarations.
8931         (eval_python_from_control_command): Fix error checking of function
8932         PyRun_SimpleString.  Fix error string.
8933         (python_command): Likewise.
8934         (execute_gdb_command): Added from_tty argument.
8935
8936 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8937
8938         * language.h (language_dfn): Add la_get_string member.
8939         (LA_GET_STRING): New macro.
8940         (default_get_string): New prototype.
8941         * language.c (default_get_string): New function.
8942         (unknown_language_defn, auto_language_defn, local_language_defn): Use
8943         default_get_string for la_get_string.
8944         * c-lang.c (c_get_string): New function.
8945         (c_language_defn, cplus_language_defn, asm_language_defn): Use
8946         c_get_string for la_get_string.
8947         (minimal_language_defn): Likewise
8948         * ada-lang.c (ada_language_defn): Likewise.
8949         * f-lang.c (f_language_defn): Use default_get_string for
8950         la_get_string.
8951         * jv-lang.c (java_language_defn): Likewise.
8952         * m2-lang.c (m2_language_defn): Likewise.
8953         * objc-lang.c (objc_language_defn): Likewise.
8954         * p-lang.c (p_language_defn): Likewise.
8955         * scm-lang.c (scm_language_defn): Likewise.
8956         * typeprint.c (type_to_string): New function.
8957         * value.h (type_to_string): New prototype.
8958         * valprint.c (val_print_string): Factor out code for reading string
8959         from the inferior into its own function.  Put 2 spaces after period
8960         in comments.
8961         (read_string): New function.
8962         * valprint.h (read_string): New prototype.
8963
8964 2009-01-07  Pierre Muller  <muller@ics.u-strasbg.fr>
8965             Tom Tromey  <tromey@redhat.com>
8966
8967         PR breakpoints/8079:
8968         * breakpoint.c (print_one_breakpoint): Use exp_string field
8969         to display expression of watchpoints.
8970         (mention): Likewise.
8971         (watch_command_1): Remove trailing whitespace from expression.
8972         * printcmd.c (struct display) <exp_string>: New field.
8973         (display_command): Set exp_string.
8974         (free_display): Free exp_string.
8975         (clear_displays): Use free_display.
8976         (do_one_display): Print exp_string.
8977         (display_info): Likewise.
8978
8979 2009-02-04  Tom Tromey  <tromey@redhat.com>
8980             Thiago Jung Bauermann  <bauerman@br.ibm.com>
8981             Phil Muldoon  <pmuldoon@redhat.com>
8982
8983         * python/python-internal.h (gdbpy_get_value_from_history): Rename
8984         prototype to gdbpy_history.
8985         (gdbpy_is_string): Declare.
8986         (python_string_to_host_string): Declare.
8987         * python/python-utils.c (gdbpy_is_string): New function.
8988         (unicode_to_encoded_string): New function.
8989         (unicode_to_target_string): Use it.
8990         (python_string_to_host_string): New function.
8991         * python/python-value.c (valpy_address): New function.
8992         (convert_value_from_python): Use gdbpy_is_string.  Change to throw
8993         Python exception instead of a GDB exception on error.  Properly check
8994         Python booleans.
8995         (valpy_getitem): Convert field name to host string.  Handle array
8996         accesses.  Adapt to new behaviour of convert_value_from_python.
8997         (valpy_new): Adapt to new behaviour of convert_value_from_python.
8998         (enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
8999         VALPY_BITXOR, VALPY_BITOR>: New constants.
9000         (valpy_binop): Update.  Adapt to new behaviour of
9001         convert_value_from_python.
9002         (valpy_invert): New function.
9003         (valpy_lsh): Likewise.
9004         (valpy_rsh): Likewise.
9005         (valpy_and): Likewise.
9006         (valpy_or): Likewise.
9007         (valpy_xor): Likewise.
9008         (valpy_richcompare): Call convert_value_from_python instead of doing
9009         conversions itself.
9010         (is_intlike, valpy_int, valpy_long, valpy_float): New functions.
9011         (gdbpy_get_value_from_history): Rename
9012         function to gdbpy_history.
9013         (gdbpy_initialize_values): Don't set tp_new.
9014         (value_object_type): Add valpy_new.
9015         (value_object_methods): Add `address' entry.
9016         (value_object_as_number): Update for new methods.
9017         * python/python.c (GdbMethods): Rename entry from
9018         `get_value_from_history' to `history'.
9019
9020 2009-02-04  Jerome Guitton  <guitton@adacore.com>
9021
9022         * ada-lang.c (ada_template_to_fixed_record_type_1): Check size
9023         of type to guard against a crash.
9024
9025 2009-02-04  Jerome Guitton  <guitton@adacore.com>
9026
9027         * value.c (value_from_contents_and_address): Always return
9028         a lval_memory value, even if address is null.
9029
9030 2009-02-04  Tristan Gingold  <gingold@adacore.com>
9031
9032         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr): New function.
9033         (amd64_darwin_sigcontext_addr): Ditto.
9034         (darwin_dwarf_signal_frame_p): Ditto.
9035         (i386_darwin_init_abi): Handle signal frames, use the const for
9036         sc_num_regs.
9037         (x86_darwin_init_abi_64): Ditto.
9038
9039 2009-02-04  Tristan Gingold  <gingold@adacore.com>
9040
9041         * i386-tdep.c (i386_sigtramp_p): Make it public.
9042         * i386-tdep.h (i386_sigtramp_p): Declare.
9043
9044 2009-02-04  Tristan Gingold  <gingold@adacore.com>
9045
9046         * machoread.c (macho_symfile_read): Read minsymtab also from
9047         shared libraries.
9048         (macho_symfile_read): Try to read dwarf2 frame info from main
9049         object file, but not from OSO files.
9050         (macho_symfile_offsets): Update section names for latest BFD
9051         changes.
9052         * i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops.
9053         (x86_darwin_init_abi_64): Ditto.
9054         * solib-darwin.c: New file.
9055         * solib-darwin.h: New file.
9056         * configure.tgt: Add solib.o solib-darwin.o for Darwin.
9057
9058 2009-02-04  Tristan Gingold  <gingold@adacore.com>
9059
9060         * solist.h (struct target_so_ops): Comment fallback behavior for
9061         operation same.
9062
9063 2009-02-03  Tom Tromey  <tromey@redhat.com>
9064
9065         * completer.c (add_struct_fields): Check type_name against NULL
9066         before use.
9067
9068 2009-02-03  Joel Brobecker  <brobecker@adacore.com>
9069
9070         * MAINTAINERS: Update Elena's email address.
9071
9072 2009-02-02  Joel Brobecker  <brobecker@adacore.com>
9073
9074         * breakpoint (update_watchpoint): Minor comment adjustment.
9075
9076 2009-02-02  Tom Tromey  <tromey@redhat.com>
9077
9078         PR gdb/9594:
9079         * completer.c (count_struct_fields): Count method names.
9080         (add_struct_fields): Add matching method names.
9081
9082 2009-02-02  Doug Evans  <dje@google.com>
9083
9084         * configure.ac (gdbkt): Check both no_tcl/no_tk first, before
9085         doing any further tcl/tk configury.  Don't configure gdbtk if
9086         tcl or tk check fails.
9087         * aclocal.m4: Regenerate.
9088         * configure: Regenerate.
9089
9090 2009-02-02  Tom Tromey  <tromey@redhat.com>
9091
9092         PR exp/9059:
9093         * valops.c (find_overload_match): Follow typedefs before taking
9094         address of object argument.
9095
9096 2009-02-01  Doug Evans  <dje@google.com>
9097
9098         * target.h (target_waitstatus_to_string): Declare.
9099         * target.c (target_waitstatus_to_string): New function.  Copied from
9100         debug_to_wait.  Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY,
9101         TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE,
9102         TARGET_WAITKIND_NO_HISTORY.
9103         (debug_to_wait): Call it.
9104         * infrun.c (wait_for_inferior): If debug_infrun, print result of
9105         target_wait.
9106         (fetch_inferior_event): Ditto.
9107
9108 2009-01-30  Tom Tromey  <tromey@redhat.com>
9109
9110         * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h.
9111
9112 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
9113
9114         PR 8145.
9115         * thread.c (do_captured_list_thread_ids): Report the current
9116         thread id.
9117
9118 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
9119
9120         * breakpoint.c (create_breakpoint, create_breakpoints)
9121         (break_command_really, set_breakpoint): New parameter enabled.
9122         (create_breakpoint, break_command_really): Make breakpoint
9123         disabled if so requested.
9124         * breakpoint.h (set_breakpoint): New parameter enabled.
9125         * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
9126
9127 2009-01-28  Doug Evans  <dje@google.com>
9128
9129         * amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
9130         (amd64_displaced_step_fixup): Declare.
9131         * amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
9132         (amd64_arch_regmap): Move out of amd64_analyze_stack_align
9133         and make static global.
9134         (amd64_arch_regmap_len): New static global.
9135         (amd64_arch_reg_to_regnum): New function.
9136         (struct amd64_insn): New struct.
9137         (struct displaced_step_closure): New struct.
9138         (onebyte_has_modrm,twobyte_has_modrm): New static globals.
9139         (rex_prefix_p,skip_prefixes)
9140         (amd64_insn_length_fprintf,amd64_insn_length_init_dis)
9141         (amd64_insn_length,amd64_get_unused_input_int_reg)
9142         (amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
9143         (amd64_displaced_step_copy_insn)
9144         (amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
9145         (amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
9146         (amd64_displaced_step_fixup): New functions.
9147         * amd64-linux-tdep.c: #include arch-utils.h.
9148         (amd64_linux_init_abi): Install displaced stepping support.
9149
9150 2009-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
9151             Jerome Guitton  <guitton@adacore.com>
9152
9153         * configure, config.in: Regenerated.
9154         * configure.ac: Add --with-system-gdbinit.
9155         * main.c (get_init_files): New.
9156         (captured_main): Use get_init_files.  Load system gdbinit before
9157         $HOME/.gdbinit.
9158         (print_gdb_help): Print location of init files.
9159
9160 2009-01-28  Pedro Alves  <pedro@codesourcery.com>
9161
9162         * corefile.c (generic_search): Delete disabled code.
9163         * gdbcore.h (generic_search): Delete declaration.
9164
9165 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
9166
9167         * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the
9168         parent to the child.
9169         * inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
9170         * inf-ptrace.c (inf_ptrace_follow_fork): Likewise.  Use
9171         remove_breakpoints to remove breakpoints from the parent.
9172
9173 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
9174
9175         PR backtrace/9458, PR backtrace/8864:
9176         * frame.c (create_new_frame): Update the frame's cached PC before
9177         finding its unwinder.  Use frame_id_build to build the new frame's
9178         id.
9179         * stack.c (parse_frame_specification_1): Correct setting ``addrs''
9180         array values from the ``args'' array values.
9181
9182 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
9183
9184         * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type)
9185         (create_array_type, create_set_type, init_flags_type)
9186         (copy_type_recursive): Replace pairs of calls to XALLOC and memset
9187         with a call to XZALLOC or XCALLOC, and pairs of calls to
9188         obstack_alloc and memset with a call to OBSTACK_ZALLOC.
9189
9190 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
9191
9192         Add "maint set|show internal-error|internal-warning quit|corefile
9193         ask|yes|no" commands.
9194
9195         PR gdb/7580:
9196         * utils.c (internal_problem_ask, internal_problem_yes)
9197         (internal_problem_no, internal_problem_modes): New.
9198         (struct internal_problem): Remove FIXME.  Make should_quit and
9199         should_dump_core types to char *.
9200         (internal_vproblem, internal_error_problem)
9201         (internal_warning_problem): Adjust.
9202         (set_internal_problem_cmd, show_internal_problem_cmd): New dummy
9203         functions.
9204         (add_internal_problem_command): New.
9205         (_initialize_utils): New.
9206
9207 2009-01-25  Pedro Alves  <pedro@codesourcery.com>
9208
9209         * infcmd.c (program_info): Use paddress instead of casting stop_pc
9210         to unsigned long.
9211
9212 2009-01-24  Pedro Alves  <pedro@codesourcery.com>
9213
9214         * infrun.c (normal_stop): Don't call
9215         deprecated_update_frame_pc_hack.
9216         * frame.c (deprecated_update_frame_pc_hack)
9217         (deprecated_update_frame_base_hack): Delete, and ...
9218         (create_new_frame): ... inline here.
9219         * frame.h (deprecated_update_frame_pc_hack)
9220         (deprecated_update_frame_base_hack): Delete declarations.
9221
9222 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
9223
9224         * cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
9225         * cli/cli-setshow.c (do_setshow_command): Handle it.
9226         * command.h (enum var_types): Add var_zuinteger.
9227         (add_setshow_zuinteger_cmd): Declare.
9228
9229         * valprint.c (_initialize_valprint): Change the set input-radix
9230         and set output-radix commands to zuinteger type.
9231
9232 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
9233
9234         PR gdb/9664:
9235         * infrun.c (normal_stop): Tag threads as stopped, and run the
9236         hook-stop before printing the stack frame.
9237
9238 2009-01-22  Pedro Alves  <pedro@codesourcery.com>
9239
9240         PR c++/9631:
9241         * gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
9242         vbasetype.
9243
9244 2009-01-20  Kazu Hirata  <kazu@codesourcery.com>
9245
9246         * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
9247         unsigned long.
9248
9249 2009-01-20  Daniel Jacobowitz  <dan@codesourcery.com>
9250
9251         PR gdb/9346
9252         * infcmd.c (signal_command): Do not specify a resume PC.
9253
9254 2009-01-19  Doug Evans  <dje@google.com>
9255
9256         * dummy-frame.c (dummy_frame): Replace regcache member with
9257         caller_state.
9258         (dummy_frame_push): Replace caller_regcache arg with caller_state.
9259         All callers updated.
9260         (remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
9261         (dummy_frame_pop): Rewrite.  Verify requested frame is in the
9262         dummy frame stack.  Restore program state.
9263         (cleanup_dummy_frames): Rewrite.
9264         (dummy_frame_sniffer): Update.  Make static.
9265         * dummy-frame.h (regcache,frame_info): Delete forward decls.
9266         (inferior_thread_state): New forward decl.
9267         (dummy_frame_push): Update prototype.
9268         * frame.c (frame_pop): dummy_frame_pop now does all the work for
9269         DUMMY_FRAMEs.
9270         * infcall.c (breakpoint_auto_delete_contents): Delete.
9271         (get_function_name,run_inferior_call): New fns.
9272         (call_function_by_hand): Simplify by moving some code to
9273         get_function_name, run_inferior_call.  Inferior function call wrapped
9274         in TRY_CATCH so there's less need for cleanups and all exits from
9275         proceed are handled similarily.  Detect program exit.
9276         Detect program stopping in a different thread.
9277         Make error messages more consistent.
9278         * inferior.h (inferior_thread_state): Declare (opaque type).
9279         (save_inferior_thread_state,restore_inferior_thread_state,
9280         make_cleanup_restore_inferior_thread_state,
9281         discard_inferior_thread_state, get_inferior_thread_state_regcache):
9282         Declare.
9283         (save_inferior_status): Update prototype.
9284         * infrun.c: (normal_stop): When stopped for the completion of an
9285         inferior function call, verify the expected stack frame kind.
9286         (inferior_thread_state): New struct.
9287         (save_inferior_thread_state,restore_inferior_thread_state,
9288         do_restore_inferior_thread_state_cleanup,
9289         make_cleanup_restore_inferior_thread_state,
9290         discard_inferior_thread_state,
9291         get_inferior_thread_state_regcache): New functions.
9292         (inferior_status): Move stop_signal, stop_pc, registers to
9293         inferior_thread_state.  Remove restore_stack_info.
9294         (save_inferior_status): Remove arg restore_stack_info.
9295         All callers updated.  Remove saving of state now saved by
9296         save_inferior_thread_state.
9297         (restore_inferior_status): Remove restoration of state now done by
9298         restore_inferior_thread_state.
9299         (discard_inferior_status): Remove freeing of registers, now done by
9300         discard_inferior_thread_state.
9301
9302 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
9303
9304         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line
9305         at a time, times NUM_TO_SCROLL.
9306         * tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to
9307         fetch the selected frame if there is no stack.
9308
9309 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
9310
9311         PR gdb/9747:
9312         * gdbthread.h (finish_thread_state, finish_thread_state_cleanup):
9313         Declare.
9314         * thread.c (finish_thread_state, finish_thread_state_cleanup): New.
9315         * infrun.c (wait_for_inferior, fetch_inferior_event): If an error
9316         is thrown while handling an event, finish the thread state.
9317         (normal_stop): Use finish_thread_state cleanup.
9318         * infcmd.c (run_command_1): If an error is thrown while starting
9319         the inferior, finish the thread state.
9320
9321 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
9322
9323         * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout,
9324         skip breakpoints without a location (pending breakpoints).
9325
9326 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
9327
9328         PR build/9186:
9329         * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'.
9330
9331 2009-01-18  Nick Roberts  <nickrob@snap.net.nz>
9332
9333         * thread.c (thread_command): Move call to annotate_thread_changed
9334         to...
9335         (do_captured_thread_select): ... here, to avoid printing an
9336         annotation if the thread change generates an exception.
9337
9338 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
9339
9340         * NEWS: Document x86_64/MinGW as a new native configuration.
9341
9342 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
9343
9344         * NEWS: Move the documentation of "info os processes" to
9345         the appropriate section (documenting the new commands).
9346
9347 2009-01-15  Doug Evans  <dje@google.com>
9348
9349         * target.h (target_signal_to_string): Make return type const char *.
9350         (target_signal_to_name): Ditto.
9351         (target_signal_from_name): Make arg const char *.
9352         * infrun.c (sig_print_info): Update.
9353         * signals/signals.c (signals): Make array and struct members const.
9354         (target_signal_to_string): Make return type const char *.
9355         (target_signal_to_name): Ditto.
9356         (target_signal_from_name): Make arg const char *.
9357
9358 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
9359             Tristan Gingold  <gingold@adacore.com>
9360
9361         * solist.h (struct target_so_ops): New member bfd_open.
9362         (solib_find): Add prototype.
9363         (solib_bfd_fopen): Add prototype.
9364         * solib.c (solib_find, solib_bfd_fopen): New functions, extracted
9365         from solib_bfd_open.
9366         (solib_bfd_open): Use ops->bfd_open override if present.  Call
9367         solib_find and solib_bfd_open otherwise.
9368
9369         * objfiles.h (OBJF_KEEPBFD): New define.
9370         * objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD
9371         objfile flag is set.
9372         * solib.c (symbol_add_stub): Do not allocate second BFD for
9373         shared library; use OBJF_KEEPBFD flag on solib objfile.
9374
9375 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
9376
9377         * frame.c (get_frame_arch): Abort if called with NULL this_frame.
9378
9379 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
9380
9381         * value.h (address_of_variable): Add prototype.
9382         (locate_var_value): Remove prototype.
9383
9384         * findvar.c (read_var_value): Do not attempt to default frame
9385         to selected frame.
9386         (locate_var_value): Remove function.
9387         * valops.c (value_of_variable): Retrieve selected frame for
9388         symbols that require a frame when called with NULL block.
9389         * valops.c (address_of_variable): New function.
9390
9391         * eval.c (evaluate_subexp_for_address): Call address_of_variable
9392         instead of calling locate_var_value.
9393         (evaluate_subexp_with_coercion): Likewise.
9394
9395 2009-01-14  Daniel Jacobowitz  <dan@codesourcery.com>
9396
9397         * NEWS: Document "define" for prefixed commands.
9398         * cli/cli-cmds.c (show_user): Update calls to show_user_1.  Call
9399         show_user_1 for prefix commands.
9400         * cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
9401         * cli/cli-script.c (validate_comname): Rewrite to handle prefix
9402         commands.  Return the containing command list.
9403         (define_command, document_command): Update to handle prefix commands.
9404         (show_user_1): Add prefix and name arguments.  Handle prefix
9405         commands.
9406         * cli/cli-script.h (show_user_1): Update prototype.
9407
9408 2009-01-14  Kai Tietz  <kai.tietz@onevision.com>
9409
9410         * ser-mingw.c (console_select_thread): Add return to make
9411         compiler happy.
9412         (pipe_select_thread): Likewise.
9413         (file_select_thread): Likewise.
9414
9415 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
9416
9417         * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from
9418         previous change.
9419
9420 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
9421
9422         * remote.c (extended_remote_mourn_1): Invalidate our notion of
9423         current general thread.
9424
9425 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
9426
9427         * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups
9428         without a live selected thread.
9429
9430 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
9431
9432         Update the copyright notice of some of the files I missed
9433         in the previous copyright update.
9434
9435 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
9436
9437         * windows-nat.c (handle_unload_dll): Use %p to print the DLL
9438         base address instead of casting it to DWORD.
9439
9440 2009-01-13  Ulrich Weigand  <uweigand@de.ibm.com>
9441
9442         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch
9443         for NULL frame pointers.
9444
9445 2009-01-13  Mark Kettenis  <kettenis@gnu.org>
9446
9447         * utils.c (host_address_to_string): Reimplement in a way that
9448         avoids the cast of the address to long.
9449
9450 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
9451
9452         * mdebugread.c (parse_symbol): Save the symbol private data
9453         using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE.
9454         (psymtab_to_symtab_1): Likewise.
9455         (parse_procedure): Declare variable "e" only in the scope
9456         where it is used. Extract the symbol private data using
9457         SYMBOL_VALUE_BYTES.
9458
9459 2009-01-13  Jim Blandy  <jimb@codesourcery.com>
9460
9461         Abstract out common code for copying value locations.
9462
9463         * value.h (set_value_component_location): New declaration.
9464         * value.c (set_value_component_location): New function.
9465         (value_primitive_field): Use it.
9466         * valarith.c (value_subscript, value_subscripted_rvalue): Same.
9467         * valops.c (search_struct_field, value_slice): Same.
9468         * ada-lang.c (coerce_unspec_val_to_type)
9469         (ada_value_primitive_packed_val): Same.
9470
9471 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
9472
9473         * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey.
9474
9475 2009-01-12  Christopher Faylor  <me+cygwin@cgf.cx>
9476
9477         * amd64-windows-nat.c Rename gdb-specific win32_* to windows_*
9478         throughout.
9479         * i386-cygwin-tdep.c: Ditto.
9480         * i386-windows-nat.c: Ditto.
9481         * windows-nat.h: Ditto.
9482         * windows-tdep.c: Ditto.
9483         * windows-tdep.h: Ditto.
9484         * windows-nat.c: Ditto.
9485         (cygwin_load_start): Redefine as CORE_ADDR.
9486         (cygwin_load_end): Ditto.
9487         (windows_make_so): Coerce result of address arithmetic to uintptr_t
9488         before coercing to CORE_ADDR to avoid a compiler warning.
9489         (handle_exception): Define addr as CORE_ADDR and coerce
9490         ExceptionAddress to uintptr_t before assigining to avoid a compiler
9491         warning.
9492         * config/djgpp/fnchange.lst: Add mappings for recently renamed windows
9493         files.
9494
9495 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
9496
9497         Fix linking with --enable-targets=all:
9498         * Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o.
9499         (HFILES_NO_SRCDIR): Add windows-tdep.h.
9500         (ALLDEPFILES): Add windows-tdep.c.
9501
9502 2009-01-11  Chris Faylor  <me.gdb@cgf.cx>
9503
9504         * win32-nat.h: Delete.
9505         * windows-nat.h: Rename from win32-nat.h.
9506         * win32-nat.c: Delete.
9507         * windows-nat.c: Rename from win32-nat.c.
9508         * win32-termcap.c: Delete.
9509         * windows-termcap.c: Rename from win32-termcap.c.
9510         * amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h.
9511         * configure.ac: Handle rename from win32-termcap.c ->
9512         windows-termcap.c.
9513         * configure: Regenerate.
9514         * gdb_curses.h: Change comment to reflect rename from win32-termcap.c
9515         -> windows-termcap.c.
9516         * i386-cygwin-tdep.c: Handle rename from win32-tdep.h ->
9517         windows-tdep.h.
9518         * i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h.
9519         * windows-nat.c: Ditto.  Also reflect rename from from win32-tdep.h ->
9520         windows-tdep.h.
9521         (win32_make_so): Handle cygwin compiler warning due to change of
9522         load_addr from DWORD to LPVOID.
9523         (handle_load_dll): Use %p in format string to properly print address
9524         and avoid a compiler warning.
9525         (DEBUG_EXCEPTION_SIMPLE): Ditto.
9526         (handle_exception): Ditto.
9527         * windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
9528         * config/i386/cygwin.mh: Handle rename from win32-nat.o ->
9529         windows-nat.o.
9530         * config/i386/mingw.mh: Ditto.
9531         * config/i386/mingw64.mh: Ditto.
9532
9533 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
9534
9535         * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable
9536         arrayprint_recurse_level to a parameter.  Update all the callers.  New
9537         comment at autovariables.
9538
9539 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
9540
9541         * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU
9542         coding style.
9543
9544 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
9545
9546         * target.c (target_xfer_partial): Use host_address_to_string to
9547         print the address of readbuf and writebuf. Cast the address of
9548         elements inside the myaddr buffer into intptr_t.
9549         (deprecated_debug_xfer_memory): Use paddress to print memaddr.
9550         Cast the address of elements inside the myaddr buffer into
9551         intptr_t.
9552
9553 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
9554
9555         * amd64-windows-nat.c, amd64-windows-tdep.c: New files.
9556         * config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files.
9557         * configure.host, configure.tgt: Add handling for x86_64/windows.
9558         * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c
9559         and amd64-windows-tdep.c.
9560
9561 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
9562
9563         * win32-tdep.h, win32-tdep.c: New files.
9564         * i386-cygwin-tdep.h: Delete.
9565         * i386-cygwin-tdep.c: Include win32-tdep.h instead of
9566         i386-cygwin-tdep.h.
9567         (win32_xfer_shared_library): Delete.  Moved to win32-tdep.c.
9568         * win32-nat.c: Likewise.
9569         * configure.tgt: Add win32-tdep.o to the list of target object
9570         files for i386-cygwin and i386-mingw targets.
9571
9572 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
9573
9574         * win32-nat.h: New file.
9575         * win32-nat.c (mappings): Initialize to NULL.
9576         (win32_set_context_register_offsets): New function.
9577         * i386-windows-nat.c: New file.
9578         (mappings): Moved here from win32-nat.c.
9579         (_initialize_i386_windows_nat): New function.
9580         * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o.
9581         * config/i386/cygwin.mh (NATDEPFILES): Likewise.
9582
9583 2009-01-09  Andreas Schwab  <schwab@suse.de>
9584
9585         * Makefile.in (init.c): Set LANG/LC_ALL to C, not c.
9586
9587 2009-01-09  Daniel Jacobowitz  <dan@codesourcery.com>
9588
9589         * gdbtypes.c (append_composite_type_field): Correct the location of
9590         appended fields.
9591
9592 2009-01-09  Pedro Alves  <pedro@codesourcery.com>
9593
9594         * defs.h (deprecated_error_hook): Delete declaration.
9595         * interps.c (clear_interpreter_hooks): Adjust.
9596         * remote-sim.c (gdb_os_error): Don't try to call
9597         deprecated_error_hook.  No need to call exit anymore.
9598         * top.c (deprecated_error_hook): Delete.
9599
9600 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9601
9602         * arch-utils.c (gdbarch_update_p): Use host_address_to_string
9603         to print the address of the gdbarch pointer.
9604
9605 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9606
9607         * gdbarch.sh: Fix all the compilation errors on amd64-windows
9608         due to casting a pointer to a long when printing a function
9609         address. Instead, use host_address_to_string to convert our
9610         address to a string.
9611         * gdbarch.c: Regenerate.
9612
9613 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9614
9615         * event-top.c (async_disconnect, async_stop_sig): use "raise"
9616         instead of "kill" to raise a signal.
9617
9618 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9619
9620         * win32-nat.c (get_module_name): Change the type of parameter
9621         "base_address" to LPVOID.  Remove unnecessary cast.
9622         (struct lm_info): Change type of load_addr to LPVOID.
9623         (win32_make_so): Change the type of parameter "load_addr"
9624         to LPVOID.  Remove some unnecessary casts.
9625         (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID.
9626         (win32_xfer_shared_libraries): Add missing cast.
9627
9628 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9629
9630         * win32-nat.c (has_detach_ability, set_process_privilege):
9631         Cast the result of GetProcAddress to (void *) to avoid
9632         a compilation warning.
9633
9634 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9635
9636         * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not
9637         already defined.
9638
9639 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9640
9641         * win32-nat.c (get_image_name, win32_xfer_memory): Fix type
9642         definition of local variable "done".
9643         (info_w32_command, handle_exception): Remove unnecessary cast.
9644
9645 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9646
9647         * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames
9648         DebugSetProcessKillOnExit.  Update all uses in this file.
9649         (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop.
9650         Update all uses in this file.
9651
9652 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9653
9654         * win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
9655         and use it when pushing the target.
9656         (win32_attach, win32_create_inferior): Update call to
9657         do_initial_win32_stuff.
9658         (win32_detach, win32_mourn_inferior): Use our ops parameter
9659         instead of the global win32_ops to unpush the target.
9660
9661 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9662
9663         * ser-mingw.c (ser_windows_open): Use proper type when casting
9664         in call to _open_osfhandle.
9665
9666 2009-01-09  Kai Tietz  <kai.tietz@onevision.com>
9667
9668         * coff-pe-read.c (read_pe_exported_syms): Fix typo.
9669
9670 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
9671
9672         * CONTRIBUTE: Minor reformatting.
9673
9674 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
9675
9676         * MAINTAINERS: Add myself to Write After Approval.
9677         * coff-pe-read.c (read_pe_exported_syms): Enable read of PE+
9678         export directory.
9679
9680 2009-01-08  Nathan Froyd  <froydnj@codesourcery.com>
9681
9682         * remote-sim.c (gdb_os_error): Mark as a noreturn function.
9683         Call exit to make it obvious to GCC.
9684
9685 2009-01-08  Tom Tromey  <tromey@redhat.com>
9686
9687         PR breakpoints/9350:
9688         * varobj.c (varobj_invalidate): Unconditionally free
9689         all_rootvarobj.
9690         * symfile.c (syms_from_objfile): Free local_addr when returning
9691         normally.
9692         * exec.c (exec_file_attach): Do cleanups before returning.
9693         (exec_file_command): Likewise.
9694         * corefile.c (reopen_exec_file): Do cleanups before returning.
9695         * breakpoint.c (insert_breakpoint_locations): Do cleanups before
9696         returning.
9697         (do_vec_free): New function.
9698         (update_global_location_list): Make a cleanup for old_locations.
9699         Do cleanups before returning.  Remove unused variable 'e'.
9700         (find_condition_and_thread): Free result of parsing the
9701         expression.
9702         (print_it_typical): Do cleanups before returning.
9703         (breakpoint_re_set_one): Always free sals.sals.
9704
9705 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
9706             Emi Suzuki  <emi-suzuki@tjsys.co.jp>
9707
9708         * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for
9709         watchpoints.
9710
9711 2009-01-07  Doug Evans  <dje@google.com>
9712
9713         * top.c (gdb_prompt_string): Delete, unused.
9714
9715 2009-01-07  Pedro Alves  <pedro@codesourcery.com>
9716
9717         Delete ONE_PROCESS_WRITETEXT leftovers.
9718
9719         * breakpoint.c (insert_bp_location): Delete process_warning
9720         argument.  Adjust.
9721         (insert_breakpoint_locations): Adjust.
9722         (reattach_breakpoints): Adjust.
9723         * infrun.c (normal_stop): Drop "It might be running in another
9724         process" notice.
9725
9726 2009-01-07  Stan Shebs  <stan@codesourcery.com>
9727
9728         * config/pa/linux.mh (XDEPFILES): Remove.
9729
9730 2009-01-07  Doug Evans  <dje@google.com>
9731
9732         * cli/cli-cmds.c (set_debug): Fix cut-n-paste error.
9733
9734 2009-01-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
9735
9736         * f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
9737         spacing, a regression from 2008-04-22.
9738
9739 2009-01-07  Joel Brobecker  <brobecker@adacore.com>
9740
9741         * utils.c (gdb_print_host_address): Adjust implementation to
9742         reuse host_address_to_string. Move comment explaining the conversion
9743         from host address to string from here...
9744         (host_address_to_string): ... to there.
9745
9746 2009-01-07  Emi Suzuki  <emi-suzuki@tjsys.co.jp>
9747
9748         * MAINTAINERS: Add myself for write after approval privileges.
9749
9750 2009-01-06  Tom Tromey  <tromey@redhat.com>
9751
9752         * value.c (set_internalvar): Use value_free, not xfree.
9753
9754 2009-01-06  Jim Blandy  <jimb@red-bean.com>
9755
9756         Check return values of functions declared with warn_unused_result
9757         attribute in GLIBC 2.8.
9758         * cli/cli-cmds.c (pwd_command): Check return value from getcwd.
9759         * inflow.c (check_syscall): New function.
9760         (new_tty): Use check_syscall to check return values from open and dup.
9761         * linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets.
9762         * main.c (captured_main): Call cwd after setting up gdb_stderr;
9763         check for errors from getcwd.
9764         * mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd.
9765         * ui-file.c (stdio_file_write): Ignore return value from fwrite.
9766         (stdio_file_fputs): Same.
9767         * utils.c (internal_vproblem): abort if last-ditch error message
9768         write fails.
9769
9770         * top.c (gdb_init): Don't set the current directory here; that's
9771         already been done in captured_main.
9772
9773 2009-01-06  Sandra Loosemore  <sandra@codesourcery.com>
9774
9775         * ser-tcp.c: Adjust includes.
9776         (tcp_set_cmdlist, tcp_show_cmdlist): Declare.
9777         (tcp_auto_retry, tcp_retry_limit): Declare.
9778         (TIMEOUT): Remove, in favor of tcp_retry_limit.
9779         (POLL_INTERVAL): Increase to 5, in favor of backoff logic.
9780         (wait_for_connect): New function.
9781         (net_open): Use it.  Add auto-retry logic.
9782         (set_tcp_cmd, show_tcp_cmd): New functions.
9783         (_initialize_ser_tcp): Initialize new "set/show tcp auto-retry"
9784         and "set/show tcp connect-timeout" commands.
9785         * NEWS: Document new commands.
9786
9787 2009-01-05  Tom Tromey  <tromey@redhat.com>
9788
9789         * python/python-internal.h (Py_ssize_t): Define as int.
9790
9791 2009-01-05  Jim Blandy  <jimb@red-bean.com>
9792
9793         * MAINTAINERS: Fix my e-mail address as steering committee member.
9794
9795 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
9796
9797         Updated copyright notices for most files.
9798
9799 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
9800
9801         * top.c (print_gdb_version): Update copyright year.
9802
9803 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
9804
9805         * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008.
9806
9807 2009-01-01  Pedro Alves  <pedro@codesourcery.com>
9808
9809         PR breakpoints/9681:
9810         * exceptions.h (enum errors): New error type, MEMORY_ERROR.
9811         * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
9812         * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
9813         retrow all other exceptions.
9814
9815 For older changes see ChangeLog-2008.
9816 \f
9817 Local Variables:
9818 mode: change-log
9819 left-margin: 8
9820 fill-column: 74
9821 version-control: never
9822 coding: utf-8
9823 End: